UNPKG

@kiwicom/smart-faq

Version:

122 lines (88 loc) 4.62 kB
"use strict"; require("core-js/modules/es.array.filter"); require("core-js/modules/es.array.map"); require("core-js/modules/es.object.get-own-property-descriptor"); require("core-js/modules/es.regexp.exec"); require("core-js/modules/es.string.match"); require("core-js/modules/es.string.search"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var React = _interopRequireWildcard(require("react")); var _reactRelay = require("react-relay"); var _Loading = _interopRequireDefault(require("@kiwicom/orbit-components/lib/Loading")); var _Card = _interopRequireDefault(require("@kiwicom/orbit-components/lib/Card")); var _reactRouterDom = require("react-router-dom"); var _SearchState = require("../../SmartFAQ/context/SearchState"); var _QueryRenderer = _interopRequireDefault(require("../../SmartFAQ/relay/QueryRenderer")); var _SearchResults = _interopRequireDefault(require("./SearchResults")); var _SearchAutocomplete = _interopRequireDefault(require("./SearchAutocomplete")); var _StaticFAQError = _interopRequireDefault(require("./StaticFAQError")); var _Loader = _interopRequireDefault(require("../../SmartFAQ/common/Loader")); var _PageVariant = require("../../SmartFAQ/common/PageVariant"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } // @flow var queryAllFAQs = function queryAllFAQs() { var node = require("./__generated__/SearchAllFAQsQuery.graphql"); if (node.hash && node.hash !== "3fc1ae78152a93b023d88cf60455faed") { console.error("The definition of 'SearchAllFAQsQuery' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data."); } return require("./__generated__/SearchAllFAQsQuery.graphql"); }; var SearchAllFAQs = function SearchAllFAQs(props /*: Props*/ ) { var urlSearchParam = props.match.params.query; var first = props.isSidebarVersion || urlSearchParam ? null : 5; function renderSearchFAQs(rendererProps /*: AllFAQsQueryRendererParams*/ ) { var props = rendererProps.props, error = rendererProps.error; if (error) return React.createElement(_StaticFAQError.default, null); if (props) { var _ref, _props$allFAQs; var edges = (_ref = (_props$allFAQs = props.allFAQs) === null || _props$allFAQs === void 0 ? void 0 : _props$allFAQs.edges) !== null && _ref !== void 0 ? _ref : []; var faqs = edges.map(function (edge) { return edge === null || edge === void 0 ? void 0 : edge.node; }).filter(Boolean); return React.createElement(React.Fragment, null, React.createElement(_PageVariant.SidebarVersion, null, React.createElement(_SearchResults.default, { faqs: faqs })), React.createElement(_PageVariant.FullPageVersion, null, React.createElement(_SearchState.SearchState.Consumer, null, function (_ref2) { var searchText = _ref2.searchText; var isSearching = searchText.length > 0; if (urlSearchParam && isSearching) { return React.createElement(_SearchResults.default, { faqs: faqs, isFullPage: true }); } return isSearching ? React.createElement(_SearchAutocomplete.default, { faqs: faqs, urlSearchParam: urlSearchParam }) : React.createElement(_SearchResults.default, { faqs: faqs, isFullPage: true }); }))); } return React.createElement(React.Fragment, null, React.createElement(_PageVariant.SidebarVersion, null, React.createElement(_Loader.default, { fullHeight: true })), React.createElement(_PageVariant.FullPageVersion, null, React.createElement(_Card.default, null, React.createElement(_Loading.default, { type: "boxLoader", loading: true })))); } return React.createElement(_QueryRenderer.default, { query: queryAllFAQs, variables: { search: props.search ? props.search : urlSearchParam, first: first }, render: renderSearchFAQs }); }; var _default = (0, _reactRouterDom.withRouter)(SearchAllFAQs); exports.default = _default;