NoResultsScreen.js 4.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. var _excluded = ["translations"];
  2. function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
  3. function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
  4. function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
  5. function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
  6. function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
  7. function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
  8. function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
  9. function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
  10. import React from 'react';
  11. import { NoResultsIcon } from './icons';
  12. export function NoResultsScreen(_ref) {
  13. var _ref$translations = _ref.translations,
  14. translations = _ref$translations === void 0 ? {} : _ref$translations,
  15. props = _objectWithoutProperties(_ref, _excluded);
  16. var _translations$noResul = translations.noResultsText,
  17. noResultsText = _translations$noResul === void 0 ? 'No results for' : _translations$noResul,
  18. _translations$suggest = translations.suggestedQueryText,
  19. suggestedQueryText = _translations$suggest === void 0 ? 'Try searching for' : _translations$suggest,
  20. _translations$reportM = translations.reportMissingResultsText,
  21. reportMissingResultsText = _translations$reportM === void 0 ? 'Believe this query should return results?' : _translations$reportM,
  22. _translations$reportM2 = translations.reportMissingResultsLinkText,
  23. reportMissingResultsLinkText = _translations$reportM2 === void 0 ? 'Let us know.' : _translations$reportM2;
  24. var searchSuggestions = props.state.context.searchSuggestions;
  25. return /*#__PURE__*/React.createElement("div", {
  26. className: "DocSearch-NoResults"
  27. }, /*#__PURE__*/React.createElement("div", {
  28. className: "DocSearch-Screen-Icon"
  29. }, /*#__PURE__*/React.createElement(NoResultsIcon, null)), /*#__PURE__*/React.createElement("p", {
  30. className: "DocSearch-Title"
  31. }, noResultsText, " \"", /*#__PURE__*/React.createElement("strong", null, props.state.query), "\""), searchSuggestions && searchSuggestions.length > 0 && /*#__PURE__*/React.createElement("div", {
  32. className: "DocSearch-NoResults-Prefill-List"
  33. }, /*#__PURE__*/React.createElement("p", {
  34. className: "DocSearch-Help"
  35. }, suggestedQueryText, ":"), /*#__PURE__*/React.createElement("ul", null, searchSuggestions.slice(0, 3).reduce(function (acc, search) {
  36. return [].concat(_toConsumableArray(acc), [/*#__PURE__*/React.createElement("li", {
  37. key: search
  38. }, /*#__PURE__*/React.createElement("button", {
  39. className: "DocSearch-Prefill",
  40. key: search,
  41. type: "button",
  42. onClick: function onClick() {
  43. props.setQuery(search.toLowerCase() + ' ');
  44. props.refresh();
  45. props.inputRef.current.focus();
  46. }
  47. }, search))]);
  48. }, []))), props.getMissingResultsUrl && /*#__PURE__*/React.createElement("p", {
  49. className: "DocSearch-Help"
  50. }, "".concat(reportMissingResultsText, " "), /*#__PURE__*/React.createElement("a", {
  51. href: props.getMissingResultsUrl({
  52. query: props.state.query
  53. }),
  54. target: "_blank",
  55. rel: "noopener noreferrer"
  56. }, reportMissingResultsLinkText)));
  57. }