@blaze-cms/plugin-media-ui 0.121.0 → 0.122.0-alpha.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.
Files changed (32) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/lib/components/FileList/useGetFiles/getFiles.js +58 -144
  3. package/lib/components/FileList/useGetFiles/getFiles.js.map +1 -1
  4. package/lib/components/FileList/useGetFiles/useGetFiles.js +4 -3
  5. package/lib/components/FileList/useGetFiles/useGetFiles.js.map +1 -1
  6. package/lib/components/FileList/useGetFilesList/useGetFilesList.js +22 -23
  7. package/lib/components/FileList/useGetFilesList/useGetFilesList.js.map +1 -1
  8. package/lib/components/FilterPanel/FilterPanel.js +5 -19
  9. package/lib/components/FilterPanel/FilterPanel.js.map +1 -1
  10. package/lib/components/ListingContainer/ListingContainer.js +54 -6
  11. package/lib/components/ListingContainer/ListingContainer.js.map +1 -1
  12. package/lib/constants.js +1 -1
  13. package/lib/constants.js.map +1 -1
  14. package/lib-es/components/FileList/useGetFiles/getFiles.js +30 -82
  15. package/lib-es/components/FileList/useGetFiles/getFiles.js.map +1 -1
  16. package/lib-es/components/FileList/useGetFiles/useGetFiles.js +4 -3
  17. package/lib-es/components/FileList/useGetFiles/useGetFiles.js.map +1 -1
  18. package/lib-es/components/FileList/useGetFilesList/useGetFilesList.js +20 -21
  19. package/lib-es/components/FileList/useGetFilesList/useGetFilesList.js.map +1 -1
  20. package/lib-es/components/FilterPanel/FilterPanel.js +5 -15
  21. package/lib-es/components/FilterPanel/FilterPanel.js.map +1 -1
  22. package/lib-es/components/ListingContainer/ListingContainer.js +30 -2
  23. package/lib-es/components/ListingContainer/ListingContainer.js.map +1 -1
  24. package/lib-es/constants.js +1 -1
  25. package/lib-es/constants.js.map +1 -1
  26. package/package.json +2 -2
  27. package/src/components/FileList/useGetFiles/getFiles.js +27 -62
  28. package/src/components/FileList/useGetFiles/useGetFiles.js +5 -4
  29. package/src/components/FileList/useGetFilesList/useGetFilesList.js +16 -24
  30. package/src/components/FilterPanel/FilterPanel.js +9 -11
  31. package/src/components/ListingContainer/ListingContainer.js +18 -2
  32. package/src/constants.js +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
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-alpha.0](https://github.com/thebyte9/blaze/compare/v0.121.0...v0.122.0-alpha.0) (2022-03-10)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * 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))
12
+
13
+
14
+
15
+
16
+
6
17
  # [0.121.0](https://github.com/thebyte9/blaze/compare/v0.121.0-alpha.1...v0.121.0) (2022-03-09)
7
18
 
8
19
  **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
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
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
- 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; }
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, sort, client, _where, _yield$client$query, data;
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
- offset = _ref.offset, limit = _ref.limit, where = _ref.where, sort = _ref.sort, client = _ref.client;
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 === 'all' ? allTypesMatches : matchSpecificType;
119
- _context2.next = 6;
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 6:
244
- _yield$client$query2 = _context2.sent;
245
- _yield$client$query2$ = _yield$client$query2.data;
246
- files = _yield$client$query2$.files.results;
247
- all = _yield$client$query2$.all;
248
- image = _yield$client$query2$.image;
249
- video = _yield$client$query2$.video;
250
- text = _yield$client$query2$.text;
251
- return _context2.abrupt("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 14:
181
+ case 17:
260
182
  case "end":
261
- return _context2.stop();
183
+ return _context.stop();
262
184
  }
263
185
  }
264
- }, _callee2);
186
+ }, _callee);
265
187
  }));
266
188
 
267
- return function getFromSearch(_x2) {
268
- return _ref4.apply(this, arguments);
189
+ return function getFromSearch(_x) {
190
+ return _ref2.apply(this, arguments);
269
191
  };
270
192
  }();
271
193
 
272
- var getFiles = function getFiles(_ref5, client) {
273
- var offset = _ref5.offset,
274
- limit = _ref5.limit,
275
- where = _ref5.where,
276
- sort = _ref5.sort,
277
- searchTerm = _ref5.searchTerm,
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 isNewFilterSet = where && where.type !== previousFilter;
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(where.type);
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","isNewFilterSet","type","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 isNewFilterSet = where && where.type !== previousFilter;\n const isNewOffsetSet = previousOffset !== null && offset !== previousOffset;\n const isNewSearchTermSet = searchTerm && previousSearchTerm !== searchTerm;\n const isResetSearch = searchTerm === null && !isSearch && previousFilter;\n const shouldRequest = 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\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(where.type);\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"}
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)(null),
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 (queryParams.isSearch && all && image && video && text) {
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
- }, [queryParams.isSearch, all, image, video, text]);
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 && allFilesCounter[currentFilter] !== 0;
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 isNewFilter = params.where.type !== previousFilter;
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(params.where.type);
221
+ setCurrentFilter(newFilter);
228
222
  };
229
223
 
230
224
  var parsedQueryParams = _objectSpread(_objectSpread({}, queryParams), {}, {
231
- where: currentFilter === 'all' ? {} : queryParams.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":"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","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":"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","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"}