@blaze-cms/plugin-search-ui 0.129.0 → 0.130.0-admin-updates.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 +25 -0
  2. package/lib/components/SearchAdmin/SearchAdmin.js +59 -19
  3. package/lib/components/SearchAdmin/SearchAdmin.js.map +1 -1
  4. package/lib/components/SearchAdmin/SearchAdminSideBar/SearchAdminSideBar.js +113 -0
  5. package/lib/components/SearchAdmin/SearchAdminSideBar/SearchAdminSideBar.js.map +1 -0
  6. package/lib/components/SearchAdmin/SearchAdminSideBar/index.js +12 -0
  7. package/lib/components/SearchAdmin/SearchAdminSideBar/index.js.map +1 -0
  8. package/lib/components/SearchAdmin/SearchResults/SearchResults.js +47 -13
  9. package/lib/components/SearchAdmin/SearchResults/SearchResults.js.map +1 -1
  10. package/lib/components/useSearch/useSearch.js +11 -5
  11. package/lib/components/useSearch/useSearch.js.map +1 -1
  12. package/lib/components/useSearchResults/useSearchResults.js +9 -9
  13. package/lib/components/useSearchResults/useSearchResults.js.map +1 -1
  14. package/lib-es/components/SearchAdmin/SearchAdmin.js +33 -10
  15. package/lib-es/components/SearchAdmin/SearchAdmin.js.map +1 -1
  16. package/lib-es/components/SearchAdmin/SearchAdminSideBar/SearchAdminSideBar.js +76 -0
  17. package/lib-es/components/SearchAdmin/SearchAdminSideBar/SearchAdminSideBar.js.map +1 -0
  18. package/lib-es/components/SearchAdmin/SearchAdminSideBar/index.js +3 -0
  19. package/lib-es/components/SearchAdmin/SearchAdminSideBar/index.js.map +1 -0
  20. package/lib-es/components/SearchAdmin/SearchResults/SearchResults.js +38 -11
  21. package/lib-es/components/SearchAdmin/SearchResults/SearchResults.js.map +1 -1
  22. package/lib-es/components/useSearch/useSearch.js +5 -2
  23. package/lib-es/components/useSearch/useSearch.js.map +1 -1
  24. package/lib-es/components/useSearchResults/useSearchResults.js +3 -3
  25. package/lib-es/components/useSearchResults/useSearchResults.js.map +1 -1
  26. package/package.json +6 -6
  27. package/src/components/SearchAdmin/SearchAdmin.js +61 -41
  28. package/src/components/SearchAdmin/SearchAdminSideBar/SearchAdminSideBar.js +88 -0
  29. package/src/components/SearchAdmin/SearchAdminSideBar/index.js +3 -0
  30. package/src/components/SearchAdmin/SearchResults/SearchResults.js +98 -41
  31. package/src/components/useSearch/useSearch.js +8 -2
  32. package/src/components/useSearchResults/useSearchResults.js +3 -4
