{"version":3,"file":"search-bar-min.js","mappings":"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","sources":["webpack://waves/webpack/bootstrap","webpack://waves/webpack/runtime/compat get default export","webpack://waves/webpack/runtime/define property getters","webpack://waves/webpack/runtime/hasOwnProperty shorthand","webpack://waves/external var \"React\"","webpack://waves/external var \"ReactDOM\"","webpack://waves/./src/ui/svg/common/search.tsx","webpack://waves/./src/ui/svg/common/mobile-menu.tsx","webpack://waves/./src/domain/common.ts","webpack://waves/./src/projects/search/search-bar/components/support-search.tsx","webpack://waves/./src/projects/menus/list-menu/services/list-menu-provider.ts","webpack://waves/./src/projects/search/search-bar/components/video-search.tsx","webpack://waves/./src/projects/search/search-bar/components/main-support-search.tsx","webpack://waves/./src/projects/search/search-bar/App/App.tsx","webpack://waves/./src/projects/search/search-bar/index.tsx"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","const __WEBPACK_NAMESPACE_OBJECT__ = React;","const __WEBPACK_NAMESPACE_OBJECT__ = ReactDOM;","import React from 'react';\r\nimport { IIconProps } from '../interfaces';\r\n\r\nconst SearchIcon = (props: IIconProps) => {\r\n\r\n return (\r\n \r\n { props.title && { props.title } }\r\n \r\n )\r\n};\r\n\r\nexport default SearchIcon;\r\n","import React from 'react';\r\nimport { IIconProps } from '../interfaces';\r\n\r\nconst MobileMenuIcon = (props: IIconProps) => {\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n { props.title }\r\n\r\n )\r\n};\r\n\r\nexport default MobileMenuIcon;\r\n","/**\r\n * get JSON from HTML element on the page\r\n */\r\nimport React, {useEffect, useState} from \"react\";\r\n\r\n\r\nexport const getJSONFromHtml = ($el: HTMLElement|null) => {\r\n if(!$el || !$el.textContent) return null;\r\n\r\n let json = null;\r\n\r\n try{\r\n json = JSON.parse($el.textContent);\r\n }\r\n catch(ex){}\r\n\r\n return json;\r\n};\r\n\r\n/**\r\n * get setting fromHTML\r\n *
...
\r\n */\r\nexport const getSettingFromHtml = (id: string) => {\r\n const $div = document.querySelector(`#${ id }`);\r\n if(!$div || !$div.textContent) return '';\r\n return $div.textContent.trim();\r\n};\r\n\r\n/**\r\n * helper: get GUID\r\n */\r\nconst guidHelper = () => {\r\n return Math.floor((1 + Math.random()) * 0x10000)\r\n .toString(16)\r\n .substring(1);\r\n};\r\n\r\n/**\r\n * get GUID\r\n */\r\nexport const guid = () => {\r\n return guidHelper() + guidHelper() + '-' + guidHelper() + '-' + guidHelper() + '-' + guidHelper() + '-' + guidHelper() + guidHelper() + guidHelper();\r\n};\r\n\r\n/**\r\n * timeout in milliseconds\r\n */\r\nexport const timeout = (ms: number) => {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n};\r\n\r\n/**\r\n * get page node GUID from meta tag printed in HTML\r\n *
67633544-c1c1-4096-a3cc-880a96fe4713
\r\n */\r\nexport const getPageNodeGUID = () => {\r\n const $div = document.querySelector('#nodeguid');\r\n if(!$div || !$div.textContent) return '';\r\n return $div.textContent.trim();\r\n};\r\n\r\n/**\r\n * get img CDN domain\r\n */\r\nexport const getImgCDNDomain = () => {\r\n const $box = document.getElementById('img-cdn-domain');\r\n const domain = $box?.textContent || '';\r\n return domain.trim().toLowerCase();\r\n};\r\n\r\ndeclare const window: any;\r\nexport const isMobile = () => {\r\n let check = false;\r\n\r\n // eslint-disable-next-line\r\n (function(a){if(/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(a.substr(0,4))) check = true;})( navigator.userAgent||navigator.vendor||window.opera);\r\n return check;\r\n};\r\nexport const isTablet_NOTWORK = () => {\r\n const userAgent = navigator.userAgent.toLowerCase();\r\n const isTablet = /(ipad|tablet|(android(?!.*mobile))|(windows(?!.*phone)(.*touch))|kindle|playbook|silk|(puffin(?!.*(IP|AP|WP))))/.test(userAgent);\r\n return isTablet;\r\n};\r\nexport const isTablet = () => {\r\n const isTouchDevice = 'ontouchstart' in window || navigator.maxTouchPoints > 0;\r\n if (isTouchDevice && !isMobile()) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n};\r\n\r\nexport const stopAllYouTubeVideos = () => {\r\n // eslint-disable-next-line\r\n document.querySelectorAll('iframe').forEach(v => { v.src = v.src;});\r\n const cnt = document.querySelectorAll('iframe')?.length;\r\n if(cnt > 0){\r\n window.setTimeout(() => {\r\n window.history.go(cnt-1);\r\n }, 200);\r\n }\r\n //window.history.go(-1);\r\n}\r\n\r\n\r\nexport const getHashByPrefix = (toFind:string, indexToFind:number = 0) => {\r\n let result = \"\";\r\n const _hash = window.location.hash.substring(1);\r\n if(!_hash || _hash === '')\r\n return result;\r\n var a = decodeURIComponent(_hash).split(\"|\"),\r\n i;\r\n\r\n for (i = 0; i < a.length; i++) {\r\n\r\n if(i < indexToFind)\r\n continue;\r\n\r\n if(a[i].startsWith(toFind) || toFind === ''){\r\n result = a[i];\r\n return result;\r\n }\r\n }\r\n\r\n return result;\r\n};\r\n\r\nexport const getParents = (elem: any) => {\r\n\r\n // Set up a parent array\r\n var parents = [];\r\n\r\n // Push each parent element to the array\r\n for ( ; elem && elem !== document; elem = elem.parentNode ) {\r\n parents.push(elem);\r\n }\r\n\r\n // Return our parent array\r\n return parents;\r\n\r\n};\r\nexport const isChildOfElementById = (elem: any, parentId: string) => {\r\n\r\n let res = false;\r\n // Push each parent element to the array\r\n for ( ; elem && elem !== document; elem = elem.parentNode ) {\r\n if(elem.id && elem.id === parentId)\r\n res = true;\r\n }\r\n\r\n // Return our parent array\r\n return res;\r\n\r\n};\r\n//Hook for dynamic window size\r\nexport const useWindowSize = () => {\r\n\r\n // Initialize state with undefined width/height so server and client renders match\r\n // Learn more here: https://joshwcomeau.com/react/the-perils-of-rehydration/\r\n const [windowSize, setWindowSize] = useState({\r\n width: undefined,\r\n height: undefined,\r\n });\r\n useEffect(() => {\r\n // Handler to call on window resize\r\n function handleResize() {\r\n // Set window width/height to state\r\n setWindowSize({\r\n width: window.innerWidth,\r\n height: window.innerHeight,\r\n });\r\n }\r\n // Add event listener\r\n window.addEventListener(\"resize\", handleResize);\r\n // Call handler right away so state gets updated with initial window size\r\n handleResize();\r\n // Remove event listener on cleanup\r\n return () => window.removeEventListener(\"resize\", handleResize);\r\n }, []); // Empty array ensures that effect is only run on mount\r\n\r\n return windowSize;\r\n\r\n};\r\n//Hook for detect if HTML element is overflow\r\nexport const useIsOverflow = (ref : any) => {\r\n const [isOverflow, setIsOverflow] = React.useState(false);\r\n\r\n React.useLayoutEffect(() => {\r\n const { current } = ref;\r\n\r\n const trigger = () => {\r\n const hasOverflow = current.scrollWidth > current.clientWidth;\r\n\r\n setIsOverflow(hasOverflow);\r\n\r\n //if (callback) callback(hasOverflow);\r\n };\r\n\r\n if (current) {\r\n trigger();\r\n }\r\n }, [ ref]);\r\n\r\n return isOverflow;\r\n};\r\n\r\nexport const openWindowPopup = (url: string, title: string, width: number, height: number) => {\r\n const left = (window.screen.width / 2) - (width / 2);\r\n const top = (window.screen.height / 2) - (height / 2);\r\n return window.open(\r\n url,\r\n title,\r\n `toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=${ width }, height=${ height }, top=${ top }, left=${ left }`\r\n );\r\n};","import React, {KeyboardEvent, useState} from 'react';\r\nimport SearchIcon from \"../../../../ui/svg/common/search\";\r\nimport MobileMenuIcon from \"../../../../ui/svg/common/mobile-menu\";\r\nimport {EVENT_LIST_MENU_MOBILE_OPEN} from \"../../../menus/list-menu/services/list-menu-provider\";\r\nimport {useWindowSize} from \"../../../../domain/common\";\r\n\r\n\r\nconst SupportSearch = () => {\r\n\r\n const [inputValue, setInputValue] = useState(\"\");\r\n // Window size hook\r\n const size = useWindowSize();\r\n const MAX_MOBILE_WIDTH = 500;\r\n\r\n /**\r\n * handle key up event - query search on Enter\r\n */\r\n const handleKeyUp = async (evt: KeyboardEvent) => {\r\n\r\n if(evt.key === 'Enter') {\r\n await Search();\r\n }\r\n };\r\n\r\n /**\r\n * handle search action on page number 1\r\n */\r\n const Search = async () => {\r\n window.location.href = \"/support/search?q=\" + inputValue\r\n };\r\n\r\n const openMobileMenu = () => {\r\n document.dispatchEvent(new Event(EVENT_LIST_MENU_MOBILE_OPEN));\r\n }\r\n\r\n\r\n const isMobileMenuIconVisible = window.location.pathname.startsWith('/support/tag/');\r\n\r\n return (\r\n
\r\n
\r\n\r\n {\r\n isMobileMenuIconVisible &&\r\n
openMobileMenu()}>\r\n MAX_MOBILE_WIDTH ? \"57px\" : \"46px\"}`} color=\"#F8F9FB\" />\r\n
\r\n }\r\n\r\n
\r\n {\r\n await handleKeyUp(evt);\r\n }}\r\n aria-label=\"Search Support\"\r\n onChange={evt => {\r\n setInputValue(evt.target.value);\r\n }}\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n\r\n\r\n )\r\n};\r\n\r\nexport default SupportSearch;","import {IListCategory, IListMenuItem} from './interfaces';\r\n\r\nexport const MAX_VISIBLE_ITEMS = 7;\r\nexport const EVENT_LIST_MENU_MOBILE_OPEN = 'event-list-menu-mobile-open';\r\n\r\n/**\r\n * open mobil list menu from outside\r\n */\r\nexport const sendOpenMobileListMenuEvent = () => {\r\n document.dispatchEvent(new Event(EVENT_LIST_MENU_MOBILE_OPEN));\r\n};\r\n\r\n/**\r\n * menu data is received from SP 'as-is' and pasted on the page as JSON.\r\n * this function should group all menu elements by category, and perform other data fixes / preperations.\r\n */\r\nexport const prepareData = (data: IListMenuItem[]) => {\r\n\r\n if(!data) return [];\r\n\r\n const copy = JSON.parse(JSON.stringify(data));\r\n const map = new Map();\r\n\r\n for(let i=0; i MAX_VISIBLE_ITEMS;\r\n map.set(item.categoryName, category);\r\n }\r\n else{\r\n const category: IListCategory = {\r\n categoryName: item.categoryName,\r\n linkItems: [item],\r\n showReadMore: false,\r\n isOpened: true,\r\n };\r\n map.set(item.categoryName, category);\r\n }\r\n }\r\n\r\n return Array.from(map.values()) as unknown as IListCategory[];\r\n};","import React, {KeyboardEvent, useState} from 'react';\r\nimport SearchIcon from \"../../../../ui/svg/common/search\";\r\n\r\n\r\nconst VideoSearch = () => {\r\n\r\n const [inputValue, setInputValue] = useState(\"\");\r\n\r\n /**\r\n * handle key up event - query search on Enter\r\n */\r\n const handleKeyUp = async (evt: KeyboardEvent) => {\r\n\r\n if(evt.key === 'Enter') {\r\n await Search();\r\n }\r\n };\r\n\r\n /**\r\n * handle search action on page number 1\r\n */\r\n const Search = async () => {\r\n window.location.href = \"/videos/search?searchtext=\" + inputValue\r\n };\r\n\r\n return (\r\n
\r\n\r\n
\r\n
\r\n {\r\n await handleKeyUp(evt);\r\n }}\r\n aria-label=\"Search Video\"\r\n onChange={evt => {\r\n setInputValue(evt.target.value);\r\n }}\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n )\r\n};\r\n\r\nexport default VideoSearch;","import React, {KeyboardEvent, useState} from 'react';\r\nimport SearchIcon from \"../../../../ui/svg/common/search\";\r\nimport { useWindowSize} from \"../../../../domain/common\";\r\n\r\n\r\n\r\nconst MainSupportSearch = () => {\r\n\r\n const [inputValue, setInputValue] = useState(\"\");\r\n const _imgCdnDomain = (document.getElementById('img-cdn-domain')?.textContent || '')?.trim().toLowerCase();\r\n\r\n const TABLET_BREAKPOINT_START = 600;\r\n const TABLET_BREAKPOINT_END = 1279;\r\n /**\r\n * handle key up event - query search on Enter\r\n */\r\n const handleKeyUp = async (evt: KeyboardEvent) => {\r\n\r\n if(evt.key === 'Enter') {\r\n await Search();\r\n }\r\n };\r\n\r\n /**\r\n * handle search action on page number 1\r\n */\r\n const Search = async () => {\r\n window.location.href = \"/support/search?q=\" + inputValue\r\n };\r\n\r\n // Window Size Hook.\r\n const size = useWindowSize();\r\n\r\n let _backGroundImage =\"\";\r\n\r\n if(size.width !== undefined && size.width < TABLET_BREAKPOINT_START){\r\n //mobile image\r\n _backGroundImage = \"url(\\\"\"+_imgCdnDomain+\"/images/support/main/top.png?w=\"+size.width+\"&h=\"+size.width+\"&fit=crop&crop=left&fp-x=.24\\\")\";\r\n }else if(size.width !== undefined && size.width < TABLET_BREAKPOINT_END){\r\n //tablet image\r\n _backGroundImage = \"url(\\\"\"+_imgCdnDomain+\"/images/support/main/top.png?w=\"+size.width+\"&h=\"+(size.width !== undefined ? size.width * 0.35 : 0)+\"&fit=crop&crop=left&fp-x=.1\\\")\";\r\n }else if(size.width !== undefined && size.width >= TABLET_BREAKPOINT_END){\r\n //desktop image\r\n _backGroundImage = \"url(\\\"\"+_imgCdnDomain+\"/images/support/main/top.png?fit=scale&w=\"+size.width+\"\\\")\";\r\n }\r\n\r\n const bgImage = _backGroundImage;\r\n\r\n return (\r\n
\r\n
\r\n
\r\n

