@blaze-cms/plugin-search-ui 0.133.0 → 0.134.0-core-styles.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 +27 -0
  2. package/lib/components/SearchAdmin/SearchAdmin.js +71 -21
  3. package/lib/components/SearchAdmin/SearchAdmin.js.map +1 -1
  4. package/lib/components/SearchAdmin/SearchAdminSideBar/SearchAdminSideBar.js +112 -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 +81 -29
  9. package/lib/components/SearchAdmin/SearchResults/SearchResults.js.map +1 -1
  10. package/lib/components/useSearch/useSearch.js +13 -7
  11. package/lib/components/useSearch/useSearch.js.map +1 -1
  12. package/lib/components/useSearchResults/useSearchResults.js +13 -11
  13. package/lib/components/useSearchResults/useSearchResults.js.map +1 -1
  14. package/lib-es/components/SearchAdmin/SearchAdmin.js +44 -12
  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 +54 -14
  21. package/lib-es/components/SearchAdmin/SearchResults/SearchResults.js.map +1 -1
  22. package/lib-es/components/useSearch/useSearch.js +7 -4
  23. package/lib-es/components/useSearch/useSearch.js.map +1 -1
  24. package/lib-es/components/useSearchResults/useSearchResults.js +7 -5
  25. package/lib-es/components/useSearchResults/useSearchResults.js.map +1 -1
  26. package/package.json +6 -6
  27. package/src/components/SearchAdmin/SearchAdmin.js +64 -42
  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 +122 -44
  31. package/src/components/useSearch/useSearch.js +6 -1
  32. package/src/components/useSearchResults/useSearchResults.js +13 -4