package/CHANGELOG.md CHANGED
@@ -3,6 +3,31 @@
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.130.0-admin-updates.0](https://github.com/thebyte9/blaze/compare/v0.129.0...v0.130.0-admin-updates.0) (2023-05-24)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * add updated searchAdmin test ([4db3178](https://github.com/thebyte9/blaze/commit/4db3178f8c95182d107a1d151a793a0987c8d7b8))
12
+ * fixed admin search scroll bug ([#3915](https://github.com/thebyte9/blaze/issues/3915)) ([f307182](https://github.com/thebyte9/blaze/commit/f3071821ff1584ea47357660ebac12e993582a26))
13
+ * update tests ([f86218f](https://github.com/thebyte9/blaze/commit/f86218f88a7348f68a07685a8f49ba459aac1b1b))
14
+ * update tests ([8fd2675](https://github.com/thebyte9/blaze/commit/8fd2675624126e5a23ecc0af3202d08c46667441))
15
+
16
+
17
+ ### Features
18
+
19
+ * add admin global search styles update first iteration ([7623917](https://github.com/thebyte9/blaze/commit/7623917e64b670f7d1fc12688af6ed39735da89e))
20
+ * add admin syle feedback ([56c01fd](https://github.com/thebyte9/blaze/commit/56c01fdf825a570143d4bc0c54fbcd970adc28ae))
21
+ * add search admin sidebar testsuite ([ca043fa](https://github.com/thebyte9/blaze/commit/ca043fa43835bd07cf50bae41af3d11e7be089b6))
22
+ * add search sidebar filter by entity ([e8b5423](https://github.com/thebyte9/blaze/commit/e8b542354ce47143635411da07bb640b91bf7fdf))
23
+ * add updated snapshots ([a0444bd](https://github.com/thebyte9/blaze/commit/a0444bd0d4e2f78753ac069067d39f3f6e741832))
24
+ * amend PR and fix scroll loop issue ([8583497](https://github.com/thebyte9/blaze/commit/85834974cafb45bb87f00f14a99b3fae3a818cfb))
25
+ * remove duplicated search results and add usedebounce to improve search performance ([9aad827](https://github.com/thebyte9/blaze/commit/9aad827e7e5aaf3be84d34343d79e6b1ecbead2c))
26
+
27
+
28
+
29
+
30
+
6
31
  # [0.129.0](https://github.com/thebyte9/blaze/compare/v0.129.0-alpha.1...v0.129.0) (2023-05-23)
7
32
 
8
33
  **Note:** Version bump only for package @blaze-cms/plugin-search-ui
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  require("core-js/modules/es.array.iterator.js");
4
- require("core-js/modules/es.object.to-string.js");
5
4
  require("core-js/modules/es.string.iterator.js");
6
5
  require("core-js/modules/es.weak-map.js");
7
6
  require("core-js/modules/web.dom-collections.iterator.js");
@@ -13,17 +12,25 @@ Object.defineProperty(exports, "__esModule", {
13
12
  value: true
14
13
  });
15
14
  exports["default"] = void 0;
15
+ require("core-js/modules/es.array.map.js");
16
16
  require("core-js/modules/es.array.slice.js");
17
17
  require("core-js/modules/es.array.includes.js");
18
18
  require("core-js/modules/es.string.includes.js");
19
+ require("core-js/modules/es.array.some.js");
20
+ require("core-js/modules/es.object.to-string.js");
21
+ require("core-js/modules/es.array.filter.js");
22
+ require("core-js/modules/es.array.concat.js");
23
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
19
24
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
20
25
  var _react = _interopRequireWildcard(require("react"));
21
26
  var _classnames = _interopRequireDefault(require("classnames"));
27
+ var _customHooks = require("@blaze-react/utils/lib/customHooks");
22
28
  var _useLocalStorage3 = _interopRequireDefault(require("../useLocalStorage"));
23
29
  var _SearchBar = _interopRequireDefault(require("./SearchBar"));
24
30
  var _RecentSearches = _interopRequireDefault(require("./RecentSearches"));
25
31
  var _SearchResults = _interopRequireDefault(require("./SearchResults"));
26
32
  var _TriggerModal = _interopRequireDefault(require("./TriggerModal"));
33
+ var _SearchAdminSideBar = _interopRequireDefault(require("./SearchAdminSideBar"));
27
34
  var _useSearchResults3 = _interopRequireDefault(require("../useSearchResults"));
28
35
  var _constants = require("../../constants");
29
36
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -33,21 +40,33 @@ var SearchAdmin = function SearchAdmin() {
33
40
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
34
41
  searchTerm = _useState2[0],
35
42
  setSearchTerm = _useState2[1];
43
+ var _useState3 = (0, _react.useState)(true),
44
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
45
+ openSearchSideBar = _useState4[0],
46
+ setOpenSearchSideBar = _useState4[1];
47
+ var _useState5 = (0, _react.useState)([]),
48
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
49
+ entityValues = _useState6[0],
50
+ setEntityValues = _useState6[1];
36
51
  var _useLocalStorage = (0, _useLocalStorage3["default"])('recentSearches', []),
37
52
  _useLocalStorage2 = (0, _slicedToArray2["default"])(_useLocalStorage, 2),
38
53
  recentSearches = _useLocalStorage2[0],
39
54
  setRecentSearches = _useLocalStorage2[1];
40
- var _useState3 = (0, _react.useState)(false),
41
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
42
- displaySearchModalFrame = _useState4[0],
43
- setDisplaySearchModalFrame = _useState4[1];
44
- var _useState5 = (0, _react.useState)(true),
45
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
46
- enableResults = _useState6[0],
47
- setEnableResults = _useState6[1];
55
+ var _useState7 = (0, _react.useState)(false),
56
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
57
+ displaySearchModalFrame = _useState8[0],
58
+ setDisplaySearchModalFrame = _useState8[1];
59
+ var _useState9 = (0, _react.useState)(true),
60
+ _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
61
+ enableResults = _useState10[0],
62
+ setEnableResults = _useState10[1];
48
63
  var searchInputRef = (0, _react.useRef)(null);
64
+ var debouncedEntityValues = (0, _customHooks.useDebounce)(entityValues, 500);
49
65
  var _useSearchResults = (0, _useSearchResults3["default"])({
50
- queryKey: _constants.SEARCH_ADMIN
66
+ queryKey: _constants.SEARCH_ADMIN,
67
+ entities: debouncedEntityValues.map(function (e) {
68
+ return e.id;
69
+ })
51
70
  }),
52
71
  _useSearchResults2 = (0, _slicedToArray2["default"])(_useSearchResults, 2),
53
72
  _useSearchResults2$ = _useSearchResults2[0],
@@ -102,17 +121,42 @@ var SearchAdmin = function SearchAdmin() {
102
121
  var searchModalResultsClassName = (0, _classnames["default"])('modal modal--full-screen modal--search', {
103
122
  'modal--show': displaySearchModalFrame
104
123
  });
124
+ var searchModalSideBarClassName = (0, _classnames["default"])('modal__search__sidebar', {
125
+ 'modal__search__sidebar--close': !openSearchSideBar
126
+ });
105
127
  var isEmptySearchTermAndData = !searchTerm && !results.length;
106
128
  var isEmptySearchTermnAndDisabledResults = !searchTerm && !enableResults;
107
129
  var shouldDisplayRecentSearches = isEmptySearchTermAndData || isEmptySearchTermnAndDisabledResults;
108
- var showResults = enableResults && results.length;
130
+ var handleSetEntityValues = function handleSetEntityValues(newEntity) {
131
+ var entityExists = entityValues.some(function (entity) {
132
+ return entity.id === newEntity.id;
133
+ });
134
+ if (entityExists) {
135
+ setEntityValues(entityValues.filter(function (entity) {
136
+ return entity.id !== newEntity.id;
137
+ }));
138
+ } else {
139
+ setEntityValues([].concat((0, _toConsumableArray2["default"])(entityValues), [newEntity]));
140
+ }
141
+ };
109
142
  return /*#__PURE__*/_react["default"].createElement("div", {
110
143
  className: "search search--header"
111
144
  }, /*#__PURE__*/_react["default"].createElement(_TriggerModal["default"], {
112
145
  toggleSearchModal: toggleSearchModal
113
146
  }), /*#__PURE__*/_react["default"].createElement("div", {
114
147
  className: searchModalResultsClassName
115
- }, displaySearchModalFrame && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
148
+ }, displaySearchModalFrame && /*#__PURE__*/_react["default"].createElement("div", {
149
+ className: "modal__search"
150
+ }, /*#__PURE__*/_react["default"].createElement(_SearchAdminSideBar["default"], {
151
+ searchModalSideBarClassName: searchModalSideBarClassName,
152
+ openSearchSideBar: openSearchSideBar,
153
+ setOpenSearchSideBar: setOpenSearchSideBar,
154
+ handleSetEntityValues: handleSetEntityValues,
155
+ entityValues: entityValues,
156
+ setEntityValues: setEntityValues
157
+ }), /*#__PURE__*/_react["default"].createElement("div", {
158
+ className: "modal__search__content"
159
+ }, /*#__PURE__*/_react["default"].createElement("div", {
116
160
  className: "modal__header modal__header--search"
117
161
  }, /*#__PURE__*/_react["default"].createElement(_SearchBar["default"], {
118
162
  toggleSearchModal: toggleSearchModal,
@@ -125,15 +169,11 @@ var SearchAdmin = function SearchAdmin() {
125
169
  value: searchTerm
126
170
  });
127
171
  }
128
- })), shouldDisplayRecentSearches ? /*#__PURE__*/_react["default"].createElement(_RecentSearches["default"], {
172
+ })), shouldDisplayRecentSearches && /*#__PURE__*/_react["default"].createElement(_RecentSearches["default"], {
129
173
  recentSearches: recentSearches,
130
174
  handleSearchTerm: handleSearchTerm,
131
175
  search: _search
132
- }) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, !showResults && /*#__PURE__*/_react["default"].createElement("div", {
133
- className: "list list--search"
134
- }, /*#__PURE__*/_react["default"].createElement("div", {
135
- className: "header header--list"
136
- }, /*#__PURE__*/_react["default"].createElement("h2", null, "No Results")))), showResults && /*#__PURE__*/_react["default"].createElement(_SearchResults["default"], {
176
+ }), enableResults && /*#__PURE__*/_react["default"].createElement(_SearchResults["default"], {
137
177
  currentValue: searchTerm,
138
178
  searchTerm: searchTerm,
139
179
  loading: loading,
@@ -141,7 +181,7 @@ var SearchAdmin = function SearchAdmin() {
141
181
  total: total,
142
182
  setQueryParams: setQueryParams,
143
183
  closeModal: toggleSearchModal
144
- }))));
184
+ })))));
145
185
  };
146
186
  var _default = SearchAdmin;
147
187
  exports["default"] = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchAdmin.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_useLocalStorage3","_SearchBar","_RecentSearches","_SearchResults","_TriggerModal","_useSearchResults3","_constants","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SearchAdmin","_useState","useState","_useState2","_slicedToArray2","searchTerm","setSearchTerm","_useLocalStorage","useLocalStorage","_useLocalStorage2","recentSearches","setRecentSearches","_useState3","_useState4","displaySearchModalFrame","setDisplaySearchModalFrame","_useState5","_useState6","enableResults","setEnableResults","searchInputRef","useRef","_useSearchResults","useSearchResults","queryKey","SEARCH_ADMIN","_useSearchResults2","_useSearchResults2$","loading","results","total","setQueryParams","useEffect","current","focus","handleSearchTerm","_ref","value","target","toggleSearchModal","search","_ref2","MAX_RECENT_SEARCHES","recentSearchesCopy","slice","includes","push","length","shift","handleKeyDown","_ref3","clear","searchModalResultsClassName","classnames","isEmptySearchTermAndData","isEmptySearchTermnAndDisabledResults","shouldDisplayRecentSearches","showResults","createElement","className","Fragment","currentValue","closeModal","_default","exports"],"sources":["../../../src/components/SearchAdmin/SearchAdmin.js"],"sourcesContent":["import React, { useState, useRef, useEffect } from 'react';\nimport classnames from 'classnames';\nimport useLocalStorage from '../useLocalStorage';\nimport SearchBar from './SearchBar';\nimport RecentSearches from './RecentSearches';\nimport SearchResults from './SearchResults';\nimport TriggerModal from './TriggerModal';\nimport useSearchResults from '../useSearchResults';\nimport { SEARCH_ADMIN } from '../../constants';\n\nconst SearchAdmin = () => {\n const [searchTerm, setSearchTerm] = useState('');\n const [recentSearches, setRecentSearches] = useLocalStorage('recentSearches', []);\n const [displaySearchModalFrame, setDisplaySearchModalFrame] = useState(false);\n const [enableResults, setEnableResults] = useState(true);\n const searchInputRef = useRef(null);\n const [{ loading, results, total }, setQueryParams] = useSearchResults({\n queryKey: SEARCH_ADMIN\n });\n\n useEffect(\n () => {\n if (searchInputRef && searchInputRef.current) {\n searchInputRef.current.focus();\n }\n },\n [displaySearchModalFrame]\n );\n\n const handleSearchTerm = ({ target: { value } }) => {\n setSearchTerm(value);\n };\n const toggleSearchModal = () => {\n setSearchTerm(null);\n setEnableResults(false);\n setDisplaySearchModalFrame(!displaySearchModalFrame);\n };\n const search = ({ value }) => {\n if (!value) return;\n !enableResults && setEnableResults(true);\n const MAX_RECENT_SEARCHES = 5;\n const recentSearchesCopy = recentSearches.slice();\n\n if (!recentSearchesCopy.includes(value)) {\n recentSearchesCopy.push(value);\n if (recentSearchesCopy.length > MAX_RECENT_SEARCHES) {\n recentSearchesCopy.shift();\n }\n }\n\n setRecentSearches(recentSearchesCopy);\n setQueryParams({ value });\n };\n\n const handleKeyDown = ({ key }) => {\n if (key === 'Enter') {\n if (!searchTerm) return clear();\n search({ value: searchTerm });\n }\n };\n\n const clear = () => {\n setSearchTerm('');\n setEnableResults(false);\n };\n\n const searchModalResultsClassName = classnames('modal modal--full-screen modal--search', {\n 'modal--show': displaySearchModalFrame\n });\n\n const isEmptySearchTermAndData = !searchTerm && !results.length;\n const isEmptySearchTermnAndDisabledResults = !searchTerm && !enableResults;\n const shouldDisplayRecentSearches =\n isEmptySearchTermAndData || isEmptySearchTermnAndDisabledResults;\n\n const showResults = enableResults && results.length;\n\n return (\n <div className=\"search search--header\">\n <TriggerModal toggleSearchModal={toggleSearchModal} />\n <div className={searchModalResultsClassName}>\n {displaySearchModalFrame && (\n <>\n <div className=\"modal__header modal__header--search\">\n <SearchBar\n toggleSearchModal={toggleSearchModal}\n handleKeyDown={handleKeyDown}\n searchInputRef={searchInputRef}\n handleSearchTerm={handleSearchTerm}\n searchTerm={searchTerm}\n search={() => search({ value: searchTerm })}\n />\n </div>\n {shouldDisplayRecentSearches ? (\n <RecentSearches\n recentSearches={recentSearches}\n handleSearchTerm={handleSearchTerm}\n search={search}\n />\n ) : (\n <>\n {!showResults && (\n <div className=\"list list--search\">\n <div className=\"header header--list\">\n <h2>No Results</h2>\n </div>\n </div>\n )}\n </>\n )}\n {showResults && (\n <SearchResults\n currentValue={searchTerm}\n searchTerm={searchTerm}\n loading={loading}\n results={results}\n total={total}\n setQueryParams={setQueryParams}\n closeModal={toggleSearchModal}\n />\n )}\n </>\n )}\n </div>\n </div>\n );\n};\n\nexport default SearchAdmin;\n"],"mappings":"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"}
1
+ {"version":3,"file":"SearchAdmin.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_customHooks","_useLocalStorage3","_SearchBar","_RecentSearches","_SearchResults","_TriggerModal","_SearchAdminSideBar","_useSearchResults3","_constants","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SearchAdmin","_useState","useState","_useState2","_slicedToArray2","searchTerm","setSearchTerm","_useState3","_useState4","openSearchSideBar","setOpenSearchSideBar","_useState5","_useState6","entityValues","setEntityValues","_useLocalStorage","useLocalStorage","_useLocalStorage2","recentSearches","setRecentSearches","_useState7","_useState8","displaySearchModalFrame","setDisplaySearchModalFrame","_useState9","_useState10","enableResults","setEnableResults","searchInputRef","useRef","debouncedEntityValues","useDebounce","_useSearchResults","useSearchResults","queryKey","SEARCH_ADMIN","entities","map","e","id","_useSearchResults2","_useSearchResults2$","loading","results","total","setQueryParams","useEffect","current","focus","handleSearchTerm","_ref","value","target","toggleSearchModal","search","_ref2","MAX_RECENT_SEARCHES","recentSearchesCopy","slice","includes","push","length","shift","handleKeyDown","_ref3","clear","searchModalResultsClassName","classnames","searchModalSideBarClassName","isEmptySearchTermAndData","isEmptySearchTermnAndDisabledResults","shouldDisplayRecentSearches","handleSetEntityValues","newEntity","entityExists","some","entity","filter","concat","_toConsumableArray2","createElement","className","currentValue","closeModal","_default","exports"],"sources":["../../../src/components/SearchAdmin/SearchAdmin.js"],"sourcesContent":["import React, { useState, useRef, useEffect } from 'react';\nimport classnames from 'classnames';\nimport { useDebounce } from '@blaze-react/utils/lib/customHooks';\nimport useLocalStorage from '../useLocalStorage';\nimport SearchBar from './SearchBar';\nimport RecentSearches from './RecentSearches';\nimport SearchResults from './SearchResults';\nimport TriggerModal from './TriggerModal';\nimport SearchAdminSideBar from './SearchAdminSideBar';\nimport useSearchResults from '../useSearchResults';\nimport { SEARCH_ADMIN } from '../../constants';\n\nconst SearchAdmin = () => {\n const [searchTerm, setSearchTerm] = useState('');\n const [openSearchSideBar, setOpenSearchSideBar] = useState(true);\n const [entityValues, setEntityValues] = useState([]);\n\n const [recentSearches, setRecentSearches] = useLocalStorage('recentSearches', []);\n const [displaySearchModalFrame, setDisplaySearchModalFrame] = useState(false);\n const [enableResults, setEnableResults] = useState(true);\n const searchInputRef = useRef(null);\n const debouncedEntityValues = useDebounce(entityValues, 500);\n const [{ loading, results, total }, setQueryParams] = useSearchResults({\n queryKey: SEARCH_ADMIN,\n entities: debouncedEntityValues.map(e => e.id)\n });\n\n useEffect(\n () => {\n if (searchInputRef && searchInputRef.current) {\n searchInputRef.current.focus();\n }\n },\n [displaySearchModalFrame]\n );\n\n const handleSearchTerm = ({ target: { value } }) => {\n setSearchTerm(value);\n };\n\n const toggleSearchModal = () => {\n setSearchTerm(null);\n setEnableResults(false);\n setDisplaySearchModalFrame(!displaySearchModalFrame);\n };\n\n const search = ({ value }) => {\n if (!value) return;\n !enableResults && setEnableResults(true);\n const MAX_RECENT_SEARCHES = 5;\n const recentSearchesCopy = recentSearches.slice();\n\n if (!recentSearchesCopy.includes(value)) {\n recentSearchesCopy.push(value);\n if (recentSearchesCopy.length > MAX_RECENT_SEARCHES) {\n recentSearchesCopy.shift();\n }\n }\n\n setRecentSearches(recentSearchesCopy);\n setQueryParams({ value });\n };\n\n const handleKeyDown = ({ key }) => {\n if (key === 'Enter') {\n if (!searchTerm) return clear();\n search({ value: searchTerm });\n }\n };\n\n const clear = () => {\n setSearchTerm('');\n setEnableResults(false);\n };\n\n const searchModalResultsClassName = classnames('modal modal--full-screen modal--search', {\n 'modal--show': displaySearchModalFrame\n });\n\n const searchModalSideBarClassName = classnames('modal__search__sidebar', {\n 'modal__search__sidebar--close': !openSearchSideBar\n });\n\n const isEmptySearchTermAndData = !searchTerm && !results.length;\n const isEmptySearchTermnAndDisabledResults = !searchTerm && !enableResults;\n const shouldDisplayRecentSearches =\n isEmptySearchTermAndData || isEmptySearchTermnAndDisabledResults;\n\n const handleSetEntityValues = newEntity => {\n const entityExists = entityValues.some(entity => entity.id === newEntity.id);\n if (entityExists) {\n setEntityValues(entityValues.filter(entity => entity.id !== newEntity.id));\n } else {\n setEntityValues([...entityValues, newEntity]);\n }\n };\n\n return (\n <div className=\"search search--header\">\n <TriggerModal toggleSearchModal={toggleSearchModal} />\n <div className={searchModalResultsClassName}>\n {displaySearchModalFrame && (\n <div className=\"modal__search\">\n <SearchAdminSideBar\n searchModalSideBarClassName={searchModalSideBarClassName}\n openSearchSideBar={openSearchSideBar}\n setOpenSearchSideBar={setOpenSearchSideBar}\n handleSetEntityValues={handleSetEntityValues}\n entityValues={entityValues}\n setEntityValues={setEntityValues}\n />\n <div className=\"modal__search__content\">\n <div className=\"modal__header modal__header--search\">\n <SearchBar\n toggleSearchModal={toggleSearchModal}\n handleKeyDown={handleKeyDown}\n searchInputRef={searchInputRef}\n handleSearchTerm={handleSearchTerm}\n searchTerm={searchTerm}\n search={() => search({ value: searchTerm })}\n />\n </div>\n {shouldDisplayRecentSearches && (\n <RecentSearches\n recentSearches={recentSearches}\n handleSearchTerm={handleSearchTerm}\n search={search}\n />\n )}\n {enableResults && (\n <SearchResults\n currentValue={searchTerm}\n searchTerm={searchTerm}\n loading={loading}\n results={results}\n total={total}\n setQueryParams={setQueryParams}\n closeModal={toggleSearchModal}\n />\n )}\n </div>\n </div>\n )}\n </div>\n </div>\n );\n};\n\nexport default SearchAdmin;\n"],"mappings":"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"}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.string.iterator.js");
5
+ require("core-js/modules/es.weak-map.js");
6
+ require("core-js/modules/web.dom-collections.iterator.js");
7
+ require("core-js/modules/es.object.define-property.js");
8
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
9
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
10
+ var _typeof = require("@babel/runtime/helpers/typeof");
11
+ Object.defineProperty(exports, "__esModule", {
12
+ value: true
13
+ });
14
+ exports["default"] = void 0;
15
+ require("core-js/modules/es.array.filter.js");
16
+ require("core-js/modules/es.object.to-string.js");
17
+ require("core-js/modules/es.object.keys.js");
18
+ require("core-js/modules/es.array.includes.js");
19
+ require("core-js/modules/es.string.includes.js");
20
+ require("core-js/modules/es.array.slice.js");
21
+ require("core-js/modules/es.array.map.js");
22
+ require("core-js/modules/es.array.some.js");
23
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
24
+ var _react = _interopRequireWildcard(require("react"));
25
+ var _client = require("@apollo/client");
26
+ var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
27
+ var _checkboxes = require("@blaze-react/checkboxes");
28
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
30
+ var MENU_PERMISSIONS = ['update:any', 'update:own', 'create:any', 'create:own'];
31
+ var SearchAdminSideBar = function SearchAdminSideBar(_ref) {
32
+ var searchModalSideBarClassName = _ref.searchModalSideBarClassName,
33
+ openSearchSideBar = _ref.openSearchSideBar,
34
+ setOpenSearchSideBar = _ref.setOpenSearchSideBar,
35
+ handleSetEntityValues = _ref.handleSetEntityValues,
36
+ entityValues = _ref.entityValues,
37
+ setEntityValues = _ref.setEntityValues;
38
+ var _useState = (0, _react.useState)(false),
39
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
40
+ loadMore = _useState2[0],
41
+ setLoadMore = _useState2[1];
42
+ var _useQuery = (0, _client.useQuery)((0, _adminUiUtils.getQuery)('GET_USER_EDITABLE_ENTITIES'), {
43
+ variables: {
44
+ canDoActions: MENU_PERMISSIONS
45
+ }
46
+ }),
47
+ _useQuery$data = _useQuery.data,
48
+ _useQuery$data2 = _useQuery$data === void 0 ? {} : _useQuery$data,
49
+ _useQuery$data2$getEn = _useQuery$data2.getEntitySchemas,
50
+ getEntitySchemas = _useQuery$data2$getEn === void 0 ? [] : _useQuery$data2$getEn,
51
+ loading = _useQuery.loading;
52
+ if (loading) return null;
53
+ var filteredEntitiesSchemas = getEntitySchemas.filter(function (entity) {
54
+ if (Object.keys(entity.extras).length) {
55
+ return entity.extras.searchIndexes.includes('admin');
56
+ }
57
+ return false;
58
+ });
59
+ var entitiesToShow = filteredEntitiesSchemas.slice(0, loadMore ? filteredEntitiesSchemas.length : 5);
60
+ return /*#__PURE__*/_react["default"].createElement("div", {
61
+ className: searchModalSideBarClassName
62
+ }, /*#__PURE__*/_react["default"].createElement("div", {
63
+ className: "modal__search__sidebar__button",
64
+ role: "button",
65
+ onClick: function onClick() {
66
+ return setOpenSearchSideBar(!openSearchSideBar);
67
+ }
68
+ }, /*#__PURE__*/_react["default"].createElement("i", {
69
+ className: "material-icons"
70
+ }, openSearchSideBar ? 'keyboard_arrow_left' : 'keyboard_arrow_right')), /*#__PURE__*/_react["default"].createElement("div", {
71
+ className: "modal__search__sidebar__container"
72
+ }, /*#__PURE__*/_react["default"].createElement("div", {
73
+ className: "modal__search__sidebar__wrapper"
74
+ }, /*#__PURE__*/_react["default"].createElement("div", {
75
+ className: "modal__search__sidebar__filters"
76
+ }, /*#__PURE__*/_react["default"].createElement("i", {
77
+ className: "material-icons modal__search__sidebar__icon"
78
+ }, "tune"), /*#__PURE__*/_react["default"].createElement("span", null, "Filters")), /*#__PURE__*/_react["default"].createElement("div", {
79
+ className: "modal__search__sidebar__clear",
80
+ role: "button",
81
+ onClick: function onClick() {
82
+ return setEntityValues([]);
83
+ }
84
+ }, /*#__PURE__*/_react["default"].createElement("span", null, "Clear all"), /*#__PURE__*/_react["default"].createElement("i", {
85
+ className: "material-icons modal__search__sidebar__icon--clear"
86
+ }, "replay"))), /*#__PURE__*/_react["default"].createElement("div", {
87
+ className: "modal__search__sidebar__entity-list"
88
+ }, /*#__PURE__*/_react["default"].createElement("h1", null, "Entity list"), entitiesToShow.map(function (entity) {
89
+ return /*#__PURE__*/_react["default"].createElement(_checkboxes.Checkbox, {
90
+ checked: entityValues.some(function (_entity) {
91
+ return _entity.id === entity.id;
92
+ }),
93
+ label: entity.displayName,
94
+ id: entity.id,
95
+ name: entity.id,
96
+ onChange: function onChange(_ref2) {
97
+ var checked = _ref2.value.checked;
98
+ return handleSetEntityValues(entity);
99
+ }
100
+ });
101
+ }), /*#__PURE__*/_react["default"].createElement("div", {
102
+ className: "modal__search__sidebar__more",
103
+ role: "button",
104
+ onClick: function onClick() {
105
+ return setLoadMore(!loadMore);
106
+ }
107
+ }, /*#__PURE__*/_react["default"].createElement("i", {
108
+ className: "material-icons"
109
+ }, !loadMore ? 'navigate_next' : 'expand_less'), /*#__PURE__*/_react["default"].createElement("span", null, loadMore ? 'Less' : 'More')))));
110
+ };
111
+ var _default = SearchAdminSideBar;
112
+ exports["default"] = _default;
113
+ //# sourceMappingURL=SearchAdminSideBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchAdminSideBar.js","names":["_react","_interopRequireWildcard","require","_client","_adminUiUtils","_checkboxes","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","MENU_PERMISSIONS","SearchAdminSideBar","_ref","searchModalSideBarClassName","openSearchSideBar","setOpenSearchSideBar","handleSetEntityValues","entityValues","setEntityValues","_useState","useState","_useState2","_slicedToArray2","loadMore","setLoadMore","_useQuery","useQuery","getQuery","variables","canDoActions","_useQuery$data","data","_useQuery$data2","_useQuery$data2$getEn","getEntitySchemas","loading","filteredEntitiesSchemas","filter","entity","keys","extras","length","searchIndexes","includes","entitiesToShow","slice","createElement","className","role","onClick","map","Checkbox","checked","some","_entity","id","label","displayName","name","onChange","_ref2","value","_default","exports"],"sources":["../../../../src/components/SearchAdmin/SearchAdminSideBar/SearchAdminSideBar.js"],"sourcesContent":["import React, { useState } from 'react';\nimport { useQuery } from '@apollo/client';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { Checkbox } from '@blaze-react/checkboxes';\n\nconst MENU_PERMISSIONS = ['update:any', 'update:own', 'create:any', 'create:own'];\n\nconst SearchAdminSideBar = ({\n searchModalSideBarClassName,\n openSearchSideBar,\n setOpenSearchSideBar,\n handleSetEntityValues,\n entityValues,\n setEntityValues\n}) => {\n const [loadMore, setLoadMore] = useState(false);\n const { data: { getEntitySchemas = [] } = {}, loading } = useQuery(\n getQuery('GET_USER_EDITABLE_ENTITIES'),\n {\n variables: {\n canDoActions: MENU_PERMISSIONS\n }\n }\n );\n\n if (loading) return null;\n\n const filteredEntitiesSchemas = getEntitySchemas.filter(entity => {\n if (Object.keys(entity.extras).length) {\n return entity.extras.searchIndexes.includes('admin');\n }\n return false;\n });\n\n const entitiesToShow = filteredEntitiesSchemas.slice(\n 0,\n loadMore ? filteredEntitiesSchemas.length : 5\n );\n\n return (\n <div className={searchModalSideBarClassName}>\n <div\n className=\"modal__search__sidebar__button\"\n role=\"button\"\n onClick={() => setOpenSearchSideBar(!openSearchSideBar)}>\n <i className=\"material-icons\">\n {openSearchSideBar ? 'keyboard_arrow_left' : 'keyboard_arrow_right'}\n </i>\n </div>\n <div className=\"modal__search__sidebar__container\">\n <div className=\"modal__search__sidebar__wrapper\">\n <div className=\"modal__search__sidebar__filters\">\n <i className=\"material-icons modal__search__sidebar__icon\">tune</i>\n <span>Filters</span>\n </div>\n <div\n className=\"modal__search__sidebar__clear\"\n role=\"button\"\n onClick={() => setEntityValues([])}>\n <span>Clear all</span>\n <i className=\"material-icons modal__search__sidebar__icon--clear\">replay</i>\n </div>\n </div>\n <div className=\"modal__search__sidebar__entity-list\">\n <h1>Entity list</h1>\n {entitiesToShow.map(entity => (\n <Checkbox\n checked={entityValues.some(_entity => _entity.id === entity.id)}\n label={entity.displayName}\n id={entity.id}\n name={entity.id}\n onChange={({ value: { checked } }) => handleSetEntityValues(entity)}\n />\n ))}\n <div\n className=\"modal__search__sidebar__more\"\n role=\"button\"\n onClick={() => setLoadMore(!loadMore)}>\n <i className=\"material-icons\">{!loadMore ? 'navigate_next' : 'expand_less'}</i>\n <span>{loadMore ? 'Less' : 'More'}</span>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default SearchAdminSideBar;\n"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _SearchAdminSideBar = _interopRequireDefault(require("./SearchAdminSideBar"));
10
+ var _default = _SearchAdminSideBar["default"];
11
+ exports["default"] = _default;
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_SearchAdminSideBar","_interopRequireDefault","require","_default","SearchAdminSideBar","exports"],"sources":["../../../../src/components/SearchAdmin/SearchAdminSideBar/index.js"],"sourcesContent":["import SearchAdminSideBar from './SearchAdminSideBar';\n\nexport default SearchAdminSideBar;\n"],"mappings":";;;;;;;;AAAA,IAAAA,mBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAsD,IAAAC,QAAA,GAEvCC,8BAAkB;AAAAC,OAAA,cAAAF,QAAA"}
@@ -49,6 +49,23 @@ var SearchResults = function SearchResults(_ref) {
49
49
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
50
50
  currentIndex = _useState4[0],
51
51
  setCurrentIndex = _useState4[1];
52
+ var _useState5 = (0, _react.useState)([]),
53
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
54
+ currentResults = _useState6[0],
55
+ setCurrentResults = _useState6[1];
56
+ var _useState7 = (0, _react.useState)(0),
57
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
58
+ currentTotal = _useState8[0],
59
+ setCurrentTotal = _useState8[1];
60
+ (0, _react.useEffect)(function () {
61
+ if (!loading) {
62
+ var _verifiedRanges = (0, _slicedToArray2["default"])(verifiedRanges, 1),
63
+ lowestRange = _verifiedRanges[0];
64
+ setCurrentTotal(total);
65
+ setCurrentResults(results);
66
+ if (lowestRange > results.length) setVerifiedRanges([]);
67
+ }
68
+ }, [loading, results, total, verifiedRanges]);
52
69
  var handleRenderedItems = /*#__PURE__*/function () {
53
70
  var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_ref2) {
54
71
  var startIndex, rowsLength, loadIndex;
@@ -97,14 +114,21 @@ var SearchResults = function SearchResults(_ref) {
97
114
  var year = String(newDate.getYear()).slice(-2);
98
115
  return "".concat(day, ".").concat(month, ".").concat(year);
99
116
  };
100
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, loading && /*#__PURE__*/_react["default"].createElement("span", null, "Loading..."), /*#__PURE__*/_react["default"].createElement("div", {
117
+ if (!currentResults.length) return /*#__PURE__*/_react["default"].createElement("div", {
118
+ className: "list list--search"
119
+ }, /*#__PURE__*/_react["default"].createElement("div", {
120
+ className: "header header--list"
121
+ }, /*#__PURE__*/_react["default"].createElement("h2", null, "No Results")));
122
+ return /*#__PURE__*/_react["default"].createElement("div", {
101
123
  className: "modal__content modal__content--search"
102
124
  }, /*#__PURE__*/_react["default"].createElement("div", {
103
125
  className: "header header--list"
104
- }, /*#__PURE__*/_react["default"].createElement("h2", null, total, " results")), /*#__PURE__*/_react["default"].createElement(_reactTinyVirtualList["default"], {
126
+ }, /*#__PURE__*/_react["default"].createElement("h2", {
127
+ className: "header--list--results"
128
+ }, "About ", /*#__PURE__*/_react["default"].createElement("b", null, currentTotal), " search keywords results")), /*#__PURE__*/_react["default"].createElement(_reactTinyVirtualList["default"], {
105
129
  width: "100%",
106
130
  height: window.innerHeight - _constants.SEARCH_RESULTS_ELEMETS_HEIGHT_ABOVE_LIST,
107
- itemCount: results.length,
131
+ itemCount: currentResults.length,
108
132
  itemSize: _constants.SEARCH_RESULTS_ITEM_SIZE,
109
133
  overscanCount: _constants.SEARCH_RESULTS_OVER_SCAN_BUFFER,
110
134
  scrollToIndex: currentIndex,
@@ -112,12 +136,18 @@ var SearchResults = function SearchResults(_ref) {
112
136
  renderItem: function renderItem(_ref6) {
113
137
  var index = _ref6.index,
114
138
  style = _ref6.style;
115
- var _results$index = results[index],
116
- id = _results$index.id,
117
- docType = _results$index.docType,
118
- updated = _results$index.updated,
119
- name = _results$index.name;
139
+ var _currentResults$index = currentResults[index],
140
+ id = _currentResults$index.id,
141
+ docType = _currentResults$index.docType,
142
+ updated = _currentResults$index.updated,
143
+ name = _currentResults$index.name,
144
+ entityIdentifier = _currentResults$index.entityIdentifier,
145
+ published = _currentResults$index.published,
146
+ created = _currentResults$index.created,
147
+ status = _currentResults$index.status;
120
148
  var updatedDate = updated ? getDateFormat(updated) : null;
149
+ var createdDate = created ? getDateFormat(created) : null;
150
+ var publishedDate = published ? getDateFormat(published) : null;
121
151
  return /*#__PURE__*/_react["default"].createElement("div", {
122
152
  key: index,
123
153
  style: style,
@@ -127,8 +157,8 @@ var SearchResults = function SearchResults(_ref) {
127
157
  }, /*#__PURE__*/_react["default"].createElement("div", {
128
158
  className: "list__item-row list__item-row--result"
129
159
  }, /*#__PURE__*/_react["default"].createElement("span", {
130
- className: "badge badge--primary"
131
- }, docType, " ", updatedDate), /*#__PURE__*/_react["default"].createElement("a", {
160
+ className: "list__item-identifier"
161
+ }, entityIdentifier), /*#__PURE__*/_react["default"].createElement("a", {
132
162
  href: getNavigationRoute({
133
163
  id: id,
134
164
  docType: docType
@@ -139,10 +169,14 @@ var SearchResults = function SearchResults(_ref) {
139
169
  docType: docType
140
170
  });
141
171
  },
142
- className: "list__item-text list__item-text--result"
143
- }, name))));
172
+ className: "list__item-link"
173
+ }, name), /*#__PURE__*/_react["default"].createElement("div", {
174
+ className: "list__item-dates"
175
+ }, publishedDate && /*#__PURE__*/_react["default"].createElement("span", null, /*#__PURE__*/_react["default"].createElement("b", null, "Published: "), publishedDate), /*#__PURE__*/_react["default"].createElement("span", null, /*#__PURE__*/_react["default"].createElement("b", null, "Created: "), createdDate), /*#__PURE__*/_react["default"].createElement("span", null, /*#__PURE__*/_react["default"].createElement("b", null, "Updated: "), updatedDate)), /*#__PURE__*/_react["default"].createElement("div", {
176
+ className: "list__item-status"
177
+ }, status && /*#__PURE__*/_react["default"].createElement("span", null, /*#__PURE__*/_react["default"].createElement("b", null, "Status: "), status)))));
144
178
  }
145
- })));
179
+ }), loading && /*#__PURE__*/_react["default"].createElement("span", null, "Loading..."));
146
180
  };
147
181
  SearchResults.propTypes = {
148
182
  loading: _propTypes["default"].bool.isRequired,
@@ -1 +1 @@
1
- {"version":3,"file":"SearchResults.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_reactTinyVirtualList","_reactRouterDom","_constants","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SearchResults","_ref","currentValue","loading","results","total","setQueryParams","closeModal","history","_useState","useState","_useState2","_slicedToArray2","verifiedRanges","setVerifiedRanges","_useState3","_useState4","currentIndex","setCurrentIndex","handleRenderedItems","_ref3","_asyncToGenerator2","_regenerator","mark","_callee","_ref2","startIndex","rowsLength","loadIndex","wrap","_callee$","_context","prev","next","length","Math","floor","SEARCH_RESULTS_OVER_SCAN_BUFFER","includes","value","offset","concat","_toConsumableArray2","stop","_x","apply","arguments","getNavigationRoute","_ref4","id","docType","FILE","navigate","_ref5","push","getDateFormat","date","newDate","Date","day","getDate","slice","month","getMonth","year","String","getYear","createElement","Fragment","className","width","height","window","innerHeight","SEARCH_RESULTS_ELEMETS_HEIGHT_ABOVE_LIST","itemCount","itemSize","SEARCH_RESULTS_ITEM_SIZE","overscanCount","scrollToIndex","onItemsRendered","renderItem","_ref6","index","style","_results$index","updated","name","updatedDate","href","onClick","propTypes","PropTypes","bool","isRequired","array","number","func","object","string","_default","withRouter","exports"],"sources":["../../../../src/components/SearchAdmin/SearchResults/SearchResults.js"],"sourcesContent":["/* eslint-disable jsx-a11y/anchor-is-valid */\n/* eslint-disable jsx-a11y/no-static-element-interactions */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport VirtualList from 'react-tiny-virtual-list';\nimport { withRouter } from 'react-router-dom';\nimport {\n SEARCH_RESULTS_OVER_SCAN_BUFFER,\n SEARCH_RESULTS_ELEMETS_HEIGHT_ABOVE_LIST,\n SEARCH_RESULTS_ITEM_SIZE,\n FILE\n} from '../../../constants';\n\nconst SearchResults = ({\n currentValue,\n loading,\n results,\n total,\n setQueryParams,\n closeModal,\n history\n}) => {\n const [verifiedRanges, setVerifiedRanges] = useState([]);\n const [currentIndex, setCurrentIndex] = useState(0);\n\n const handleRenderedItems = async ({ startIndex }) => {\n const rowsLength = results.length;\n const loadIndex = Math.floor(rowsLength / 2) - SEARCH_RESULTS_OVER_SCAN_BUFFER;\n if (loadIndex > 0 && loadIndex < startIndex && !verifiedRanges.includes(loadIndex)) {\n setQueryParams({ value: currentValue, offset: results.length });\n setVerifiedRanges([...verifiedRanges, loadIndex]);\n setCurrentIndex(startIndex + SEARCH_RESULTS_OVER_SCAN_BUFFER);\n }\n };\n\n const getNavigationRoute = ({ id, docType }) =>\n docType === FILE ? `/media/edit/${id}` : `/data-listing/${docType}/update/${id}`;\n\n const navigate = ({ id, docType }) => {\n history.push(getNavigationRoute({ id, docType }));\n closeModal();\n };\n\n const getDateFormat = date => {\n const newDate = new Date(date);\n const day = `0${newDate.getDate()}`.slice(-2);\n const month = `0${newDate.getMonth() + 1}`.slice(-2);\n const year = String(newDate.getYear()).slice(-2);\n return `${day}.${month}.${year}`;\n };\n\n return (\n <>\n {loading && <span>Loading...</span>}\n <div className=\"modal__content modal__content--search\">\n <div className=\"header header--list\">\n <h2>{total} results</h2>\n </div>\n <VirtualList\n width=\"100%\"\n height={window.innerHeight - SEARCH_RESULTS_ELEMETS_HEIGHT_ABOVE_LIST}\n itemCount={results.length}\n itemSize={SEARCH_RESULTS_ITEM_SIZE}\n overscanCount={SEARCH_RESULTS_OVER_SCAN_BUFFER}\n scrollToIndex={currentIndex}\n onItemsRendered={handleRenderedItems}\n renderItem={({ index, style }) => {\n const { id, docType, updated, name } = results[index];\n const updatedDate = updated ? getDateFormat(updated) : null;\n return (\n <div key={index} style={style} className=\"list__item--resultWrapper\">\n <div className=\"list__item list__item--result\">\n <div className=\"list__item-row list__item-row--result\">\n <span className=\"badge badge--primary\">\n {docType} {updatedDate}\n </span>\n <a\n href={getNavigationRoute({\n id,\n docType\n })}\n onClick={() =>\n navigate({\n id,\n docType\n })\n }\n className=\"list__item-text list__item-text--result\">\n {name}\n </a>\n </div>\n </div>\n </div>\n );\n }}\n />\n </div>\n </>\n );\n};\n\nSearchResults.propTypes = {\n loading: PropTypes.bool.isRequired,\n results: PropTypes.array.isRequired,\n total: PropTypes.number.isRequired,\n setQueryParams: PropTypes.func.isRequired,\n closeModal: PropTypes.func.isRequired,\n history: PropTypes.object.isRequired,\n currentValue: PropTypes.string.isRequired\n};\n\nexport default withRouter(SearchResults);\n"],"mappings":"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"}
1
+ {"version":3,"file":"SearchResults.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_reactTinyVirtualList","_reactRouterDom","_constants","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SearchResults","_ref","currentValue","loading","results","total","setQueryParams","closeModal","history","_useState","useState","_useState2","_slicedToArray2","verifiedRanges","setVerifiedRanges","_useState3","_useState4","currentIndex","setCurrentIndex","_useState5","_useState6","currentResults","setCurrentResults","_useState7","_useState8","currentTotal","setCurrentTotal","useEffect","_verifiedRanges","lowestRange","length","handleRenderedItems","_ref3","_asyncToGenerator2","_regenerator","mark","_callee","_ref2","startIndex","rowsLength","loadIndex","wrap","_callee$","_context","prev","next","Math","floor","SEARCH_RESULTS_OVER_SCAN_BUFFER","includes","value","offset","concat","_toConsumableArray2","stop","_x","apply","arguments","getNavigationRoute","_ref4","id","docType","FILE","navigate","_ref5","push","getDateFormat","date","newDate","Date","day","getDate","slice","month","getMonth","year","String","getYear","createElement","className","width","height","window","innerHeight","SEARCH_RESULTS_ELEMETS_HEIGHT_ABOVE_LIST","itemCount","itemSize","SEARCH_RESULTS_ITEM_SIZE","overscanCount","scrollToIndex","onItemsRendered","renderItem","_ref6","index","style","_currentResults$index","updated","name","entityIdentifier","published","created","status","updatedDate","createdDate","publishedDate","href","onClick","propTypes","PropTypes","bool","isRequired","array","number","func","object","string","_default","withRouter","exports"],"sources":["../../../../src/components/SearchAdmin/SearchResults/SearchResults.js"],"sourcesContent":["/* eslint-disable jsx-a11y/anchor-is-valid */\n/* eslint-disable jsx-a11y/no-static-element-interactions */\nimport React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport VirtualList from 'react-tiny-virtual-list';\nimport { withRouter } from 'react-router-dom';\nimport {\n SEARCH_RESULTS_OVER_SCAN_BUFFER,\n SEARCH_RESULTS_ELEMETS_HEIGHT_ABOVE_LIST,\n SEARCH_RESULTS_ITEM_SIZE,\n FILE\n} from '../../../constants';\n\nconst SearchResults = ({\n currentValue,\n loading,\n results,\n total,\n setQueryParams,\n closeModal,\n history\n}) => {\n const [verifiedRanges, setVerifiedRanges] = useState([]);\n const [currentIndex, setCurrentIndex] = useState(0);\n const [currentResults, setCurrentResults] = useState([]);\n const [currentTotal, setCurrentTotal] = useState(0);\n\n useEffect(\n () => {\n if (!loading) {\n const [lowestRange] = verifiedRanges;\n setCurrentTotal(total);\n setCurrentResults(results);\n if (lowestRange > results.length) setVerifiedRanges([]);\n }\n },\n [loading, results, total, verifiedRanges]\n );\n\n const handleRenderedItems = async ({ startIndex }) => {\n const rowsLength = results.length;\n const loadIndex = Math.floor(rowsLength / 2) - SEARCH_RESULTS_OVER_SCAN_BUFFER;\n if (loadIndex > 0 && loadIndex < startIndex && !verifiedRanges.includes(loadIndex)) {\n setQueryParams({ value: currentValue, offset: results.length });\n setVerifiedRanges([...verifiedRanges, loadIndex]);\n setCurrentIndex(startIndex + SEARCH_RESULTS_OVER_SCAN_BUFFER);\n }\n };\n\n const getNavigationRoute = ({ id, docType }) =>\n docType === FILE ? `/media/edit/${id}` : `/data-listing/${docType}/update/${id}`;\n\n const navigate = ({ id, docType }) => {\n history.push(getNavigationRoute({ id, docType }));\n closeModal();\n };\n\n const getDateFormat = date => {\n const newDate = new Date(date);\n const day = `0${newDate.getDate()}`.slice(-2);\n const month = `0${newDate.getMonth() + 1}`.slice(-2);\n const year = String(newDate.getYear()).slice(-2);\n return `${day}.${month}.${year}`;\n };\n\n if (!currentResults.length)\n return (\n <div className=\"list list--search\">\n <div className=\"header header--list\">\n <h2>No Results</h2>\n </div>\n </div>\n );\n\n return (\n <div className=\"modal__content modal__content--search\">\n <div className=\"header header--list\">\n <h2 className=\"header--list--results\">\n About <b>{currentTotal}</b> search keywords results\n </h2>\n </div>\n <VirtualList\n width=\"100%\"\n height={window.innerHeight - SEARCH_RESULTS_ELEMETS_HEIGHT_ABOVE_LIST}\n itemCount={currentResults.length}\n itemSize={SEARCH_RESULTS_ITEM_SIZE}\n overscanCount={SEARCH_RESULTS_OVER_SCAN_BUFFER}\n scrollToIndex={currentIndex}\n onItemsRendered={handleRenderedItems}\n renderItem={({ index, style }) => {\n const {\n id,\n docType,\n updated,\n name,\n entityIdentifier,\n published,\n created,\n status\n } = currentResults[index];\n const updatedDate = updated ? getDateFormat(updated) : null;\n const createdDate = created ? getDateFormat(created) : null;\n const publishedDate = published ? getDateFormat(published) : null;\n return (\n <div key={index} style={style} className=\"list__item--resultWrapper\">\n <div className=\"list__item list__item--result\">\n <div className=\"list__item-row list__item-row--result\">\n <span className=\"list__item-identifier\">{entityIdentifier}</span>\n <a\n href={getNavigationRoute({\n id,\n docType\n })}\n onClick={() =>\n navigate({\n id,\n docType\n })\n }\n className=\"list__item-link\">\n {name}\n </a>\n\n <div className=\"list__item-dates\">\n {publishedDate && (\n <span>\n <b>Published: </b>\n {publishedDate}\n </span>\n )}\n <span>\n <b>Created: </b>\n {createdDate}\n </span>\n <span>\n <b>Updated: </b>\n {updatedDate}\n </span>\n </div>\n <div className=\"list__item-status\">\n {status && (\n <span>\n <b>Status: </b>\n {status}\n </span>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n }}\n />\n {loading && <span>Loading...</span>}\n </div>\n );\n};\n\nSearchResults.propTypes = {\n loading: PropTypes.bool.isRequired,\n results: PropTypes.array.isRequired,\n total: PropTypes.number.isRequired,\n setQueryParams: PropTypes.func.isRequired,\n closeModal: PropTypes.func.isRequired,\n history: PropTypes.object.isRequired,\n currentValue: PropTypes.string.isRequired\n};\n\nexport default withRouter(SearchResults);\n"],"mappings":"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"}
@@ -43,10 +43,14 @@ function useSearch(_ref) {
43
43
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
44
44
  searchedValue = _useState4[0],
45
45
  setSearchedValue = _useState4[1];
46
- var _useState5 = (0, _react.useState)(null),
46
+ var _useState5 = (0, _react.useState)([]),
47
47
  _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
48
- previousOffset = _useState6[0],
49
- setPreviousOffset = _useState6[1];
48
+ previousEntities = _useState6[0],
49
+ setPreviousEntities = _useState6[1];
50
+ var _useState7 = (0, _react.useState)(null),
51
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
52
+ previousOffset = _useState8[0],
53
+ setPreviousOffset = _useState8[1];
50
54
  var buildSearchQuery = _query["default"][queryKey];
51
55
  var _useLazyQuery = (0, _client.useLazyQuery)(buildSearchQuery({
52
56
  resultKeys: resultKeys
@@ -80,6 +84,7 @@ function useSearch(_ref) {
80
84
  value = queryParams.value;
81
85
  var isNewValueSet = value && value !== searchedValue;
82
86
  var isNewOffsetSet = previousOffset !== null && offset !== previousOffset;
87
+ var notSameLength = previousEntities.length !== entities.length;
83
88
  var parsedEntities = entities.length ? entities.map(function (entity) {
84
89
  return {
85
90
  match: {
@@ -87,7 +92,7 @@ function useSearch(_ref) {
87
92
  }
88
93
  };
89
94
  }) : [];
90
- if (isNewValueSet || isNewOffsetSet) {
95
+ if (isNewValueSet || isNewOffsetSet || notSameLength) {
91
96
  getSearchResults({
92
97
  variables: {
93
98
  limit: limit,
@@ -114,8 +119,9 @@ function useSearch(_ref) {
114
119
  });
115
120
  setSearchedValue(value);
116
121
  setPreviousOffset(offset);
122
+ setPreviousEntities(entities);
117
123
  }
118
- }, [queryParams, queryParams.limit, queryParams.value, queryParams.offset, searchedValue, previousOffset, getSearchResults, entities, fields]);
124
+ }, [queryParams, queryParams.limit, queryParams.value, queryParams.offset, searchedValue, previousOffset, getSearchResults, entities, fields, entities.length, previousEntities.length]);
119
125
  return [{
120
126
  searchedValue: queryParams.value,
121
127
  loading: loading,