@blaze-cms/react-page-builder 0.133.0-admin-updates.13 → 0.133.0-admin-updates.14
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 +12 -0
- package/lib/components/SearchFilter/helpers/build-url-query.js +3 -1
- package/lib/components/SearchFilter/helpers/build-url-query.js.map +1 -1
- package/lib/helpers/build-sort-values.js +4 -1
- package/lib/helpers/build-sort-values.js.map +1 -1
- package/lib/helpers/get-generic-render-variables.js +12 -17
- package/lib/helpers/get-generic-render-variables.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/build-url-query.js +1 -1
- package/lib-es/components/SearchFilter/helpers/build-url-query.js.map +1 -1
- package/lib-es/helpers/build-sort-values.js +1 -1
- package/lib-es/helpers/build-sort-values.js.map +1 -1
- package/lib-es/helpers/get-generic-render-variables.js +1 -2
- package/lib-es/helpers/get-generic-render-variables.js.map +1 -1
- package/package.json +2 -2
- package/src/components/SearchFilter/helpers/build-url-query.js +1 -1
- package/src/helpers/build-sort-values.js +1 -1
- package/src/helpers/get-generic-render-variables.js +1 -2
- package/tests/unit/src/components/SearchFilter/helpers/build-query.test.js +6 -0
- package/tests/unit/src/helpers/build-sort-values.test.js +20 -0
- package/tests/unit/src/helpers/get-generic-render-variables.test.js +25 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [0.133.0-admin-updates.14](https://github.com/thebyte9/blaze/compare/v0.133.0-admin-updates.13...v0.133.0-admin-updates.14) (2023-10-03)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* fixed resert filters breaking when no data was passed ([#4075](https://github.com/thebyte9/blaze/issues/4075)) ([3940977](https://github.com/thebyte9/blaze/commit/39409772074bff7a0e29a9c14223e881363b92e1))
|
|
12
|
+
* handle multiple sort properties correctly ([#4076](https://github.com/thebyte9/blaze/issues/4076)) ([524c48a](https://github.com/thebyte9/blaze/commit/524c48a72e33344d114000738f20d54c00f978d7))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
6
18
|
# [0.133.0-admin-updates.13](https://github.com/thebyte9/blaze/compare/v0.133.0-admin-updates.12...v0.133.0-admin-updates.13) (2023-10-03)
|
|
7
19
|
|
|
8
20
|
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
@@ -17,7 +17,9 @@ require("core-js/modules/es.array.join.js");
|
|
|
17
17
|
var _constants = require("../constants");
|
|
18
18
|
var _parseFilterValue = _interopRequireDefault(require("./parse-filter-value"));
|
|
19
19
|
var _helpers = require("../../../helpers");
|
|
20
|
-
var buildUrlQuery = function buildUrlQuery(
|
|
20
|
+
var buildUrlQuery = function buildUrlQuery() {
|
|
21
|
+
var filterValues = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
22
|
+
var filters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
21
23
|
var listComponentName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
|
22
24
|
var query = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
23
25
|
var newQuery = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-url-query.js","names":["_constants","require","_parseFilterValue","_interopRequireDefault","_helpers","buildUrlQuery","filterValues","
|
|
1
|
+
{"version":3,"file":"build-url-query.js","names":["_constants","require","_parseFilterValue","_interopRequireDefault","_helpers","buildUrlQuery","filterValues","arguments","length","undefined","filters","listComponentName","query","newQuery","queryKeys","searchValue","SEARCH_TERM","searchKey","buildQueryKey","push","concat","forEach","_ref","propsToDisplay","type","TEXT_SEARCH","prop","value","filterKey","parsedValue","parseFilterValue","includes","Object","keys","key","indexOf","join","_default","exports"],"sources":["../../../../src/components/SearchFilter/helpers/build-url-query.js"],"sourcesContent":["import { SEARCH_TERM, TEXT_SEARCH } from '../constants';\nimport parseFilterValue from './parse-filter-value';\nimport { buildQueryKey } from '../../../helpers';\n\nconst buildUrlQuery = (filterValues = {}, filters = [], listComponentName = '', query = {}) => {\n const newQuery = [];\n const queryKeys = [];\n const searchValue = filterValues[SEARCH_TERM];\n const searchKey = buildQueryKey(SEARCH_TERM, listComponentName);\n queryKeys.push(searchKey);\n if (searchValue) newQuery.push(`${searchKey}=${searchValue}`);\n\n filters.forEach(({ propsToDisplay, type }) => {\n if (type === TEXT_SEARCH) return;\n propsToDisplay.forEach(prop => {\n const value = filterValues[prop];\n const filterKey = buildQueryKey(prop, listComponentName);\n queryKeys.push(filterKey);\n const parsedValue = parseFilterValue(filterKey, type, value, newQuery);\n if (parsedValue && !newQuery.includes(parsedValue)) newQuery.push(parsedValue);\n });\n });\n\n Object.keys(query).forEach(key => {\n if (queryKeys.indexOf(key) === -1) newQuery.push(`${key}=${query[key]}`);\n });\n\n return newQuery.join('&');\n};\n\nexport default buildUrlQuery;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAEA,IAAMI,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAA4E;EAAA,IAAxEC,YAAY,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,IAAEG,OAAO,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IAAEI,iBAAiB,GAAAJ,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IAAEK,KAAK,GAAAL,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACxF,IAAMM,QAAQ,GAAG,EAAE;EACnB,IAAMC,SAAS,GAAG,EAAE;EACpB,IAAMC,WAAW,GAAGT,YAAY,CAACU,sBAAW,CAAC;EAC7C,IAAMC,SAAS,GAAG,IAAAC,sBAAa,EAACF,sBAAW,EAAEL,iBAAiB,CAAC;EAC/DG,SAAS,CAACK,IAAI,CAACF,SAAS,CAAC;EACzB,IAAIF,WAAW,EAAEF,QAAQ,CAACM,IAAI,IAAAC,MAAA,CAAIH,SAAS,OAAAG,MAAA,CAAIL,WAAW,CAAE,CAAC;EAE7DL,OAAO,CAACW,OAAO,CAAC,UAAAC,IAAA,EAA8B;IAAA,IAA3BC,cAAc,GAAAD,IAAA,CAAdC,cAAc;MAAEC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACrC,IAAIA,IAAI,KAAKC,sBAAW,EAAE;IAC1BF,cAAc,CAACF,OAAO,CAAC,UAAAK,IAAI,EAAI;MAC7B,IAAMC,KAAK,GAAGrB,YAAY,CAACoB,IAAI,CAAC;MAChC,IAAME,SAAS,GAAG,IAAAV,sBAAa,EAACQ,IAAI,EAAEf,iBAAiB,CAAC;MACxDG,SAAS,CAACK,IAAI,CAACS,SAAS,CAAC;MACzB,IAAMC,WAAW,GAAG,IAAAC,4BAAgB,EAACF,SAAS,EAAEJ,IAAI,EAAEG,KAAK,EAAEd,QAAQ,CAAC;MACtE,IAAIgB,WAAW,IAAI,CAAChB,QAAQ,CAACkB,QAAQ,CAACF,WAAW,CAAC,EAAEhB,QAAQ,CAACM,IAAI,CAACU,WAAW,CAAC;IAChF,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFG,MAAM,CAACC,IAAI,CAACrB,KAAK,CAAC,CAACS,OAAO,CAAC,UAAAa,GAAG,EAAI;IAChC,IAAIpB,SAAS,CAACqB,OAAO,CAACD,GAAG,CAAC,KAAK,CAAC,CAAC,EAAErB,QAAQ,CAACM,IAAI,IAAAC,MAAA,CAAIc,GAAG,OAAAd,MAAA,CAAIR,KAAK,CAACsB,GAAG,CAAC,CAAE,CAAC;EAC1E,CAAC,CAAC;EAEF,OAAOrB,QAAQ,CAACuB,IAAI,CAAC,GAAG,CAAC;AAC3B,CAAC;AAAC,IAAAC,QAAA,GAEahC,aAAa;AAAAiC,OAAA,cAAAD,QAAA"}
|
|
@@ -14,6 +14,7 @@ require("core-js/modules/es.array.join.js");
|
|
|
14
14
|
require("core-js/modules/es.array.filter.js");
|
|
15
15
|
require("core-js/modules/es.array.map.js");
|
|
16
16
|
require("core-js/modules/es.array.concat.js");
|
|
17
|
+
require("core-js/modules/es.array.index-of.js");
|
|
17
18
|
var _getSortByFieldName = _interopRequireDefault(require("./get-sort-by-field-name"));
|
|
18
19
|
var buildAzSort = function buildAzSort(sortFilters, relations, stringProps) {
|
|
19
20
|
var sortValues = {};
|
|
@@ -39,7 +40,9 @@ var buildSortValues = function buildSortValues(sortFilters, relations, stringPro
|
|
|
39
40
|
if (!sort) return null;
|
|
40
41
|
var sortFieldName = (0, _getSortByFieldName["default"])(relations, propsToDisplay, stringProps);
|
|
41
42
|
return sortFieldName ? "".concat(sortFieldName, ":").concat(sort.toLowerCase()) : null;
|
|
42
|
-
}).filter(
|
|
43
|
+
}).filter(function (item, index, arr) {
|
|
44
|
+
return !item ? false : arr.indexOf(item) === index;
|
|
45
|
+
}).join(',');
|
|
43
46
|
return {
|
|
44
47
|
sort: sortValues
|
|
45
48
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-sort-values.js","names":["_getSortByFieldName","_interopRequireDefault","require","buildAzSort","sortFilters","relations","stringProps","sortValues","forEach","_ref","sort","propsToDisplay","sortFieldName","getSortbyFieldName","toLowerCase","buildSortValues","useSortObject","length","map","_ref2","isScore","concat","filter","
|
|
1
|
+
{"version":3,"file":"build-sort-values.js","names":["_getSortByFieldName","_interopRequireDefault","require","buildAzSort","sortFilters","relations","stringProps","sortValues","forEach","_ref","sort","propsToDisplay","sortFieldName","getSortbyFieldName","toLowerCase","buildSortValues","useSortObject","length","map","_ref2","isScore","concat","filter","item","index","arr","indexOf","join","_default","exports"],"sources":["../../src/helpers/build-sort-values.js"],"sourcesContent":["import getSortbyFieldName from './get-sort-by-field-name';\n\nconst buildAzSort = (sortFilters, relations, stringProps) => {\n const sortValues = {};\n sortFilters.forEach(({ sort, propsToDisplay }) => {\n if (!sort) return;\n const sortFieldName = getSortbyFieldName(relations, propsToDisplay, stringProps);\n if (sortFieldName) sortValues[sortFieldName] = sort.toLowerCase();\n });\n\n return sortValues;\n};\n\nconst buildSortValues = (sortFilters, relations, stringProps, useSortObject) => {\n if (!sortFilters || !sortFilters.length) return useSortObject ? null : { sort: [] };\n if (useSortObject) return buildAzSort(sortFilters, relations, stringProps);\n\n const sortValues = sortFilters\n .map(({ sort, propsToDisplay, isScore }) => {\n if (isScore) return '_score';\n if (!sort) return null;\n\n const sortFieldName = getSortbyFieldName(relations, propsToDisplay, stringProps);\n return sortFieldName ? `${sortFieldName}:${sort.toLowerCase()}` : null;\n })\n .filter((item, index, arr) => (!item ? false : arr.indexOf(item) === index))\n .join(',');\n\n return { sort: sortValues };\n};\n\nexport default buildSortValues;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,mBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAIC,WAAW,EAAEC,SAAS,EAAEC,WAAW,EAAK;EAC3D,IAAMC,UAAU,GAAG,CAAC,CAAC;EACrBH,WAAW,CAACI,OAAO,CAAC,UAAAC,IAAA,EAA8B;IAAA,IAA3BC,IAAI,GAAAD,IAAA,CAAJC,IAAI;MAAEC,cAAc,GAAAF,IAAA,CAAdE,cAAc;IACzC,IAAI,CAACD,IAAI,EAAE;IACX,IAAME,aAAa,GAAG,IAAAC,8BAAkB,EAACR,SAAS,EAAEM,cAAc,EAAEL,WAAW,CAAC;IAChF,IAAIM,aAAa,EAAEL,UAAU,CAACK,aAAa,CAAC,GAAGF,IAAI,CAACI,WAAW,CAAC,CAAC;EACnE,CAAC,CAAC;EAEF,OAAOP,UAAU;AACnB,CAAC;AAED,IAAMQ,eAAe,GAAG,SAAlBA,eAAeA,CAAIX,WAAW,EAAEC,SAAS,EAAEC,WAAW,EAAEU,aAAa,EAAK;EAC9E,IAAI,CAACZ,WAAW,IAAI,CAACA,WAAW,CAACa,MAAM,EAAE,OAAOD,aAAa,GAAG,IAAI,GAAG;IAAEN,IAAI,EAAE;EAAG,CAAC;EACnF,IAAIM,aAAa,EAAE,OAAOb,WAAW,CAACC,WAAW,EAAEC,SAAS,EAAEC,WAAW,CAAC;EAE1E,IAAMC,UAAU,GAAGH,WAAW,CAC3Bc,GAAG,CAAC,UAAAC,KAAA,EAAuC;IAAA,IAApCT,IAAI,GAAAS,KAAA,CAAJT,IAAI;MAAEC,cAAc,GAAAQ,KAAA,CAAdR,cAAc;MAAES,OAAO,GAAAD,KAAA,CAAPC,OAAO;IACnC,IAAIA,OAAO,EAAE,OAAO,QAAQ;IAC5B,IAAI,CAACV,IAAI,EAAE,OAAO,IAAI;IAEtB,IAAME,aAAa,GAAG,IAAAC,8BAAkB,EAACR,SAAS,EAAEM,cAAc,EAAEL,WAAW,CAAC;IAChF,OAAOM,aAAa,MAAAS,MAAA,CAAMT,aAAa,OAAAS,MAAA,CAAIX,IAAI,CAACI,WAAW,CAAC,CAAC,IAAK,IAAI;EACxE,CAAC,CAAC,CACDQ,MAAM,CAAC,UAACC,IAAI,EAAEC,KAAK,EAAEC,GAAG;IAAA,OAAM,CAACF,IAAI,GAAG,KAAK,GAAGE,GAAG,CAACC,OAAO,CAACH,IAAI,CAAC,KAAKC,KAAK;EAAA,CAAC,CAAC,CAC3EG,IAAI,CAAC,GAAG,CAAC;EAEZ,OAAO;IAAEjB,IAAI,EAAEH;EAAW,CAAC;AAC7B,CAAC;AAAC,IAAAqB,QAAA,GAEab,eAAe;AAAAc,OAAA,cAAAD,QAAA"}
|
|
@@ -15,9 +15,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
15
15
|
value: true
|
|
16
16
|
});
|
|
17
17
|
exports["default"] = void 0;
|
|
18
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
19
18
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
20
|
-
var
|
|
19
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
21
20
|
require("core-js/modules/es.array.sort.js");
|
|
22
21
|
require("core-js/modules/es.array.concat.js");
|
|
23
22
|
require("core-js/modules/es.number.constructor.js");
|
|
@@ -30,25 +29,21 @@ var getCorrectSort = function getCorrectSort(relations, filterProps, stringProps
|
|
|
30
29
|
sortby = filterProps.sortby,
|
|
31
30
|
_filterProps$sortProp = filterProps.sortProperties,
|
|
32
31
|
sortProperties = _filterProps$sortProp === void 0 ? [] : _filterProps$sortProp;
|
|
33
|
-
var _ref = sortProperties || [],
|
|
34
|
-
_ref2 = (0, _slicedToArray2["default"])(_ref, 1),
|
|
35
|
-
_ref2$ = _ref2[0],
|
|
36
|
-
sortProperty = _ref2$ === void 0 ? [] : _ref2$;
|
|
37
32
|
return (0, _buildSortValues["default"])([{
|
|
38
33
|
sort: sort,
|
|
39
34
|
propsToDisplay: sortby
|
|
40
|
-
}].concat([
|
|
35
|
+
}].concat((0, _toConsumableArray2["default"])(sortProperties)), relations, stringProps, useSortObject);
|
|
41
36
|
};
|
|
42
|
-
var getGenericRenderVariables = function getGenericRenderVariables(
|
|
43
|
-
var relations =
|
|
44
|
-
|
|
45
|
-
filterProps =
|
|
46
|
-
|
|
47
|
-
stringProps =
|
|
48
|
-
|
|
49
|
-
rawQuery =
|
|
50
|
-
|
|
51
|
-
useRandomSort =
|
|
37
|
+
var getGenericRenderVariables = function getGenericRenderVariables(_ref) {
|
|
38
|
+
var relations = _ref.relations,
|
|
39
|
+
_ref$filterProps = _ref.filterProps,
|
|
40
|
+
filterProps = _ref$filterProps === void 0 ? {} : _ref$filterProps,
|
|
41
|
+
_ref$stringProps = _ref.stringProps,
|
|
42
|
+
stringProps = _ref$stringProps === void 0 ? [] : _ref$stringProps,
|
|
43
|
+
_ref$rawQuery = _ref.rawQuery,
|
|
44
|
+
rawQuery = _ref$rawQuery === void 0 ? {} : _ref$rawQuery,
|
|
45
|
+
_ref$useRandomSort = _ref.useRandomSort,
|
|
46
|
+
useRandomSort = _ref$useRandomSort === void 0 ? false : _ref$useRandomSort;
|
|
52
47
|
var rawQueryCopy = _objectSpread({}, rawQuery);
|
|
53
48
|
var _filterProps$limit = filterProps.limit,
|
|
54
49
|
limit = _filterProps$limit === void 0 ? _constants.DEFAULT_LIMIT : _filterProps$limit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-generic-render-variables.js","names":["_constants","require","_buildSortValues","_interopRequireDefault","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","getCorrectSort","relations","filterProps","stringProps","useSortObject","sort","sortby","_filterProps$sortProp","sortProperties","
|
|
1
|
+
{"version":3,"file":"get-generic-render-variables.js","names":["_constants","require","_buildSortValues","_interopRequireDefault","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","getCorrectSort","relations","filterProps","stringProps","useSortObject","sort","sortby","_filterProps$sortProp","sortProperties","buildSortValues","propsToDisplay","concat","_toConsumableArray2","getGenericRenderVariables","_ref","_ref$filterProps","_ref$stringProps","_ref$rawQuery","rawQuery","_ref$useRandomSort","useRandomSort","rawQueryCopy","_filterProps$limit","limit","DEFAULT_LIMIT","offset","limitToUse","Number","offsetToUse","DEFAULT_OFFSET","rawQueryStringified","JSON","stringify","query","function_score","random_score","boost_mode","_default","exports"],"sources":["../../src/helpers/get-generic-render-variables.js"],"sourcesContent":["import { DEFAULT_LIMIT, DEFAULT_OFFSET } from '../constants';\nimport buildSortValues from './build-sort-values';\n\nconst getCorrectSort = (relations, filterProps, stringProps, useSortObject) => {\n const { sort, sortby, sortProperties = [] } = filterProps;\n\n return buildSortValues(\n [{ sort, propsToDisplay: sortby }, ...sortProperties],\n relations,\n stringProps,\n useSortObject\n );\n};\n\nconst getGenericRenderVariables = ({\n relations,\n filterProps = {},\n stringProps = [],\n rawQuery = {},\n useRandomSort = false\n}) => {\n const rawQueryCopy = { ...rawQuery };\n const { limit = DEFAULT_LIMIT, offset } = filterProps;\n const limitToUse = Number(limit || DEFAULT_LIMIT);\n const offsetToUse = Number(offset || DEFAULT_OFFSET);\n\n if (useRandomSort) {\n const rawQueryStringified = JSON.stringify({\n query: {\n function_score: {\n query: rawQueryCopy && rawQueryCopy.query ? rawQueryCopy.query : rawQueryCopy,\n random_score: {},\n boost_mode: 'replace'\n }\n }\n });\n\n return {\n limit: limitToUse,\n offset: offsetToUse,\n rawQueryStringified\n };\n }\n\n const sort = getCorrectSort(relations, filterProps, stringProps, !!rawQueryCopy.sort);\n\n if (rawQueryCopy.sort && sort) {\n rawQueryCopy.sort = [...rawQueryCopy.sort, sort];\n\n return {\n limit: limitToUse,\n offset: offsetToUse,\n rawQueryStringified: JSON.stringify(rawQueryCopy)\n };\n }\n\n return {\n limit: limitToUse,\n offset: offsetToUse,\n ...sort,\n rawQueryStringified: JSON.stringify(rawQueryCopy)\n };\n};\n\nexport default getGenericRenderVariables;\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SEARCH_TERM, TEXT_SEARCH } from '../constants';
|
|
2
2
|
import parseFilterValue from './parse-filter-value';
|
|
3
3
|
import { buildQueryKey } from '../../../helpers';
|
|
4
|
-
const buildUrlQuery = (filterValues, filters, listComponentName = '', query = {}) => {
|
|
4
|
+
const buildUrlQuery = (filterValues = {}, filters = [], listComponentName = '', query = {}) => {
|
|
5
5
|
const newQuery = [];
|
|
6
6
|
const queryKeys = [];
|
|
7
7
|
const searchValue = filterValues[SEARCH_TERM];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-url-query.js","names":["SEARCH_TERM","TEXT_SEARCH","parseFilterValue","buildQueryKey","buildUrlQuery","filterValues","filters","listComponentName","query","newQuery","queryKeys","searchValue","searchKey","push","forEach","propsToDisplay","type","prop","value","filterKey","parsedValue","includes","Object","keys","key","indexOf","join"],"sources":["../../../../src/components/SearchFilter/helpers/build-url-query.js"],"sourcesContent":["import { SEARCH_TERM, TEXT_SEARCH } from '../constants';\nimport parseFilterValue from './parse-filter-value';\nimport { buildQueryKey } from '../../../helpers';\n\nconst buildUrlQuery = (filterValues, filters, listComponentName = '', query = {}) => {\n const newQuery = [];\n const queryKeys = [];\n const searchValue = filterValues[SEARCH_TERM];\n const searchKey = buildQueryKey(SEARCH_TERM, listComponentName);\n queryKeys.push(searchKey);\n if (searchValue) newQuery.push(`${searchKey}=${searchValue}`);\n\n filters.forEach(({ propsToDisplay, type }) => {\n if (type === TEXT_SEARCH) return;\n propsToDisplay.forEach(prop => {\n const value = filterValues[prop];\n const filterKey = buildQueryKey(prop, listComponentName);\n queryKeys.push(filterKey);\n const parsedValue = parseFilterValue(filterKey, type, value, newQuery);\n if (parsedValue && !newQuery.includes(parsedValue)) newQuery.push(parsedValue);\n });\n });\n\n Object.keys(query).forEach(key => {\n if (queryKeys.indexOf(key) === -1) newQuery.push(`${key}=${query[key]}`);\n });\n\n return newQuery.join('&');\n};\n\nexport default buildUrlQuery;\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,WAAW,QAAQ,cAAc;AACvD,OAAOC,gBAAgB,MAAM,sBAAsB;AACnD,SAASC,aAAa,QAAQ,kBAAkB;AAEhD,MAAMC,aAAa,GAAGA,CAACC,YAAY,EAAEC,OAAO,EAAEC,iBAAiB,GAAG,EAAE,EAAEC,KAAK,GAAG,CAAC,CAAC,KAAK;
|
|
1
|
+
{"version":3,"file":"build-url-query.js","names":["SEARCH_TERM","TEXT_SEARCH","parseFilterValue","buildQueryKey","buildUrlQuery","filterValues","filters","listComponentName","query","newQuery","queryKeys","searchValue","searchKey","push","forEach","propsToDisplay","type","prop","value","filterKey","parsedValue","includes","Object","keys","key","indexOf","join"],"sources":["../../../../src/components/SearchFilter/helpers/build-url-query.js"],"sourcesContent":["import { SEARCH_TERM, TEXT_SEARCH } from '../constants';\nimport parseFilterValue from './parse-filter-value';\nimport { buildQueryKey } from '../../../helpers';\n\nconst buildUrlQuery = (filterValues = {}, filters = [], listComponentName = '', query = {}) => {\n const newQuery = [];\n const queryKeys = [];\n const searchValue = filterValues[SEARCH_TERM];\n const searchKey = buildQueryKey(SEARCH_TERM, listComponentName);\n queryKeys.push(searchKey);\n if (searchValue) newQuery.push(`${searchKey}=${searchValue}`);\n\n filters.forEach(({ propsToDisplay, type }) => {\n if (type === TEXT_SEARCH) return;\n propsToDisplay.forEach(prop => {\n const value = filterValues[prop];\n const filterKey = buildQueryKey(prop, listComponentName);\n queryKeys.push(filterKey);\n const parsedValue = parseFilterValue(filterKey, type, value, newQuery);\n if (parsedValue && !newQuery.includes(parsedValue)) newQuery.push(parsedValue);\n });\n });\n\n Object.keys(query).forEach(key => {\n if (queryKeys.indexOf(key) === -1) newQuery.push(`${key}=${query[key]}`);\n });\n\n return newQuery.join('&');\n};\n\nexport default buildUrlQuery;\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,WAAW,QAAQ,cAAc;AACvD,OAAOC,gBAAgB,MAAM,sBAAsB;AACnD,SAASC,aAAa,QAAQ,kBAAkB;AAEhD,MAAMC,aAAa,GAAGA,CAACC,YAAY,GAAG,CAAC,CAAC,EAAEC,OAAO,GAAG,EAAE,EAAEC,iBAAiB,GAAG,EAAE,EAAEC,KAAK,GAAG,CAAC,CAAC,KAAK;EAC7F,MAAMC,QAAQ,GAAG,EAAE;EACnB,MAAMC,SAAS,GAAG,EAAE;EACpB,MAAMC,WAAW,GAAGN,YAAY,CAACL,WAAW,CAAC;EAC7C,MAAMY,SAAS,GAAGT,aAAa,CAACH,WAAW,EAAEO,iBAAiB,CAAC;EAC/DG,SAAS,CAACG,IAAI,CAACD,SAAS,CAAC;EACzB,IAAID,WAAW,EAAEF,QAAQ,CAACI,IAAI,CAAE,GAAED,SAAU,IAAGD,WAAY,EAAC,CAAC;EAE7DL,OAAO,CAACQ,OAAO,CAAC,CAAC;IAAEC,cAAc;IAAEC;EAAK,CAAC,KAAK;IAC5C,IAAIA,IAAI,KAAKf,WAAW,EAAE;IAC1Bc,cAAc,CAACD,OAAO,CAACG,IAAI,IAAI;MAC7B,MAAMC,KAAK,GAAGb,YAAY,CAACY,IAAI,CAAC;MAChC,MAAME,SAAS,GAAGhB,aAAa,CAACc,IAAI,EAAEV,iBAAiB,CAAC;MACxDG,SAAS,CAACG,IAAI,CAACM,SAAS,CAAC;MACzB,MAAMC,WAAW,GAAGlB,gBAAgB,CAACiB,SAAS,EAAEH,IAAI,EAAEE,KAAK,EAAET,QAAQ,CAAC;MACtE,IAAIW,WAAW,IAAI,CAACX,QAAQ,CAACY,QAAQ,CAACD,WAAW,CAAC,EAAEX,QAAQ,CAACI,IAAI,CAACO,WAAW,CAAC;IAChF,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFE,MAAM,CAACC,IAAI,CAACf,KAAK,CAAC,CAACM,OAAO,CAACU,GAAG,IAAI;IAChC,IAAId,SAAS,CAACe,OAAO,CAACD,GAAG,CAAC,KAAK,CAAC,CAAC,EAAEf,QAAQ,CAACI,IAAI,CAAE,GAAEW,GAAI,IAAGhB,KAAK,CAACgB,GAAG,CAAE,EAAC,CAAC;EAC1E,CAAC,CAAC;EAEF,OAAOf,QAAQ,CAACiB,IAAI,CAAC,GAAG,CAAC;AAC3B,CAAC;AAED,eAAetB,aAAa"}
|
|
@@ -25,7 +25,7 @@ const buildSortValues = (sortFilters, relations, stringProps, useSortObject) =>
|
|
|
25
25
|
if (!sort) return null;
|
|
26
26
|
const sortFieldName = getSortbyFieldName(relations, propsToDisplay, stringProps);
|
|
27
27
|
return sortFieldName ? `${sortFieldName}:${sort.toLowerCase()}` : null;
|
|
28
|
-
}).filter(
|
|
28
|
+
}).filter((item, index, arr) => !item ? false : arr.indexOf(item) === index).join(',');
|
|
29
29
|
return {
|
|
30
30
|
sort: sortValues
|
|
31
31
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-sort-values.js","names":["getSortbyFieldName","buildAzSort","sortFilters","relations","stringProps","sortValues","forEach","sort","propsToDisplay","sortFieldName","toLowerCase","buildSortValues","useSortObject","length","map","isScore","filter","
|
|
1
|
+
{"version":3,"file":"build-sort-values.js","names":["getSortbyFieldName","buildAzSort","sortFilters","relations","stringProps","sortValues","forEach","sort","propsToDisplay","sortFieldName","toLowerCase","buildSortValues","useSortObject","length","map","isScore","filter","item","index","arr","indexOf","join"],"sources":["../../src/helpers/build-sort-values.js"],"sourcesContent":["import getSortbyFieldName from './get-sort-by-field-name';\n\nconst buildAzSort = (sortFilters, relations, stringProps) => {\n const sortValues = {};\n sortFilters.forEach(({ sort, propsToDisplay }) => {\n if (!sort) return;\n const sortFieldName = getSortbyFieldName(relations, propsToDisplay, stringProps);\n if (sortFieldName) sortValues[sortFieldName] = sort.toLowerCase();\n });\n\n return sortValues;\n};\n\nconst buildSortValues = (sortFilters, relations, stringProps, useSortObject) => {\n if (!sortFilters || !sortFilters.length) return useSortObject ? null : { sort: [] };\n if (useSortObject) return buildAzSort(sortFilters, relations, stringProps);\n\n const sortValues = sortFilters\n .map(({ sort, propsToDisplay, isScore }) => {\n if (isScore) return '_score';\n if (!sort) return null;\n\n const sortFieldName = getSortbyFieldName(relations, propsToDisplay, stringProps);\n return sortFieldName ? `${sortFieldName}:${sort.toLowerCase()}` : null;\n })\n .filter((item, index, arr) => (!item ? false : arr.indexOf(item) === index))\n .join(',');\n\n return { sort: sortValues };\n};\n\nexport default buildSortValues;\n"],"mappings":"AAAA,OAAOA,kBAAkB,MAAM,0BAA0B;AAEzD,MAAMC,WAAW,GAAGA,CAACC,WAAW,EAAEC,SAAS,EAAEC,WAAW,KAAK;EAC3D,MAAMC,UAAU,GAAG,CAAC,CAAC;EACrBH,WAAW,CAACI,OAAO,CAAC,CAAC;IAAEC,IAAI;IAAEC;EAAe,CAAC,KAAK;IAChD,IAAI,CAACD,IAAI,EAAE;IACX,MAAME,aAAa,GAAGT,kBAAkB,CAACG,SAAS,EAAEK,cAAc,EAAEJ,WAAW,CAAC;IAChF,IAAIK,aAAa,EAAEJ,UAAU,CAACI,aAAa,CAAC,GAAGF,IAAI,CAACG,WAAW,CAAC,CAAC;EACnE,CAAC,CAAC;EAEF,OAAOL,UAAU;AACnB,CAAC;AAED,MAAMM,eAAe,GAAGA,CAACT,WAAW,EAAEC,SAAS,EAAEC,WAAW,EAAEQ,aAAa,KAAK;EAC9E,IAAI,CAACV,WAAW,IAAI,CAACA,WAAW,CAACW,MAAM,EAAE,OAAOD,aAAa,GAAG,IAAI,GAAG;IAAEL,IAAI,EAAE;EAAG,CAAC;EACnF,IAAIK,aAAa,EAAE,OAAOX,WAAW,CAACC,WAAW,EAAEC,SAAS,EAAEC,WAAW,CAAC;EAE1E,MAAMC,UAAU,GAAGH,WAAW,CAC3BY,GAAG,CAAC,CAAC;IAAEP,IAAI;IAAEC,cAAc;IAAEO;EAAQ,CAAC,KAAK;IAC1C,IAAIA,OAAO,EAAE,OAAO,QAAQ;IAC5B,IAAI,CAACR,IAAI,EAAE,OAAO,IAAI;IAEtB,MAAME,aAAa,GAAGT,kBAAkB,CAACG,SAAS,EAAEK,cAAc,EAAEJ,WAAW,CAAC;IAChF,OAAOK,aAAa,GAAI,GAAEA,aAAc,IAAGF,IAAI,CAACG,WAAW,CAAC,CAAE,EAAC,GAAG,IAAI;EACxE,CAAC,CAAC,CACDM,MAAM,CAAC,CAACC,IAAI,EAAEC,KAAK,EAAEC,GAAG,KAAM,CAACF,IAAI,GAAG,KAAK,GAAGE,GAAG,CAACC,OAAO,CAACH,IAAI,CAAC,KAAKC,KAAM,CAAC,CAC3EG,IAAI,CAAC,GAAG,CAAC;EAEZ,OAAO;IAAEd,IAAI,EAAEF;EAAW,CAAC;AAC7B,CAAC;AAED,eAAeM,eAAe"}
|
|
@@ -9,11 +9,10 @@ const getCorrectSort = (relations, filterProps, stringProps, useSortObject) => {
|
|
|
9
9
|
sortby,
|
|
10
10
|
sortProperties = []
|
|
11
11
|
} = filterProps;
|
|
12
|
-
const [sortProperty = []] = sortProperties || [];
|
|
13
12
|
return buildSortValues([{
|
|
14
13
|
sort,
|
|
15
14
|
propsToDisplay: sortby
|
|
16
|
-
}, ...
|
|
15
|
+
}, ...sortProperties], relations, stringProps, useSortObject);
|
|
17
16
|
};
|
|
18
17
|
const getGenericRenderVariables = ({
|
|
19
18
|
relations,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-generic-render-variables.js","names":["DEFAULT_LIMIT","DEFAULT_OFFSET","buildSortValues","getCorrectSort","relations","filterProps","stringProps","useSortObject","sort","sortby","sortProperties","
|
|
1
|
+
{"version":3,"file":"get-generic-render-variables.js","names":["DEFAULT_LIMIT","DEFAULT_OFFSET","buildSortValues","getCorrectSort","relations","filterProps","stringProps","useSortObject","sort","sortby","sortProperties","propsToDisplay","getGenericRenderVariables","rawQuery","useRandomSort","rawQueryCopy","_objectSpread","limit","offset","limitToUse","Number","offsetToUse","rawQueryStringified","JSON","stringify","query","function_score","random_score","boost_mode"],"sources":["../../src/helpers/get-generic-render-variables.js"],"sourcesContent":["import { DEFAULT_LIMIT, DEFAULT_OFFSET } from '../constants';\nimport buildSortValues from './build-sort-values';\n\nconst getCorrectSort = (relations, filterProps, stringProps, useSortObject) => {\n const { sort, sortby, sortProperties = [] } = filterProps;\n\n return buildSortValues(\n [{ sort, propsToDisplay: sortby }, ...sortProperties],\n relations,\n stringProps,\n useSortObject\n );\n};\n\nconst getGenericRenderVariables = ({\n relations,\n filterProps = {},\n stringProps = [],\n rawQuery = {},\n useRandomSort = false\n}) => {\n const rawQueryCopy = { ...rawQuery };\n const { limit = DEFAULT_LIMIT, offset } = filterProps;\n const limitToUse = Number(limit || DEFAULT_LIMIT);\n const offsetToUse = Number(offset || DEFAULT_OFFSET);\n\n if (useRandomSort) {\n const rawQueryStringified = JSON.stringify({\n query: {\n function_score: {\n query: rawQueryCopy && rawQueryCopy.query ? rawQueryCopy.query : rawQueryCopy,\n random_score: {},\n boost_mode: 'replace'\n }\n }\n });\n\n return {\n limit: limitToUse,\n offset: offsetToUse,\n rawQueryStringified\n };\n }\n\n const sort = getCorrectSort(relations, filterProps, stringProps, !!rawQueryCopy.sort);\n\n if (rawQueryCopy.sort && sort) {\n rawQueryCopy.sort = [...rawQueryCopy.sort, sort];\n\n return {\n limit: limitToUse,\n offset: offsetToUse,\n rawQueryStringified: JSON.stringify(rawQueryCopy)\n };\n }\n\n return {\n limit: limitToUse,\n offset: offsetToUse,\n ...sort,\n rawQueryStringified: JSON.stringify(rawQueryCopy)\n };\n};\n\nexport default getGenericRenderVariables;\n"],"mappings":";;;AAAA,SAASA,aAAa,EAAEC,cAAc,QAAQ,cAAc;AAC5D,OAAOC,eAAe,MAAM,qBAAqB;AAEjD,MAAMC,cAAc,GAAGA,CAACC,SAAS,EAAEC,WAAW,EAAEC,WAAW,EAAEC,aAAa,KAAK;EAC7E,MAAM;IAAEC,IAAI;IAAEC,MAAM;IAAEC,cAAc,GAAG;EAAG,CAAC,GAAGL,WAAW;EAEzD,OAAOH,eAAe,CACpB,CAAC;IAAEM,IAAI;IAAEG,cAAc,EAAEF;EAAO,CAAC,EAAE,GAAGC,cAAc,CAAC,EACrDN,SAAS,EACTE,WAAW,EACXC,aACF,CAAC;AACH,CAAC;AAED,MAAMK,yBAAyB,GAAGA,CAAC;EACjCR,SAAS;EACTC,WAAW,GAAG,CAAC,CAAC;EAChBC,WAAW,GAAG,EAAE;EAChBO,QAAQ,GAAG,CAAC,CAAC;EACbC,aAAa,GAAG;AAClB,CAAC,KAAK;EACJ,MAAMC,YAAY,GAAAC,aAAA,KAAQH,QAAQ,CAAE;EACpC,MAAM;IAAEI,KAAK,GAAGjB,aAAa;IAAEkB;EAAO,CAAC,GAAGb,WAAW;EACrD,MAAMc,UAAU,GAAGC,MAAM,CAACH,KAAK,IAAIjB,aAAa,CAAC;EACjD,MAAMqB,WAAW,GAAGD,MAAM,CAACF,MAAM,IAAIjB,cAAc,CAAC;EAEpD,IAAIa,aAAa,EAAE;IACjB,MAAMQ,mBAAmB,GAAGC,IAAI,CAACC,SAAS,CAAC;MACzCC,KAAK,EAAE;QACLC,cAAc,EAAE;UACdD,KAAK,EAAEV,YAAY,IAAIA,YAAY,CAACU,KAAK,GAAGV,YAAY,CAACU,KAAK,GAAGV,YAAY;UAC7EY,YAAY,EAAE,CAAC,CAAC;UAChBC,UAAU,EAAE;QACd;MACF;IACF,CAAC,CAAC;IAEF,OAAO;MACLX,KAAK,EAAEE,UAAU;MACjBD,MAAM,EAAEG,WAAW;MACnBC;IACF,CAAC;EACH;EAEA,MAAMd,IAAI,GAAGL,cAAc,CAACC,SAAS,EAAEC,WAAW,EAAEC,WAAW,EAAE,CAAC,CAACS,YAAY,CAACP,IAAI,CAAC;EAErF,IAAIO,YAAY,CAACP,IAAI,IAAIA,IAAI,EAAE;IAC7BO,YAAY,CAACP,IAAI,GAAG,CAAC,GAAGO,YAAY,CAACP,IAAI,EAAEA,IAAI,CAAC;IAEhD,OAAO;MACLS,KAAK,EAAEE,UAAU;MACjBD,MAAM,EAAEG,WAAW;MACnBC,mBAAmB,EAAEC,IAAI,CAACC,SAAS,CAACT,YAAY;IAClD,CAAC;EACH;EAEA,OAAAC,aAAA,CAAAA,aAAA;IACEC,KAAK,EAAEE,UAAU;IACjBD,MAAM,EAAEG;EAAW,GAChBb,IAAI;IACPc,mBAAmB,EAAEC,IAAI,CAACC,SAAS,CAACT,YAAY;EAAC;AAErD,CAAC;AAED,eAAeH,yBAAyB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blaze-cms/react-page-builder",
|
|
3
|
-
"version": "0.133.0-admin-updates.
|
|
3
|
+
"version": "0.133.0-admin-updates.14",
|
|
4
4
|
"description": "Blaze react page builder",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-es/index.js",
|
|
@@ -89,5 +89,5 @@
|
|
|
89
89
|
"lib/*",
|
|
90
90
|
"lib-es/*"
|
|
91
91
|
],
|
|
92
|
-
"gitHead": "
|
|
92
|
+
"gitHead": "68bc581477f17d24ac98826e6a16c4767c56dc71"
|
|
93
93
|
}
|
|
@@ -2,7 +2,7 @@ import { SEARCH_TERM, TEXT_SEARCH } from '../constants';
|
|
|
2
2
|
import parseFilterValue from './parse-filter-value';
|
|
3
3
|
import { buildQueryKey } from '../../../helpers';
|
|
4
4
|
|
|
5
|
-
const buildUrlQuery = (filterValues, filters, listComponentName = '', query = {}) => {
|
|
5
|
+
const buildUrlQuery = (filterValues = {}, filters = [], listComponentName = '', query = {}) => {
|
|
6
6
|
const newQuery = [];
|
|
7
7
|
const queryKeys = [];
|
|
8
8
|
const searchValue = filterValues[SEARCH_TERM];
|
|
@@ -23,7 +23,7 @@ const buildSortValues = (sortFilters, relations, stringProps, useSortObject) =>
|
|
|
23
23
|
const sortFieldName = getSortbyFieldName(relations, propsToDisplay, stringProps);
|
|
24
24
|
return sortFieldName ? `${sortFieldName}:${sort.toLowerCase()}` : null;
|
|
25
25
|
})
|
|
26
|
-
.filter(
|
|
26
|
+
.filter((item, index, arr) => (!item ? false : arr.indexOf(item) === index))
|
|
27
27
|
.join(',');
|
|
28
28
|
|
|
29
29
|
return { sort: sortValues };
|
|
@@ -3,10 +3,9 @@ import buildSortValues from './build-sort-values';
|
|
|
3
3
|
|
|
4
4
|
const getCorrectSort = (relations, filterProps, stringProps, useSortObject) => {
|
|
5
5
|
const { sort, sortby, sortProperties = [] } = filterProps;
|
|
6
|
-
const [sortProperty = []] = sortProperties || [];
|
|
7
6
|
|
|
8
7
|
return buildSortValues(
|
|
9
|
-
[{ sort, propsToDisplay: sortby }, ...
|
|
8
|
+
[{ sort, propsToDisplay: sortby }, ...sortProperties],
|
|
10
9
|
relations,
|
|
11
10
|
stringProps,
|
|
12
11
|
useSortObject
|
|
@@ -11,6 +11,7 @@ const mockedProps = [
|
|
|
11
11
|
];
|
|
12
12
|
|
|
13
13
|
describe('buildUrlQuery helper function', () => {
|
|
14
|
+
const noProps = buildUrlQuery();
|
|
14
15
|
const simpleExample = buildUrlQuery(...mockedProps[0]);
|
|
15
16
|
const withTextSearch = buildUrlQuery(...mockedProps[1]);
|
|
16
17
|
const withSearchAndRange = buildUrlQuery(...mockedProps[2]);
|
|
@@ -20,6 +21,11 @@ describe('buildUrlQuery helper function', () => {
|
|
|
20
21
|
anotherQuery: '123'
|
|
21
22
|
});
|
|
22
23
|
|
|
24
|
+
it('should not break if no params are passed', () => {
|
|
25
|
+
expect(typeof noProps).toBe('string');
|
|
26
|
+
expect(noProps).toEqual('');
|
|
27
|
+
});
|
|
28
|
+
|
|
23
29
|
it('should always return a string', () => {
|
|
24
30
|
expect(typeof simpleExample).toBe('string');
|
|
25
31
|
});
|
|
@@ -31,4 +31,24 @@ describe('buildSortValues helper function', () => {
|
|
|
31
31
|
);
|
|
32
32
|
expect(withUseSortObject).toEqual({ 'slug.keyword': 'asc' });
|
|
33
33
|
});
|
|
34
|
+
|
|
35
|
+
it('should filter out duplicate sort values', () => {
|
|
36
|
+
const sort = buildSortValues(
|
|
37
|
+
[
|
|
38
|
+
{
|
|
39
|
+
propsToDisplay: ['slug'],
|
|
40
|
+
sort: 'ASC',
|
|
41
|
+
label: ''
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
propsToDisplay: ['slug'],
|
|
45
|
+
sort: 'ASC',
|
|
46
|
+
label: ''
|
|
47
|
+
}
|
|
48
|
+
],
|
|
49
|
+
[],
|
|
50
|
+
['name', 'slug', 'metaTitle']
|
|
51
|
+
);
|
|
52
|
+
expect(sort).toEqual({ sort: 'slug.keyword:asc' });
|
|
53
|
+
});
|
|
34
54
|
});
|
|
@@ -122,4 +122,29 @@ describe('get card/list render variables', () => {
|
|
|
122
122
|
|
|
123
123
|
expect(sort).toEqual('tag.name.keyword:asc');
|
|
124
124
|
});
|
|
125
|
+
|
|
126
|
+
it('should handle multiple sort properties', () => {
|
|
127
|
+
const sortProperties = [
|
|
128
|
+
{
|
|
129
|
+
propsToDisplay: ['featured'],
|
|
130
|
+
sort: 'DESC',
|
|
131
|
+
label: '',
|
|
132
|
+
status: 'show'
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
propsToDisplay: ['date'],
|
|
136
|
+
sort: 'DESC',
|
|
137
|
+
label: '',
|
|
138
|
+
items: null,
|
|
139
|
+
status: 'show'
|
|
140
|
+
}
|
|
141
|
+
];
|
|
142
|
+
const { sort } = getGenericRenderVariables({
|
|
143
|
+
relations: [{ localField: 'tag', entityIdentifier: 'tags' }],
|
|
144
|
+
filterProps: mockedProps({ sort: '', sortby: '', sortProperties }),
|
|
145
|
+
stringProps: ['tags.name']
|
|
146
|
+
});
|
|
147
|
+
|
|
148
|
+
expect(sort).toEqual('featured:desc,date:desc');
|
|
149
|
+
});
|
|
125
150
|
});
|