package/CHANGELOG.md CHANGED
@@ -3,6 +3,33 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.134.0-core-styles.0](https://github.com/thebyte9/blaze/compare/v0.133.0...v0.134.0-core-styles.0) (2023-10-17)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * add updated searchAdmin test ([4db3178](https://github.com/thebyte9/blaze/commit/4db3178f8c95182d107a1d151a793a0987c8d7b8))
12
+ * check seachIndexes exists ([#4035](https://github.com/thebyte9/blaze/issues/4035)) ([d41916a](https://github.com/thebyte9/blaze/commit/d41916a96836a1a7542858d695bbf2c48bef36b4))
13
+ * fixed admin search not refreshing on entity/search change ([#3935](https://github.com/thebyte9/blaze/issues/3935)) ([3e8bffe](https://github.com/thebyte9/blaze/commit/3e8bffed0bdcc1665e21a1d2b38b74664141364f))
14
+ * fixed admin search scroll bug ([#3915](https://github.com/thebyte9/blaze/issues/3915)) ([f307182](https://github.com/thebyte9/blaze/commit/f3071821ff1584ea47357660ebac12e993582a26))
15
+ * update tests ([f86218f](https://github.com/thebyte9/blaze/commit/f86218f88a7348f68a07685a8f49ba459aac1b1b))
16
+ * update tests ([8fd2675](https://github.com/thebyte9/blaze/commit/8fd2675624126e5a23ecc0af3202d08c46667441))
17
+
18
+
19
+ ### Features
20
+
21
+ * add admin global search styles update first iteration ([7623917](https://github.com/thebyte9/blaze/commit/7623917e64b670f7d1fc12688af6ed39735da89e))
22
+ * add admin syle feedback ([56c01fd](https://github.com/thebyte9/blaze/commit/56c01fdf825a570143d4bc0c54fbcd970adc28ae))
23
+ * add search admin sidebar testsuite ([ca043fa](https://github.com/thebyte9/blaze/commit/ca043fa43835bd07cf50bae41af3d11e7be089b6))
24
+ * add search sidebar filter by entity ([e8b5423](https://github.com/thebyte9/blaze/commit/e8b542354ce47143635411da07bb640b91bf7fdf))
25
+ * add updated snapshots ([a0444bd](https://github.com/thebyte9/blaze/commit/a0444bd0d4e2f78753ac069067d39f3f6e741832))
26
+ * amend PR and fix scroll loop issue ([8583497](https://github.com/thebyte9/blaze/commit/85834974cafb45bb87f00f14a99b3fae3a818cfb))
27
+ * remove duplicated search results and add usedebounce to improve search performance ([9aad827](https://github.com/thebyte9/blaze/commit/9aad827e7e5aaf3be84d34343d79e6b1ecbead2c))
28
+
29
+
30
+
31
+
32
+
6
33
  # [0.133.0](https://github.com/thebyte9/blaze/compare/v0.133.0-alpha.6...v0.133.0) (2023-10-04)
7
34
 
8
35
  **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,26 +40,40 @@ 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);
65
+ var entities = debouncedEntityValues.map(function (e) {
66
+ return e.id;
67
+ });
49
68
  var _useSearchResults = (0, _useSearchResults3["default"])({
50
- queryKey: _constants.SEARCH_ADMIN
69
+ queryKey: _constants.SEARCH_ADMIN,
70
+ entities: entities
51
71
  }),
52
72
  _useSearchResults2 = (0, _slicedToArray2["default"])(_useSearchResults, 2),
53
73
  _useSearchResults2$ = _useSearchResults2[0],
54
74
  loading = _useSearchResults2$.loading,
55
- results = _useSearchResults2$.results,
75
+ _useSearchResults2$$n = _useSearchResults2$.newResults,
76
+ results = _useSearchResults2$$n === void 0 ? [] : _useSearchResults2$$n,
56
77
  total = _useSearchResults2$.total,
57
78
  setQueryParams = _useSearchResults2[1];
58
79
  (0, _react.useEffect)(function () {
@@ -102,17 +123,50 @@ var SearchAdmin = function SearchAdmin() {
102
123
  var searchModalResultsClassName = (0, _classnames["default"])('modal modal--full-screen modal--search', {
103
124
  'modal--show': displaySearchModalFrame
104
125
  });
126
+ var searchModalSideBarClassName = (0, _classnames["default"])('modal__search__sidebar', {
127
+ 'modal__search__sidebar--close': !openSearchSideBar
128
+ });
105
129
  var isEmptySearchTermAndData = !searchTerm && !results.length;
106
130
  var isEmptySearchTermnAndDisabledResults = !searchTerm && !enableResults;
107
131
  var shouldDisplayRecentSearches = isEmptySearchTermAndData || isEmptySearchTermnAndDisabledResults;
108
- var showResults = enableResults && results.length;
132
+ var handleSetEntityValues = function handleSetEntityValues(newEntity) {
133
+ var entityExists = entityValues.some(function (entity) {
134
+ return entity.id === newEntity.id;
135
+ });
136
+ if (entityExists) {
137
+ setQueryParams({
138
+ value: searchTerm,
139
+ offset: 0
140
+ });
141
+ setEntityValues(entityValues.filter(function (entity) {
142
+ return entity.id !== newEntity.id;
143
+ }));
144
+ } else {
145
+ setQueryParams({
146
+ value: searchTerm,
147
+ offset: 0
148
+ });
149
+ setEntityValues([].concat((0, _toConsumableArray2["default"])(entityValues), [newEntity]));
150
+ }
151
+ };
109
152
  return /*#__PURE__*/_react["default"].createElement("div", {
110
153
  className: "search search--header"
111
154
  }, /*#__PURE__*/_react["default"].createElement(_TriggerModal["default"], {
112
155
  toggleSearchModal: toggleSearchModal
113
156
  }), /*#__PURE__*/_react["default"].createElement("div", {
114
157
  className: searchModalResultsClassName
115
- }, displaySearchModalFrame && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
158
+ }, displaySearchModalFrame && /*#__PURE__*/_react["default"].createElement("div", {
159
+ className: "modal__search"
160
+ }, /*#__PURE__*/_react["default"].createElement(_SearchAdminSideBar["default"], {
161
+ searchModalSideBarClassName: searchModalSideBarClassName,
162
+ openSearchSideBar: openSearchSideBar,
163
+ setOpenSearchSideBar: setOpenSearchSideBar,
164
+ handleSetEntityValues: handleSetEntityValues,
165
+ entityValues: entityValues,
166
+ setEntityValues: setEntityValues
167
+ }), /*#__PURE__*/_react["default"].createElement("div", {
168
+ className: "modal__search__content"
169
+ }, /*#__PURE__*/_react["default"].createElement("div", {
116
170
  className: "modal__header modal__header--search"
117
171
  }, /*#__PURE__*/_react["default"].createElement(_SearchBar["default"], {
118
172
  toggleSearchModal: toggleSearchModal,
@@ -125,23 +179,19 @@ var SearchAdmin = function SearchAdmin() {
125
179
  value: searchTerm
126
180
  });
127
181
  }
128
- })), shouldDisplayRecentSearches ? /*#__PURE__*/_react["default"].createElement(_RecentSearches["default"], {
182
+ })), shouldDisplayRecentSearches && /*#__PURE__*/_react["default"].createElement(_RecentSearches["default"], {
129
183
  recentSearches: recentSearches,
130
184
  handleSearchTerm: handleSearchTerm,
131
185
  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"], {
186
+ }), enableResults && /*#__PURE__*/_react["default"].createElement(_SearchResults["default"], {
137
187
  currentValue: searchTerm,
138
- searchTerm: searchTerm,
188
+ entities: entities,
139
189
  loading: loading,
140
190
  results: results,
141
191
  total: total,
142
192
  setQueryParams: setQueryParams,
143
193
  closeModal: toggleSearchModal
144
- }))));
194
+ })))));
145
195
  };
146
196
  var _default = SearchAdmin;
147
197
  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","entities","map","e","id","_useSearchResults","useSearchResults","queryKey","SEARCH_ADMIN","_useSearchResults2","_useSearchResults2$","loading","_useSearchResults2$$n","newResults","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","offset","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 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 entities = debouncedEntityValues.map(e => e.id);\n const [{ loading, newResults: results = [], total }, setQueryParams] = useSearchResults({\n queryKey: SEARCH_ADMIN,\n entities\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 setQueryParams({ value: searchTerm, offset: 0 });\n setEntityValues(entityValues.filter(entity => entity.id !== newEntity.id));\n } else {\n setQueryParams({ value: searchTerm, offset: 0 });\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 entities={entities}\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,112 @@
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.array.includes.js");
18
+ require("core-js/modules/es.string.includes.js");
19
+ require("core-js/modules/es.array.slice.js");
20
+ require("core-js/modules/es.array.map.js");
21
+ require("core-js/modules/es.array.some.js");
22
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
23
+ var _react = _interopRequireWildcard(require("react"));
24
+ var _client = require("@apollo/client");
25
+ var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
26
+ var _checkboxes = require("@blaze-react/checkboxes");
27
+ 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); }
28
+ 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; }
29
+ var MENU_PERMISSIONS = ['update:any', 'update:own', 'create:any', 'create:own'];
30
+ var SearchAdminSideBar = function SearchAdminSideBar(_ref) {
31
+ var searchModalSideBarClassName = _ref.searchModalSideBarClassName,
32
+ openSearchSideBar = _ref.openSearchSideBar,
33
+ setOpenSearchSideBar = _ref.setOpenSearchSideBar,
34
+ handleSetEntityValues = _ref.handleSetEntityValues,
35
+ entityValues = _ref.entityValues,
36
+ setEntityValues = _ref.setEntityValues;
37
+ var _useState = (0, _react.useState)(false),
38
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
39
+ loadMore = _useState2[0],
40
+ setLoadMore = _useState2[1];
41
+ var _useQuery = (0, _client.useQuery)((0, _adminUiUtils.getQuery)('GET_USER_EDITABLE_ENTITIES'), {
42
+ variables: {
43
+ canDoActions: MENU_PERMISSIONS
44
+ }
45
+ }),
46
+ _useQuery$data = _useQuery.data,
47
+ _useQuery$data2 = _useQuery$data === void 0 ? {} : _useQuery$data,
48
+ _useQuery$data2$getEn = _useQuery$data2.getEntitySchemas,
49
+ getEntitySchemas = _useQuery$data2$getEn === void 0 ? [] : _useQuery$data2$getEn,
50
+ loading = _useQuery.loading;
51
+ if (loading) return null;
52
+ var filteredEntitiesSchemas = getEntitySchemas.filter(function (entity) {
53
+ if (entity.extras && entity.extras.searchIndexes) {
54
+ return entity.extras.searchIndexes.includes('admin');
55
+ }
56
+ return false;
57
+ });
58
+ var entitiesToShow = filteredEntitiesSchemas.slice(0, loadMore ? filteredEntitiesSchemas.length : 5);
59
+ return /*#__PURE__*/_react["default"].createElement("div", {
60
+ className: searchModalSideBarClassName
61
+ }, /*#__PURE__*/_react["default"].createElement("div", {
62
+ className: "modal__search__sidebar__button",
63
+ role: "button",
64
+ onClick: function onClick() {
65
+ return setOpenSearchSideBar(!openSearchSideBar);
66
+ }
67
+ }, /*#__PURE__*/_react["default"].createElement("i", {
68
+ className: "material-icons"
69
+ }, openSearchSideBar ? 'keyboard_arrow_left' : 'keyboard_arrow_right')), /*#__PURE__*/_react["default"].createElement("div", {
70
+ className: "modal__search__sidebar__container"
71
+ }, /*#__PURE__*/_react["default"].createElement("div", {
72
+ className: "modal__search__sidebar__wrapper"
73
+ }, /*#__PURE__*/_react["default"].createElement("div", {
74
+ className: "modal__search__sidebar__filters"
75
+ }, /*#__PURE__*/_react["default"].createElement("i", {
76
+ className: "material-icons modal__search__sidebar__icon"
77
+ }, "tune"), /*#__PURE__*/_react["default"].createElement("span", null, "Filters")), /*#__PURE__*/_react["default"].createElement("div", {
78
+ className: "modal__search__sidebar__clear",
79
+ role: "button",
80
+ onClick: function onClick() {
81
+ return setEntityValues([]);
82
+ }
83
+ }, /*#__PURE__*/_react["default"].createElement("span", null, "Clear all"), /*#__PURE__*/_react["default"].createElement("i", {
84
+ className: "material-icons modal__search__sidebar__icon--clear"
85
+ }, "replay"))), /*#__PURE__*/_react["default"].createElement("div", {
86
+ className: "modal__search__sidebar__entity-list"
87
+ }, /*#__PURE__*/_react["default"].createElement("h1", null, "Entity list"), entitiesToShow.map(function (entity) {
88
+ return /*#__PURE__*/_react["default"].createElement(_checkboxes.Checkbox, {
89
+ checked: entityValues.some(function (_entity) {
90
+ return _entity.id === entity.id;
91
+ }),
92
+ label: entity.displayName,
93
+ id: entity.id,
94
+ name: entity.id,
95
+ onChange: function onChange(_ref2) {
96
+ var checked = _ref2.value.checked;
97
+ return handleSetEntityValues(entity);
98
+ }
99
+ });
100
+ }), /*#__PURE__*/_react["default"].createElement("div", {
101
+ className: "modal__search__sidebar__more",
102
+ role: "button",
103
+ onClick: function onClick() {
104
+ return setLoadMore(!loadMore);
105
+ }
106
+ }, /*#__PURE__*/_react["default"].createElement("i", {
107
+ className: "material-icons"
108
+ }, !loadMore ? 'navigate_next' : 'expand_less'), /*#__PURE__*/_react["default"].createElement("span", null, loadMore ? 'Less' : 'More')))));
109
+ };
110
+ var _default = SearchAdminSideBar;
111
+ exports["default"] = _default;
112
+ //# 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","extras","searchIndexes","includes","entitiesToShow","slice","length","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 (entity.extras && entity.extras.searchIndexes) {\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"}
@@ -14,9 +14,11 @@ Object.defineProperty(exports, "__esModule", {
14
14
  });
15
15
  exports["default"] = void 0;
16
16
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
17
+ require("core-js/modules/es.array.join.js");
18
+ require("core-js/modules/es.array.map.js");
19
+ require("core-js/modules/es.array.concat.js");
17
20
  require("core-js/modules/es.array.includes.js");
18
21
  require("core-js/modules/es.string.includes.js");
19
- require("core-js/modules/es.array.concat.js");
20
22
  require("core-js/modules/es.date.to-string.js");
21
23
  require("core-js/modules/es.array.slice.js");
22
24
  require("core-js/modules/es.function.name.js");
@@ -35,6 +37,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
35
37
 
36
38
  var SearchResults = function SearchResults(_ref) {
37
39
  var currentValue = _ref.currentValue,
40
+ entities = _ref.entities,
38
41
  loading = _ref.loading,
39
42
  results = _ref.results,
40
43
  total = _ref.total,
@@ -49,19 +52,50 @@ var SearchResults = function SearchResults(_ref) {
49
52
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
50
53
  currentIndex = _useState4[0],
51
54
  setCurrentIndex = _useState4[1];
55
+ var _useState5 = (0, _react.useState)(''),
56
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
57
+ currentResults = _useState6[0],
58
+ setCurrentResults = _useState6[1];
59
+ var _useState7 = (0, _react.useState)([]),
60
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
61
+ allResults = _useState8[0],
62
+ setAllResults = _useState8[1];
63
+ var _useState9 = (0, _react.useState)(''),
64
+ _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
65
+ currentParams = _useState10[0],
66
+ setCurrentParams = _useState10[1];
67
+ (0, _react.useEffect)(function () {
68
+ if (!loading) {
69
+ var newResults = results.map(function (_ref2) {
70
+ var id = _ref2.id;
71
+ return id;
72
+ }).join(',');
73
+ if (currentResults !== newResults) {
74
+ var newParams = "".concat(currentValue, ",").concat(entities.join(','));
75
+ if (newParams !== currentParams) {
76
+ setAllResults(results);
77
+ setCurrentParams(newParams);
78
+ if (verifiedRanges.length) setVerifiedRanges([]);
79
+ } else {
80
+ setAllResults(allResults.concat(results));
81
+ }
82
+ setCurrentResults(newResults);
83
+ }
84
+ }
85
+ }, [allResults, currentParams, currentResults, currentValue, entities, loading, results, total, verifiedRanges.length]);
52
86
  var handleRenderedItems = /*#__PURE__*/function () {
53
- var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_ref2) {
87
+ var _ref4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_ref3) {
54
88
  var startIndex, rowsLength, loadIndex;
55
89
  return _regenerator["default"].wrap(function _callee$(_context) {
56
90
  while (1) switch (_context.prev = _context.next) {
57
91
  case 0:
58
- startIndex = _ref2.startIndex;
59
- rowsLength = results.length;
92
+ startIndex = _ref3.startIndex;
93
+ rowsLength = allResults.length;
60
94
  loadIndex = Math.floor(rowsLength / 2) - _constants.SEARCH_RESULTS_OVER_SCAN_BUFFER;
61
95
  if (loadIndex > 0 && loadIndex < startIndex && !verifiedRanges.includes(loadIndex)) {
62
96
  setQueryParams({
63
97
  value: currentValue,
64
- offset: results.length
98
+ offset: allResults.length
65
99
  });
66
100
  setVerifiedRanges([].concat((0, _toConsumableArray2["default"])(verifiedRanges), [loadIndex]));
67
101
  setCurrentIndex(startIndex + _constants.SEARCH_RESULTS_OVER_SCAN_BUFFER);
@@ -73,17 +107,17 @@ var SearchResults = function SearchResults(_ref) {
73
107
  }, _callee);
74
108
  }));
75
109
  return function handleRenderedItems(_x) {
76
- return _ref3.apply(this, arguments);
110
+ return _ref4.apply(this, arguments);
77
111
  };
78
112
  }();
79
- var getNavigationRoute = function getNavigationRoute(_ref4) {
80
- var id = _ref4.id,
81
- docType = _ref4.docType;
82
- return docType === _constants.FILE ? "/media/edit/".concat(id) : "/data-listing/".concat(docType, "/update/").concat(id);
83
- };
84
- var navigate = function navigate(_ref5) {
113
+ var getNavigationRoute = function getNavigationRoute(_ref5) {
85
114
  var id = _ref5.id,
86
115
  docType = _ref5.docType;
116
+ return docType === _constants.FILE ? "/media/edit/".concat(id) : "/data-listing/".concat(docType, "/update/").concat(id);
117
+ };
118
+ var navigate = function navigate(_ref6) {
119
+ var id = _ref6.id,
120
+ docType = _ref6.docType;
87
121
  history.push(getNavigationRoute({
88
122
  id: id,
89
123
  docType: docType
@@ -97,27 +131,40 @@ var SearchResults = function SearchResults(_ref) {
97
131
  var year = String(newDate.getYear()).slice(-2);
98
132
  return "".concat(day, ".").concat(month, ".").concat(year);
99
133
  };
100
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, loading && /*#__PURE__*/_react["default"].createElement("span", null, "Loading..."), /*#__PURE__*/_react["default"].createElement("div", {
134
+ if (!allResults.length) return /*#__PURE__*/_react["default"].createElement("div", {
135
+ className: "list list--search"
136
+ }, /*#__PURE__*/_react["default"].createElement("div", {
137
+ className: "header header--list"
138
+ }, /*#__PURE__*/_react["default"].createElement("h2", null, "No Results")));
139
+ return /*#__PURE__*/_react["default"].createElement("div", {
101
140
  className: "modal__content modal__content--search"
102
141
  }, /*#__PURE__*/_react["default"].createElement("div", {
103
142
  className: "header header--list"
104
- }, /*#__PURE__*/_react["default"].createElement("h2", null, total, " results")), /*#__PURE__*/_react["default"].createElement(_reactTinyVirtualList["default"], {
143
+ }, /*#__PURE__*/_react["default"].createElement("h2", {
144
+ className: "header--list--results"
145
+ }, "About ", /*#__PURE__*/_react["default"].createElement("b", null, total), " search keywords results")), /*#__PURE__*/_react["default"].createElement(_reactTinyVirtualList["default"], {
105
146
  width: "100%",
106
147
  height: window.innerHeight - _constants.SEARCH_RESULTS_ELEMETS_HEIGHT_ABOVE_LIST,
107
- itemCount: results.length,
148
+ itemCount: allResults.length,
108
149
  itemSize: _constants.SEARCH_RESULTS_ITEM_SIZE,
109
150
  overscanCount: _constants.SEARCH_RESULTS_OVER_SCAN_BUFFER,
110
151
  scrollToIndex: currentIndex,
111
152
  onItemsRendered: handleRenderedItems,
112
- renderItem: function renderItem(_ref6) {
113
- var index = _ref6.index,
114
- 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;
153
+ renderItem: function renderItem(_ref7) {
154
+ var index = _ref7.index,
155
+ style = _ref7.style;
156
+ var _allResults$index = allResults[index],
157
+ id = _allResults$index.id,
158
+ docType = _allResults$index.docType,
159
+ updated = _allResults$index.updated,
160
+ name = _allResults$index.name,
161
+ entityIdentifier = _allResults$index.entityIdentifier,
162
+ published = _allResults$index.published,
163
+ created = _allResults$index.created,
164
+ status = _allResults$index.status;
120
165
  var updatedDate = updated ? getDateFormat(updated) : null;
166
+ var createdDate = created ? getDateFormat(created) : null;
167
+ var publishedDate = published ? getDateFormat(published) : null;
121
168
  return /*#__PURE__*/_react["default"].createElement("div", {
122
169
  key: index,
123
170
  style: style,
@@ -127,8 +174,8 @@ var SearchResults = function SearchResults(_ref) {
127
174
  }, /*#__PURE__*/_react["default"].createElement("div", {
128
175
  className: "list__item-row list__item-row--result"
129
176
  }, /*#__PURE__*/_react["default"].createElement("span", {
130
- className: "badge badge--primary"
131
- }, docType, " ", updatedDate), /*#__PURE__*/_react["default"].createElement("a", {
177
+ className: "list__item-identifier"
178
+ }, entityIdentifier), /*#__PURE__*/_react["default"].createElement("a", {
132
179
  href: getNavigationRoute({
133
180
  id: id,
134
181
  docType: docType
@@ -139,10 +186,14 @@ var SearchResults = function SearchResults(_ref) {
139
186
  docType: docType
140
187
  });
141
188
  },
142
- className: "list__item-text list__item-text--result"
143
- }, name))));
189
+ className: "list__item-link"
190
+ }, name), /*#__PURE__*/_react["default"].createElement("div", {
191
+ className: "list__item-dates"
192
+ }, 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", {
193
+ className: "list__item-status"
194
+ }, status && /*#__PURE__*/_react["default"].createElement("span", null, /*#__PURE__*/_react["default"].createElement("b", null, "Status: "), status)))));
144
195
  }
145
- })));
196
+ }), loading && /*#__PURE__*/_react["default"].createElement("span", null, "Loading..."));
146
197
  };
147
198
  SearchResults.propTypes = {
148
199
  loading: _propTypes["default"].bool.isRequired,
@@ -151,7 +202,8 @@ SearchResults.propTypes = {
151
202
  setQueryParams: _propTypes["default"].func.isRequired,
152
203
  closeModal: _propTypes["default"].func.isRequired,
153
204
  history: _propTypes["default"].object.isRequired,
154
- currentValue: _propTypes["default"].string.isRequired
205
+ currentValue: _propTypes["default"].string.isRequired,
206
+ entities: _propTypes["default"].array.isRequired
155
207
  };
156
208
  var _default = (0, _reactRouterDom.withRouter)(SearchResults);
157
209
  exports["default"] = _default;