{"version":3,"file":"static/js/747.a40c90d0.chunk.js","mappings":"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","sources":["images/search.svg","lib/help/highlightSearchKeys.js","components/Autocomplete/Autocomplete.jsx","config/azureSearchSettings.js","search-connector/requestAdapters.js","lib/help/trimQuery.js","search-connector/requestAdapter.js","search-connector/responseAdapters.js","search-connector/responseAdapter.js","search-connector/request.js","search-connector/SiteSearchAPIConnector.js","config/searchConnector.jsx"],"sourcesContent":["var _path;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nvar SvgSearch = function SvgSearch(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n \"aria-hidden\": \"true\",\n viewBox: \"0 0 12 12\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M8.806 7.746c.59-.807.944-1.797.944-2.871C9.75 2.187 7.563 0 4.875 0S0 2.187 0 4.875 2.187 9.75 4.875 9.75a4.84 4.84 0 0 0 2.87-.944L10.94 12 12 10.94zm-3.931.504C3.014 8.25 1.5 6.736 1.5 4.875S3.014 1.5 4.875 1.5 8.25 3.014 8.25 4.875 6.736 8.25 4.875 8.25\"\n })));\n};\nexport { SvgSearch as ReactComponent };\nexport default __webpack_public_path__ + \"static/media/search.3c309b88.svg\";","/**\n * Highlight searched keys in a string.\n *\n * @param {string} stringText The text to be highlighted.\n * @param {string} inputValue The searched keys.\n * @return {string} Highlighted text.\n */\nconst highlight = (stringText, inputValue) => {\n const searchKeys = inputValue.split(\" \").filter((data) => data);\n const stringArray = stringText.split(\" \").filter((data) => data);\n\n searchKeys.forEach((key) => {\n stringArray.forEach((string, index) => {\n const convertedKey = key.replace(\n // eslint-disable-next-line no-useless-escape\n /[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g,\n \"\\\\$&\"\n );\n const replacer = new RegExp(`^${convertedKey}`, \"gi\");\n const match = string.match(replacer);\n // Only if we got matches.\n if (match !== null && match[0].length > 0) {\n stringArray[index] = stringArray[index].replace(\n replacer,\n `${match}`\n );\n }\n });\n });\n\n return stringArray.join(\" \");\n};\n\nexport default highlight;\n","import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport highlightSearchKeys from \"../../lib/help/highlightSearchKeys\";\nimport { ReactComponent as SearchSvg } from \"../../images/search.svg\";\n\nfunction Autocomplete({\n autocompletedSuggestions,\n inputValue,\n autocompleteSuggestions,\n getItemProps,\n getMenuProps,\n hideInputValue,\n}) {\n const sumOfValues = (arrayOfItems) => {\n const reducer = (accumulator, currentValue) => accumulator + currentValue;\n const countOfValues = arrayOfItems.map((item) => item.length);\n return countOfValues.length ? countOfValues.reduce(reducer) : \"\";\n };\n let index = 0;\n const autocompletedSuggestionsShowing = hideInputValue\n ? sumOfValues(Object.values(autocompletedSuggestions)) > 1\n : sumOfValues(Object.values(autocompletedSuggestions)) > 0;\n const suggestions = hideInputValue\n ? autocompletedSuggestions.suggestResults.slice(1)\n : autocompletedSuggestions.suggestResults;\n const suggestionsList = suggestions.map((suggestion, key) => {\n index += 1;\n return (\n \n \n \n \n {suggestion.suggestion ? (\n \n ) : null}\n \n );\n });\n return (\n <>\n {autocompletedSuggestionsShowing && (\n \n \n Autocomplete suggest\n \n \n {!!autocompleteSuggestions && suggestionsList}\n \n \n )}\n \n );\n}\n\nAutocomplete.defaultProps = {\n autocompleteSuggestions: false,\n highlightedIndex: 0,\n inputValue: \"\",\n hideInputValue: false,\n};\n\nAutocomplete.propTypes = {\n autocompletedSuggestions: PropTypes.object.isRequired,\n highlightedIndex: PropTypes.number,\n autocompleteSuggestions: PropTypes.bool,\n getItemProps: PropTypes.func.isRequired,\n inputValue: PropTypes.string,\n getMenuProps: PropTypes.func.isRequired,\n hideInputValue: PropTypes.bool,\n};\n\nexport default Autocomplete;\n","// We will remove this data fallback after initial dev will be done.\nconst devDataFallback = {\n service: \"l3harris-dev.search.azure.us\",\n version: \"2019-05-06\",\n index: \"l3harris-dev\",\n read_key: \"683B0A0FB100812ED985C0164A479074\",\n spellcheck: {\n name: \"\",\n key: \"\",\n mkt: \"en-US\",\n },\n contentTypes: {\n en: [\n \"Articles\",\n \"Events\",\n \"Basic page\",\n \"Person\",\n \"Capabilities\",\n \"Resources\",\n \"Pages\",\n \"Testimonial\",\n ],\n \"fr-ca\": [\n \"Articles\",\n \"Events\",\n \"Basic page\",\n \"Person\",\n \"Capabilities\",\n \"Resources\",\n \"Pages\",\n \"Testimonial\",\n ],\n \"en-ca\": [\n \"Articles\",\n \"Events\",\n \"Basic page\",\n \"Person\",\n \"Capabilities\",\n \"Resources\",\n \"Pages\",\n \"Testimonial\",\n ],\n \"en-us\": [\n \"Article\",\n \"Events\",\n \"Basic page\",\n \"Person\",\n \"Capabilities\",\n \"Resources\",\n \"Pages\",\n \"Testimonial\",\n ],\n },\n langcode: \"en\",\n summarуСopy: \"\",\n facetLabelsWeight: {\n domains: {\n Air: -30,\n Land: -29,\n Sea: -28,\n Space: -27,\n Cyber: -26,\n \"Multi-Domain\": -25,\n },\n industries: {\n Defense: -5,\n Commercial: -4,\n \"Public Safety\": -3,\n },\n segments_sectors: {\n \"Aviation Systems\": \"46\",\n Corporate: \"47\",\n \"Communication Systems\": \"48\",\n \"Integrated Mission Systems\": \"49\",\n \"Space & Airborne Systems\": \"50\",\n },\n topical_area: {\n \"Air Traffic Network Management\": \"0\",\n \"Aircraft Tracking & Surveillance\": \"0\",\n Antennas: \"0\",\n \"Artificial Intelligence/Machine Learning\": \"0\",\n Avionics: \"0\",\n \"Broadband Communication Systems\": \"0\",\n \"Command & Control\": \"0\",\n \"Counter UAS\": \"0\",\n \"Cyberspace Security\": \"0\",\n \"Data Links\": \"0\",\n \"Electro-Optical/Infrared\": \"0\",\n \"Electronic Warfare\": \"0\",\n \"Exquisite RF & Optical Sensors\": \"0\",\n \"Flight Simulators\": \"0\",\n \"Ground/Air Comms\": \"0\",\n \"Integrated Battle Management\": \"0\",\n \"Integrated ISR\": \"0\",\n International: \"0\",\n \"Maritime Solutions\": \"0\",\n \"Modular Open Systems Architecture\": \"0\",\n \"Multi-Domain Networking\": \"0\",\n \"Optical Tracking\": \"0\",\n \"Pilot Training\": \"0\",\n \"Power Distribution\": \"0\",\n \"Precision Weapons\": \"0\",\n \"Protected/Contested Comms\": \"0\",\n \"Public Safety and Professional Communications\": \"0\",\n Radar: \"0\",\n Robotics: \"0\",\n \"Satellite Imaging\": \"0\",\n \"Signals Intelligence\": \"0\",\n \"Small Satellites\": \"0\",\n \"Software Solutions\": \"0\",\n \"Soldier Systems\": \"0\",\n \"Space Protection\": \"0\",\n Surveillance: \"0\",\n \"Tactical Comms\": \"0\",\n Transceivers: \"0\",\n \"Unmanned Systems\": \"0\",\n Utilities: \"0\",\n Weather: \"0\",\n },\n },\n};\n\nconst azureSearchSettings =\n window.drupalSettings?.l3harrisSearch || devDataFallback;\n\nexport default azureSearchSettings;\n","// These filters are type of collection and require\n// Azure OData collection operators to use with.\nconst COLLECTION_EDM_STRING = [\n \"capabilities\",\n \"topical_areas\",\n \"business_segments\",\n \"locations\",\n \"tags\",\n \"domains\",\n \"industries\",\n \"event_type\",\n];\n// Here we will store filters which require\n// Azure Edm.DateTimeOffset query syntax\nconst COLLECTION_EDM_DATETIMEOFFSET = [\"created_date\"];\n\nconst DATE_RANGE = [\"event_start_date\", \"event_end_date\"];\n\nconst joinFilterValues = (name, value) => {\n return `${name} eq '${value.values.join(`' or ${name} eq '`)}'`;\n};\n\nconst formEdmCollectionQuery = (name, value) => {\n const nameMark = name[0];\n return value.values\n .map((item) => `(${name}/any(${nameMark}: ${nameMark} eq '${item}'))`)\n .join(\" and \");\n};\n\n// If is string from link update to date.\nconst checkDate = (value) => {\n if (value === \"today\") {\n const today = new Date();\n return new Date(\n Date.UTC(today.getFullYear(), today.getMonth(), today.getDate())\n ).toISOString();\n }\n return value;\n};\n\nconst formEdmDateTimeOffsetQuery = (name, value) => {\n const dateValue = checkDate(value.values[0]);\n return `${name} ge ${dateValue}`;\n};\n\nconst generateData = (time) => {\n const today = new Date();\n if (time === \"future\") {\n return new Date(\n Date.UTC(today.getFullYear() + 40, today.getMonth(), today.getDate())\n ).toISOString();\n }\n return new Date(\n Date.UTC(today.getFullYear() - 40, today.getMonth(), today.getDate())\n ).toISOString();\n};\n\nexport function adaptFacetConfig(facets) {\n if (!facets) return;\n // Perform valid facet config string.\n // Details here: https://docs.microsoft.com/en-us/rest/api/searchservice/search-documents#facetstring-zero-or-more\n const getFacetConfigStr = (facet) => {\n const facetName = facet[0];\n const facetConfigsStr = Object.entries(facet[1])\n .map(([key, value]) => `${key}:${value}`)\n .join(\",\");\n return `${facetName},${facetConfigsStr}`;\n };\n\n const config = Object.entries(facets)\n .filter((v) => {\n return v;\n })\n .map(getFacetConfigStr);\n if (!config.length) return;\n // eslint-disable-next-line consistent-return\n return config;\n}\n\nexport function adaptFilterConfig(filters) {\n if (!filters || Object.keys(filters).length === 0) return;\n\n const filtersCollection = filters.reduce((acc, filter) => {\n const fieldName = filter.field;\n const fieldValue = filter.values;\n\n if (fieldValue.find((v) => typeof v === \"object\") !== undefined) {\n const firstValue = fieldValue[0];\n if (\n firstValue.from ||\n firstValue.from === 0 ||\n firstValue.to ||\n firstValue.to === 0\n ) {\n // eslint-disable-next-line\n const { name, ...rest } = firstValue;\n acc[fieldName] = {\n type: \"range\",\n ...rest,\n };\n return acc;\n }\n return acc;\n }\n\n acc[fieldName] = {\n type: filter.type,\n values: fieldValue,\n };\n return acc;\n }, {});\n\n const dateRangeFilter = {};\n\n DATE_RANGE.forEach((entry) => {\n if (filtersCollection[entry]) {\n dateRangeFilter[entry] = filtersCollection[entry];\n delete filtersCollection[entry];\n }\n });\n\n // Generate range filter for cover all cases.\n // If no some date set date +/- 40 years.\n const updateDateRangeFilter = (date) => {\n const start = DATE_RANGE[0];\n const end = DATE_RANGE[1];\n const startDate = date[start]\n ? checkDate(date[start].values[0])\n : generateData();\n const endDate = date[end]\n ? checkDate(date[end].values[0])\n : generateData(\"future\");\n // Set odl date if user choose not valid date.\n if (startDate > endDate || endDate < startDate) {\n return `(${end} le ${generateData()})`;\n }\n const result = [\n `((${start} le ${startDate}) and (${end} ge ${endDate}))`,\n `((${start} ge ${startDate}) and (${end} le ${endDate}))`,\n `((${start} ge ${startDate}) and (${start} le ${endDate}))`,\n `((${end} ge ${startDate}) and (${end} le ${endDate}))`,\n ];\n return `${result.join(\" or \")}`;\n };\n let filterStringsSet = Object.entries(filtersCollection).map(\n ([filterName, filterValue]) => {\n if (COLLECTION_EDM_STRING.indexOf(filterName) > -1) {\n return formEdmCollectionQuery(filterName, filterValue);\n }\n if (COLLECTION_EDM_DATETIMEOFFSET.indexOf(filterName) > -1) {\n return formEdmDateTimeOffsetQuery(filterName, filterValue);\n }\n\n return joinFilterValues(filterName, filterValue);\n }\n );\n\n const updatedRangeDate =\n Object.keys(dateRangeFilter).length !== 0\n ? updateDateRangeFilter(dateRangeFilter)\n : [];\n\n // If range filter on page update.\n if (Object.keys(dateRangeFilter).length !== 0) {\n filterStringsSet = [updatedRangeDate, ...filterStringsSet];\n }\n\n if (filterStringsSet.length > 1) {\n // eslint-disable-next-line consistent-return\n return `(${filterStringsSet.join(\") and (\")})`;\n }\n // eslint-disable-next-line consistent-return\n return filterStringsSet[0];\n}\n\nexport function adaptSortingConfig(sortField) {\n if (!sortField) {\n return;\n }\n if (sortField.default) {\n const defaultSort = `${sortField.default.value} ${sortField.default.direction}`;\n // eslint-disable-next-line consistent-return\n return sortField.value\n ? `${defaultSort}, ${sortField.value} ${sortField.direction}`\n : defaultSort;\n }\n if (!sortField.value) {\n return;\n }\n // eslint-disable-next-line consistent-return\n return `${sortField.value} ${sortField.direction}`;\n}\n\nexport function getScoringParameters(filters) {\n // Function must me set in azure to accept other parameters.\n let scoreParameters = {\n solutionboost: \"none\",\n boost: \"Capabilities\"\n };\n\n if (filters) {\n if (filters.find(filter => filter.field === 'topical_areas')) {\n scoreParameters.solutionboost = \"Solutions\";\n }\n }\n\n // Send scoreParameters as a array of strings.\n // return Object.keys(scoreParameters).map((key, value) => [key, scoreParameters[key]].join('-')).join(',').split(',');\n return Object.keys(scoreParameters).map((key, value) => [key, scoreParameters[key]].join('-'));\n}\n","// Helper function to trim search query.\nconst query = (query) => {\n // The length limitation for query.\n const maxLengthQuery = 100;\n if (query.length < maxLengthQuery) {\n return query;\n }\n\n return query.substring(0, maxLengthQuery);\n};\n\nexport default query;\n","/* eslint-disable camelcase */\nimport {\n adaptFacetConfig,\n adaptFilterConfig,\n adaptSortingConfig,\n getScoringParameters,\n} from \"./requestAdapters\";\nimport trimQuery from \"../lib/help/trimQuery\";\n\nexport default function adaptRequest(request, queryConfig) {\n const updatedFacets = adaptFacetConfig(queryConfig.facets);\n const updatedFilters = adaptFilterConfig(\n queryConfig.filters !== undefined ? queryConfig.filters : request.filters\n );\n const updateSearchTerm = trimQuery(request.searchTerm);\n const searchTerm = updateSearchTerm;\n const page =\n queryConfig.current !== undefined ? queryConfig.current : request.current;\n const per_page =\n queryConfig.resultsPerPage !== undefined\n ? queryConfig.resultsPerPage\n : request.resultsPerPage;\n const items_to_skip = page === 1 ? 0 : page * per_page - per_page;\n const updatedSort = adaptSortingConfig(\n request.sortField !== undefined ? request.sortField : queryConfig.sortField\n );\n\n const typeOfQuery =\n updateSearchTerm.match(/^tags:\".*\"$/g) !== null ? \"full\" : \"simple\";\n\n const scoringParameterValue = getScoringParameters(request.filters);\n\n // Currently hard-code this since no configs\n const fieldWithHighlights = \"summary,content\";\n\n return {\n queryType: typeOfQuery,\n count: true,\n search: searchTerm,\n skip: items_to_skip,\n scoringParameters: scoringParameterValue,\n top: per_page,\n ...(updatedFacets && {\n facets: updatedFacets,\n }),\n ...(updatedFilters && {\n filter: updatedFilters,\n }),\n ...(updatedSort && {\n orderby: updatedSort,\n }),\n highlight: fieldWithHighlights,\n };\n}\n","const addEachKeyValueToObject = (acc, [key, value]) => ({\n ...acc,\n [key]: value,\n});\n\nexport function getFacets(facets) {\n if (!facets) return {};\n return Object.entries(facets)\n .map(([facetName, facetValue]) => {\n if (facetValue.length) {\n return [\n facetName,\n [\n {\n field: facetName,\n // Remove empty data if no value.\n data: facetValue.filter((item) => item.value !== \"\"),\n // Site Search does not support any other type of facet\n type: \"value\",\n },\n ],\n ];\n }\n return undefined;\n })\n .filter((el) => el)\n .reduce(addEachKeyValueToObject, {});\n}\n\nexport function getResults(records) {\n const isMetaField = (key) => key.startsWith(\"_\");\n const toObjectWithRaw = (value) => ({ raw: value });\n\n return records.map((record) => {\n const { ...rest } = record; //eslint-disable-line\n\n const result = Object.entries(rest)\n .filter(([fieldName]) => !isMetaField(fieldName))\n .map(([fieldName, fieldValue]) => [\n fieldName,\n toObjectWithRaw(fieldValue),\n ])\n .reduce(addEachKeyValueToObject, {});\n\n return result;\n });\n}\n","import { getResults, getFacets } from \"./responseAdapters\";\n\nexport function adaptResponse(response, resultsPerPage) {\n const results = getResults(response.value).map((item, key) => ({\n ...item,\n position: key + 1,\n }));\n const totalResults = response[\"@odata.count\"];\n const totalPages = resultsPerPage\n ? Math.ceil(totalResults / resultsPerPage)\n : undefined;\n const facets = getFacets(response[\"@search.facets\"]);\n const requestId = \"\";\n\n return {\n results,\n ...(totalPages && {\n totalPages,\n }),\n totalResults,\n ...(Object.keys(facets).length > 0 && { facets }),\n requestId,\n };\n}\n\nexport function adaptResponseSuggestions(response, searchTerm) {\n const results = response?.value || [];\n const suggestion =\n results.length !== 0\n ? results.map((item) => ({\n suggestion: item[\"@search.text\"],\n id: item.id,\n }))\n : [];\n // Add search term as a suggestion.\n suggestion.unshift({\n suggestion: searchTerm,\n id: \"input_value\",\n });\n return { suggestResults: suggestion };\n}\n","export default async function request(apiKey, method, path, params) {\n // Currently we will use test endpoint to avoid CORS issue\n const endpointProtocol = \"https://\";\n const headers = new Headers({\n \"Content-Type\": \"application/json\",\n \"api-key\": apiKey,\n });\n\n const response = await fetch(`${endpointProtocol}${path}`, {\n method,\n headers,\n body: JSON.stringify({\n ...params,\n }),\n });\n\n let json;\n try {\n json = await response.json();\n } catch (error) {\n // Nothing to do here, certain responses won't have json\n }\n\n if (response.status >= 200 && response.status < 300) {\n return json;\n }\n const message = json && json.error ? json.error : response.status;\n throw new Error(message);\n}\n","import adaptRequest from \"./requestAdapter\";\nimport { adaptResponse, adaptResponseSuggestions } from \"./responseAdapter\";\nimport request from \"./request\";\nimport { adaptFilterConfig } from \"./requestAdapters\";\nimport trimQuery from \"../lib/help/trimQuery\";\n\nclass SiteSearchAPIConnector {\n /**\n * @callback next\n * @param {Object} updatedQueryOptions The options to send to the API\n */\n\n /**\n * @callback hook\n * @param {Object} queryOptions The options that are about to be sent to the API\n * @param {next} next The options that are about to be sent to the API\n */\n\n /**\n * @typedef Options\n * @param {string} apiKey Credential found in your Site Search Dashboard\n * @param {hook} beforeSearchCall=(queryOptions,next)=>next(queryOptions) A hook to amend query options before the request is sent to the\n * API in a query on an \"onSearch\" event.\n * @param {hook} beforeAutocompleteResultsCall=(queryOptions,next)=>next(queryOptions) A hook to amend query options before the request is sent to the\n * API in a \"results\" query on an \"onAutocomplete\" event.\n */\n\n /**\n * @param {Options} options\n */\n constructor({\n apiKey,\n apiVersion,\n index,\n endpoint,\n beforeSearchCall = (queryOptions, next) => next(queryOptions),\n beforeAutocompleteResultsCall = (queryOptions, next) => next(queryOptions),\n }) {\n this.apiKey = apiKey;\n this.apiVersion = apiVersion;\n this.index = index;\n this.endpoint = endpoint;\n this.beforeSearchCall = beforeSearchCall;\n this.beforeAutocompleteResultsCall = beforeAutocompleteResultsCall;\n this.request = request.bind(this, apiKey);\n }\n\n onSearch(state, queryConfig) {\n const options = adaptRequest(state, queryConfig);\n // Passing it here for correct pagination.\n const { resultsPerPage } = state;\n return this.beforeSearchCall(options, (newOptions) =>\n this.request(\n \"POST\",\n `${this.endpoint}/indexes/${this.index}/docs/search?api-version=${this.apiVersion}`,\n newOptions\n ).then((json) => adaptResponse(json, resultsPerPage))\n );\n }\n\n async onAutocomplete({ searchTerm }, queryConfig) {\n // We can show some results on searchBpx typing.\n if (queryConfig.results) {\n // const options = adaptRequest(\n // { searchTerm },\n // queryConfig.results,\n // );\n }\n // Or we can show some suggestions.\n if (queryConfig.suggestions) {\n // SAmple suggestions options\n const settingsSuggestions = queryConfig.suggestions;\n const updatedFilters = adaptFilterConfig(\n settingsSuggestions.filters !== undefined && settingsSuggestions.filters\n );\n\n const options = {\n search: trimQuery(searchTerm),\n suggesterName: \"sg\",\n fuzzy: true,\n filter: updatedFilters,\n top: settingsSuggestions.top || 5,\n };\n return this.beforeAutocompleteResultsCall(options, (newOptions) =>\n this.request(\n \"POST\",\n `${this.endpoint}/indexes/${this.index}/docs/suggest?api-version=${this.apiVersion}`,\n newOptions\n ).then((json) => ({\n autocompletedSuggestions: adaptResponseSuggestions(json, searchTerm),\n }))\n );\n }\n return null;\n }\n}\n\nexport default SiteSearchAPIConnector;\n","import SiteSearchAPIConnector from \"../search-connector/SiteSearchAPIConnector\";\nimport azureSearchSettings from \"./azureSearchSettings\";\n\nconst searchConnector = new SiteSearchAPIConnector({\n apiKey: azureSearchSettings.read_key,\n apiVersion: azureSearchSettings.version,\n index: azureSearchSettings.index,\n endpoint: azureSearchSettings.service,\n});\n\nexport default searchConnector;\n"],"names":["_path","_extends","Object","assign","bind","n","e","arguments","length","t","r","hasOwnProperty","call","apply","SvgSearch","props","xmlns","fill","viewBox","d","stringText","inputValue","searchKeys","split","filter","data","stringArray","forEach","key","string","index","convertedKey","replace","replacer","RegExp","concat","match","join","Autocomplete","_ref","autocompletedSuggestions","autocompleteSuggestions","getItemProps","getMenuProps","hideInputValue","sumOfValues","arrayOfItems","countOfValues","map","item","reduce","accumulator","currentValue","autocompletedSuggestionsShowing","values","suggestionsList","suggestResults","slice","suggestion","React","className","role","SearchSvg","dangerouslySetInnerHTML","__html","highlightSearchKeys","id","defaultProps","highlightedIndex","azureSearchSettings","_window$drupalSetting","window","drupalSettings","l3harrisSearch","service","version","read_key","spellcheck","name","mkt","contentTypes","en","langcode","summarуСopy","facetLabelsWeight","domains","Air","Land","Sea","Space","Cyber","industries","Defense","Commercial","segments_sectors","Corporate","topical_area","Antennas","Avionics","International","Radar","Robotics","Surveillance","Transceivers","Utilities","Weather","COLLECTION_EDM_STRING","COLLECTION_EDM_DATETIMEOFFSET","DATE_RANGE","checkDate","value","today","Date","UTC","getFullYear","getMonth","getDate","toISOString","generateData","time","adaptFilterConfig","filters","keys","filtersCollection","acc","fieldName","field","fieldValue","undefined","find","v","firstValue","from","to","rest","_objectWithoutProperties","_excluded","_objectSpread","type","dateRangeFilter","entry","filterStringsSet","entries","_ref3","_ref4","_slicedToArray","filterName","filterValue","indexOf","nameMark","formEdmCollectionQuery","dateValue","formEdmDateTimeOffsetQuery","updatedRangeDate","date","start","end","startDate","endDate","result","updateDateRangeFilter","_toConsumableArray","query","substring","adaptRequest","request","queryConfig","updatedFacets","facets","config","facet","facetName","facetConfigsStr","_ref2","adaptFacetConfig","updatedFilters","updateSearchTerm","trimQuery","searchTerm","page","current","per_page","resultsPerPage","items_to_skip","updatedSort","sortField","default","defaultSort","direction","adaptSortingConfig","typeOfQuery","scoringParameterValue","scoreParameters","solutionboost","boost","getScoringParameters","queryType","count","search","skip","scoringParameters","top","orderby","highlight","addEachKeyValueToObject","_defineProperty","adaptResponse","response","records","results","record","_objectDestructuringEmpty","_ref5","startsWith","_ref7","_ref8","raw","position","totalResults","totalPages","Math","ceil","facetValue","el","getFacets","requestId","adaptResponseSuggestions","unshift","_x","_x2","_x3","_x4","_request","_asyncToGenerator","_regeneratorRuntime","mark","_callee","apiKey","method","path","params","headers","json","message","wrap","_context","prev","next","Headers","fetch","body","JSON","stringify","sent","t0","status","abrupt","error","Error","stop","SiteSearchAPIConnector","_createClass","apiVersion","endpoint","_ref$beforeSearchCall","beforeSearchCall","queryOptions","_ref$beforeAutocomple","beforeAutocompleteResultsCall","_classCallCheck","this","state","_this","options","newOptions","then","_onAutocomplete","settingsSuggestions","_this2","suggestions","suggesterName","fuzzy"],"sourceRoot":""}