@blaze-cms/react-page-builder 0.133.0-admin-updates.12 → 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 +20 -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 +4 -4
- 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,26 @@
|
|
|
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
|
+
|
|
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)
|
|
19
|
+
|
|
20
|
+
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
6
26
|
# [0.133.0-admin-updates.12](https://github.com/thebyte9/blaze/compare/v0.133.0-admin-updates.11...v0.133.0-admin-updates.12) (2023-10-02)
|
|
7
27
|
|
|
8
28
|
**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",
|
|
@@ -31,11 +31,11 @@
|
|
|
31
31
|
"@blaze-cms/core-errors": "0.133.0-admin-updates.0",
|
|
32
32
|
"@blaze-cms/core-errors-ui": "0.133.0-admin-updates.0",
|
|
33
33
|
"@blaze-cms/image-cdn-react": "0.3.0-alpha.5",
|
|
34
|
-
"@blaze-cms/nextjs-components": "0.133.0-admin-updates.
|
|
34
|
+
"@blaze-cms/nextjs-components": "0.133.0-admin-updates.13",
|
|
35
35
|
"@blaze-cms/plugin-search-ui": "0.133.0-admin-updates.8",
|
|
36
36
|
"@blaze-cms/setup-ui": "0.133.0-admin-updates.0",
|
|
37
37
|
"@blaze-cms/utils": "0.133.0-admin-updates.0",
|
|
38
|
-
"@blaze-cms/utils-handlebars": "0.133.0-admin-updates.
|
|
38
|
+
"@blaze-cms/utils-handlebars": "0.133.0-admin-updates.13",
|
|
39
39
|
"@blaze-react/breadcrumb": "0.8.0-alpha.60",
|
|
40
40
|
"@blaze-react/button": "0.5.19",
|
|
41
41
|
"@blaze-react/checkboxes": "0.5.31",
|
|
@@ -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
|
});
|