How Can We Help You?

\r\n\r\n
\r\n
\r\n
\r\n {\r\n await handleKeyUp(evt);\r\n }}\r\n aria-label=\"Search Support\"\r\n onChange={evt => {\r\n setInputValue(evt.target.value);\r\n }}\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n )\r\n};\r\n\r\nexport default MainSupportSearch;","import React, {useEffect, useState} from 'react';\r\nimport SupportSearch from \"../components/support-search\";\r\nimport VideoSearch from \"../components/video-search\";\r\nimport MainSupportSearch from \"../components/main-support-search\";\r\n\r\n\r\n\r\n/**\r\n * the entry point\r\n */\r\nconst App: React.FC = () => {\r\n const [isMainSupportType, setIsMainSupportType] = useState(false);\r\n const [isSupportType, setIsSupportType] = useState(false);\r\n const [isVideoType, setIsVideoType] = useState(false);\r\n\r\n\r\n\r\n /**\r\n * On page load - init url patams, query search results ( if searchtext param is not null)\r\n */\r\n useEffect(() => {\r\n const $searchTypeEl = document.querySelector('[data-search-type]');\r\n\r\n if($searchTypeEl){\r\n let searchType = $searchTypeEl.getAttribute('data-search-type') ?? '';\r\n if(searchType === \"support\"){\r\n setIsSupportType(true);\r\n }else if(searchType === \"main-support\"){\r\n setIsMainSupportType(true);\r\n }else if(searchType === \"video\"){\r\n setIsVideoType(true);\r\n }\r\n }\r\n }, []);\r\n\r\n\r\n return (\r\n <>\r\n {isSupportType && }\r\n {isMainSupportType && }\r\n {isVideoType && }\r\n \r\n );\r\n};\r\n\r\nexport default App;\r\n\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport App from './App/App';\r\n\r\n\r\n/**\r\n * entry point\r\n */\r\nexport const init = () => {\r\n const $root = document.getElementById('search-bar-app');\r\n if (!$root) return;\r\n\r\n ReactDOM.render(\r\n \r\n \r\n ,\r\n $root\r\n );\r\n};\r\n\r\n/**\r\n * entry point\r\n */\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n init();\r\n});"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","React","ReactDOM","props","width","height","className","classes","viewBox","xmlns","title","fill","color","x","y","rx","transform","stroke","strokeWidth","useWindowSize","windowSize","setWindowSize","useState","undefined","useEffect","handleResize","window","innerWidth","innerHeight","addEventListener","removeEventListener","inputValue","setInputValue","size","Search","async","location","href","isMobileMenuIconVisible","pathname","startsWith","onClick","document","dispatchEvent","Event","type","value","placeholder","onKeyUp","evt","handleKeyUp","onChange","target","_imgCdnDomain","getElementById","textContent","trim","toLowerCase","_backGroundImage","bgImage","style","backgroundRepeat","backgroundImage","isMainSupportType","setIsMainSupportType","isSupportType","setIsSupportType","isVideoType","setIsVideoType","$searchTypeEl","querySelector","searchType","getAttribute","$root","init"],"sourceRoot":""}