@blaze-cms/react-page-builder 0.114.0-alpha.0 → 0.114.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/README.md +5 -8
- package/lib/components/Card/CardRender.js +61 -17
- package/lib/components/Card/CardRender.js.map +1 -1
- package/lib/components/Card/helpers/filter-query-setup.js.map +1 -1
- package/lib/components/List/ListBuilder.js +11 -6
- package/lib/components/List/ListBuilder.js.map +1 -1
- package/lib/components/List/ListFactory.js +20 -7
- package/lib/components/List/ListFactory.js.map +1 -1
- package/lib/components/List/helpers/get-sort-props.js +46 -0
- package/lib/components/List/helpers/get-sort-props.js.map +1 -0
- package/lib/components/List/helpers/index.js +8 -0
- package/lib/components/List/helpers/index.js.map +1 -1
- package/lib/components/SearchFilter/helpers/build-query.js +1 -5
- package/lib/components/SearchFilter/helpers/build-query.js.map +1 -1
- package/lib/helpers/get-generic-render-variables.js +32 -22
- package/lib/helpers/get-generic-render-variables.js.map +1 -1
- package/lib-es/components/Card/CardRender.js +32 -5
- package/lib-es/components/Card/CardRender.js.map +1 -1
- package/lib-es/components/Card/helpers/filter-query-setup.js.map +1 -1
- package/lib-es/components/List/ListBuilder.js +11 -6
- package/lib-es/components/List/ListBuilder.js.map +1 -1
- package/lib-es/components/List/ListFactory.js +20 -8
- package/lib-es/components/List/ListFactory.js.map +1 -1
- package/lib-es/components/List/helpers/get-sort-props.js +26 -0
- package/lib-es/components/List/helpers/get-sort-props.js.map +1 -0
- package/lib-es/components/List/helpers/index.js +1 -0
- package/lib-es/components/List/helpers/index.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/build-query.js +1 -3
- package/lib-es/components/SearchFilter/helpers/build-query.js.map +1 -1
- package/lib-es/helpers/get-generic-render-variables.js +22 -15
- package/lib-es/helpers/get-generic-render-variables.js.map +1 -1
- package/package.json +2 -2
- package/src/components/Card/CardRender.js +24 -6
- package/src/components/Card/helpers/filter-query-setup.js +1 -0
- package/src/components/List/ListBuilder.js +11 -6
- package/src/components/List/ListFactory.js +18 -8
- package/src/components/List/helpers/get-sort-props.js +17 -0
- package/src/components/List/helpers/index.js +1 -0
- package/src/components/SearchFilter/helpers/build-query.js +2 -3
- package/src/helpers/get-generic-render-variables.js +22 -12
- package/tests/unit/src/components/List/helpers/get-sort-props.test.js +58 -0
- package/tests/unit/src/helpers/build-raw-query.test.js +2 -1
- package/tests/unit/src/helpers/get-generic-render-variables.test.js +5 -11
- package/lib/helpers/check-sort-by.js +0 -16
- package/lib/helpers/check-sort-by.js.map +0 -1
- package/lib-es/helpers/check-sort-by.js +0 -4
- package/lib-es/helpers/check-sort-by.js.map +0 -1
- package/src/helpers/check-sort-by.js +0 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/SearchFilter/helpers/build-query.js"],"names":["buildQuery","filterValues","filters","newQuery","searchValue","SEARCH_TERM","push","forEach","propsToDisplay","type","TEXT_SEARCH","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/SearchFilter/helpers/build-query.js"],"names":["buildQuery","filterValues","filters","newQuery","searchValue","SEARCH_TERM","push","forEach","propsToDisplay","type","TEXT_SEARCH","prop","value","parsedValue","join"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,YAAD,EAAeC,OAAf,EAA2B;AAC5C,MAAMC,QAAQ,GAAG,EAAjB;AACA,MAAMC,WAAW,GAAGH,YAAY,CAACI,sBAAD,CAAhC;AACA,MAAID,WAAJ,EAAiBD,QAAQ,CAACG,IAAT,WAAiBD,sBAAjB,cAAgCD,WAAhC;AAEjBF,EAAAA,OAAO,CAACK,OAAR,CAAgB,gBAA8B;AAAA,QAA3BC,cAA2B,QAA3BA,cAA2B;AAAA,QAAXC,IAAW,QAAXA,IAAW;AAC5C,QAAIA,IAAI,KAAKC,sBAAb,EAA0B;AAE1BF,IAAAA,cAAc,CAACD,OAAf,CAAuB,UAAAI,IAAI,EAAI;AAC7B,UAAMC,KAAK,GAAGX,YAAY,CAACU,IAAD,CAA1B;AACA,UAAME,WAAW,GAAG,kCAAiBF,IAAjB,EAAuBF,IAAvB,EAA6BG,KAA7B,CAApB;AACA,UAAIC,WAAJ,EAAiBV,QAAQ,CAACG,IAAT,CAAcO,WAAd;AAClB,KAJD;AAKD,GARD;AAUA,SAAOV,QAAQ,CAACW,IAAT,CAAc,GAAd,CAAP;AACD,CAhBD;;eAkBed,U","sourcesContent":["import { SEARCH_TERM, TEXT_SEARCH } from '../constants';\nimport parseFilterValue from './parse-filter-value';\n\nconst buildQuery = (filterValues, filters) => {\n const newQuery = [];\n const searchValue = filterValues[SEARCH_TERM];\n if (searchValue) newQuery.push(`${SEARCH_TERM}=${searchValue}`);\n\n filters.forEach(({ propsToDisplay, type }) => {\n if (type === TEXT_SEARCH) return;\n\n propsToDisplay.forEach(prop => {\n const value = filterValues[prop];\n const parsedValue = parseFilterValue(prop, type, value);\n if (parsedValue) newQuery.push(parsedValue);\n });\n });\n\n return newQuery.join('&');\n};\n\nexport default buildQuery;\n"],"file":"build-query.js"}
|
|
@@ -4,8 +4,6 @@ require("core-js/modules/es.object.keys.js");
|
|
|
4
4
|
|
|
5
5
|
require("core-js/modules/es.symbol.js");
|
|
6
6
|
|
|
7
|
-
require("core-js/modules/es.array.filter.js");
|
|
8
|
-
|
|
9
7
|
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
10
8
|
|
|
11
9
|
require("core-js/modules/es.array.for-each.js");
|
|
@@ -27,53 +25,65 @@ exports["default"] = void 0;
|
|
|
27
25
|
|
|
28
26
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
29
27
|
|
|
30
|
-
var
|
|
28
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
31
29
|
|
|
32
|
-
require("core-js/modules/es.array.
|
|
30
|
+
require("core-js/modules/es.array.join.js");
|
|
33
31
|
|
|
34
|
-
require("core-js/modules/es.array.
|
|
32
|
+
require("core-js/modules/es.array.filter.js");
|
|
33
|
+
|
|
34
|
+
require("core-js/modules/es.array.map.js");
|
|
35
|
+
|
|
36
|
+
require("core-js/modules/es.array.sort.js");
|
|
35
37
|
|
|
36
38
|
require("core-js/modules/es.array.concat.js");
|
|
37
39
|
|
|
38
40
|
require("core-js/modules/es.number.constructor.js");
|
|
39
41
|
|
|
40
|
-
var _checkSortBy = _interopRequireDefault(require("./check-sort-by"));
|
|
41
|
-
|
|
42
42
|
var _getSortByFieldName = _interopRequireDefault(require("./get-sort-by-field-name"));
|
|
43
43
|
|
|
44
44
|
var _constants = require("../constants");
|
|
45
45
|
|
|
46
|
-
var _excluded = ["limit", "offset"];
|
|
47
|
-
|
|
48
46
|
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; }
|
|
49
47
|
|
|
50
48
|
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; }
|
|
51
49
|
|
|
50
|
+
var buildSortValues = function buildSortValues(sortFilters, relations, stringProps) {
|
|
51
|
+
if (!sortFilters || !sortFilters.length) return {
|
|
52
|
+
sort: []
|
|
53
|
+
};
|
|
54
|
+
var sortValues = sortFilters.map(function (_ref) {
|
|
55
|
+
var sort = _ref.sort,
|
|
56
|
+
propsToDisplay = _ref.propsToDisplay;
|
|
57
|
+
return !!sort && !!propsToDisplay[0] && "".concat((0, _getSortByFieldName["default"])(relations, propsToDisplay[0], stringProps), ":").concat(sort.toLowerCase());
|
|
58
|
+
}).filter(Boolean).join(',');
|
|
59
|
+
return {
|
|
60
|
+
sort: sortValues
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
|
|
52
64
|
var getCorrectSort = function getCorrectSort(relations, filterProps, stringProps, isTextSearchApplied) {
|
|
53
65
|
if (isTextSearchApplied) {
|
|
54
66
|
return {};
|
|
55
67
|
}
|
|
56
68
|
|
|
57
69
|
var sort = filterProps.sort,
|
|
58
|
-
sortby = filterProps.sortby
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}
|
|
70
|
+
sortby = filterProps.sortby,
|
|
71
|
+
_filterProps$sortProp = filterProps.sortProperties,
|
|
72
|
+
sortProperties = _filterProps$sortProp === void 0 ? [] : _filterProps$sortProp;
|
|
73
|
+
return buildSortValues([{
|
|
74
|
+
sort: sort,
|
|
75
|
+
propsToDisplay: [sortby]
|
|
76
|
+
}].concat((0, _toConsumableArray2["default"])(sortProperties)), relations, stringProps);
|
|
65
77
|
};
|
|
66
78
|
|
|
67
79
|
var getGenericRenderVariables = function getGenericRenderVariables(relations) {
|
|
68
|
-
var
|
|
69
|
-
|
|
80
|
+
var filterProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
70
81
|
var stringProps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
71
82
|
var rawQueryStringified = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
|
|
72
83
|
var isTextSearchFilterApplied = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
|
|
73
|
-
var
|
|
74
|
-
limit =
|
|
75
|
-
offset =
|
|
76
|
-
filterProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
84
|
+
var _filterProps$limit = filterProps.limit,
|
|
85
|
+
limit = _filterProps$limit === void 0 ? _constants.DEFAULT_LIMIT : _filterProps$limit,
|
|
86
|
+
offset = filterProps.offset;
|
|
77
87
|
var sort = getCorrectSort(relations, filterProps, stringProps, isTextSearchFilterApplied);
|
|
78
88
|
var raw = rawQueryStringified ? {
|
|
79
89
|
rawQueryStringified: rawQueryStringified
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/helpers/get-generic-render-variables.js"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../src/helpers/get-generic-render-variables.js"],"names":["buildSortValues","sortFilters","relations","stringProps","length","sort","sortValues","map","propsToDisplay","toLowerCase","filter","Boolean","join","getCorrectSort","filterProps","isTextSearchApplied","sortby","sortProperties","getGenericRenderVariables","rawQueryStringified","isTextSearchFilterApplied","limit","DEFAULT_LIMIT","offset","raw","Number","DEFAULT_OFFSET"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,WAAD,EAAcC,SAAd,EAAyBC,WAAzB,EAAyC;AAC/D,MAAI,CAACF,WAAD,IAAgB,CAACA,WAAW,CAACG,MAAjC,EAAyC,OAAO;AAAEC,IAAAA,IAAI,EAAE;AAAR,GAAP;AACzC,MAAMC,UAAU,GAAGL,WAAW,CAC3BM,GADgB,CAEf;AAAA,QAAGF,IAAH,QAAGA,IAAH;AAAA,QAASG,cAAT,QAASA,cAAT;AAAA,WACE,CAAC,CAACH,IAAF,IACA,CAAC,CAACG,cAAc,CAAC,CAAD,CADhB,cAEG,oCAAmBN,SAAnB,EAA8BM,cAAc,CAAC,CAAD,CAA5C,EAAiDL,WAAjD,CAFH,cAEoEE,IAAI,CAACI,WAAL,EAFpE,CADF;AAAA,GAFe,EAOhBC,MAPgB,CAOTC,OAPS,EAQhBC,IARgB,CAQX,GARW,CAAnB;AAUA,SAAO;AAAEP,IAAAA,IAAI,EAAEC;AAAR,GAAP;AACD,CAbD;;AAcA,IAAMO,cAAc,GAAG,SAAjBA,cAAiB,CAACX,SAAD,EAAYY,WAAZ,EAAyBX,WAAzB,EAAsCY,mBAAtC,EAA8D;AACnF,MAAIA,mBAAJ,EAAyB;AACvB,WAAO,EAAP;AACD;;AACD,MAAQV,IAAR,GAA8CS,WAA9C,CAAQT,IAAR;AAAA,MAAcW,MAAd,GAA8CF,WAA9C,CAAcE,MAAd;AAAA,8BAA8CF,WAA9C,CAAsBG,cAAtB;AAAA,MAAsBA,cAAtB,sCAAuC,EAAvC;AAEA,SAAOjB,eAAe,EACnB;AAAEK,IAAAA,IAAI,EAAJA,IAAF;AAAQG,IAAAA,cAAc,EAAE,CAACQ,MAAD;AAAxB,GADmB,6CACoBC,cADpB,IAEpBf,SAFoB,EAGpBC,WAHoB,CAAtB;AAKD,CAXD;;AAaA,IAAMe,yBAAyB,GAAG,SAA5BA,yBAA4B,CAChChB,SADgC,EAM7B;AAAA,MAJHY,WAIG,uEAJW,EAIX;AAAA,MAHHX,WAGG,uEAHW,EAGX;AAAA,MAFHgB,mBAEG,uEAFmB,EAEnB;AAAA,MADHC,yBACG,uEADyB,KACzB;AACH,2BAA0CN,WAA1C,CAAQO,KAAR;AAAA,MAAQA,KAAR,mCAAgBC,wBAAhB;AAAA,MAA+BC,MAA/B,GAA0CT,WAA1C,CAA+BS,MAA/B;AACA,MAAMlB,IAAI,GAAGQ,cAAc,CAACX,SAAD,EAAYY,WAAZ,EAAyBX,WAAzB,EAAsCiB,yBAAtC,CAA3B;AACA,MAAMI,GAAG,GAAGL,mBAAmB,GAAG;AAAEA,IAAAA,mBAAmB,EAAnBA;AAAF,GAAH,GAA6B,EAA5D;AAEA;AACEE,IAAAA,KAAK,EAAEI,MAAM,CAACJ,KAAK,IAAIC,wBAAV,CADf;AAEEC,IAAAA,MAAM,EAAEE,MAAM,CAACF,MAAM,IAAIG,yBAAX;AAFhB,KAGKrB,IAHL,GAIKmB,GAJL;AAMD,CAjBD;;eAmBeN,yB","sourcesContent":["import getSortbyFieldName from './get-sort-by-field-name';\nimport { DEFAULT_LIMIT, DEFAULT_OFFSET } from '../constants';\n\nconst buildSortValues = (sortFilters, relations, stringProps) => {\n if (!sortFilters || !sortFilters.length) return { sort: [] };\n const sortValues = sortFilters\n .map(\n ({ sort, propsToDisplay }) =>\n !!sort &&\n !!propsToDisplay[0] &&\n `${getSortbyFieldName(relations, propsToDisplay[0], stringProps)}:${sort.toLowerCase()}`\n )\n .filter(Boolean)\n .join(',');\n\n return { sort: sortValues };\n};\nconst getCorrectSort = (relations, filterProps, stringProps, isTextSearchApplied) => {\n if (isTextSearchApplied) {\n return {};\n }\n const { sort, sortby, sortProperties = [] } = filterProps;\n\n return buildSortValues(\n [{ sort, propsToDisplay: [sortby] }, ...sortProperties],\n relations,\n stringProps\n );\n};\n\nconst getGenericRenderVariables = (\n relations,\n filterProps = {},\n stringProps = [],\n rawQueryStringified = '',\n isTextSearchFilterApplied = false\n) => {\n const { limit = DEFAULT_LIMIT, offset } = filterProps;\n const sort = getCorrectSort(relations, filterProps, stringProps, isTextSearchFilterApplied);\n const raw = rawQueryStringified ? { rawQueryStringified } : {};\n\n return {\n limit: Number(limit || DEFAULT_LIMIT),\n offset: Number(offset || DEFAULT_OFFSET),\n ...sort,\n ...raw\n };\n};\n\nexport default getGenericRenderVariables;\n"],"file":"get-generic-render-variables.js"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
3
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
4
|
const _excluded = ["entity", "entityFields", "itemsToDisplay", "children"];
|
|
5
|
+
|
|
6
|
+
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; }
|
|
7
|
+
|
|
8
|
+
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) { _defineProperty(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; }
|
|
9
|
+
|
|
4
10
|
import React, { useContext } from 'react';
|
|
5
11
|
import { useQuery } from 'react-apollo';
|
|
6
12
|
import dynamic from 'next/dynamic';
|
|
@@ -9,7 +15,7 @@ import { MainContext } from '@blaze-cms/nextjs-components';
|
|
|
9
15
|
import { generateSingleItemQuery } from '../../application/query';
|
|
10
16
|
import { SEARCH_PUBLISHED_CONTENT, AND } from '../../constants';
|
|
11
17
|
import { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';
|
|
12
|
-
import { getUpdatedFilterBy, getEntityData, sortResponseData, getUnpublishedEntityName, renderChildren, splitChildren, removeExtraItems,
|
|
18
|
+
import { getUpdatedFilterBy, getEntityData, getRequiredSchemas, sortResponseData, getUnpublishedEntityName, renderChildren, splitChildren, removeExtraItems, appendImages } from '../../helpers';
|
|
13
19
|
import { filtersSetup, filterQuerySetup, shouldSkipSingleQuery, shouldReturn } from './helpers';
|
|
14
20
|
const CardContainer = dynamic(() => import('./CardContainer'));
|
|
15
21
|
|
|
@@ -20,7 +26,7 @@ const CardRender = _ref => {
|
|
|
20
26
|
itemsToDisplay,
|
|
21
27
|
children
|
|
22
28
|
} = _ref,
|
|
23
|
-
|
|
29
|
+
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
24
30
|
|
|
25
31
|
const {
|
|
26
32
|
parent: {
|
|
@@ -29,9 +35,30 @@ const CardRender = _ref => {
|
|
|
29
35
|
},
|
|
30
36
|
filterBy = [],
|
|
31
37
|
filterByProperty = [],
|
|
32
|
-
sortby
|
|
38
|
+
sortby,
|
|
39
|
+
sort,
|
|
40
|
+
sortProperties = [],
|
|
33
41
|
operator: filterOperator = AND
|
|
34
|
-
} =
|
|
42
|
+
} = otherProps;
|
|
43
|
+
const updatedSortProperties = [...sortProperties];
|
|
44
|
+
|
|
45
|
+
if (!updatedSortProperties.length && sort) {
|
|
46
|
+
updatedSortProperties.unshift({
|
|
47
|
+
sort,
|
|
48
|
+
propsToDisplay: sortby
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
const sortbyFilters = updatedSortProperties.map(({
|
|
53
|
+
propsToDisplay
|
|
54
|
+
}) => propsToDisplay).filter(Boolean).flat();
|
|
55
|
+
|
|
56
|
+
const variableProps = _objectSpread(_objectSpread({}, otherProps), {}, {
|
|
57
|
+
sortProperties: updatedSortProperties,
|
|
58
|
+
sort: null,
|
|
59
|
+
sortby: null
|
|
60
|
+
});
|
|
61
|
+
|
|
35
62
|
const itemEntityUpdated = getUnpublishedEntityName(itemEntity);
|
|
36
63
|
const {
|
|
37
64
|
data: mainSchemas = {},
|
|
@@ -80,7 +107,7 @@ const CardRender = _ref => {
|
|
|
80
107
|
data: requiredSchema = {},
|
|
81
108
|
loading: schemaLoading,
|
|
82
109
|
error: schemaError
|
|
83
|
-
} = useGetEntitySchemasAsObj(getRequiredSchemas([...filterByProperty, ...
|
|
110
|
+
} = useGetEntitySchemasAsObj(getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema), _loading);
|
|
84
111
|
const updatedFilterBy = getUpdatedFilterBy(inheritedFilters, entityData, currentSchema, filterEntitySchema, itemId, variableProps);
|
|
85
112
|
const {
|
|
86
113
|
limit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Card/CardRender.js"],"names":["React","useContext","useQuery","dynamic","PropTypes","MainContext","generateSingleItemQuery","SEARCH_PUBLISHED_CONTENT","AND","useGetEntitySchemasAsObj","useGetImages","getUpdatedFilterBy","getEntityData","sortResponseData","getUnpublishedEntityName","renderChildren","splitChildren","removeExtraItems","getRequiredSchemas","appendImages","filtersSetup","filterQuerySetup","shouldSkipSingleQuery","shouldReturn","CardContainer","CardRender","entity","entityFields","itemsToDisplay","children","variableProps","parent","itemId","itemEntity","filterBy","filterByProperty","sortby","operator","filterOperator","itemEntityUpdated","data","mainSchemas","loading","_loading","error","_error","isPreview","entityType","docType","getAction","queryProps","inheritedFilters","currentSchema","filterEntitySchema","entitySameAsCurrentItemEntity","action","filterEntityRelations","getEntitySchemas","Object","values","entityData","_err","_load","variables","id","skip","requiredSchema","schemaLoading","schemaError","updatedFilterBy","limit","cardsError","cardsLoading","imageIds","map","imageId","filter","Boolean","imagesData","imagesLoading","isLoading","hasError","message","results","cardData","length","orderedData","regularChildren","gtmChildren","name","updatedCards","propTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from 'react-apollo';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n getRequiredSchemas,\n appendImages\n} from '../../helpers';\nimport { filtersSetup, filterQuerySetup, shouldSkipSingleQuery, shouldReturn } from './helpers';\n\nconst CardContainer = dynamic(() => import('./CardContainer'));\n\nconst CardRender = ({ entity, entityFields, itemsToDisplay, children, ...variableProps }) => {\n const {\n parent: { itemId, itemEntity },\n filterBy = [],\n filterByProperty = [],\n sortby = [],\n operator: filterOperator = AND\n } = variableProps;\n\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj([\n itemEntityUpdated,\n entity\n ]);\n\n const { isPreview } = useContext(MainContext);\n const { entityType, docType } = getEntityData(entity);\n const {\n getAction,\n queryProps,\n inheritedFilters,\n currentSchema,\n filterEntitySchema,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n getEntitySchemas: Object.values(mainSchemas),\n isPreview,\n itemEntityUpdated\n });\n const { data: { entityData = {} } = {}, error: _err, loading: _load } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: itemId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n }\n );\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortby], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n variableProps\n );\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity\n });\n\n const { data, error: cardsError, loading: cardsLoading } = useQuery(action, {\n variables,\n skip: shouldReturn(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)\n });\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, cardsLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (!updatedFilterBy) return null;\n if (isLoading) return '';\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n\n let { results: cardData } = data[SEARCH_PUBLISHED_CONTENT];\n if (!cardData || !cardData.length) return null;\n cardData = entitySameAsCurrentItemEntity ? removeExtraItems(cardData, limit, itemId) : cardData;\n const orderedData = sortResponseData(cardData, itemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(children, cardData, entity, {\n name: variableProps.name\n });\n const updatedCards = appendImages(imagesData, orderedData, itemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardContainer\n cardData={updatedCards}\n entity={entity}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n {...variableProps}\n />\n </>\n );\n};\n\nCardRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array\n};\n\nCardRender.defaultProps = {\n children: [],\n itemsToDisplay: []\n};\n\nexport default CardRender;\n"],"file":"CardRender.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Card/CardRender.js"],"names":["React","useContext","useQuery","dynamic","PropTypes","MainContext","generateSingleItemQuery","SEARCH_PUBLISHED_CONTENT","AND","useGetEntitySchemasAsObj","useGetImages","getUpdatedFilterBy","getEntityData","getRequiredSchemas","sortResponseData","getUnpublishedEntityName","renderChildren","splitChildren","removeExtraItems","appendImages","filtersSetup","filterQuerySetup","shouldSkipSingleQuery","shouldReturn","CardContainer","CardRender","entity","entityFields","itemsToDisplay","children","otherProps","parent","itemId","itemEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","updatedSortProperties","length","unshift","propsToDisplay","sortbyFilters","map","filter","Boolean","flat","variableProps","itemEntityUpdated","data","mainSchemas","loading","_loading","error","_error","isPreview","entityType","docType","getAction","queryProps","inheritedFilters","currentSchema","filterEntitySchema","entitySameAsCurrentItemEntity","action","filterEntityRelations","getEntitySchemas","Object","values","entityData","_err","_load","variables","id","skip","requiredSchema","schemaLoading","schemaError","updatedFilterBy","limit","cardsError","cardsLoading","imageIds","imageId","imagesData","imagesLoading","isLoading","hasError","message","results","cardData","orderedData","regularChildren","gtmChildren","name","updatedCards","propTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from 'react-apollo';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport { filtersSetup, filterQuerySetup, shouldSkipSingleQuery, shouldReturn } from './helpers';\n\nconst CardContainer = dynamic(() => import('./CardContainer'));\n\nconst CardRender = ({ entity, entityFields, itemsToDisplay, children, ...otherProps }) => {\n const {\n parent: { itemId, itemEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND\n } = otherProps;\n\n const updatedSortProperties = [...sortProperties];\n if (!updatedSortProperties.length && sort) {\n updatedSortProperties.unshift({ sort, propsToDisplay: sortby });\n }\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay }) => propsToDisplay)\n .filter(Boolean)\n .flat();\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj([\n itemEntityUpdated,\n entity\n ]);\n\n const { isPreview } = useContext(MainContext);\n const { entityType, docType } = getEntityData(entity);\n const {\n getAction,\n queryProps,\n inheritedFilters,\n currentSchema,\n filterEntitySchema,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n getEntitySchemas: Object.values(mainSchemas),\n isPreview,\n itemEntityUpdated\n });\n const { data: { entityData = {} } = {}, error: _err, loading: _load } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: itemId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n }\n );\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n variableProps\n );\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity\n });\n const { data, error: cardsError, loading: cardsLoading } = useQuery(action, {\n variables,\n skip: shouldReturn(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)\n });\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, cardsLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (!updatedFilterBy) return null;\n if (isLoading) return '';\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n\n let { results: cardData } = data[SEARCH_PUBLISHED_CONTENT];\n if (!cardData || !cardData.length) return null;\n cardData = entitySameAsCurrentItemEntity ? removeExtraItems(cardData, limit, itemId) : cardData;\n const orderedData = sortResponseData(cardData, itemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(children, cardData, entity, {\n name: variableProps.name\n });\n const updatedCards = appendImages(imagesData, orderedData, itemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardContainer\n cardData={updatedCards}\n entity={entity}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n {...variableProps}\n />\n </>\n );\n};\n\nCardRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array\n};\n\nCardRender.defaultProps = {\n children: [],\n itemsToDisplay: []\n};\n\nexport default CardRender;\n"],"file":"CardRender.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Card/helpers/filter-query-setup.js"],"names":["getStringTypeProps","getGenericRenderVariables","buildRawQueryBase","buildSetFilters","DEFAULT_LIMIT","filterQuerySetup","getEntitySchemas","entity","updatedFilterBy","variableProps","docType","filterOperator","filterEntityRelations","itemsToDisplay","entitySameAsCurrentItemEntity","stringProps","filterValues","length","filterBy","rawQuery","bool","relations","addListFiltersToQuery","limit","settingsLimit","requestLimit","Number","variables","JSON","stringify"],"mappings":";;;;;;AAAA,SAASA,kBAAT,QAAmC,kBAAnC;AACA,SAASC,yBAAT,EAAoCC,iBAApC,EAAuDC,eAAvD,QAA8E,kBAA9E;AACA,SAASC,aAAT,QAA8B,oBAA9B;;AAEA,MAAMC,gBAAgB,GAAG,CAAC;AACxBC,EAAAA,gBADwB;AAExBC,EAAAA,MAFwB;AAGxBC,EAAAA,eAHwB;AAIxBC,EAAAA,aAJwB;AAKxBC,EAAAA,OALwB;AAMxBC,EAAAA,cANwB;AAOxBC,EAAAA,qBAPwB;AAQxBC,EAAAA,cARwB;AASxBC,EAAAA;AATwB,CAAD,KAUnB;AACJ,QAAMC,WAAW,GAAGf,kBAAkB,CAACO,MAAD,EAASK,qBAAT,EAAgCN,gBAAhC,CAAtC;AACA,QAAMU,YAAY,GAChBR,eAAe,IAAIA,eAAe,CAACS,MAAnC,GACId,eAAe,iCAAMM,aAAN;AAAqBS,IAAAA,QAAQ,EAAEV;AAA/B,KADnB,GAEIL,eAAe,CAACM,aAAD,CAHrB;AAKA,QAAMU,QAAQ,GAAG;AACfC,IAAAA,IAAI,EAAElB,iBAAiB,CAAC;AACtBQ,MAAAA,OADsB;AAEtBM,MAAAA,YAFsB;AAGtBL,MAAAA,cAHsB;AAItBU,MAAAA,SAAS,EAAET,qBAJW;AAKtBG,MAAAA,WALsB;AAMtBF,MAAAA,cANsB;AAOtBS,MAAAA,qBAAqB,EAAE;AAPD,KAAD;AADR,GAAjB,CAPI,CAmBJ;;AACA,QAAM;AAAEC,IAAAA,KAAK,EAAEC;AAAT,MAA2Bf,aAAjC;AACA,QAAMc,KAAK,GAAGC,aAAa,IAAIpB,aAA/B,CArBI,CAqB0C;;AAC9C,QAAMqB,YAAY,GAAGX,6BAA6B,GAAGY,MAAM,CAACH,KAAD,CAAN,GAAgB,CAAnB,GAAuBA,KAAzE;AACA,QAAMI,SAAS,GAAG1B,yBAAyB,CACzCW,qBADyC,kCAEpCH,aAFoC;AAErBc,IAAAA,KAAK,EAAEE;AAFc,MAGzCV,WAHyC,EAIzCa,IAAI,CAACC,SAAL,CAAeV,QAAf,CAJyC,CAA3C;
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Card/helpers/filter-query-setup.js"],"names":["getStringTypeProps","getGenericRenderVariables","buildRawQueryBase","buildSetFilters","DEFAULT_LIMIT","filterQuerySetup","getEntitySchemas","entity","updatedFilterBy","variableProps","docType","filterOperator","filterEntityRelations","itemsToDisplay","entitySameAsCurrentItemEntity","stringProps","filterValues","length","filterBy","rawQuery","bool","relations","addListFiltersToQuery","limit","settingsLimit","requestLimit","Number","variables","JSON","stringify"],"mappings":";;;;;;AAAA,SAASA,kBAAT,QAAmC,kBAAnC;AACA,SAASC,yBAAT,EAAoCC,iBAApC,EAAuDC,eAAvD,QAA8E,kBAA9E;AACA,SAASC,aAAT,QAA8B,oBAA9B;;AAEA,MAAMC,gBAAgB,GAAG,CAAC;AACxBC,EAAAA,gBADwB;AAExBC,EAAAA,MAFwB;AAGxBC,EAAAA,eAHwB;AAIxBC,EAAAA,aAJwB;AAKxBC,EAAAA,OALwB;AAMxBC,EAAAA,cANwB;AAOxBC,EAAAA,qBAPwB;AAQxBC,EAAAA,cARwB;AASxBC,EAAAA;AATwB,CAAD,KAUnB;AACJ,QAAMC,WAAW,GAAGf,kBAAkB,CAACO,MAAD,EAASK,qBAAT,EAAgCN,gBAAhC,CAAtC;AACA,QAAMU,YAAY,GAChBR,eAAe,IAAIA,eAAe,CAACS,MAAnC,GACId,eAAe,iCAAMM,aAAN;AAAqBS,IAAAA,QAAQ,EAAEV;AAA/B,KADnB,GAEIL,eAAe,CAACM,aAAD,CAHrB;AAKA,QAAMU,QAAQ,GAAG;AACfC,IAAAA,IAAI,EAAElB,iBAAiB,CAAC;AACtBQ,MAAAA,OADsB;AAEtBM,MAAAA,YAFsB;AAGtBL,MAAAA,cAHsB;AAItBU,MAAAA,SAAS,EAAET,qBAJW;AAKtBG,MAAAA,WALsB;AAMtBF,MAAAA,cANsB;AAOtBS,MAAAA,qBAAqB,EAAE;AAPD,KAAD;AADR,GAAjB,CAPI,CAmBJ;;AACA,QAAM;AAAEC,IAAAA,KAAK,EAAEC;AAAT,MAA2Bf,aAAjC;AACA,QAAMc,KAAK,GAAGC,aAAa,IAAIpB,aAA/B,CArBI,CAqB0C;;AAC9C,QAAMqB,YAAY,GAAGX,6BAA6B,GAAGY,MAAM,CAACH,KAAD,CAAN,GAAgB,CAAnB,GAAuBA,KAAzE;AACA,QAAMI,SAAS,GAAG1B,yBAAyB,CACzCW,qBADyC,kCAEpCH,aAFoC;AAErBc,IAAAA,KAAK,EAAEE;AAFc,MAGzCV,WAHyC,EAIzCa,IAAI,CAACC,SAAL,CAAeV,QAAf,CAJyC,CAA3C;AAOA,SAAO;AAAEQ,IAAAA,SAAF;AAAaJ,IAAAA;AAAb,GAAP;AACD,CAzCD;;AA2CA,eAAelB,gBAAf","sourcesContent":["import { getStringTypeProps } from '@blaze-cms/utils';\nimport { getGenericRenderVariables, buildRawQueryBase, buildSetFilters } from '../../../helpers';\nimport { DEFAULT_LIMIT } from '../../../constants';\n\nconst filterQuerySetup = ({\n getEntitySchemas,\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity\n}) => {\n const stringProps = getStringTypeProps(entity, filterEntityRelations, getEntitySchemas);\n const filterValues =\n updatedFilterBy && updatedFilterBy.length\n ? buildSetFilters({ ...variableProps, filterBy: updatedFilterBy })\n : buildSetFilters(variableProps);\n\n const rawQuery = {\n bool: buildRawQueryBase({\n docType,\n filterValues,\n filterOperator,\n relations: filterEntityRelations,\n stringProps,\n itemsToDisplay,\n addListFiltersToQuery: true\n })\n };\n\n // increase limit to get extra item in case results contain current parent\n const { limit: settingsLimit } = variableProps;\n const limit = settingsLimit || DEFAULT_LIMIT; // all falsey should use default\n const requestLimit = entitySameAsCurrentItemEntity ? Number(limit) + 1 : limit;\n const variables = getGenericRenderVariables(\n filterEntityRelations,\n { ...variableProps, limit: requestLimit },\n stringProps,\n JSON.stringify(rawQuery)\n );\n\n return { variables, limit };\n};\n\nexport default filterQuerySetup;\n"],"file":"filter-query-setup.js"}
|
|
@@ -45,14 +45,15 @@ const ListBuilder = props => {
|
|
|
45
45
|
filterEntitySchema,
|
|
46
46
|
requiredSchema,
|
|
47
47
|
searchValues,
|
|
48
|
-
azFilter
|
|
48
|
+
azFilter,
|
|
49
|
+
sortProperties
|
|
49
50
|
} = props;
|
|
50
51
|
const isInfinite = paginationType === INFINITE;
|
|
51
52
|
const listComponent = getListComponent(isCard, paginationType);
|
|
52
53
|
const propsToDisplayValues = checkPropsToUse(propsToDisplay);
|
|
53
54
|
const entityFields = buildPropsQuery(entitySchema, propsToDisplayValues, props) || '';
|
|
54
55
|
const limitToUse = limit || itemsToDisplay.length;
|
|
55
|
-
const shouldApplyDefaultSort = !
|
|
56
|
+
const shouldApplyDefaultSort = !sortProperties || !sortProperties.length;
|
|
56
57
|
const itemsPerPageToUse = getItemsPerPageToUse(itemsPerPage, limitToUse);
|
|
57
58
|
const initialOffset = getCurrentOffset(offset, itemsPerPageToUse, paginationIndex, limitToUse);
|
|
58
59
|
const {
|
|
@@ -83,7 +84,8 @@ const ListBuilder = props => {
|
|
|
83
84
|
limit: itemsPerPageToUse,
|
|
84
85
|
offset: initialOffset,
|
|
85
86
|
sort,
|
|
86
|
-
sortby
|
|
87
|
+
sortby,
|
|
88
|
+
sortProperties
|
|
87
89
|
}), stringProps, JSON.stringify(azRawQuery), isTextSearchFilterApplied);
|
|
88
90
|
const azAction = getSearchPublishedContent(RAW_RESULTS);
|
|
89
91
|
const {
|
|
@@ -112,7 +114,8 @@ const ListBuilder = props => {
|
|
|
112
114
|
limit: itemsPerPageToUse,
|
|
113
115
|
offset: initialOffset,
|
|
114
116
|
sort,
|
|
115
|
-
sortby
|
|
117
|
+
sortby,
|
|
118
|
+
sortProperties
|
|
116
119
|
}), stringProps, JSON.stringify(rawQuery), isTextSearchFilterApplied);
|
|
117
120
|
return /*#__PURE__*/React.createElement(ListRender, _extends({
|
|
118
121
|
variables: variables,
|
|
@@ -155,7 +158,8 @@ ListBuilder.propTypes = {
|
|
|
155
158
|
operator: PropTypes.string.isRequired,
|
|
156
159
|
filterOperator: PropTypes.string.isRequired,
|
|
157
160
|
paginationType: PropTypes.string,
|
|
158
|
-
azFilter: PropTypes.string
|
|
161
|
+
azFilter: PropTypes.string,
|
|
162
|
+
sortProperties: PropTypes.array
|
|
159
163
|
};
|
|
160
164
|
ListBuilder.defaultProps = {
|
|
161
165
|
entityData: {},
|
|
@@ -165,7 +169,8 @@ ListBuilder.defaultProps = {
|
|
|
165
169
|
offset: 0,
|
|
166
170
|
paginationType: 'infinite',
|
|
167
171
|
inheritedFilters: [],
|
|
168
|
-
azFilter: ''
|
|
172
|
+
azFilter: '',
|
|
173
|
+
sortProperties: []
|
|
169
174
|
};
|
|
170
175
|
export default ListBuilder;
|
|
171
176
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/List/ListBuilder.js"],"names":["React","PropTypes","useQuery","getStringTypeProps","CardRenderWithInfiniteScroll","CardsRender","FullRender","FullRenderWithInfiniteScroll","ListRender","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","isInfinite","listComponent","getListComponent","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","propTypes","string","isRequired","object","bool","number","array","defaultProps","isNotClassic"],"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 {\n CardRenderWithInfiniteScroll,\n CardsRender,\n FullRender,\n FullRenderWithInfiniteScroll\n} from './components';\nimport ListRender from './ListRender';\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 isInfinite = paginationType === INFINITE;\n const listComponent = getListComponent(isCard, paginationType);\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 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;\nfunction getListComponent(isCard, paginationType) {\n const isNotClassic = paginationType !== CLASSIC;\n\n if (isCard) return isNotClassic ? CardRenderWithInfiniteScroll : CardsRender;\n\n return isNotClassic ? FullRenderWithInfiniteScroll : FullRender;\n}\n"],"file":"ListBuilder.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/List/ListBuilder.js"],"names":["React","PropTypes","useQuery","getStringTypeProps","CardRenderWithInfiniteScroll","CardsRender","FullRender","FullRenderWithInfiniteScroll","ListRender","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","sortProperties","isInfinite","listComponent","getListComponent","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","propTypes","string","isRequired","object","bool","number","array","defaultProps","isNotClassic"],"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 {\n CardRenderWithInfiniteScroll,\n CardsRender,\n FullRender,\n FullRenderWithInfiniteScroll\n} from './components';\nimport ListRender from './ListRender';\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 sortProperties\n } = props;\n const isInfinite = paginationType === INFINITE;\n const listComponent = getListComponent(isCard, paginationType);\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const entityFields = buildPropsQuery(entitySchema, propsToDisplayValues, props) || '';\n const limitToUse = limit || itemsToDisplay.length;\n const shouldApplyDefaultSort = !sortProperties || !sortProperties.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 sortProperties\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 sortProperties\n },\n stringProps,\n JSON.stringify(rawQuery),\n isTextSearchFilterApplied\n );\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 sortProperties: PropTypes.array\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 sortProperties: []\n};\n\nexport default ListBuilder;\nfunction getListComponent(isCard, paginationType) {\n const isNotClassic = paginationType !== CLASSIC;\n\n if (isCard) return isNotClassic ? CardRenderWithInfiniteScroll : CardsRender;\n\n return isNotClassic ? FullRenderWithInfiniteScroll : FullRender;\n}\n"],"file":"ListBuilder.js"}
|
|
@@ -13,7 +13,7 @@ import { MainContext } from '@blaze-cms/nextjs-components';
|
|
|
13
13
|
import { getSingleEntitySchema, generateSingleItemQuery } from '../../application/query';
|
|
14
14
|
import ListBuilder from './ListBuilder';
|
|
15
15
|
import { AZ_LIST_TYPE } from './constants';
|
|
16
|
-
import { getAzQueryFilter } from './helpers';
|
|
16
|
+
import { getAzQueryFilter, getSortProps } from './helpers';
|
|
17
17
|
import { getGenericProps, getRequiredSchemas, checkForError, getUnpublishedEntityName, getPaginationIndex, getSearchFilterType, getElasticsearchOperator, buildSearchValuesText, getQueryFilters, getInheritedFilters, getQueryProps } from '../../helpers';
|
|
18
18
|
import { useGetEntitySchemasAsObj } from '../../hooks';
|
|
19
19
|
import { AND_OPERATOR, TEXT_SEARCH, ID, AND, FULL } from '../../constants';
|
|
@@ -30,7 +30,8 @@ const ListFactory = props => {
|
|
|
30
30
|
sortby: defaultSortBy,
|
|
31
31
|
sort: defaultSort,
|
|
32
32
|
searchFilter,
|
|
33
|
-
operator: filterOperator
|
|
33
|
+
operator: filterOperator,
|
|
34
|
+
sortProperties
|
|
34
35
|
} = props;
|
|
35
36
|
const {
|
|
36
37
|
isPreview
|
|
@@ -48,8 +49,16 @@ const ListFactory = props => {
|
|
|
48
49
|
sortby: querySortBy
|
|
49
50
|
} = {}
|
|
50
51
|
} = parseUrl(parsedQuery);
|
|
51
|
-
const
|
|
52
|
-
|
|
52
|
+
const {
|
|
53
|
+
sortbyFilters,
|
|
54
|
+
updatedSortProperties
|
|
55
|
+
} = getSortProps({
|
|
56
|
+
querySort,
|
|
57
|
+
sortProperties,
|
|
58
|
+
defaultSort,
|
|
59
|
+
querySortBy,
|
|
60
|
+
defaultSortBy
|
|
61
|
+
});
|
|
53
62
|
const {
|
|
54
63
|
itemEntity,
|
|
55
64
|
itemId
|
|
@@ -79,7 +88,7 @@ const ListFactory = props => {
|
|
|
79
88
|
data: requiredSchema = {},
|
|
80
89
|
loading: requiredSchemaLoading,
|
|
81
90
|
error: requiredSchemaError
|
|
82
|
-
} = useGetEntitySchemasAsObj(getRequiredSchemas([...filterByProperty, ...
|
|
91
|
+
} = useGetEntitySchemasAsObj(getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema), schemasLoading);
|
|
83
92
|
const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);
|
|
84
93
|
const queryProps = getQueryProps(inheritedFilters, currentSchema, filterEntitySchema);
|
|
85
94
|
const {
|
|
@@ -131,8 +140,9 @@ const ListFactory = props => {
|
|
|
131
140
|
isAZ,
|
|
132
141
|
router,
|
|
133
142
|
entitySchema,
|
|
134
|
-
sort,
|
|
135
|
-
sortby,
|
|
143
|
+
sort: null,
|
|
144
|
+
sortby: null,
|
|
145
|
+
sortProperties: updatedSortProperties,
|
|
136
146
|
azFilter,
|
|
137
147
|
searchValues,
|
|
138
148
|
filterEntitySchema,
|
|
@@ -161,7 +171,8 @@ ListFactory.propTypes = {
|
|
|
161
171
|
name: PropTypes.string,
|
|
162
172
|
sortby: PropTypes.array,
|
|
163
173
|
sort: PropTypes.string,
|
|
164
|
-
searchFilter: PropTypes.object
|
|
174
|
+
searchFilter: PropTypes.object,
|
|
175
|
+
sortProperties: PropTypes.array
|
|
165
176
|
};
|
|
166
177
|
ListFactory.defaultProps = {
|
|
167
178
|
filterBy: [],
|
|
@@ -169,6 +180,7 @@ ListFactory.defaultProps = {
|
|
|
169
180
|
omitWrappers: false,
|
|
170
181
|
name: '',
|
|
171
182
|
sortby: [],
|
|
183
|
+
sortProperties: [],
|
|
172
184
|
sort: '',
|
|
173
185
|
operator: AND,
|
|
174
186
|
searchFilter: {}
|
|
@@ -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","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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/List/ListFactory.js"],"names":["React","useContext","useQuery","parseUrl","PropTypes","useRouter","MainContext","getSingleEntitySchema","generateSingleItemQuery","ListBuilder","AZ_LIST_TYPE","getAzQueryFilter","getSortProps","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","sortProperties","isPreview","router","asPath","parsedQuery","replace","query","url","querySort","querySortBy","sortbyFilters","updatedSortProperties","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, getSortProps } 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 sortProperties\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 { sortbyFilters, updatedSortProperties } = getSortProps({\n querySort,\n sortProperties,\n defaultSort,\n querySortBy,\n defaultSortBy\n });\n\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, ...sortbyFilters], 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: null,\n sortby: null,\n sortProperties: updatedSortProperties,\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 sortProperties: PropTypes.array\n};\n\nListFactory.defaultProps = {\n filterBy: [],\n filterByProperty: [],\n omitWrappers: false,\n name: '',\n sortby: [],\n sortProperties: [],\n sort: '',\n operator: AND,\n searchFilter: {}\n};\n\nexport default ListFactory;\n"],"file":"ListFactory.js"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const getSortProps = ({
|
|
2
|
+
querySort,
|
|
3
|
+
sortProperties,
|
|
4
|
+
defaultSort,
|
|
5
|
+
querySortBy,
|
|
6
|
+
defaultSortBy
|
|
7
|
+
}) => {
|
|
8
|
+
const sort = querySort || (sortProperties.length ? null : defaultSort);
|
|
9
|
+
let sortby = null;
|
|
10
|
+
if (querySortBy) sortby = [querySortBy];else if (!sortProperties.length) sortby = defaultSortBy;
|
|
11
|
+
const updatedSortProperties = [...sortProperties];
|
|
12
|
+
if (sort) updatedSortProperties.unshift({
|
|
13
|
+
sort,
|
|
14
|
+
propsToDisplay: sortby
|
|
15
|
+
});
|
|
16
|
+
const sortbyFilters = updatedSortProperties.map(({
|
|
17
|
+
propsToDisplay: filterProps
|
|
18
|
+
}) => filterProps).filter(Boolean).flat();
|
|
19
|
+
return {
|
|
20
|
+
sortbyFilters,
|
|
21
|
+
updatedSortProperties
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export default getSortProps;
|
|
26
|
+
//# sourceMappingURL=get-sort-props.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/List/helpers/get-sort-props.js"],"names":["getSortProps","querySort","sortProperties","defaultSort","querySortBy","defaultSortBy","sort","length","sortby","updatedSortProperties","unshift","propsToDisplay","sortbyFilters","map","filterProps","filter","Boolean","flat"],"mappings":"AAAA,MAAMA,YAAY,GAAG,CAAC;AAAEC,EAAAA,SAAF;AAAaC,EAAAA,cAAb;AAA6BC,EAAAA,WAA7B;AAA0CC,EAAAA,WAA1C;AAAuDC,EAAAA;AAAvD,CAAD,KAA4E;AAC/F,QAAMC,IAAI,GAAGL,SAAS,KAAKC,cAAc,CAACK,MAAf,GAAwB,IAAxB,GAA+BJ,WAApC,CAAtB;AACA,MAAIK,MAAM,GAAG,IAAb;AACA,MAAIJ,WAAJ,EAAiBI,MAAM,GAAG,CAACJ,WAAD,CAAT,CAAjB,KACK,IAAI,CAACF,cAAc,CAACK,MAApB,EAA4BC,MAAM,GAAGH,aAAT;AAEjC,QAAMI,qBAAqB,GAAG,CAAC,GAAGP,cAAJ,CAA9B;AACA,MAAII,IAAJ,EAAUG,qBAAqB,CAACC,OAAtB,CAA8B;AAAEJ,IAAAA,IAAF;AAAQK,IAAAA,cAAc,EAAEH;AAAxB,GAA9B;AAEV,QAAMI,aAAa,GAAGH,qBAAqB,CACxCI,GADmB,CACf,CAAC;AAAEF,IAAAA,cAAc,EAAEG;AAAlB,GAAD,KAAqCA,WADtB,EAEnBC,MAFmB,CAEZC,OAFY,EAGnBC,IAHmB,EAAtB;AAIA,SAAO;AAAEL,IAAAA,aAAF;AAAiBH,IAAAA;AAAjB,GAAP;AACD,CAdD;;AAgBA,eAAeT,YAAf","sourcesContent":["const getSortProps = ({ querySort, sortProperties, defaultSort, querySortBy, defaultSortBy }) => {\n const sort = querySort || (sortProperties.length ? null : defaultSort);\n let sortby = null;\n if (querySortBy) sortby = [querySortBy];\n else if (!sortProperties.length) sortby = defaultSortBy;\n\n const updatedSortProperties = [...sortProperties];\n if (sort) updatedSortProperties.unshift({ sort, propsToDisplay: sortby });\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay: filterProps }) => filterProps)\n .filter(Boolean)\n .flat();\n return { sortbyFilters, updatedSortProperties };\n};\n\nexport default getSortProps;\n"],"file":"get-sort-props.js"}
|
|
@@ -4,4 +4,5 @@ export { default as buildAzAggregations } from './build-az-aggregations';
|
|
|
4
4
|
export { default as buildAzUrl } from './build-az-url';
|
|
5
5
|
export { default as sortAggs } from './sort-aggs';
|
|
6
6
|
export { default as getItemsPerPageToUse } from './get-items-per-page-to-use';
|
|
7
|
+
export { default as getSortProps } from './get-sort-props';
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/List/helpers/index.js"],"names":["default","buildPaginationItems","getAzQueryFilter","buildAzAggregations","buildAzUrl","sortAggs","getItemsPerPageToUse"],"mappings":"AAAA,SAASA,OAAO,IAAIC,oBAApB,QAAgD,0BAAhD;AACA,SAASD,OAAO,IAAIE,gBAApB,QAA4C,uBAA5C;AACA,SAASF,OAAO,IAAIG,mBAApB,QAA+C,yBAA/C;AACA,SAASH,OAAO,IAAII,UAApB,QAAsC,gBAAtC;AACA,SAASJ,OAAO,IAAIK,QAApB,QAAoC,aAApC;AACA,SAASL,OAAO,IAAIM,oBAApB,QAAgD,6BAAhD","sourcesContent":["export { default as buildPaginationItems } from './build-pagination-items';\nexport { default as getAzQueryFilter } from './get-az-query-filter';\nexport { default as buildAzAggregations } from './build-az-aggregations';\nexport { default as buildAzUrl } from './build-az-url';\nexport { default as sortAggs } from './sort-aggs';\nexport { default as getItemsPerPageToUse } from './get-items-per-page-to-use';\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/List/helpers/index.js"],"names":["default","buildPaginationItems","getAzQueryFilter","buildAzAggregations","buildAzUrl","sortAggs","getItemsPerPageToUse","getSortProps"],"mappings":"AAAA,SAASA,OAAO,IAAIC,oBAApB,QAAgD,0BAAhD;AACA,SAASD,OAAO,IAAIE,gBAApB,QAA4C,uBAA5C;AACA,SAASF,OAAO,IAAIG,mBAApB,QAA+C,yBAA/C;AACA,SAASH,OAAO,IAAII,UAApB,QAAsC,gBAAtC;AACA,SAASJ,OAAO,IAAIK,QAApB,QAAoC,aAApC;AACA,SAASL,OAAO,IAAIM,oBAApB,QAAgD,6BAAhD;AACA,SAASN,OAAO,IAAIO,YAApB,QAAwC,kBAAxC","sourcesContent":["export { default as buildPaginationItems } from './build-pagination-items';\nexport { default as getAzQueryFilter } from './get-az-query-filter';\nexport { default as buildAzAggregations } from './build-az-aggregations';\nexport { default as buildAzUrl } from './build-az-url';\nexport { default as sortAggs } from './sort-aggs';\nexport { default as getItemsPerPageToUse } from './get-items-per-page-to-use';\nexport { default as getSortProps } from './get-sort-props';\n"],"file":"index.js"}
|