@blaze-cms/plugin-media-ui 0.121.0-alpha.1 → 0.122.0
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 +27 -0
- package/lib/components/FileList/useGetFiles/getFiles.js +58 -144
- package/lib/components/FileList/useGetFiles/getFiles.js.map +1 -1
- package/lib/components/FileList/useGetFiles/useGetFiles.js +4 -3
- package/lib/components/FileList/useGetFiles/useGetFiles.js.map +1 -1
- package/lib/components/FileList/useGetFilesList/useGetFilesList.js +22 -23
- package/lib/components/FileList/useGetFilesList/useGetFilesList.js.map +1 -1
- package/lib/components/FilterPanel/FilterPanel.js +5 -19
- package/lib/components/FilterPanel/FilterPanel.js.map +1 -1
- package/lib/components/ListingContainer/ListingContainer.js +54 -6
- package/lib/components/ListingContainer/ListingContainer.js.map +1 -1
- package/lib/constants.js +1 -1
- package/lib/constants.js.map +1 -1
- package/lib-es/components/FileList/useGetFiles/getFiles.js +30 -82
- package/lib-es/components/FileList/useGetFiles/getFiles.js.map +1 -1
- package/lib-es/components/FileList/useGetFiles/useGetFiles.js +4 -3
- package/lib-es/components/FileList/useGetFiles/useGetFiles.js.map +1 -1
- package/lib-es/components/FileList/useGetFilesList/useGetFilesList.js +20 -21
- package/lib-es/components/FileList/useGetFilesList/useGetFilesList.js.map +1 -1
- package/lib-es/components/FilterPanel/FilterPanel.js +5 -15
- package/lib-es/components/FilterPanel/FilterPanel.js.map +1 -1
- package/lib-es/components/ListingContainer/ListingContainer.js +30 -2
- package/lib-es/components/ListingContainer/ListingContainer.js.map +1 -1
- package/lib-es/constants.js +1 -1
- package/lib-es/constants.js.map +1 -1
- package/package.json +6 -6
- package/src/components/FileList/useGetFiles/getFiles.js +27 -62
- package/src/components/FileList/useGetFiles/useGetFiles.js +5 -4
- package/src/components/FileList/useGetFilesList/useGetFilesList.js +16 -24
- package/src/components/FilterPanel/FilterPanel.js +9 -11
- package/src/components/ListingContainer/ListingContainer.js +18 -2
- package/src/constants.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,33 @@
|
|
|
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.122.0](https://github.com/thebyte9/blaze/compare/v0.122.0-alpha.2...v0.122.0) (2022-03-15)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @blaze-cms/plugin-media-ui
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [0.122.0-alpha.0](https://github.com/thebyte9/blaze/compare/v0.121.0...v0.122.0-alpha.0) (2022-03-10)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* media search to use storeKey. Change media listing to use elasticsearch ([#3369](https://github.com/thebyte9/blaze/issues/3369)) ([73c6180](https://github.com/thebyte9/blaze/commit/73c618073a8b69889690597ba8fc4f7397ad4555))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
# [0.121.0](https://github.com/thebyte9/blaze/compare/v0.121.0-alpha.1...v0.121.0) (2022-03-09)
|
|
26
|
+
|
|
27
|
+
**Note:** Version bump only for package @blaze-cms/plugin-media-ui
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
6
33
|
# [0.121.0-alpha.1](https://github.com/thebyte9/blaze/compare/v0.121.0-alpha.0...v0.121.0-alpha.1) (2022-03-02)
|
|
7
34
|
|
|
8
35
|
**Note:** Version bump only for package @blaze-cms/plugin-media-ui
|
|
@@ -1,23 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
require("core-js/modules/es.object.keys.js");
|
|
4
|
-
|
|
5
|
-
require("core-js/modules/es.symbol.js");
|
|
6
|
-
|
|
7
|
-
require("core-js/modules/es.array.filter.js");
|
|
8
|
-
|
|
9
|
-
require("core-js/modules/es.object.to-string.js");
|
|
10
|
-
|
|
11
|
-
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
12
|
-
|
|
13
|
-
require("core-js/modules/es.array.for-each.js");
|
|
14
|
-
|
|
15
|
-
require("core-js/modules/web.dom-collections.for-each.js");
|
|
16
|
-
|
|
17
|
-
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
|
18
|
-
|
|
19
|
-
require("core-js/modules/es.object.define-properties.js");
|
|
20
|
-
|
|
21
3
|
require("core-js/modules/es.object.define-property.js");
|
|
22
4
|
|
|
23
5
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
@@ -29,13 +11,11 @@ exports["default"] = void 0;
|
|
|
29
11
|
|
|
30
12
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
31
13
|
|
|
32
|
-
require("core-js/modules/es.array.sort.js");
|
|
33
|
-
|
|
34
14
|
require("core-js/modules/es.array.includes.js");
|
|
35
15
|
|
|
36
16
|
require("core-js/modules/es.string.includes.js");
|
|
37
17
|
|
|
38
|
-
|
|
18
|
+
require("core-js/modules/es.array.concat.js");
|
|
39
19
|
|
|
40
20
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
41
21
|
|
|
@@ -43,60 +23,15 @@ var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
|
|
|
43
23
|
|
|
44
24
|
var _constants = require("../../../constants");
|
|
45
25
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
49
|
-
|
|
50
|
-
var getFromFiles = /*#__PURE__*/function () {
|
|
26
|
+
var getFromSearch = /*#__PURE__*/function () {
|
|
51
27
|
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_ref) {
|
|
52
|
-
var offset, limit, where,
|
|
28
|
+
var searchTerm, offset, limit, where, client, allTypesMatches, matchSpecificType, match, mustMatch, _yield$client$query, _yield$client$query$d, files, all, image, video, text;
|
|
53
29
|
|
|
54
30
|
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
55
31
|
while (1) {
|
|
56
32
|
switch (_context.prev = _context.next) {
|
|
57
33
|
case 0:
|
|
58
|
-
|
|
59
|
-
_where = where.type === _constants.ALL ? {} : _objectSpread({}, where);
|
|
60
|
-
if (_constants.INVALID_STORE_KEY_VALUES.includes(_where.storeKey)) delete _where.storeKey;
|
|
61
|
-
_context.next = 5;
|
|
62
|
-
return client.query({
|
|
63
|
-
query: (0, _adminUiUtils.getQuery)('GET_FILES'),
|
|
64
|
-
variables: {
|
|
65
|
-
offset: offset,
|
|
66
|
-
limit: limit,
|
|
67
|
-
where: _where,
|
|
68
|
-
sort: sort
|
|
69
|
-
},
|
|
70
|
-
fetchPolicy: 'network-only'
|
|
71
|
-
});
|
|
72
|
-
|
|
73
|
-
case 5:
|
|
74
|
-
_yield$client$query = _context.sent;
|
|
75
|
-
data = _yield$client$query.data;
|
|
76
|
-
return _context.abrupt("return", data);
|
|
77
|
-
|
|
78
|
-
case 8:
|
|
79
|
-
case "end":
|
|
80
|
-
return _context.stop();
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}, _callee);
|
|
84
|
-
}));
|
|
85
|
-
|
|
86
|
-
return function getFromFiles(_x) {
|
|
87
|
-
return _ref2.apply(this, arguments);
|
|
88
|
-
};
|
|
89
|
-
}();
|
|
90
|
-
|
|
91
|
-
var getFromSearch = /*#__PURE__*/function () {
|
|
92
|
-
var _ref4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(_ref3) {
|
|
93
|
-
var searchTerm, offset, limit, where, client, allTypesMatches, matchSpecificType, match, _yield$client$query2, _yield$client$query2$, files, all, image, video, text;
|
|
94
|
-
|
|
95
|
-
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
96
|
-
while (1) {
|
|
97
|
-
switch (_context2.prev = _context2.next) {
|
|
98
|
-
case 0:
|
|
99
|
-
searchTerm = _ref3.searchTerm, offset = _ref3.offset, limit = _ref3.limit, where = _ref3.where, client = _ref3.client;
|
|
34
|
+
searchTerm = _ref.searchTerm, offset = _ref.offset, limit = _ref.limit, where = _ref.where, client = _ref.client;
|
|
100
35
|
allTypesMatches = [{
|
|
101
36
|
match: {
|
|
102
37
|
type: 'image'
|
|
@@ -115,43 +50,51 @@ var getFromSearch = /*#__PURE__*/function () {
|
|
|
115
50
|
type: where.type
|
|
116
51
|
}
|
|
117
52
|
}];
|
|
118
|
-
match = where.type ===
|
|
119
|
-
|
|
53
|
+
match = !where.type || where.type === _constants.ALL ? allTypesMatches : matchSpecificType;
|
|
54
|
+
mustMatch = [];
|
|
55
|
+
|
|
56
|
+
if (searchTerm) {
|
|
57
|
+
mustMatch.push({
|
|
58
|
+
query_string: {
|
|
59
|
+
query: "".concat(searchTerm, "*"),
|
|
60
|
+
fields: [],
|
|
61
|
+
minimum_should_match: 2,
|
|
62
|
+
type: 'cross_fields'
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
if (where.storeKey && !_constants.INVALID_STORE_KEY_VALUES.includes(where.storeKey)) {
|
|
68
|
+
mustMatch.push({
|
|
69
|
+
match: {
|
|
70
|
+
storeKey: where.storeKey
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
_context.next = 9;
|
|
120
76
|
return client.query({
|
|
121
77
|
query: (0, _adminUiUtils.getQuery)('SEARCH_ADMIN_MEDIA'),
|
|
122
78
|
fetchPolicy: 'network-only',
|
|
123
79
|
variables: {
|
|
124
80
|
offset: offset,
|
|
125
81
|
limit: limit,
|
|
82
|
+
sort: searchTerm ? null : 'updated:desc',
|
|
126
83
|
rawQuery: {
|
|
127
84
|
query: {
|
|
128
85
|
bool: {
|
|
129
|
-
must: [{
|
|
130
|
-
query_string: {
|
|
131
|
-
query: "".concat(searchTerm, "*"),
|
|
132
|
-
fields: [],
|
|
133
|
-
minimum_should_match: 2,
|
|
134
|
-
type: 'cross_fields'
|
|
135
|
-
}
|
|
136
|
-
}, {
|
|
86
|
+
must: [].concat(mustMatch, [{
|
|
137
87
|
bool: {
|
|
138
88
|
should: match
|
|
139
89
|
}
|
|
140
|
-
}]
|
|
90
|
+
}])
|
|
141
91
|
}
|
|
142
92
|
}
|
|
143
93
|
},
|
|
144
94
|
rawQueryAllResults: {
|
|
145
95
|
query: {
|
|
146
96
|
bool: {
|
|
147
|
-
must: [{
|
|
148
|
-
query_string: {
|
|
149
|
-
query: "".concat(searchTerm, "*"),
|
|
150
|
-
fields: [],
|
|
151
|
-
minimum_should_match: 2,
|
|
152
|
-
type: 'cross_fields'
|
|
153
|
-
}
|
|
154
|
-
}, {
|
|
97
|
+
must: [].concat(mustMatch, [{
|
|
155
98
|
bool: {
|
|
156
99
|
should: [{
|
|
157
100
|
match: {
|
|
@@ -167,21 +110,14 @@ var getFromSearch = /*#__PURE__*/function () {
|
|
|
167
110
|
}
|
|
168
111
|
}]
|
|
169
112
|
}
|
|
170
|
-
}]
|
|
113
|
+
}])
|
|
171
114
|
}
|
|
172
115
|
}
|
|
173
116
|
},
|
|
174
117
|
rawQueryImages: {
|
|
175
118
|
query: {
|
|
176
119
|
bool: {
|
|
177
|
-
must: [{
|
|
178
|
-
query_string: {
|
|
179
|
-
query: "".concat(searchTerm, "*"),
|
|
180
|
-
fields: [],
|
|
181
|
-
minimum_should_match: 2,
|
|
182
|
-
type: 'cross_fields'
|
|
183
|
-
}
|
|
184
|
-
}, {
|
|
120
|
+
must: [].concat(mustMatch, [{
|
|
185
121
|
bool: {
|
|
186
122
|
should: [{
|
|
187
123
|
match: {
|
|
@@ -189,21 +125,14 @@ var getFromSearch = /*#__PURE__*/function () {
|
|
|
189
125
|
}
|
|
190
126
|
}]
|
|
191
127
|
}
|
|
192
|
-
}]
|
|
128
|
+
}])
|
|
193
129
|
}
|
|
194
130
|
}
|
|
195
131
|
},
|
|
196
132
|
rawQueryVideos: {
|
|
197
133
|
query: {
|
|
198
134
|
bool: {
|
|
199
|
-
must: [{
|
|
200
|
-
query_string: {
|
|
201
|
-
query: "".concat(searchTerm, "*"),
|
|
202
|
-
fields: [],
|
|
203
|
-
minimum_should_match: 2,
|
|
204
|
-
type: 'cross_fields'
|
|
205
|
-
}
|
|
206
|
-
}, {
|
|
135
|
+
must: [].concat(mustMatch, [{
|
|
207
136
|
bool: {
|
|
208
137
|
should: [{
|
|
209
138
|
match: {
|
|
@@ -211,21 +140,14 @@ var getFromSearch = /*#__PURE__*/function () {
|
|
|
211
140
|
}
|
|
212
141
|
}]
|
|
213
142
|
}
|
|
214
|
-
}]
|
|
143
|
+
}])
|
|
215
144
|
}
|
|
216
145
|
}
|
|
217
146
|
},
|
|
218
147
|
rawQueryDocs: {
|
|
219
148
|
query: {
|
|
220
149
|
bool: {
|
|
221
|
-
must: [{
|
|
222
|
-
query_string: {
|
|
223
|
-
query: "".concat(searchTerm, "*"),
|
|
224
|
-
fields: [],
|
|
225
|
-
minimum_should_match: 2,
|
|
226
|
-
type: 'cross_fields'
|
|
227
|
-
}
|
|
228
|
-
}, {
|
|
150
|
+
must: [].concat(mustMatch, [{
|
|
229
151
|
bool: {
|
|
230
152
|
should: [{
|
|
231
153
|
match: {
|
|
@@ -233,22 +155,22 @@ var getFromSearch = /*#__PURE__*/function () {
|
|
|
233
155
|
}
|
|
234
156
|
}]
|
|
235
157
|
}
|
|
236
|
-
}]
|
|
158
|
+
}])
|
|
237
159
|
}
|
|
238
160
|
}
|
|
239
161
|
}
|
|
240
162
|
}
|
|
241
163
|
});
|
|
242
164
|
|
|
243
|
-
case
|
|
244
|
-
_yield$client$
|
|
245
|
-
_yield$client$
|
|
246
|
-
files = _yield$client$
|
|
247
|
-
all = _yield$client$
|
|
248
|
-
image = _yield$client$
|
|
249
|
-
video = _yield$client$
|
|
250
|
-
text = _yield$client$
|
|
251
|
-
return
|
|
165
|
+
case 9:
|
|
166
|
+
_yield$client$query = _context.sent;
|
|
167
|
+
_yield$client$query$d = _yield$client$query.data;
|
|
168
|
+
files = _yield$client$query$d.files.results;
|
|
169
|
+
all = _yield$client$query$d.all;
|
|
170
|
+
image = _yield$client$query$d.image;
|
|
171
|
+
video = _yield$client$query$d.video;
|
|
172
|
+
text = _yield$client$query$d.text;
|
|
173
|
+
return _context.abrupt("return", {
|
|
252
174
|
files: files,
|
|
253
175
|
all: all,
|
|
254
176
|
image: image,
|
|
@@ -256,33 +178,25 @@ var getFromSearch = /*#__PURE__*/function () {
|
|
|
256
178
|
text: text
|
|
257
179
|
});
|
|
258
180
|
|
|
259
|
-
case
|
|
181
|
+
case 17:
|
|
260
182
|
case "end":
|
|
261
|
-
return
|
|
183
|
+
return _context.stop();
|
|
262
184
|
}
|
|
263
185
|
}
|
|
264
|
-
},
|
|
186
|
+
}, _callee);
|
|
265
187
|
}));
|
|
266
188
|
|
|
267
|
-
return function getFromSearch(
|
|
268
|
-
return
|
|
189
|
+
return function getFromSearch(_x) {
|
|
190
|
+
return _ref2.apply(this, arguments);
|
|
269
191
|
};
|
|
270
192
|
}();
|
|
271
193
|
|
|
272
|
-
var getFiles = function getFiles(
|
|
273
|
-
var offset =
|
|
274
|
-
limit =
|
|
275
|
-
where =
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
isSearch = _ref5.isSearch;
|
|
279
|
-
return !isSearch ? getFromFiles({
|
|
280
|
-
offset: offset,
|
|
281
|
-
limit: limit,
|
|
282
|
-
where: where,
|
|
283
|
-
sort: sort,
|
|
284
|
-
client: client
|
|
285
|
-
}) : getFromSearch({
|
|
194
|
+
var getFiles = function getFiles(_ref3, client) {
|
|
195
|
+
var offset = _ref3.offset,
|
|
196
|
+
limit = _ref3.limit,
|
|
197
|
+
where = _ref3.where,
|
|
198
|
+
searchTerm = _ref3.searchTerm;
|
|
199
|
+
return getFromSearch({
|
|
286
200
|
searchTerm: searchTerm,
|
|
287
201
|
offset: offset,
|
|
288
202
|
limit: limit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/FileList/useGetFiles/getFiles.js"],"names":["getFromFiles","offset","limit","where","sort","client","_where","type","ALL","INVALID_STORE_KEY_VALUES","includes","storeKey","query","variables","fetchPolicy","data","getFromSearch","searchTerm","allTypesMatches","match","matchSpecificType","rawQuery","bool","must","query_string","fields","minimum_should_match","should","rawQueryAllResults","rawQueryImages","rawQueryVideos","rawQueryDocs","files","results","all","image","video","text","getFiles","isSearch"],"mappings":"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","sourcesContent":["import { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { ALL, INVALID_STORE_KEY_VALUES } from '../../../constants';\n\nconst getFromFiles = async ({ offset, limit, where, sort, client }) => {\n const _where = where.type === ALL ? {} : { ...where };\n if (INVALID_STORE_KEY_VALUES.includes(_where.storeKey)) delete _where.storeKey;\n const { data } = await client.query({\n query: getQuery('GET_FILES'),\n variables: {\n offset,\n limit,\n where: _where,\n sort\n },\n fetchPolicy: 'network-only'\n });\n\n return data;\n};\n\nconst getFromSearch = async ({ searchTerm, offset, limit, where, client }) => {\n const allTypesMatches = [\n {\n match: { type: 'image' }\n },\n {\n match: { type: 'video' }\n },\n {\n match: { type: 'text' }\n }\n ];\n const matchSpecificType = [\n {\n match: { type: where.type }\n }\n ];\n const match = where.type === 'all' ? allTypesMatches : matchSpecificType;\n\n const {\n data: {\n files: { results: files },\n all,\n image,\n video,\n text\n }\n } = await client.query({\n query: getQuery('SEARCH_ADMIN_MEDIA'),\n fetchPolicy: 'network-only',\n variables: {\n offset,\n limit,\n rawQuery: {\n query: {\n bool: {\n must: [\n {\n query_string: {\n query: `${searchTerm}*`,\n fields: [],\n minimum_should_match: 2,\n type: 'cross_fields'\n }\n },\n {\n bool: {\n should: match\n }\n }\n ]\n }\n }\n },\n rawQueryAllResults: {\n query: {\n bool: {\n must: [\n {\n query_string: {\n query: `${searchTerm}*`,\n fields: [],\n minimum_should_match: 2,\n type: 'cross_fields'\n }\n },\n {\n bool: {\n should: [\n {\n match: { type: 'image' }\n },\n {\n match: { type: 'video' }\n },\n {\n match: { type: 'text' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryImages: {\n query: {\n bool: {\n must: [\n {\n query_string: {\n query: `${searchTerm}*`,\n fields: [],\n minimum_should_match: 2,\n type: 'cross_fields'\n }\n },\n {\n bool: {\n should: [\n {\n match: { type: 'image' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryVideos: {\n query: {\n bool: {\n must: [\n {\n query_string: {\n query: `${searchTerm}*`,\n fields: [],\n minimum_should_match: 2,\n type: 'cross_fields'\n }\n },\n {\n bool: {\n should: [\n {\n match: { type: 'video' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryDocs: {\n query: {\n bool: {\n must: [\n {\n query_string: {\n query: `${searchTerm}*`,\n fields: [],\n minimum_should_match: 2,\n type: 'cross_fields'\n }\n },\n {\n bool: {\n should: [\n {\n match: { type: 'text' }\n }\n ]\n }\n }\n ]\n }\n }\n }\n }\n });\n\n return { files, all, image, video, text };\n};\n\nconst getFiles = ({ offset, limit, where, sort, searchTerm, isSearch }, client) =>\n !isSearch\n ? getFromFiles({ offset, limit, where, sort, client })\n : getFromSearch({ searchTerm, offset, limit, where, client });\n\nexport default getFiles;\n"],"file":"getFiles.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/FileList/useGetFiles/getFiles.js"],"names":["getFromSearch","searchTerm","offset","limit","where","client","allTypesMatches","match","type","matchSpecificType","ALL","mustMatch","push","query_string","query","fields","minimum_should_match","storeKey","INVALID_STORE_KEY_VALUES","includes","fetchPolicy","variables","sort","rawQuery","bool","must","should","rawQueryAllResults","rawQueryImages","rawQueryVideos","rawQueryDocs","data","files","results","all","image","video","text","getFiles"],"mappings":"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","sourcesContent":["import { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { ALL, INVALID_STORE_KEY_VALUES } from '../../../constants';\n\nconst getFromSearch = async ({ searchTerm, offset, limit, where, client }) => {\n const allTypesMatches = [\n {\n match: { type: 'image' }\n },\n {\n match: { type: 'video' }\n },\n {\n match: { type: 'text' }\n }\n ];\n const matchSpecificType = [\n {\n match: { type: where.type }\n }\n ];\n const match = !where.type || where.type === ALL ? allTypesMatches : matchSpecificType;\n const mustMatch = [];\n\n if (searchTerm) {\n mustMatch.push({\n query_string: {\n query: `${searchTerm}*`,\n fields: [],\n minimum_should_match: 2,\n type: 'cross_fields'\n }\n });\n }\n\n if (where.storeKey && !INVALID_STORE_KEY_VALUES.includes(where.storeKey)) {\n mustMatch.push({\n match: { storeKey: where.storeKey }\n });\n }\n\n const {\n data: {\n files: { results: files },\n all,\n image,\n video,\n text\n }\n } = await client.query({\n query: getQuery('SEARCH_ADMIN_MEDIA'),\n fetchPolicy: 'network-only',\n variables: {\n offset,\n limit,\n sort: searchTerm ? null : 'updated:desc',\n rawQuery: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: match\n }\n }\n ]\n }\n }\n },\n rawQueryAllResults: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'image' }\n },\n {\n match: { type: 'video' }\n },\n {\n match: { type: 'text' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryImages: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'image' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryVideos: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'video' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryDocs: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'text' }\n }\n ]\n }\n }\n ]\n }\n }\n }\n }\n });\n\n return { files, all, image, video, text };\n};\n\nconst getFiles = ({ offset, limit, where, searchTerm }, client) =>\n getFromSearch({ searchTerm, offset, limit, where, client });\n\nexport default getFiles;\n"],"file":"getFiles.js"}
|
|
@@ -102,11 +102,12 @@ function useGetFiles() {
|
|
|
102
102
|
sort = queryParams.sort,
|
|
103
103
|
searchTerm = queryParams.searchTerm,
|
|
104
104
|
isSearch = queryParams.isSearch;
|
|
105
|
-
var
|
|
105
|
+
var newFilter = JSON.stringify(where);
|
|
106
|
+
var isNewFilterSet = newFilter !== previousFilter;
|
|
106
107
|
var isNewOffsetSet = previousOffset !== null && offset !== previousOffset;
|
|
107
108
|
var isNewSearchTermSet = searchTerm && previousSearchTerm !== searchTerm;
|
|
108
109
|
var isResetSearch = searchTerm === null && !isSearch && previousFilter;
|
|
109
|
-
var shouldRequest = isNewOffsetSet || isNewFilterSet || isNewSearchTermSet || isResetSearch;
|
|
110
|
+
var shouldRequest = where && (isNewOffsetSet || isNewFilterSet || isNewSearchTermSet || isResetSearch);
|
|
110
111
|
|
|
111
112
|
function fetchData() {
|
|
112
113
|
return _fetchData.apply(this, arguments);
|
|
@@ -168,7 +169,7 @@ function useGetFiles() {
|
|
|
168
169
|
fetchData().then(function () {
|
|
169
170
|
setIsLoading(false);
|
|
170
171
|
});
|
|
171
|
-
setPreviousFilter(
|
|
172
|
+
setPreviousFilter(newFilter);
|
|
172
173
|
setPreviousOffset(offset);
|
|
173
174
|
setPreviousSearchTerm(searchTerm);
|
|
174
175
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/FileList/useGetFiles/useGetFiles.js"],"names":["useGetFiles","limit","offset","where","sort","property","direction","queryParams","setQueryParams","previousFilter","setPreviousFilter","previousOffset","setPreviousOffset","previousSearchTerm","setPreviousSearchTerm","files","total","data","setData","isLoading","setIsLoading","client","setParams","newQueryParams","searchTerm","isSearch","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/FileList/useGetFiles/useGetFiles.js"],"names":["useGetFiles","limit","offset","where","sort","property","direction","queryParams","setQueryParams","previousFilter","setPreviousFilter","previousOffset","setPreviousOffset","previousSearchTerm","setPreviousSearchTerm","files","total","data","setData","isLoading","setIsLoading","client","setParams","newQueryParams","searchTerm","isSearch","newFilter","JSON","stringify","isNewFilterSet","isNewOffsetSet","isNewSearchTermSet","isResetSearch","shouldRequest","fetchData","length","all","image","video","text","then","loading"],"mappings":"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","sourcesContent":["import { useState, useEffect } from 'react';\nimport { useApolloClient } from '@apollo/client';\nimport getFiles from './getFiles';\n\nfunction useGetFiles() {\n const [queryParams, setQueryParams] = useState({\n limit: 20,\n offset: 0,\n where: null,\n sort: [\n {\n property: 'updated',\n direction: 'desc'\n }\n ]\n });\n const [previousFilter, setPreviousFilter] = useState(null);\n const [previousOffset, setPreviousOffset] = useState(null);\n const [previousSearchTerm, setPreviousSearchTerm] = useState(null);\n const [data, setData] = useState({ files: [], total: 0 });\n const [isLoading, setIsLoading] = useState(false);\n const client = useApolloClient();\n\n const setParams = newQueryParams => {\n setQueryParams({ ...queryParams, ...newQueryParams });\n };\n\n useEffect(\n () => {\n const { offset, limit, where, sort, searchTerm, isSearch } = queryParams;\n const newFilter = JSON.stringify(where);\n const isNewFilterSet = newFilter !== previousFilter;\n const isNewOffsetSet = previousOffset !== null && offset !== previousOffset;\n const isNewSearchTermSet = searchTerm && previousSearchTerm !== searchTerm;\n const isResetSearch = searchTerm === null && !isSearch && previousFilter;\n const shouldRequest =\n where && (isNewOffsetSet || isNewFilterSet || isNewSearchTermSet || isResetSearch);\n async function fetchData() {\n if (data.files.length) {\n setData({ files: [] });\n }\n\n const { files, total, all, image, video, text } = await getFiles(\n { offset, limit, where, sort, searchTerm, isSearch },\n client\n );\n setData({ files, total, all, image, video, text });\n }\n\n if (shouldRequest) {\n setIsLoading(true);\n fetchData().then(() => {\n setIsLoading(false);\n });\n setPreviousFilter(newFilter);\n setPreviousOffset(offset);\n setPreviousSearchTerm(searchTerm);\n }\n },\n [queryParams, previousOffset, previousFilter] //eslint-disable-line\n );\n\n const { files, total, all, image, video, text } = data;\n return [\n {\n queryParams,\n previousFilter,\n previousSearchTerm,\n loading: isLoading,\n data: { files, total, all, image, video, text }\n },\n setParams\n ];\n}\n\nexport default useGetFiles;\n"],"file":"useGetFiles.js"}
|
|
@@ -45,12 +45,8 @@ var _lodash = _interopRequireDefault(require("lodash.differencewith"));
|
|
|
45
45
|
|
|
46
46
|
var _lodash2 = _interopRequireDefault(require("lodash.isequal"));
|
|
47
47
|
|
|
48
|
-
var _client = require("@apollo/client");
|
|
49
|
-
|
|
50
48
|
var _useGetFiles3 = _interopRequireDefault(require("../useGetFiles"));
|
|
51
49
|
|
|
52
|
-
var _getCounters = _interopRequireDefault(require("./getCounters"));
|
|
53
|
-
|
|
54
50
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
55
51
|
|
|
56
52
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -86,7 +82,12 @@ function useGetFilesList() {
|
|
|
86
82
|
currentFilter = _useState6[0],
|
|
87
83
|
setCurrentFilter = _useState6[1];
|
|
88
84
|
|
|
89
|
-
var _useState7 = (0, _react.useState)(
|
|
85
|
+
var _useState7 = (0, _react.useState)({
|
|
86
|
+
all: 0,
|
|
87
|
+
text: 0,
|
|
88
|
+
image: 0,
|
|
89
|
+
video: 0
|
|
90
|
+
}),
|
|
90
91
|
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
91
92
|
allFilesCounter = _useState8[0],
|
|
92
93
|
setAllFilesCounter = _useState8[1];
|
|
@@ -96,9 +97,8 @@ function useGetFilesList() {
|
|
|
96
97
|
counters = _useState10[0],
|
|
97
98
|
setCounters = _useState10[1];
|
|
98
99
|
|
|
99
|
-
var client = (0, _client.useApolloClient)();
|
|
100
100
|
(0, _react.useEffect)(function () {
|
|
101
|
-
if (
|
|
101
|
+
if (all && image && video && text) {
|
|
102
102
|
setCounters({
|
|
103
103
|
all: all.total,
|
|
104
104
|
image: image.total,
|
|
@@ -106,15 +106,8 @@ function useGetFilesList() {
|
|
|
106
106
|
text: text.total
|
|
107
107
|
});
|
|
108
108
|
}
|
|
109
|
-
}, [
|
|
109
|
+
}, [all, image, video, text]);
|
|
110
110
|
(0, _react.useEffect)(function () {
|
|
111
|
-
if (counters === null) {
|
|
112
|
-
(0, _getCounters["default"])(client).then(function (initialCounter) {
|
|
113
|
-
setCounters(initialCounter);
|
|
114
|
-
setAllFilesCounter(initialCounter);
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
|
|
118
111
|
if (!currentFilter && previousFilter) {
|
|
119
112
|
setCurrentFilter(previousFilter);
|
|
120
113
|
}
|
|
@@ -132,7 +125,7 @@ function useGetFilesList() {
|
|
|
132
125
|
setCurrentResults(results);
|
|
133
126
|
}
|
|
134
127
|
|
|
135
|
-
var shouldSetContentIfListIsVoid = !isContentDifferent && !allResults.length && results.length
|
|
128
|
+
var shouldSetContentIfListIsVoid = !isContentDifferent && !allResults.length && results.length;
|
|
136
129
|
|
|
137
130
|
if (shouldSetContentIfListIsVoid) {
|
|
138
131
|
setAllResults(results);
|
|
@@ -221,25 +214,27 @@ function useGetFilesList() {
|
|
|
221
214
|
var setQueryParams = function setQueryParams(params) {
|
|
222
215
|
var isNewSearchTerm = params.isSearch && previousSearchTerm !== params.searchTerm;
|
|
223
216
|
var hasDeletedSearchTerm = previousSearchTerm && params.searchTerm === null;
|
|
224
|
-
var
|
|
217
|
+
var newFilter = JSON.stringify(params.where);
|
|
218
|
+
var isNewFilter = newFilter !== previousFilter;
|
|
225
219
|
var shouldClearList = hasDeletedSearchTerm || isNewFilter || isNewSearchTerm;
|
|
226
220
|
shouldClearList ? clearList(params) : setParams(params);
|
|
227
|
-
setCurrentFilter(
|
|
221
|
+
setCurrentFilter(newFilter);
|
|
228
222
|
};
|
|
229
223
|
|
|
230
224
|
var parsedQueryParams = _objectSpread(_objectSpread({}, queryParams), {}, {
|
|
231
|
-
where:
|
|
225
|
+
where: _objectSpread({}, queryParams.where)
|
|
232
226
|
});
|
|
233
227
|
|
|
228
|
+
if (parsedQueryParams.where.type === 'all') delete parsedQueryParams.where.type;
|
|
234
229
|
return [{
|
|
235
230
|
queryParams: parsedQueryParams,
|
|
236
231
|
loading: loading,
|
|
237
232
|
data: {
|
|
238
233
|
files: allResults,
|
|
239
|
-
all: counters ? counters.all : 0,
|
|
240
|
-
images: counters ? counters.image : 0,
|
|
241
|
-
videos: counters ? counters.video : 0,
|
|
242
|
-
documents: counters ? counters.text : 0
|
|
234
|
+
all: counters ? formatCounterNumber(counters.all) : 0,
|
|
235
|
+
images: counters ? formatCounterNumber(counters.image) : 0,
|
|
236
|
+
videos: counters ? formatCounterNumber(counters.video) : 0,
|
|
237
|
+
documents: counters ? formatCounterNumber(counters.text) : 0
|
|
243
238
|
}
|
|
244
239
|
}, {
|
|
245
240
|
setQueryParams: setQueryParams,
|
|
@@ -250,6 +245,10 @@ function useGetFilesList() {
|
|
|
250
245
|
}];
|
|
251
246
|
}
|
|
252
247
|
|
|
248
|
+
var formatCounterNumber = function formatCounterNumber(n) {
|
|
249
|
+
return n === 10000 ? '10000+' : n;
|
|
250
|
+
};
|
|
251
|
+
|
|
253
252
|
var _default = useGetFilesList;
|
|
254
253
|
exports["default"] = _default;
|
|
255
254
|
//# sourceMappingURL=useGetFilesList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/FileList/useGetFilesList/useGetFilesList.js"],"names":["useGetFilesList","queryParams","previousFilter","previousSearchTerm","loading","data","results","files","all","image","video","text","setParams","currentResults","setCurrentResults","allResults","setAllResults","currentFilter","setCurrentFilter","allFilesCounter","setAllFilesCounter","counters","setCounters","client","isSearch","total","then","initialCounter","isContentDifferent","isEqual","length","shouldSetContentIfListIsVoid","removeFile","index","resultsToUpdate","splice","currentFileType","type","updatedFileTypeCounterValue","updateAllFilesCounter","updatedCounters","updateFile","file","addNewFile","newFiles","reduce","acc","_image","_video","_text","searchTerm","clearList","params","offset","setQueryParams","isNewSearchTerm","hasDeletedSearchTerm","isNewFilter","where","shouldClearList","parsedQueryParams","images","videos","documents"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,SAASA,eAAT,GAA2B;AACzB,qBASI,+BATJ;AAAA;AAAA;AAAA,MAEIC,WAFJ,kBAEIA,WAFJ;AAAA,MAGIC,cAHJ,kBAGIA,cAHJ;AAAA,MAIIC,kBAJJ,kBAIIA,kBAJJ;AAAA,MAKIC,OALJ,kBAKIA,OALJ;AAAA,2CAMIC,IANJ;AAAA,MAMmBC,OANnB,uBAMYC,KANZ;AAAA,MAM4BC,GAN5B,uBAM4BA,GAN5B;AAAA,MAMiCC,KANjC,uBAMiCA,KANjC;AAAA,MAMwCC,KANxC,uBAMwCA,KANxC;AAAA,MAM+CC,IAN/C,uBAM+CA,IAN/C;AAAA,MAQEC,SARF;;AAUA,kBAA4C,qBAAS,EAAT,CAA5C;AAAA;AAAA,MAAOC,cAAP;AAAA,MAAuBC,iBAAvB;;AACA,mBAAoC,qBAAS,EAAT,CAApC;AAAA;AAAA,MAAOC,UAAP;AAAA,MAAmBC,aAAnB;;AACA,mBAA0C,qBAAS,IAAT,CAA1C;AAAA;AAAA,MAAOC,aAAP;AAAA,MAAsBC,gBAAtB;;AACA,mBAA8C,qBAAS,IAAT,CAA9C;AAAA;AAAA,MAAOC,eAAP;AAAA,MAAwBC,kBAAxB;;AACA,mBAAgC,qBAAS,IAAT,CAAhC;AAAA;AAAA,MAAOC,QAAP;AAAA,MAAiBC,WAAjB;;AACA,MAAMC,MAAM,GAAG,8BAAf;AAEA,wBACE,YAAM;AACJ,QAAItB,WAAW,CAACuB,QAAZ,IAAwBhB,GAAxB,IAA+BC,KAA/B,IAAwCC,KAAxC,IAAiDC,IAArD,EAA2D;AACzDW,MAAAA,WAAW,CAAC;AACVd,QAAAA,GAAG,EAAEA,GAAG,CAACiB,KADC;AAEVhB,QAAAA,KAAK,EAAEA,KAAK,CAACgB,KAFH;AAGVf,QAAAA,KAAK,EAAEA,KAAK,CAACe,KAHH;AAIVd,QAAAA,IAAI,EAAEA,IAAI,CAACc;AAJD,OAAD,CAAX;AAMD;AACF,GAVH,EAWE,CAACxB,WAAW,CAACuB,QAAb,EAAuBhB,GAAvB,EAA4BC,KAA5B,EAAmCC,KAAnC,EAA0CC,IAA1C,CAXF;AAcA,wBACE,YAAM;AACJ,QAAIU,QAAQ,KAAK,IAAjB,EAAuB;AACrB,mCAAYE,MAAZ,EAAoBG,IAApB,CAAyB,UAAAC,cAAc,EAAI;AACzCL,QAAAA,WAAW,CAACK,cAAD,CAAX;AACAP,QAAAA,kBAAkB,CAACO,cAAD,CAAlB;AACD,OAHD;AAID;;AACD,QAAI,CAACV,aAAD,IAAkBf,cAAtB,EAAsC;AACpCgB,MAAAA,gBAAgB,CAAChB,cAAD,CAAhB;AACD;;AAED,QAAIe,aAAa,KAAKf,cAAtB,EAAsC;AACpCc,MAAAA,aAAa,CAAC,EAAD,CAAb;AACAF,MAAAA,iBAAiB,CAAC,EAAD,CAAjB;AACA;AACD;;AAED,QAAMc,kBAAkB,GAAG,CAAC,CAAC,wBAAetB,OAAf,EAAwBO,cAAxB,EAAwCgB,mBAAxC,EAAiDC,MAA9E;;AAEA,QAAIF,kBAAJ,EAAwB;AACtBZ,MAAAA,aAAa,+CAAKD,UAAL,uCAAoBT,OAApB,GAAb;AACAQ,MAAAA,iBAAiB,CAACR,OAAD,CAAjB;AACD;;AAED,QAAMyB,4BAA4B,GAChC,CAACH,kBAAD,IACA,CAACb,UAAU,CAACe,MADZ,IAEAxB,OAAO,CAACwB,MAFR,IAGAX,eAAe,CAACF,aAAD,CAAf,KAAmC,CAJrC;;AAMA,QAAIc,4BAAJ,EAAkC;AAChCf,MAAAA,aAAa,CAACV,OAAD,CAAb;AACAQ,MAAAA,iBAAiB,CAACR,OAAD,CAAjB;AACD;AACF,GAnCH,EAoCE,CAACW,aAAD,EAAgBJ,cAAhB,EAAgCA,cAAc,CAACiB,MAA/C,EAAuD5B,cAAvD,EAAuEI,OAAvE,CApCF,CAoCkF;AApClF;;AAuCA,MAAM0B,UAAU,GAAG,SAAbA,UAAa,OAAe;AAAA,QAAZC,KAAY,QAAZA,KAAY;AAChC,QAAMC,eAAe,uCAAOnB,UAAP,CAArB;AACAmB,IAAAA,eAAe,CAACC,MAAhB,CAAuBF,KAAvB,EAA8B,CAA9B;AACA,QAAMG,eAAe,GAAGF,eAAe,CAACD,KAAD,CAAf,CAAuBI,IAA/C;AACA,QAAMC,2BAA2B,GAAGnB,eAAe,CAACiB,eAAD,CAAf,GAAmC,CAAvE;AACA,QAAMG,qBAAqB,GAAGpB,eAAe,CAACX,GAAhB,GAAsB,CAApD;;AACA,QAAIP,WAAW,CAACuB,QAAhB,EAA0B;AAAA;;AACxBF,MAAAA,WAAW,iCACND,QADM,8EAERe,eAFQ,EAEUf,QAAQ,CAACe,eAAD,CAAR,GAA4B,CAFtC,2DAGJf,QAAQ,CAACb,GAAT,GAAe,CAHX,oBAAX;AAKAY,MAAAA,kBAAkB,iCACbD,eADa,8EAEfiB,eAFe,EAEGE,2BAFH,2DAGXC,qBAHW,oBAAlB;AAKD;;AAED,QAAI,CAACtC,WAAW,CAACuB,QAAjB,EAA2B;AAAA;;AACzB,UAAMgB,eAAe,mCAChBrB,eADgB,8EAElBiB,eAFkB,EAEAE,2BAFA,2DAGdC,qBAHc,mBAArB;;AAMAjB,MAAAA,WAAW,CAACkB,eAAD,CAAX;AACApB,MAAAA,kBAAkB,CAACoB,eAAD,CAAlB;AACD;;AACDxB,IAAAA,aAAa,CAACkB,eAAD,CAAb;AACD,GA9BD;;AAgCA,MAAMO,UAAU,GAAG,SAAbA,UAAa,QAAqB;AAAA,QAAlBC,IAAkB,SAAlBA,IAAkB;AAAA,QAAZT,KAAY,SAAZA,KAAY;AACtC,QAAMC,eAAe,uCAAOnB,UAAP,CAArB;AACAmB,IAAAA,eAAe,CAACD,KAAD,CAAf,GAAyBS,IAAzB;AACA1B,IAAAA,aAAa,CAACkB,eAAD,CAAb;AACD,GAJD;;AAMA,MAAMS,UAAU,GAAG,SAAbA,UAAa,CAAAC,QAAQ,EAAI;AAC7B,2BAAsDA,QAAQ,CAACC,MAAT,CACpD,UAACC,GAAD,SAAmB;AAAA,UAAXT,IAAW,SAAXA,IAAW;AACjBS,MAAAA,GAAG,CAACT,IAAD,CAAH,IAAa,CAAb;AACA,aAAOS,GAAP;AACD,KAJmD,EAKpD;AAAErC,MAAAA,KAAK,EAAE,CAAT;AAAYC,MAAAA,KAAK,EAAE,CAAnB;AAAsBC,MAAAA,IAAI,EAAE;AAA5B,KALoD,CAAtD;AAAA,QAAeoC,MAAf,oBAAQtC,KAAR;AAAA,QAA8BuC,MAA9B,oBAAuBtC,KAAvB;AAAA,QAA4CuC,KAA5C,oBAAsCtC,IAAtC;;AAQA,QAAIV,WAAW,CAACuB,QAAhB,EAA0B;AACxBR,MAAAA,aAAa,CAAC,EAAD,CAAb;AACAJ,MAAAA,SAAS,CAAC;AAAEX,QAAAA,WAAW,EAAXA,WAAF;AAAeuB,QAAAA,QAAQ,EAAE,KAAzB;AAAgC0B,QAAAA,UAAU,EAAE;AAA5C,OAAD,CAAT;AACD;;AAED,QAAMV,eAAe,GAAG;AACtBhC,MAAAA,GAAG,EAAEW,eAAe,CAACX,GAAhB,GAAsBuC,MAAtB,GAA+BC,MAA/B,GAAwCC,KADvB;AAEtBxC,MAAAA,KAAK,EAAEU,eAAe,CAACV,KAAhB,GAAwBsC,MAFT;AAGtBrC,MAAAA,KAAK,EAAES,eAAe,CAACT,KAAhB,GAAwBsC,MAHT;AAItBrC,MAAAA,IAAI,EAAEQ,eAAe,CAACR,IAAhB,GAAuBsC;AAJP,KAAxB;AAOA3B,IAAAA,WAAW,CAACkB,eAAD,CAAX;AACApB,IAAAA,kBAAkB,CAACoB,eAAD,CAAlB;AACAxB,IAAAA,aAAa,+CAAK4B,QAAL,uCAAkB7B,UAAlB,GAAb;AACD,GAxBD;;AA0BA,MAAMoC,SAAS,GAAG,SAAZA,SAAY,CAAAC,MAAM,EAAI;AAC1BpC,IAAAA,aAAa,CAAC,EAAD,CAAb;AACAJ,IAAAA,SAAS,iCAAMwC,MAAN;AAAcC,MAAAA,MAAM,EAAE;AAAtB,OAAT;AACA/B,IAAAA,WAAW,CAACH,eAAD,CAAX;AACD,GAJD;;AAMA,MAAMmC,cAAc,GAAG,SAAjBA,cAAiB,CAAAF,MAAM,EAAI;AAC/B,QAAMG,eAAe,GAAGH,MAAM,CAAC5B,QAAP,IAAmBrB,kBAAkB,KAAKiD,MAAM,CAACF,UAAzE;AACA,QAAMM,oBAAoB,GAAGrD,kBAAkB,IAAIiD,MAAM,CAACF,UAAP,KAAsB,IAAzE;AACA,QAAMO,WAAW,GAAGL,MAAM,CAACM,KAAP,CAAarB,IAAb,KAAsBnC,cAA1C;AACA,QAAMyD,eAAe,GAAGH,oBAAoB,IAAIC,WAAxB,IAAuCF,eAA/D;AACAI,IAAAA,eAAe,GAAGR,SAAS,CAACC,MAAD,CAAZ,GAAuBxC,SAAS,CAACwC,MAAD,CAA/C;AACAlC,IAAAA,gBAAgB,CAACkC,MAAM,CAACM,KAAP,CAAarB,IAAd,CAAhB;AACD,GAPD;;AASA,MAAMuB,iBAAiB,mCAClB3D,WADkB;AAErByD,IAAAA,KAAK,EAAEzC,aAAa,KAAK,KAAlB,GAA0B,EAA1B,GAA+BhB,WAAW,CAACyD;AAF7B,IAAvB;;AAKA,SAAO,CACL;AACEzD,IAAAA,WAAW,EAAE2D,iBADf;AAEExD,IAAAA,OAAO,EAAPA,OAFF;AAGEC,IAAAA,IAAI,EAAE;AACJE,MAAAA,KAAK,EAAEQ,UADH;AAEJP,MAAAA,GAAG,EAAEa,QAAQ,GAAGA,QAAQ,CAACb,GAAZ,GAAkB,CAF3B;AAGJqD,MAAAA,MAAM,EAAExC,QAAQ,GAAGA,QAAQ,CAACZ,KAAZ,GAAoB,CAHhC;AAIJqD,MAAAA,MAAM,EAAEzC,QAAQ,GAAGA,QAAQ,CAACX,KAAZ,GAAoB,CAJhC;AAKJqD,MAAAA,SAAS,EAAE1C,QAAQ,GAAGA,QAAQ,CAACV,IAAZ,GAAmB;AALlC;AAHR,GADK,EAYL;AAAE2C,IAAAA,cAAc,EAAdA,cAAF;AAAkBH,IAAAA,SAAS,EAATA,SAAlB;AAA6BnB,IAAAA,UAAU,EAAVA,UAA7B;AAAyCW,IAAAA,UAAU,EAAVA,UAAzC;AAAqDF,IAAAA,UAAU,EAAVA;AAArD,GAZK,CAAP;AAcD;;eAEczC,e","sourcesContent":["import { useState, useEffect } from 'react';\nimport differenceWith from 'lodash.differencewith';\nimport isEqual from 'lodash.isequal';\nimport { useApolloClient } from '@apollo/client';\nimport useGetFiles from '../useGetFiles';\nimport getCounters from './getCounters';\n\nfunction useGetFilesList() {\n const [\n {\n queryParams,\n previousFilter,\n previousSearchTerm,\n loading,\n data: { files: results, all, image, video, text }\n },\n setParams\n ] = useGetFiles();\n const [currentResults, setCurrentResults] = useState([]);\n const [allResults, setAllResults] = useState([]);\n const [currentFilter, setCurrentFilter] = useState(null);\n const [allFilesCounter, setAllFilesCounter] = useState(null);\n const [counters, setCounters] = useState(null);\n const client = useApolloClient();\n\n useEffect(\n () => {\n if (queryParams.isSearch && all && image && video && text) {\n setCounters({\n all: all.total,\n image: image.total,\n video: video.total,\n text: text.total\n });\n }\n },\n [queryParams.isSearch, all, image, video, text]\n );\n\n useEffect(\n () => {\n if (counters === null) {\n getCounters(client).then(initialCounter => {\n setCounters(initialCounter);\n setAllFilesCounter(initialCounter);\n });\n }\n if (!currentFilter && previousFilter) {\n setCurrentFilter(previousFilter);\n }\n\n if (currentFilter !== previousFilter) {\n setAllResults([]);\n setCurrentResults([]);\n return;\n }\n\n const isContentDifferent = !!differenceWith(results, currentResults, isEqual).length;\n\n if (isContentDifferent) {\n setAllResults([...allResults, ...results]);\n setCurrentResults(results);\n }\n\n const shouldSetContentIfListIsVoid =\n !isContentDifferent &&\n !allResults.length &&\n results.length &&\n allFilesCounter[currentFilter] !== 0;\n\n if (shouldSetContentIfListIsVoid) {\n setAllResults(results);\n setCurrentResults(results);\n }\n },\n [currentFilter, currentResults, currentResults.length, previousFilter, results] //eslint-disable-line\n );\n\n const removeFile = ({ index }) => {\n const resultsToUpdate = [...allResults];\n resultsToUpdate.splice(index, 1);\n const currentFileType = resultsToUpdate[index].type;\n const updatedFileTypeCounterValue = allFilesCounter[currentFileType] - 1;\n const updateAllFilesCounter = allFilesCounter.all - 1;\n if (queryParams.isSearch) {\n setCounters({\n ...counters,\n [currentFileType]: counters[currentFileType] - 1,\n all: counters.all - 1\n });\n setAllFilesCounter({\n ...allFilesCounter,\n [currentFileType]: updatedFileTypeCounterValue,\n all: updateAllFilesCounter\n });\n }\n\n if (!queryParams.isSearch) {\n const updatedCounters = {\n ...allFilesCounter,\n [currentFileType]: updatedFileTypeCounterValue,\n all: updateAllFilesCounter\n };\n\n setCounters(updatedCounters);\n setAllFilesCounter(updatedCounters);\n }\n setAllResults(resultsToUpdate);\n };\n\n const updateFile = ({ file, index }) => {\n const resultsToUpdate = [...allResults];\n resultsToUpdate[index] = file;\n setAllResults(resultsToUpdate);\n };\n\n const addNewFile = newFiles => {\n const { image: _image, video: _video, text: _text } = newFiles.reduce(\n (acc, { type }) => {\n acc[type] += 1;\n return acc;\n },\n { image: 0, video: 0, text: 0 }\n );\n\n if (queryParams.isSearch) {\n setAllResults([]);\n setParams({ queryParams, isSearch: false, searchTerm: null });\n }\n\n const updatedCounters = {\n all: allFilesCounter.all + _image + _video + _text,\n image: allFilesCounter.image + _image,\n video: allFilesCounter.video + _video,\n text: allFilesCounter.text + _text\n };\n\n setCounters(updatedCounters);\n setAllFilesCounter(updatedCounters);\n setAllResults([...newFiles, ...allResults]);\n };\n\n const clearList = params => {\n setAllResults([]);\n setParams({ ...params, offset: 0 });\n setCounters(allFilesCounter);\n };\n\n const setQueryParams = params => {\n const isNewSearchTerm = params.isSearch && previousSearchTerm !== params.searchTerm;\n const hasDeletedSearchTerm = previousSearchTerm && params.searchTerm === null;\n const isNewFilter = params.where.type !== previousFilter;\n const shouldClearList = hasDeletedSearchTerm || isNewFilter || isNewSearchTerm;\n shouldClearList ? clearList(params) : setParams(params);\n setCurrentFilter(params.where.type);\n };\n\n const parsedQueryParams = {\n ...queryParams,\n where: currentFilter === 'all' ? {} : queryParams.where\n };\n\n return [\n {\n queryParams: parsedQueryParams,\n loading,\n data: {\n files: allResults,\n all: counters ? counters.all : 0,\n images: counters ? counters.image : 0,\n videos: counters ? counters.video : 0,\n documents: counters ? counters.text : 0\n }\n },\n { setQueryParams, clearList, removeFile, addNewFile, updateFile }\n ];\n}\n\nexport default useGetFilesList;\n"],"file":"useGetFilesList.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/FileList/useGetFilesList/useGetFilesList.js"],"names":["useGetFilesList","queryParams","previousFilter","previousSearchTerm","loading","data","results","files","all","image","video","text","setParams","currentResults","setCurrentResults","allResults","setAllResults","currentFilter","setCurrentFilter","allFilesCounter","setAllFilesCounter","counters","setCounters","total","isContentDifferent","isEqual","length","shouldSetContentIfListIsVoid","removeFile","index","resultsToUpdate","splice","currentFileType","type","updatedFileTypeCounterValue","updateAllFilesCounter","isSearch","updatedCounters","updateFile","file","addNewFile","newFiles","reduce","acc","_image","_video","_text","searchTerm","clearList","params","offset","setQueryParams","isNewSearchTerm","hasDeletedSearchTerm","newFilter","JSON","stringify","where","isNewFilter","shouldClearList","parsedQueryParams","formatCounterNumber","images","videos","documents","n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;AAEA,SAASA,eAAT,GAA2B;AACzB,qBASI,+BATJ;AAAA;AAAA;AAAA,MAEIC,WAFJ,kBAEIA,WAFJ;AAAA,MAGIC,cAHJ,kBAGIA,cAHJ;AAAA,MAIIC,kBAJJ,kBAIIA,kBAJJ;AAAA,MAKIC,OALJ,kBAKIA,OALJ;AAAA,2CAMIC,IANJ;AAAA,MAMmBC,OANnB,uBAMYC,KANZ;AAAA,MAM4BC,GAN5B,uBAM4BA,GAN5B;AAAA,MAMiCC,KANjC,uBAMiCA,KANjC;AAAA,MAMwCC,KANxC,uBAMwCA,KANxC;AAAA,MAM+CC,IAN/C,uBAM+CA,IAN/C;AAAA,MAQEC,SARF;;AAUA,kBAA4C,qBAAS,EAAT,CAA5C;AAAA;AAAA,MAAOC,cAAP;AAAA,MAAuBC,iBAAvB;;AACA,mBAAoC,qBAAS,EAAT,CAApC;AAAA;AAAA,MAAOC,UAAP;AAAA,MAAmBC,aAAnB;;AACA,mBAA0C,qBAAS,IAAT,CAA1C;AAAA;AAAA,MAAOC,aAAP;AAAA,MAAsBC,gBAAtB;;AACA,mBAA8C,qBAAS;AAAEV,IAAAA,GAAG,EAAE,CAAP;AAAUG,IAAAA,IAAI,EAAE,CAAhB;AAAmBF,IAAAA,KAAK,EAAE,CAA1B;AAA6BC,IAAAA,KAAK,EAAE;AAApC,GAAT,CAA9C;AAAA;AAAA,MAAOS,eAAP;AAAA,MAAwBC,kBAAxB;;AACA,mBAAgC,qBAAS,IAAT,CAAhC;AAAA;AAAA,MAAOC,QAAP;AAAA,MAAiBC,WAAjB;;AAEA,wBACE,YAAM;AACJ,QAAId,GAAG,IAAIC,KAAP,IAAgBC,KAAhB,IAAyBC,IAA7B,EAAmC;AACjCW,MAAAA,WAAW,CAAC;AACVd,QAAAA,GAAG,EAAEA,GAAG,CAACe,KADC;AAEVd,QAAAA,KAAK,EAAEA,KAAK,CAACc,KAFH;AAGVb,QAAAA,KAAK,EAAEA,KAAK,CAACa,KAHH;AAIVZ,QAAAA,IAAI,EAAEA,IAAI,CAACY;AAJD,OAAD,CAAX;AAMD;AACF,GAVH,EAWE,CAACf,GAAD,EAAMC,KAAN,EAAaC,KAAb,EAAoBC,IAApB,CAXF;AAcA,wBACE,YAAM;AACJ,QAAI,CAACM,aAAD,IAAkBf,cAAtB,EAAsC;AACpCgB,MAAAA,gBAAgB,CAAChB,cAAD,CAAhB;AACD;;AAED,QAAIe,aAAa,KAAKf,cAAtB,EAAsC;AACpCc,MAAAA,aAAa,CAAC,EAAD,CAAb;AACAF,MAAAA,iBAAiB,CAAC,EAAD,CAAjB;AACA;AACD;;AAED,QAAMU,kBAAkB,GAAG,CAAC,CAAC,wBAAelB,OAAf,EAAwBO,cAAxB,EAAwCY,mBAAxC,EAAiDC,MAA9E;;AACA,QAAIF,kBAAJ,EAAwB;AACtBR,MAAAA,aAAa,+CAAKD,UAAL,uCAAoBT,OAApB,GAAb;AACAQ,MAAAA,iBAAiB,CAACR,OAAD,CAAjB;AACD;;AAED,QAAMqB,4BAA4B,GAChC,CAACH,kBAAD,IAAuB,CAACT,UAAU,CAACW,MAAnC,IAA6CpB,OAAO,CAACoB,MADvD;;AAGA,QAAIC,4BAAJ,EAAkC;AAChCX,MAAAA,aAAa,CAACV,OAAD,CAAb;AACAQ,MAAAA,iBAAiB,CAACR,OAAD,CAAjB;AACD;AACF,GAzBH,EA0BE,CAACW,aAAD,EAAgBJ,cAAhB,EAAgCA,cAAc,CAACa,MAA/C,EAAuDxB,cAAvD,EAAuEI,OAAvE,CA1BF,CA0BkF;AA1BlF;;AA6BA,MAAMsB,UAAU,GAAG,SAAbA,UAAa,OAAe;AAAA,QAAZC,KAAY,QAAZA,KAAY;AAChC,QAAMC,eAAe,uCAAOf,UAAP,CAArB;AACAe,IAAAA,eAAe,CAACC,MAAhB,CAAuBF,KAAvB,EAA8B,CAA9B;AACA,QAAMG,eAAe,GAAGF,eAAe,CAACD,KAAD,CAAf,CAAuBI,IAA/C;AACA,QAAMC,2BAA2B,GAAGf,eAAe,CAACa,eAAD,CAAf,GAAmC,CAAvE;AACA,QAAMG,qBAAqB,GAAGhB,eAAe,CAACX,GAAhB,GAAsB,CAApD;;AACA,QAAIP,WAAW,CAACmC,QAAhB,EAA0B;AAAA;;AACxBd,MAAAA,WAAW,iCACND,QADM,8EAERW,eAFQ,EAEUX,QAAQ,CAACW,eAAD,CAAR,GAA4B,CAFtC,2DAGJX,QAAQ,CAACb,GAAT,GAAe,CAHX,oBAAX;AAKAY,MAAAA,kBAAkB,iCACbD,eADa,8EAEfa,eAFe,EAEGE,2BAFH,2DAGXC,qBAHW,oBAAlB;AAKD;;AAED,QAAI,CAAClC,WAAW,CAACmC,QAAjB,EAA2B;AAAA;;AACzB,UAAMC,eAAe,mCAChBlB,eADgB,8EAElBa,eAFkB,EAEAE,2BAFA,2DAGdC,qBAHc,mBAArB;;AAMAb,MAAAA,WAAW,CAACe,eAAD,CAAX;AACAjB,MAAAA,kBAAkB,CAACiB,eAAD,CAAlB;AACD;;AACDrB,IAAAA,aAAa,CAACc,eAAD,CAAb;AACD,GA9BD;;AAgCA,MAAMQ,UAAU,GAAG,SAAbA,UAAa,QAAqB;AAAA,QAAlBC,IAAkB,SAAlBA,IAAkB;AAAA,QAAZV,KAAY,SAAZA,KAAY;AACtC,QAAMC,eAAe,uCAAOf,UAAP,CAArB;AACAe,IAAAA,eAAe,CAACD,KAAD,CAAf,GAAyBU,IAAzB;AACAvB,IAAAA,aAAa,CAACc,eAAD,CAAb;AACD,GAJD;;AAMA,MAAMU,UAAU,GAAG,SAAbA,UAAa,CAAAC,QAAQ,EAAI;AAC7B,2BAAsDA,QAAQ,CAACC,MAAT,CACpD,UAACC,GAAD,SAAmB;AAAA,UAAXV,IAAW,SAAXA,IAAW;AACjBU,MAAAA,GAAG,CAACV,IAAD,CAAH,IAAa,CAAb;AACA,aAAOU,GAAP;AACD,KAJmD,EAKpD;AAAElC,MAAAA,KAAK,EAAE,CAAT;AAAYC,MAAAA,KAAK,EAAE,CAAnB;AAAsBC,MAAAA,IAAI,EAAE;AAA5B,KALoD,CAAtD;AAAA,QAAeiC,MAAf,oBAAQnC,KAAR;AAAA,QAA8BoC,MAA9B,oBAAuBnC,KAAvB;AAAA,QAA4CoC,KAA5C,oBAAsCnC,IAAtC;;AAQA,QAAIV,WAAW,CAACmC,QAAhB,EAA0B;AACxBpB,MAAAA,aAAa,CAAC,EAAD,CAAb;AACAJ,MAAAA,SAAS,CAAC;AAAEX,QAAAA,WAAW,EAAXA,WAAF;AAAemC,QAAAA,QAAQ,EAAE,KAAzB;AAAgCW,QAAAA,UAAU,EAAE;AAA5C,OAAD,CAAT;AACD;;AAED,QAAMV,eAAe,GAAG;AACtB7B,MAAAA,GAAG,EAAEW,eAAe,CAACX,GAAhB,GAAsBoC,MAAtB,GAA+BC,MAA/B,GAAwCC,KADvB;AAEtBrC,MAAAA,KAAK,EAAEU,eAAe,CAACV,KAAhB,GAAwBmC,MAFT;AAGtBlC,MAAAA,KAAK,EAAES,eAAe,CAACT,KAAhB,GAAwBmC,MAHT;AAItBlC,MAAAA,IAAI,EAAEQ,eAAe,CAACR,IAAhB,GAAuBmC;AAJP,KAAxB;AAOAxB,IAAAA,WAAW,CAACe,eAAD,CAAX;AACAjB,IAAAA,kBAAkB,CAACiB,eAAD,CAAlB;AACArB,IAAAA,aAAa,+CAAKyB,QAAL,uCAAkB1B,UAAlB,GAAb;AACD,GAxBD;;AA0BA,MAAMiC,SAAS,GAAG,SAAZA,SAAY,CAAAC,MAAM,EAAI;AAC1BjC,IAAAA,aAAa,CAAC,EAAD,CAAb;AACAJ,IAAAA,SAAS,iCAAMqC,MAAN;AAAcC,MAAAA,MAAM,EAAE;AAAtB,OAAT;AACA5B,IAAAA,WAAW,CAACH,eAAD,CAAX;AACD,GAJD;;AAMA,MAAMgC,cAAc,GAAG,SAAjBA,cAAiB,CAAAF,MAAM,EAAI;AAC/B,QAAMG,eAAe,GAAGH,MAAM,CAACb,QAAP,IAAmBjC,kBAAkB,KAAK8C,MAAM,CAACF,UAAzE;AACA,QAAMM,oBAAoB,GAAGlD,kBAAkB,IAAI8C,MAAM,CAACF,UAAP,KAAsB,IAAzE;AACA,QAAMO,SAAS,GAAGC,IAAI,CAACC,SAAL,CAAeP,MAAM,CAACQ,KAAtB,CAAlB;AACA,QAAMC,WAAW,GAAGJ,SAAS,KAAKpD,cAAlC;AACA,QAAMyD,eAAe,GAAGN,oBAAoB,IAAIK,WAAxB,IAAuCN,eAA/D;AACAO,IAAAA,eAAe,GAAGX,SAAS,CAACC,MAAD,CAAZ,GAAuBrC,SAAS,CAACqC,MAAD,CAA/C;AACA/B,IAAAA,gBAAgB,CAACoC,SAAD,CAAhB;AACD,GARD;;AAUA,MAAMM,iBAAiB,mCAClB3D,WADkB;AAErBwD,IAAAA,KAAK,oBAAOxD,WAAW,CAACwD,KAAnB;AAFgB,IAAvB;;AAKA,MAAIG,iBAAiB,CAACH,KAAlB,CAAwBxB,IAAxB,KAAiC,KAArC,EAA4C,OAAO2B,iBAAiB,CAACH,KAAlB,CAAwBxB,IAA/B;AAE5C,SAAO,CACL;AACEhC,IAAAA,WAAW,EAAE2D,iBADf;AAEExD,IAAAA,OAAO,EAAPA,OAFF;AAGEC,IAAAA,IAAI,EAAE;AACJE,MAAAA,KAAK,EAAEQ,UADH;AAEJP,MAAAA,GAAG,EAAEa,QAAQ,GAAGwC,mBAAmB,CAACxC,QAAQ,CAACb,GAAV,CAAtB,GAAuC,CAFhD;AAGJsD,MAAAA,MAAM,EAAEzC,QAAQ,GAAGwC,mBAAmB,CAACxC,QAAQ,CAACZ,KAAV,CAAtB,GAAyC,CAHrD;AAIJsD,MAAAA,MAAM,EAAE1C,QAAQ,GAAGwC,mBAAmB,CAACxC,QAAQ,CAACX,KAAV,CAAtB,GAAyC,CAJrD;AAKJsD,MAAAA,SAAS,EAAE3C,QAAQ,GAAGwC,mBAAmB,CAACxC,QAAQ,CAACV,IAAV,CAAtB,GAAwC;AALvD;AAHR,GADK,EAYL;AAAEwC,IAAAA,cAAc,EAAdA,cAAF;AAAkBH,IAAAA,SAAS,EAATA,SAAlB;AAA6BpB,IAAAA,UAAU,EAAVA,UAA7B;AAAyCY,IAAAA,UAAU,EAAVA,UAAzC;AAAqDF,IAAAA,UAAU,EAAVA;AAArD,GAZK,CAAP;AAcD;;AAED,IAAMuB,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAAI,CAAC;AAAA,SAAKA,CAAC,KAAK,KAAN,GAAc,QAAd,GAAyBA,CAA9B;AAAA,CAA7B;;eAEejE,e","sourcesContent":["import { useState, useEffect } from 'react';\nimport differenceWith from 'lodash.differencewith';\nimport isEqual from 'lodash.isequal';\nimport useGetFiles from '../useGetFiles';\n\nfunction useGetFilesList() {\n const [\n {\n queryParams,\n previousFilter,\n previousSearchTerm,\n loading,\n data: { files: results, all, image, video, text }\n },\n setParams\n ] = useGetFiles();\n const [currentResults, setCurrentResults] = useState([]);\n const [allResults, setAllResults] = useState([]);\n const [currentFilter, setCurrentFilter] = useState(null);\n const [allFilesCounter, setAllFilesCounter] = useState({ all: 0, text: 0, image: 0, video: 0 });\n const [counters, setCounters] = useState(null);\n\n useEffect(\n () => {\n if (all && image && video && text) {\n setCounters({\n all: all.total,\n image: image.total,\n video: video.total,\n text: text.total\n });\n }\n },\n [all, image, video, text]\n );\n\n useEffect(\n () => {\n if (!currentFilter && previousFilter) {\n setCurrentFilter(previousFilter);\n }\n\n if (currentFilter !== previousFilter) {\n setAllResults([]);\n setCurrentResults([]);\n return;\n }\n\n const isContentDifferent = !!differenceWith(results, currentResults, isEqual).length;\n if (isContentDifferent) {\n setAllResults([...allResults, ...results]);\n setCurrentResults(results);\n }\n\n const shouldSetContentIfListIsVoid =\n !isContentDifferent && !allResults.length && results.length;\n\n if (shouldSetContentIfListIsVoid) {\n setAllResults(results);\n setCurrentResults(results);\n }\n },\n [currentFilter, currentResults, currentResults.length, previousFilter, results] //eslint-disable-line\n );\n\n const removeFile = ({ index }) => {\n const resultsToUpdate = [...allResults];\n resultsToUpdate.splice(index, 1);\n const currentFileType = resultsToUpdate[index].type;\n const updatedFileTypeCounterValue = allFilesCounter[currentFileType] - 1;\n const updateAllFilesCounter = allFilesCounter.all - 1;\n if (queryParams.isSearch) {\n setCounters({\n ...counters,\n [currentFileType]: counters[currentFileType] - 1,\n all: counters.all - 1\n });\n setAllFilesCounter({\n ...allFilesCounter,\n [currentFileType]: updatedFileTypeCounterValue,\n all: updateAllFilesCounter\n });\n }\n\n if (!queryParams.isSearch) {\n const updatedCounters = {\n ...allFilesCounter,\n [currentFileType]: updatedFileTypeCounterValue,\n all: updateAllFilesCounter\n };\n\n setCounters(updatedCounters);\n setAllFilesCounter(updatedCounters);\n }\n setAllResults(resultsToUpdate);\n };\n\n const updateFile = ({ file, index }) => {\n const resultsToUpdate = [...allResults];\n resultsToUpdate[index] = file;\n setAllResults(resultsToUpdate);\n };\n\n const addNewFile = newFiles => {\n const { image: _image, video: _video, text: _text } = newFiles.reduce(\n (acc, { type }) => {\n acc[type] += 1;\n return acc;\n },\n { image: 0, video: 0, text: 0 }\n );\n\n if (queryParams.isSearch) {\n setAllResults([]);\n setParams({ queryParams, isSearch: false, searchTerm: null });\n }\n\n const updatedCounters = {\n all: allFilesCounter.all + _image + _video + _text,\n image: allFilesCounter.image + _image,\n video: allFilesCounter.video + _video,\n text: allFilesCounter.text + _text\n };\n\n setCounters(updatedCounters);\n setAllFilesCounter(updatedCounters);\n setAllResults([...newFiles, ...allResults]);\n };\n\n const clearList = params => {\n setAllResults([]);\n setParams({ ...params, offset: 0 });\n setCounters(allFilesCounter);\n };\n\n const setQueryParams = params => {\n const isNewSearchTerm = params.isSearch && previousSearchTerm !== params.searchTerm;\n const hasDeletedSearchTerm = previousSearchTerm && params.searchTerm === null;\n const newFilter = JSON.stringify(params.where);\n const isNewFilter = newFilter !== previousFilter;\n const shouldClearList = hasDeletedSearchTerm || isNewFilter || isNewSearchTerm;\n shouldClearList ? clearList(params) : setParams(params);\n setCurrentFilter(newFilter);\n };\n\n const parsedQueryParams = {\n ...queryParams,\n where: { ...queryParams.where }\n };\n\n if (parsedQueryParams.where.type === 'all') delete parsedQueryParams.where.type;\n\n return [\n {\n queryParams: parsedQueryParams,\n loading,\n data: {\n files: allResults,\n all: counters ? formatCounterNumber(counters.all) : 0,\n images: counters ? formatCounterNumber(counters.image) : 0,\n videos: counters ? formatCounterNumber(counters.video) : 0,\n documents: counters ? formatCounterNumber(counters.text) : 0\n }\n },\n { setQueryParams, clearList, removeFile, addNewFile, updateFile }\n ];\n}\n\nconst formatCounterNumber = n => (n === 10000 ? '10000+' : n);\n\nexport default useGetFilesList;\n"],"file":"useGetFilesList.js"}
|