- {promoMarkup}{notifMarkup}
‘,panelEmptyTemplate=’
{emptyPanelMsg}
‘,panelErrorTemplate=’
{errorMsg}
‘,panelParentTemplate=”,notifOnboardPromoTemplate=’
{notifOnboardMsg}
‘,EXPANDED_PANEL=”expanded_panel”,ERROR_PANEL=”error_panel”,NotificationView=function(){function e(t,n){classCallCheck$1(this,e);var o=this;o._config=t,o._panelNode=null,o._store=n}return createClass$1(e,[{key:”_generatePanelMarkup”,value:function(e,t){var n=this._config,o=void 0,r=void 0;”undefined”!=typeof window&&(o=window.Notification&&”default”===window.Notification.permission,r=n.promos.bypassEligibleClassCheck||hasClass(document.body,n.promos.eligibleBodyClass));var i=n.promos.enableNotifOnboard&&o&&r?notifOnboardPromoTemplate:””;if(i){var s=n.promos.showYahooLogo?””:”yns-no-logo”;i=i.replace(“{notifOnboardBtnLabel}”,n.promos.notifOnboardBtnLabel).replace(“{notifOnboardMsg}”,n.promos.notifOnboardMsg).replace(“{subscriptionTopic}”,n.promos.subscriptionTopic).replace(“{noLogoClass}”,s).replace(“{promoLogo}”,n.promos.promoLogo)}var a=t.newCount>n.panel.maxCount?t.newCount:””,c=n.panel.notificationCenterPath,l=c?””:constants.panelHideElement,u=n.panel.headerMsg?””:” “+constants.panelHideElement,d=c?constants.panelPaddingBtm:””,p=void 0;t.count?p=t.markup:p=panelEmptyTemplate.replace(“{emptyPanelMsg}”,n.panel.emptyPanelMsg);return e=e.replace(“{notifMarkup}”,p).replace(“{promoMarkup}”,i).replace(“{hideClass}”,l).replace(“{notifCenterLink}”,c).replace(“{paddingClass}”,d).replace(“{headerMsg}”,n.panel.headerMsg).replace(“{hideHeaderClass}”,u).replace(/{notificationCenterNavMsg}/g,n.panel.notificationCenterNavMsg).replace(/{newCount}/g,a)}},{key:”render”,value:function(e,t){var n=this;if(n._panelNode){var o=void 0,r=n._panelNode,i=void 0,s=void 0;switch(e){case EXPANDED_PANEL:o=panelTemplate,s=n._store.getNotifications(),i=n._generatePanelMarkup(o,s),r.innerHTML=i;break;case ERROR_PANEL:i=(o=panelErrorTemplate).replace(“{errorMsg}”,n._config.panel.errorMsg),r.innerHTML=i}t&&t()}else t&&t(new Error(“No panel parent”))}},{key:”createPanelParentNode”,value:function(e){e&&(e.innerHTML=panelParentTemplate,this._panelNode=document.getElementById(constants.panelNodeId))}},{key:”updateBadgeNode”,value:function(e){if(e){var t=this._store.getNotifications().newCount,n=this._config.badge.maxCount;if(t){var o=t>n?n+”+”:t;e.innerHTML=o}else e.innerHTML=””}}},{key:”addStyles”,value:function(e){if(e&&”undefined”!=typeof window){var t=document.getElementById(this._config.panel.styleTagId);t||((t=document.createElement(“style”)).type=”text/css”,t.id=this._config.panel.styleTagId,t.innerText=e,document.head.appendChild(t))}}}]),e}(),EXPANDED_PANEL$1=”expanded_panel”,ERROR_PANEL$1=”error_panel”,PanelController=function(){function e(t,n,o){classCallCheck$1(this,e);var r=this;r._store=n,r._view=o,r._config=t;var i=r._config.panel;r._panelParentNode=document.querySelector(i.parentSelector),r._badgeNode=r._config.badge.selector&&document.querySelector(r._config.badge.selector),r._indicatorNode=i.indicatorSelector&&document.querySelector(i.indicatorSelector)}return createClass$1(e,[{key:”createPanelParentNode”,value:function(){this._view.createPanelParentNode(this._panelParentNode),this._notifPanelNode=document.getElementById(constants.panelNodeId)}},{key:”refreshPanelNode”,value:function(e,t){var n=this;addClass(n._notifPanelNode,constants.panelLoading),n._store.fetchNotifications(e,(function(e,o){e?n._notifPanelNode.innerHTML||(n._view.render(ERROR_PANEL$1),addClass(n._notifPanelNode,constants.panelLoading)):(n._view.render(EXPANDED_PANEL$1),n._view.updateBadgeNode(n._badgeNode),n._showBadge(),n._showIndicator(),n._view.addStyles(o.css)),removeClass(n._notifPanelNode,constants.panelLoading),t&&t(e,o)}))}},{key:”resetBadge”,value:function(){var e=this;e._store.resetNewCount(),e._view.updateBadgeNode(e._badgeNode),addClass(e._badgeNode,e._config.badge.hideClass)}},{key:”_showIndicator”,value:function(){this._indicatorNode&&(this._store.getNotifications().newCount?addClass(this._indicatorNode,this._config.panel.indicatorClass):removeClass(this._indicatorNode,this._config.panel.indicatorClass))}},{key:”_showBadge”,value:function(){var e=this;e._store.getNotifications().newCount?removeClass(e._badgeNode,e._config.badge.hideClass):addClass(e._badgeNode,e._config.badge.hideClass)}}]),e}(),config={promos:{eligibleBodyClass:”display-push-promos”,enableNotifOnboard:!0,bypassEligibleClassCheck:!1,notifOnboardBtnLabel:”Notify Me”,notifOnboardMsg:”Get alerts for breaking news and top stories”,promoLogo:”https://s.yimg.com/cv/apiv2/ae/news/circle_bell.png”,showYahooLogo:!0,subscriptionTopic:”gondor_homerun_news”},badge:{hideClass:””,maxCount:5,selector:””},panel:{emptyPanelMsg:”You have no new notifications.”,errorMsg:””,headerMsg:”Notifications”,imageTag:”img:40×40|2|80″,indicatorClass:”yns-indicator”,indicatorSelector:null,maxCount:6,notificationCenterNavMsg:”View all {newCount} notifications”,notificationCenterPath:””,notificationTypes:””,parentSelector:null,styleTagId:”notificationStyles”,theme:”default”},service:{attemptCount:2,attemptDelay:1,url:null,resetUrl:null,isRMP:!1,responseType:”json”,timeout:1500}},Main=function(){function e(t){classCallCheck$1(this,e);var n=this;n.config=n._parseConfig(t),n._validateRequiredConfigs()&&(n._request=new NotificationRequest(n.config),n._store=new NotificationStore(n.config,n._request),n._view=new NotificationView(n.config,n._store),n._panelController=new PanelController(n.config,n._store,n._view),n._panelController.createPanelParentNode(),n._assignHelperMethods())}return createClass$1(e,[{key:”_parseConfig”,value:function(e){var t={};for(var n in objectAssign(t,config),t)if(t.hasOwnProperty(n)){var o=t[n],r=e[n];”object”===(void 0===o?”undefined”:_typeof(o))?objectAssign(o,r):t[n]=e[n]}return t}},{key:”_validateRequiredConfigs”,value:function(){var e=this.config;return!(!e.panel.parentSelector||!e.service.url)}},{key:”_assignHelperMethods”,value:function(){var e=this;e.helpers={refreshPanelNode:e._panelController.refreshPanelNode.bind(e._panelController),resetBadge:e._panelController.resetBadge.bind(e._panelController),resetIndicator:function(){removeClass(e._panelController._indicatorNode,e.config.panel.indicatorClass)}}}}]),e}(),notificationClient_module_min=Main,notificationClient={NotificationClient:notificationClient_module_min},CONSUMPTION_STORAGE_KEY=”lnct”,NotifClient=function(){function e(){var e,t;this.personalized=!1,this.ybarElem=document.getElementById(“ybar”),this.partnerClasses=null===(t=null===(e=this.ybarElem)||void 0===e?void 0:e.className)||void 0===t?void 0:t.match(/ybar-variant-([a-z]*)/),this.client=new notificationClient.NotificationClient(this.getConfig())}return e.prototype.refreshPanel=function(){var e,t,n,o=this,r={lastUpdate:this.getTimeStamp()||this.setTimeStamp(),loadInHpViewer:!0,includePersonalized:this.personalized},i=(null===(e=window.YAHOO)||void 0===e?void 0:e.context)||(null===(t=window.Af)||void 0===t?void 0:t.context)||{};return i.region&&i.lang&&(r.lang=i.lang,r.region=i.region),(null===(n=this.partnerClasses)||void 0===n?void 0:n.length)&&(r.partner=this.partnerClasses[1]),new Promise((function(e,t){o.client.helpers.refreshPanelNode({matrixParams:r},(function(n,o){n&&(logError(“Notification refresh error:”,n),t(n)),e(o)}))}))},e.prototype.resetBadge=function(){this.client.helpers.resetBadge(),this.setTimeStamp()},e.prototype.getConfig=function(){var e,t,n={promos:{eligibleBodyClass:”display-push-promos”,enableNotifOnboard:!0},badge:{selector:”#notif-badge”,hideClass:”ybar-notification-hidden”},panel:{emptyPanelMsg:”You have no new notifications.”,errorMsg:”Please check back later.”,headerMsg:”Notifications”,maxCount:5,parentSelector:”#ybarNotificationBody”,notificationTypes:”breakingNews”},service:{url:”/tdv2_fp/api/resource/NotificationHistory.getHistory”,isRMP:!1}},o=document.getElementById(“notification-container”),r=null===(e=null==o?void 0:o.dataset)||void 0===e?void 0:e.config,i={};if(r){“att”===(null===(t=this.partnerClasses)||void 0===t?void 0:t[1])&&(n.promos.showYahooLogo=!1);try{var s=JSON.parse(r);i=__assign({},s),this.personalized=1===s.personalize}catch(e){logError(“Notifications config parsing error”,e)}o&&delete o.dataset.config}return this.mergeConfigs(n,i)},e.prototype.mergeConfigs=function(e,t){var n=__assign({},e);for(var o in e)n[o]=__assign(__assign({},e[o]),t[o]);return n},e.prototype.getTimeStamp=function(){var e;return null===(e=window.localStorage)||void 0===e?void 0:e.getItem(CONSUMPTION_STORAGE_KEY)},e.prototype.setTimeStamp=function(){var e,t=””+Math.floor((new Date).getTime()/1e3);return null===(e=window.localStorage)||void 0===e||e.setItem(CONSUMPTION_STORAGE_KEY,t),t},e}(),notifClient=new NotifClient,getNotifClient=function(){return notifClient},reInit=function(){notifClient=new NotifClient},ybarRapid,ybarRapidInterval,ybarRapidErrMsg=””,beaconQueue=[],noop$1=function(){},logRapidError=function(){window.removeEventListener(“beforeunload”,logRapidError),””!==ybarRapidErrMsg&&logError(“Rapid not found on page”,new Error(ybarRapidErrMsg))},findRapidWithSpaceid=function(e){var t=void 0;if(e&&e.length>0)for(var n=0;n
/*!**********************!*
!*** ./src/index.js ***!
**********************/function(__unused_webpack_module,__unused_webpack_exports,__webpack_require__){eval(“var I18n = __webpack_require__(/*! ./lib/I18n */ “./src/lib/I18n.js”);nn(function (win, doc) {n “use strict”;nn var defaultConfig = {n uiLang: ‘en-US’,n speechLang: ‘en-US’,n voiceButton: ‘#voice-btn’,n searchBox: {n form: ‘#sf’,n input: ‘#yschsp’,n params: {n fr: ”,n fr2: ”n }n },n enable_voice_trending: false,n trending: {n market: “en-us”n },n ui: {n speechOverlay: {n disableBlur: falsen }n },n browsers: {n edge: falsen }n };nn function VoiceSearch(config) {n var self = this;n self.config = Object.assign(defaultConfig, config || {});n self.i18n = new VoiceSearch.I18n({n lang: self.config.uiLangn });n self.renderPermissionGuide(self);n self.renderSpeechPanel(self);n self.speechResult = ”;n self.noSpeech = true;n self.isRecognitionStart = false;n self.recognition = null;n self.voiceButton = doc.querySelector(self.config.voiceButton);n self.searchBoxForm = doc.querySelector(self.config.searchBox.form);n self.searchBoxQuery = doc.querySelector(self.config.searchBox.input);n self.speechPanel = doc.querySelector(‘#spch’);n self.speechButtonContainer = doc.querySelector(‘#spchbc’);n self.speechButton = doc.querySelector(‘#spchbc-btn’);n self.speechText = doc.querySelector(‘#spcht’);n self.speechOverlay = doc.getElementById(‘spch-overlay’);n self.retryLink = doc.querySelector(‘#spcht-retry’);n self.trending = doc.getElementById(‘spch-trending’);n self.trendingTerms = doc.getElementById(‘trending-terms’);n self.termSpans = doc.getElementsByClassName(“trending-term”);n self.closeButton = doc.querySelector(‘#spchx’);n self.startAudio = new Audio(‘https://s.yimg.com/pv/static/misc/voice-start-202105050733.wav’);n self.resultAudio = new Audio(‘https://s.yimg.com/pv/static/misc/voice-result-202105050733.wav’);n self.errorAudio = new Audio(‘https://s.yimg.com/pv/static/misc/voice-error-202105050733.wav’);n self.closeAudio = new Audio(‘https://s.yimg.com/pv/static/misc/voice-close-202105050733.wav’);n self.permissionGuide = doc.querySelector(‘#spchp’);n self.permissionGuideClose = doc.querySelector(‘#spchpx’);n self.permissionGuideTimer = null;nn self.onEscKeyDown = function (e) {n if (e.code !== ‘Escape’) {n return;n }nn self.recognition.stop();n self.sendBeacon(‘keybrd’, ‘voicesearch_cancel_esc’); // The clean up should put inside closePanel() instead of here,n // or func won’t be cleaned up if user close panel with btn or overlaynn self.closePanel(self);n };nn if (self.isBrowserSupported()) {n var SpeechRecognition = win.SpeechRecognition || win.webkitSpeechRecognition;n var SpeechGrammarList = win.SpeechGrammarList || win.webkitSpeechGrammarList;n var speechGrammar = ‘#JSGF V1.0;’;n self.recognition = new SpeechRecognition();n var speechRecognitionList = new SpeechGrammarList();nn if (speechRecognitionList.addFromString) {n speechRecognitionList.addFromString(speechGrammar, 1);n }nn self.recognition.grammars = speechRecognitionList;n self.recognition.continuous = false;n self.recognition.lang = self.config.speechLang;n self.recognition.interimResults = false;n self.recognition.maxAlternatives = 1;n /* Listeners */nn if (self.voiceButton) {n self.voiceButton.onclick = function () {n self.recognition.start();nn if (self.permissionGuideTimer) {n win.clearTimeout(self.permissionGuideTimer);n }nn self.permissionGuideTimer = win.setTimeout(function () {n if (!self.isRecognitionStart) {n self.showPermissionGuide(self);n }n }, 300); // Also close when pressing escnn doc.addEventListener(‘keydown’, self.onEscKeyDown);n self.sendBeacon(‘clk’, ‘voicesearch’);n };n }nn if (self.speechButton) {n self.speechButton.onclick = function () {n if (!self.isRecognitionStart) {n self.recognition.start();n self.sendBeacon(‘clk’, ‘voicesearch_panel_mic_restart’);n } else {n self.recognition.stop();n self.sendBeacon(‘clk’, ‘voicesearch_panel_mic_close’);n self.closePanel(self);n }n };n }nn if (self.retryLink) {n self.retryLink.onclick = function () {n if (!self.isRecognitionStart) {n self.recognition.start();n self.sendBeacon(‘clk’, ‘voicesearch_panel_retry’);n }n };n }nn if (self.speechOverlay) {n self.speechOverlay.onclick = function () {n self.recognition.stop();n self.sendBeacon(‘clk’, ‘voicesearch_cancel_outside’);n self.closePanel(self);n };n }nn if (self.closeButton) {n self.closeButton.onclick = function () {n self.recognition.stop();n self.sendBeacon(‘clk’, ‘voicesearch_cancel’);n self.closePanel(self);n };n }nn if (self.permissionGuideClose) {n self.permissionGuideClose.onclick = function () {n self.recognition.stop();n self.sendBeacon(‘clk’, ‘voicesearch_permission_close’);n self.closeAudio.play();n self.hidePermissionGuide(self);n };n }n /* Recognition Events */nnn self.recognition.onresult = function (event) {n // The SpeechRecognitionEvent results property returns a SpeechRecognitionResultList objectn // The SpeechRecognitionResultList object contains SpeechRecognitionResult objects.n // It has a getter so it can be accessed like an arrayn // The first [0] returns the SpeechRecognitionResult at the last position.n // Each SpeechRecognitionResult object contains SpeechRecognitionAlternative objects that contain individual results.n // These also have getters so they can be accessed like arrays.n // The second [0] returns the SpeechRecognitionAlternative at position 0.n // We then return the transcript property of the SpeechRecognitionAlternative objectn // console.log(‘Confidence: ‘ + event.results[0][0].confidence);n self.speechResult = event.results[0][0].transcript;n /* Punctuation Handling: Check last character and strip it if necessary */nn self.handlePunctuation(self);nn if (self.speechText) {n self.speechText.innerText = self.speechResult;n }nn if (self.searchBoxQuery) {n self.searchBoxQuery.value = self.speechResult;n }nn self.resultAudio.play();n win.setTimeout(function () {n if (self.speechPanel) {n self.speechPanel.classList.remove(“s2tb”);n self.speechPanel.classList.add(“s2tb-h”);n }nn self.hideRetryLink(self);nn if (self.searchBoxForm) {n if (self.searchBoxForm.fr && self.config.searchBox && self.config.searchBox.params && self.config.searchBox.params.fr) {n self.searchBoxForm.fr.value = config.searchBox.params.fr;n self.searchBoxForm.fr.disabled = false; // for homepage casen }nn if (self.searchBoxForm.fr2 && self.config.searchBox && self.config.searchBox.params && self.config.searchBox.params.fr2) {n self.searchBoxForm.fr2.value = config.searchBox.params.fr2;n self.searchBoxForm.fr2.disabled = false; // for homepage casen }nn self.searchBoxForm.submit();n }n }, 1000);n };nn self.recognition.onspeechstart = function () {// Fired when speech startsn };nn self.recognition.onspeechend = function () {n // Fired when speech endsn self.recognition.stop();n };nn self.recognition.onerror = function () {n // console.log(‘Error occurred in recognition: ‘ + event.error);n if (self.speechText) {n self.speechText.innerText = self.i18n.t(‘search.voice.recognition_error’);n }nn self.hideTrending(self);n self.showRetryLink(self);n self.errorAudio.play();n };nn self.recognition.onaudiostart = function () {n // Fired when the user agent has started to capture audio.n if (self.speechButtonContainer) {n self.speechButtonContainer.classList.add(“listening”);n }n };nn self.recognition.onaudioend = function () {n // Fired when the user agent has finished capturing audio.n if (self.speechButtonContainer) {n self.speechButtonContainer.classList.remove(“listening”);n }n };nn self.recognition.onsoundstart = function () {n // Fired when any sound — recognisable speech or not — has been detected.n self.hideTrending(self);n self.noSpeech = false;nn if (self.speechButtonContainer) {n self.speechButtonContainer.classList.remove(“listening”);n self.speechButtonContainer.classList.add(“speaking”);n }n };nn self.recognition.onsoundend = function () {n // Fired when no sound presentn if (self.speechButtonContainer) {n self.speechButtonContainer.classList.remove(“speaking”);n }n };nn self.recognition.onstart = function () {n // Fired when the speech recognition service has begun listeningn self.recognitionInit(self);n self.startRecognition(self);n };nn self.recognition.onend = function () {n // Fired when the speech recognition service has disconnected.n self.isRecognitionStart = false;nn if (self.noSpeech == false && self.speechResult == ”) {n // No match: Fired when the speech recognition can’t recognise speechn if (self.speechText) {n self.speechText.innerText = self.i18n.t(‘search.voice.recognition_nomatch’);n }nn self.hideTrending(self);n self.showRetryLink(self);n self.errorAudio.play();n }n }; // trigger onReady event when initializednnn if (document && document.dispatchEvent) {n document.dispatchEvent(new Event(‘VOICE_JS_READY’));n }n }n } // static membersnnn VoiceSearch.I18n = I18n; // instance membersnn VoiceSearch.prototype.renderPermissionGuide = function (self) {n var tmpl = “\n
\n “);n var dom = new DOMParser().parseFromString(tmpl, ‘text/html’);n document.body.appendChild(dom.body.children[0]);n };nn VoiceSearch.prototype.renderSpeechPanel = function (self) {n var tmpl = “\n
\n
\n \n \n “.concat(self.i18n.t(‘search.voice.recognition_retry’), “\n
\n
\n
\n
\n
\n “).concat(self.i18n.t(‘search.voice.trending_title’), “\n \n
\n
\n
\n “);n var dom = new DOMParser().parseFromString(tmpl, ‘text/html’);nn if (self && self.config && self.config.ui && self.config.ui.speechOverlay && self.config.ui.speechOverlay.disableBlur) {n dom.body.children[0].classList.add(‘disable-blur-overlay’);n }nn document.body.appendChild(dom.body.children[0]);n };nn VoiceSearch.prototype.isBrowserSupported = function () {n var isSupported = false;n var self = this;n var isChromium = Boolean(window.chrome);n var isIOSChrome = /CriOS/.test(window.navigator.userAgent);n var isEdge = /Edg\//.test(window.navigator.userAgent);n var isLegacyEdge = /Edge\//.test(window.navigator.userAgent);n var isOpera = Boolean(window.opr);n var isBrave = Boolean(window.navigator.brave);n var browsers = [// chromen {n checkEnabled: function checkEnabled() {n return true;n },n checkBrowser: function checkBrowser() {n return isChromium && !isIOSChrome && !isEdge && !isOpera && !isBrave;n },n checkAPI: function checkAPI() {n return win && (‘SpeechRecognition’ in win || ‘webkitSpeechRecognition’ in win) && (‘SpeechGrammarList’ in win || ‘webkitSpeechGrammarList’ in win);n }n }, // edgen {n checkEnabled: function checkEnabled() {n return self && self.config && self.config.browsers && self.config.browsers.edge;n },n checkBrowser: function checkBrowser() {n return isChromium && isEdge && !isLegacyEdge;n },n checkAPI: function checkAPI() {n return win && (‘SpeechRecognition’ in win || ‘webkitSpeechRecognition’ in win) && (‘SpeechGrammarList’ in win || ‘webkitSpeechGrammarList’ in win);n }n }];nn for (var b = 0; b 0) {n var lastChar = self.speechResult.charAt(self.speechResult.length – 1);nn if (lastChar === ‘.’ || lastChar === ‘?’ || lastChar === ‘。’ || lastChar === ‘?’) {n self.speechResult = self.speechResult.slice(0, -1);n }n }n };nn VoiceSearch.prototype.sendBeacon = function (actn, slk) {n var ULT = win.YAHOO.ULT || {},n SB = win.YAHOO.SB || {};nn if (ULT.beacon_click) {n var trackParams = {n _S: SB.config.i13n.spaceid,n _I: SB.config.i13n.pvid,n actn: actn,n sec: ‘search’,n slk: slkn };n win.YAHOO.ULT.beacon_click(trackParams);n }n };nn VoiceSearch.prototype.ajaxReq = function (url, callback) {n var DONE_STATE = XMLHttpRequest.DONE || 4; // for IE-compatibilitynn var xhr = new XMLHttpRequest();n var responseRaw;n var response; // CORS request only for IE8/IE9nn if (doc.documentMode && doc.documentMode n // tags it will allow on a pagenn if (!options.singleton && typeof options.singleton !== ‘boolean’) {n options.singleton = isOldIE();n }nn list = list || [];n var lastIdentifiers = modulesToDom(list, options);n return function update(newList) {n newList = newList || [];nn if (Object.prototype.toString.call(newList) !== ‘[object Array]’) {n return;n }nn for (var i = 0; i 0&&match[0]=74)&&(match=engineUserAgent.match(/Chrome/(d+)/),match&&(version=+match[1])));var engineV8Version=version,nativeSymbol=!!Object.getOwnPropertySymbols&&!fails((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&engineV8Version&&engineV8Version0?floor$1:ceil)(t)},max$2=Math.max,min$2=Math.min,toAbsoluteIndex=function(e,t){var n=toIntegerOrInfinity(e);return n0?min$1(toIntegerOrInfinity(e),9007199254740991):0},lengthOfArrayLike=function(e){return toLength(e.length)},createMethod$3=function(e){return function(t,n,o){var r,i=toIndexedObject(t),s=lengthOfArrayLike(i),a=toAbsoluteIndex(o,s);if(e&&n!=n){for(;s>a;)if((r=i[a++])!=r)return!0}else for(;s>a;a++)if((e||a in i)&&i[a]===n)return e||a||0;return!e&&-1}},arrayIncludes={includes:createMethod$3(!0),indexOf:createMethod$3(!1)},indexOf$1=arrayIncludes.indexOf,push$3=functionUncurryThis([].push),objectKeysInternal=function(e,t){var n,o=toIndexedObject(e),r=0,i=[];for(n in o)!hasOwnProperty_1(hiddenKeys$1,n)&&hasOwnProperty_1(o,n)&&push$3(i,n);for(;t.length>r;)hasOwnProperty_1(o,n=t[r++])&&(~indexOf$1(i,n)||push$3(i,n));return i},enumBugKeys=[“constructor”,”hasOwnProperty”,”isPrototypeOf”,”propertyIsEnumerable”,”toLocaleString”,”toString”,”valueOf”],hiddenKeys=enumBugKeys.concat(“length”,”prototype”),f$5=Object.getOwnPropertyNames||function(e){return objectKeysInternal(e,hiddenKeys)},objectGetOwnPropertyNames={f:f$5},f$4=Object.getOwnPropertySymbols,objectGetOwnPropertySymbols={f:f$4},concat$1=functionUncurryThis([].concat),ownKeys=getBuiltIn(“Reflect”,”ownKeys”)||function(e){var t=objectGetOwnPropertyNames.f(anObject(e)),n=objectGetOwnPropertySymbols.f;return n?concat$1(t,n(e)):t},copyConstructorProperties=function(e,t,n){for(var o=ownKeys(t),r=objectDefineProperty.f,i=objectGetOwnPropertyDescriptor.f,s=0;sr)return NaN;return parseInt(i,o)}return+l};if(isForced_1(NUMBER,!NativeNumber(” 0o1″)||!NativeNumber(“0b1”)||NativeNumber(“+0x1”))){for(var NumberWrapper=function(e){var t=arguments.lengthj;j++)hasOwnProperty_1(NativeNumber,key=keys[j])&&!hasOwnProperty_1(NumberWrapper,key)&&defineProperty(NumberWrapper,key,getOwnPropertyDescriptor(NativeNumber,key));NumberWrapper.prototype=NumberPrototype,NumberPrototype.constructor=NumberWrapper,redefine(global$1,NUMBER,NumberWrapper)}var quot=/”/g,replace=functionUncurryThis(“”.replace),createHtml=function(e,t,n,o){var r=toString(requireObjectCoercible(e)),i=””+r+””+t+”>”},stringHtmlForced=function(e){return fails((function(){var t=””[e](‘”‘);return t!==t.toLowerCase()||t.split(‘”‘).length>3}))};_export({target:”String”,proto:!0,forced:stringHtmlForced(“link”)},{link:function(e){return createHtml(this,”a”,”href”,e)}});var attention=createCommonjsModule((function(e){var t;(t=void 0===t?{}:t).attention={name:”attention”,height:48,width:48,path:”M24.993 46.424c-12.13 0-22-9.87-22-22s9.87-22 22-22 22 9.87 22 22-9.87 22-22 22zm0-40c-9.925 0-18 8.075-18 18 0 9.926 8.075 18 18 18s18-8.074 18-18c0-9.924-8.075-18-18-18zM24.993 27.424c-1.104 0-2-.895-2-2v-10c0-1.104.896-2 2-2s2 .896 2 2v10c0 1.105-.895 2-2 2zM22.993 33.424a2 2 0 1 0 4 0 2 2 0 1 0-4 0z”},e.exports&&(e.exports=t.attention)})),Icon_1=createCommonjsModule((function(e,t){Object.defineProperty(t,”__esModule”,{value:!0}),t.Icon=void 0;var n=interopRequireDefault(classCallCheck),o=interopRequireDefault(createClass),r=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=t.nodes,r=t.viewBox,i=void 0===r?”0 0 48 48″:r,s=t.width,a=void 0===s?16:s,c=t.height,l=void 0===c?16:c,u=t.className,d=void 0===u?””:u;(0,n.default)(this,e),this.nodes=o,this.viewBox=i,this.width=a,this.height=l,this.className=d}return(0,o.default)(e,[{key:”render”,value:function(){return(0,utils.renderSvg)(this)}}]),e}();t.Icon=r})),arrayFill=function(e){for(var t=toObject(this),n=lengthOfArrayLike(t),o=arguments.length,r=toAbsoluteIndex(o>1?arguments[1]:void 0,n),i=o>2?arguments[2]:void 0,s=void 0===i?n:toAbsoluteIndex(i,n);s>r;)t[r++]=e;return t},UNSCOPABLES=wellKnownSymbol(“unscopables”),ArrayPrototype=Array.prototype;null==ArrayPrototype[UNSCOPABLES]&&objectDefineProperty.f(ArrayPrototype,UNSCOPABLES,{configurable:!0,value:objectCreate(null)});var addToUnscopables=function(e){ArrayPrototype[UNSCOPABLES][e]=!0};_export({target:”Array”,proto:!0},{fill:arrayFill}),addToUnscopables(“fill”);var modules_css={dummy:”_dummy_1ab4t_3″,noDisplay:”_noDisplay_1ab4t_6″,IbBox:”_IbBox_1ab4t_9″,BoxShadow:”_BoxShadow_1ab4t_13″,list:”_list_1ab4t_16″,selectedBackground:”_selectedBackground_1ab4t_21″,suggestionList:”_suggestionList_1ab4t_25″,resultsContainer:”_resultsContainer_1ab4t_40″,desktop:”_desktop_1ab4t_43″,smartphone:”_smartphone_1ab4t_46″,sectionHeader:”_sectionHeader_1ab4t_49″,sectionHeaderTitle:”_sectionHeaderTitle_1ab4t_54″,screenerText:”_screenerText_1ab4t_66″,screenerLink:”_screenerLink_1ab4t_69″,screenerIcon:”_screenerIcon_1ab4t_84″,errorMessage:”_errorMessage_1ab4t_89″,errorIcon:”_errorIcon_1ab4t_96″,tipMessage:”_tipMessage_1ab4t_101″,modernSuggestionItem:”_modernSuggestionItem_1ab4t_111″,linkItem:”_linkItem_1ab4t_114″,itemLeftCol:”_itemLeftCol_1ab4t_127 _IbBox_1ab4t_9″,itemRightCol:”_itemRightCol_1ab4t_131 _IbBox_1ab4t_9″,itemIconContainer:”_itemIconContainer_1ab4t_136″,itemIconContainerNoBg:”_itemIconContainerNoBg_1ab4t_144″,itemImageIconContainer:”_itemImageIconContainer_1ab4t_150″,Ell:”_Ell_1ab4t_157″,itemIcon:”_itemIcon_1ab4t_136″,ItemVideoIcon:”_ItemVideoIcon_1ab4t_181 _itemIcon_1ab4t_136″,itemTitle:”_itemTitle_1ab4t_186 _Ell_1ab4t_157″,itemTitleOnly:”_itemTitleOnly_1ab4t_199 _itemTitle_1ab4t_186 _Ell_1ab4t_157″,itemMeta:”_itemMeta_1ab4t_203 _itemTitle_1ab4t_186 _Ell_1ab4t_157″,itemSeperator:”_itemSeperator_1ab4t_209″},ListenerManager_1=createCommonjsModule((function(e,t){Object.defineProperty(t,”__esModule”,{value:!0}),t.ListenerManager=void 0;var n=interopRequireDefault(classCallCheck),o=interopRequireDefault(createClass),r=function(){function e(){(0,n.default)(this,e),this.listeners=[]}return(0,o.default)(e,[{key:”add”,value:function(e,t,n){e&&”function”==typeof e.addEventListener&&(this.listeners.push({node:e,type:t,callback:n}),e.addEventListener(t,n))}},{key:”destroy”,value:function(){this.listeners.forEach((function(e){var t=e.node,n=e.type,o=e.callback;t.removeEventListener(n,o)})),this.listeners=[]}}]),e}();t.ListenerManager=r})),SuggestionItem_1=createCommonjsModule((function(e,t){Object.defineProperty(t,”__esModule”,{value:!0}),t.SuggestionItem=void 0;var n=interopRequireDefault(classCallCheck),o=interopRequireDefault(createClass),r=interopRequireDefault(modules_css),i=function(){function e(t){var o=t.suggestion,r=t.sectionIndex,i=t.query,s=t.itemIndex,a=t.className,c=void 0===a?””:a,l=t.onClick,u=void 0===l?function(){}:l,d=t.onKeyDown,p=void 0===d?function(){}:d,f=t.defaultIcon;(0,n.default)(this,e),this.query=i,this.suggestion=o,this.sectionIndex=r,this.itemIndex=s,this.className=c,this.href=o.linkCallback?o.linkCallback:o.link,this.onClick=u,this.onKeyDown=p,this.defaultIcon=f,this.listeners=new ListenerManager_1.ListenerManager}return(0,o.default)(e,[{key:”_renderIcon”,value:function(e,t){var n=e.imageIcon,o=e.imageIconBgColor,i=e.title,s=e.viewBox,a=e.icon,c=e.noIconBg,l=e.iconWidth,u=e.iconHeight,d=e.itemIconColor,p=document.createElement(“div”);if(n){var f=document.createElement(“img”);f.src=n,f.width=32,f.alt=i,p.className=r.default.itemImageIconContainer,o&&(p.style.backgroundColor=”#”.concat(o),p.style.borderRadius=”50%”),p.appendChild(f)}else if(a||t){p.className=c?r.default.itemIconContainerNoBg:r.default.itemIconContainer;var h=new Icon_1.Icon({nodes:[[“path”,{d:(null==a?void 0:a.path)||(null==t?void 0:t.path)}]],className:r.default.itemIcon,viewBox:s||”0 0 48 48″,width:l||32,height:u||32}).render();d&&(h.style.fill=”#”.concat(d)),p.appendChild(h)}return p}},{key:”render”,value:function(){var e=document.createElement(“li”);e.setAttribute(“role”,”link”),e.setAttribute(“title”,this.suggestion.title),e.setAttribute(“tabindex”,”0″),e.setAttribute(“data-type”,this.type),e.setAttribute(“data-index”,this.sectionIndex),e.setAttribute(“data-pindex”,this.itemIndex),e.className=r.default.linkItem+” “+this.className,this.listeners.add(e,”click”,this.onClick),this.listeners.add(e,”keydown”,this.onKeyDown);var t=document.createElement(“div”),n=document.createElement(“div”);t.className=r.default.itemLeftCol,n.className=r.default.itemRightCol,t.appendChild(this._renderIcon(this.suggestion,this.defaultIcon));var o=document.createElement(“h5”);if(o.className=r.default.itemTitleOnly,o.textContent=this.suggestion.title,n.appendChild(o),this.suggestion.subtitle){o.className=r.default.itemTitle;var i=document.createElement(“div”);i.className=r.default.itemMeta;var s=document.createElement(“span”);if(s.textContent=this.suggestion.subtitle||””,i.appendChild(s),this.suggestion.timeStamp){var a=document.createElement(“i”);a.setAttribute(“aria-hidden”,”true”),a.className=r.default.itemSeperator,a.innerHTML=”•”,i.appendChild(a);var c=document.createElement(“span”);c.textContent=(0,utils.getRelativeTimeString)(1e3*this.suggestion.timeStamp),i.appendChild(c)}n.appendChild(i)}return e.appendChild(t),e.appendChild(n),e}}]),e}();t.SuggestionItem=i})),SuggestionList_1=createCommonjsModule((function(e,t){Object.defineProperty(t,”__esModule”,{value:!0}),t.SuggestionList=void 0;var n=interopRequireDefault(defineProperty$1),o=interopRequireDefault(classCallCheck),r=interopRequireDefault(createClass),i=interopRequireDefault(attention),s=interopRequireDefault(modules_css);function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}var c={smartphone:”smartphone”,desktop:”desktop”},l=function(){function e(t,n){var r=n.i13n,i=n.device,s=n.strings,a=void 0===s?{}:s,l=n.onClearCb,u=n.onSelectCb,d=n.rapidInstance;(0,o.default)(this,e),this.els=t,this.listeners=new ListenerManager_1.ListenerManager,this.i13n=r,this.strings=a,this.onClearCb=l,this.onSelectCb=u,this.rapidInstance=d,this.query=””,this.suggestions=null,this.resultsNode=null,this.suggestionNode=null,this.footerNode=null,this.selectedIndex=-1,this.onSelect=this.onSelect.bind(this),this.onClear=this.onClear.bind(this),this.onKeyDown=this.onKeyDown.bind(this),this.onDocumentClick=this.onDocumentClick.bind(this),this.loadSuggestions=this.loadSuggestions.bind(this),this.hideSuggestions=this.hideSuggestions.bind(this),this.showSuggestions=this.showSuggestions.bind(this),this.onResize=this.onResize.bind(this),this.device=c[i]||”desktop”,this.init()}return(0,r.default)(e,[{key:”init”,value:function(){var e=this.els,t=e.clearBtn,n=e.resultsWrap;if(n){n.classList.add(s.default.noDisplay),this.resultsNode=document.createElement(“div”),this.resultsNode.className=s.default.suggestionList+” “+s.default[this.device],this.updateResultsNodeTopOffset(),this.suggestionNode=document.createElement(“div”),this.suggestionNode.className=s.default.resultsContainer,this.resultsNode.appendChild(this.suggestionNode),n.appendChild(this.resultsNode),this.footerNode=document.createElement(“footer”),this.footerNode.className=s.default.noDisplay;var o=document.createElement(“p”);o.className=s.default.tipMessage,o.textContent=(0,utils.getFormattedMessage)(this.strings,”SEARCH_TIP”),this.footerNode.appendChild(o),this.resultsNode.appendChild(this.footerNode),t&&(t.classList.add(s.default.noDisplay),this.listeners.add(t,”click”,this.onClear)),”smartphone”!=this.device&&this.listeners.add(window,”resize”,this.onResize)}}},{key:”destroy”,value:function(){var e=this.els,t=e.clearBtn,n=e.resultsWrap;this.listeners.destroy(),n&&(n.classList.remove(s.default.noDisplay),this.resultsNode.parentNode.removeChild(this.resultsNode),delete this.resultsNode),t&&t.classList.remove(s.default.noDisplay)}},{key:”showSuggestions”,value:function(){var e=this.els.resultsWrap;e&&(this.listeners.add(document,”click”,this.onDocumentClick),e.classList.remove(s.default.noDisplay))}},{key:”onSubmit”,value:function(e){var t=this;if(this.suggestionNode.length>0&&this.selectedIndex>-1){e.preventDefault();var n=this.suggestionNode[this.selectedIndex],o=Number(n.getAttribute(“data-index”)),r=Number(n.getAttribute(“data-pindex”));this.handleItemSelect(e,{sectionIndex:o,itemIndex:r,i13nModel:{elm:”kybrd”}},(function(e){“function”==typeof t.onSelectCb&&t.onSelectCb(e)}))}(0,utils.beaconClick)(this.i13n.sec,”websrch”,{subsec:this.i13n.subsec,itc:0,elm:”itm”,elmt:”kybrd”,rspns:”nav”,pp:{query:this.query}},(function(){e.target.submit()}),this.rapidInstance)}},{key:”handleItemSelect”,value:function(e,t){var o=t.sectionIndex,r=t.itemIndex,i=t.i13nModel,s=this.suggestions&&this.suggestions[o]&&this.suggestions[o].items&&this.suggestions[o].items[r]||{},c=s?this.suggestions[o].linkCallback?this.suggestions[o].linkCallback:s.link:null,l=c;c&&”function”==typeof c&&(l=c(e,s,(function(){}))),(0,utils.beaconClick)(this.i13n.sec,this.suggestions[o].sectionName,function(e){for(var t=1;t
Source