{"version":3,"sources":["/CoveoForSitecore/webpack/universalModuleDefinition","/CoveoForSitecore/CoveoForSitecore.min.js","/CoveoForSitecore/webpack/bootstrap 3b4280009ac5d552cb53","/CoveoForSitecore/./CoveoForSitecore.JQuery.ts","/CoveoForSitecore/./CoveoForSitecore.js","/CoveoForSitecore/./Base/PluginOptions.js","/CoveoForSitecore/./Base/CoveoForSitecoreBase.js","/CoveoForSitecore/external \"Coveo\"","/CoveoForSitecore/./Base/Logger.js","/CoveoForSitecore/./Base/Sorts/DefaultSortHandler.js","/CoveoForSitecore/./Base/Rules/ExpressionsHelper.js","/CoveoForSitecore/./Base/Rules/SearchExpressionsHelper.js","/CoveoForSitecore/./Base/Rules/FilterExpressionHelper.js","/CoveoForSitecore/./Base/Rules/ExpressionHelperUtilities.js","/CoveoForSitecore/./Base/SearchEndpointHelper.js","/CoveoForSitecore/./Base/OmniboxResultList/OmniboxResultListHandler.js","/CoveoForSitecore/./Base/Analytics/SitecoreAnalyticsHandler.js","/CoveoForSitecore/./Base/Utilities.js","/CoveoForSitecore/./Base/EndpointCaller.js","/CoveoForSitecore/./Base/Tabs/TabsBinding.js","/CoveoForSitecore/./Base/Searchbox.js","/CoveoForSitecore/./UserContext/UserContextHandler.js","/CoveoForSitecore/external \"CoveoForSitecoreUserContext\"","/CoveoForSitecore/./Base/Recommendations/CoveoForSitecoreRecommendationsBase.js","/CoveoForSitecore/./Base/OmniboxResultList/OmniboxResultList.js","/CoveoForSitecore/./CoveoDistanceRessources/CoveoDistanceResources.js","/CoveoForSitecore/./CoveoForSitecore.ts"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE_5__","__WEBPACK_EXTERNAL_MODULE_20__","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","CoveoForSitecore","Coveo","initCoveoForSitecore","element","action","options","initializeSearch","initializeSearchbox","console","error","initializeJQuery","jQueryInstance","$","initializeCoveoForSitecorePlugin","fn","coveoForSitecore","jQuery","searchComponent","tabsBinding","applyBindings","_isExistingPlugin","userContext","getContext","plugin","CoveoForSitecoreBase_1","default","defaults","initialize","Searchbox_1","_this","PluginOptions_1","TabsBinding_1","SearchEndpointHelper_1","UserContextHandler_1","CoveoForSitecoreUserContext","CoveoForSitecoreRecommendationsBase_1","OmniboxResultList","CoveoDistanceResources","recommendations","handler","componentsOptions","SearchEndpointHelper","initRecommendations","initRelatedQuery","searchInterfaceElement","PluginOptions","analyticsCustomMetadata","analyticsEndpointUri","boostExpressions","clientLanguageFieldName","clientLanguageName","componentRefreshCallback","defaultSortType","defaultSortField","defaultSortCriteriaNoSpace","defaultSortCriteriaLowercase","enableClientSideLogging","externalCollections","externalSources","externalSourcesFromCurrentTab","externalCollectionsFromCurrentTab","filterExpression","filterResultOnLatestVersion","filterResultsOnCurrentCulture","indexSourceName","isEditingInPageEditor","isInitialized","isPreviewingInPageEditor","isPreviewingInPageEditorWithSimulatedDevice","keepOmniboxSuggestionsProvidersDefaultOrdering","latestVersionFieldName","omniboxDataRowIndexCounter","pageFullPath","pageName","restEndpointUri","resultListInfiniteScrollContainer","window","searchboxPlaceholderText","searchRedirectionUrl","searchRedirectionItemName","sendToSitecoreAnalytics","sitecoreItemId","sitecoreItemUri","siteName","Object","defineProperty","value","Logger_1","DefaultSortHandler_1","ExpressionsHelper_1","OmniboxResultListHandler_1","SitecoreAnalyticsHandler_1","CoveoForSitecoreBase","defaultOptions","isInPageEditorCssClass","isEditingInPageEditorCssClass","isPreviewingInPageEditorCssClass","isPreviewingInPageEditorWithSimulatedDeviceCssClass","domElement","$$","_","extend","logger","expressionsHelper","omniboxResultListHandler","sitecoreAnalyticsHandler","defaultSortHandler","context","prototype","log","initializeSearchOptions","addPageEditorCssClasses","addResultListHeaderCssClasses","on","InitializationEvents","afterInitialization","HashUtils","getValue","location","hash","state","mergedOptions","Utils","extendDeep","Facet","SearchInterface","init","doPostInitializationActions","forEach","findAll","setAttribute","initializeEndpoint","Logger","enable","QueryEvents","buildingQuery","e","args","addSortCriteriaToQuery","queryBuilder","addContextToQuery","registerSearchEvents","registerSitecoreAnalytics","postAnalytics","eventAction","eventType","eventData","isInPageEditor","addClass","elements","getDomElementsMatchingSelector","filter","hasClass","getFilterExpressions","getFilterExpression","optionsWithTabContent","getOptionsWithTabExternalContent","tab","advancedExpression","add","getSearchExpression","constantExpression","AnalyticsEvents","changeAnalyticsCustomData","language","originLevel1","metaObject","deferredQuerySuccess","queryError","configureOmnibox","OmniboxEvents","populateOmnibox","generatePopulateOmniboxFunction","keys","map","key","pair","currentTabId","filterExpressionOptions","hasOwnProperty","tabOptions","queryController","get","populateOmniboxObject","populateOmniboxResultList","querySelector","document","querySelectorAll","message","concat","DefaultSortHandler","defaultSortOptions","fieldSortType","sortCriteria","sortField","SearchExpressionsHelper_1","FilterExpressionHelper_1","ExpressionHelperUtilities_1","ExpressionsHelper","filterExpressionHelper","searchExpressionHelper","expressionHelperUtilities","expression","getContextFilterExpressions","appendExternalContentToExpression","expressions","getSourcesAndCollectionsExpression","getSearchFilterExpression","getSearchBoostExpression","join","SearchExpressionHelper","utilities","collectionsOptions","sourcesOptions","externalContentFromCurrentTab","newExpression","sourcesExpression","getSourcesExpression","getAllExternalCollections","length","externalCollectionsExpression","getExternalCollectionsExpression","push","getExternalSourcesExpression","sourcesExpressionOptions","sources","isDefined","apply","externalCollectionsOptions","externalContentFromCurrentTabOptions","FilterExpressionHelper","filterExpressions","filterExpressionsWithExternalContent","clientLanguageFilterExpression","latestVersionFilterExpression","replace","hasExternalContentSpecified","getAllExternalSources","externalSourcesOptions","ExpressionHelperUtilities","fieldName","fieldValue","fieldValues","property","SearchEndpoint","endpoints","restUri","queryStringArguments","OmniboxResultListHandler","getOmniboxDataRowIndex","onOmniboxRowClicked","result","href","clickUri","buildOmniboxContent","results","resultTemplateId","templateElement","getElementById","template","UnderscoreTemplate","resultContainer","getResultContainer","headerTitle","content","append","el","oneRowOfContent","instantiateToElement","rowElement","createQueryBuilder","queryExpression","numberOfResults","query","build","promise","executeSearchQuery","then","response","totalCount","elementToReturn","objectToReturn","zIndex","omniboxDataRowIndex","undefined","rows","deferred","search","captionText","getIcon","getCaption","iconResultList","caption","textContent","Utilities_1","EndpointCaller_1","SitecoreAnalyticsHandler","endpointCaller","windowReference","onbeforeunload","Defer","flush","searchEvent","searchEvents","documentViewEvent","customEvent","parsedEventData","data","postData","JSON","stringify","sendPost","appendTrailingSlash","Utilities","url","charAt","EndpointCaller","callOptions","errorsAsSuccess","method","queryString","requestData","responseType","requestDataType","TabsBinding","bindings","getElementBinding","elementId","binding","elementFound","elementBinding","initBinding","itemId","tabNot","applyBinding","addExcludeFromTabTag","excludeItemsIdsInTab","elementIds","tabId","__extends","d","b","__","constructor","create","Searchbox","_super","searchBoxPluginOptions","defaultSearchBoxPluginOptions","searchBoxOptions","initSearchbox","searchBoxComponent","componentOptionsModel","set","UserContextHandler","initializeContext","replaceInvalidCharacterInContext","setContext","replaceInvalidCharacters","validContext","invalidCharacters","CoveoForSitecoreRecommendations","event","languageFilterExpression","initRecommendation","Component","ID","ComponentOptions","initComponentOptions","initializeOmniboxDataRowIndex","bind","onRootElement","bindEnterToSearchButton","queryBoxes","queryBox","input","button","queryBoxElements","addEventListener","keyCode","click","omniboxResultList","getElementsByClassName","searchInterface","originalOptionsObject","children","buildStringOption","buildNumberOption","defaultValue","min","Initialization","registerAutoCreateComponent","coveo_search_ui_1","GOOGLE_PROVIDER_VALUE","SITECORE_PROVIDER_VALUE","BROWSER_PROVIDER_VALUE","CUSTOM_PROVIDER_VALUE","GOOGLE_MAP_BASE_URL","CoveoForSitecoreDistanceResources","providerWarningDisabled","geolocationProviders","reverse","tryNextGeolocationProvider","setDistance","latitude","longitude","registerDistanceQuery","executeQuery","setCoordinateFromGoogle","googleApiKey","baseMapsUrl","geolocationResponse","positionData","lat","lng","setDefaultCoordinates","isNullOrEmpty","defaultLatitude","defaultLongitude","setCoordinatesFromBrowser","navigator","geolocation","getCurrentPosition","position","coords","err","geoQueryFunction","function","getConvertedUnitsFunction","latitudeField","longitudeField","distanceField","queryFunctions","enableDistanceComponents","distanceComponents","disabledDistanceCssClass","i","length_1","item","classList","remove","exception","queryFunction","unitConversionFactor","currentGeolocationProvider","pop","warn","buildListOption","unitType"],"mappings":"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","file":"CoveoForSitecore.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"Coveo\"), require(\"CoveoForSitecoreUserContext\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"Coveo\", \"CoveoForSitecoreUserContext\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"CoveoForSitecore\"] = factory(require(\"Coveo\"), require(\"CoveoForSitecoreUserContext\"));\n\telse\n\t\troot[\"CoveoForSitecore\"] = factory(root[\"Coveo\"], root[\"CoveoForSitecoreUserContext\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_5__, __WEBPACK_EXTERNAL_MODULE_20__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"Coveo\"), require(\"CoveoForSitecoreUserContext\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"Coveo\", \"CoveoForSitecoreUserContext\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"CoveoForSitecore\"] = factory(require(\"Coveo\"), require(\"CoveoForSitecoreUserContext\"));\n\telse\n\t\troot[\"CoveoForSitecore\"] = factory(root[\"Coveo\"], root[\"CoveoForSitecoreUserContext\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_5__, __WEBPACK_EXTERNAL_MODULE_20__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t__webpack_require__(1);\n\tmodule.exports = __webpack_require__(24);\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t// Copyright (c) 2005-2018, Coveo Solutions Inc.\r\n\t\"use strict\";\r\n\t/// \r\n\tvar CoveoForSitecore = __webpack_require__(2);\r\n\tCoveo.initCoveoForSitecore = function (element, action, options) {\r\n\t if (action === \"init\") {\r\n\t CoveoForSitecore.initializeSearch(element, options);\r\n\t }\r\n\t else if (action === \"initSearchbox\") {\r\n\t CoveoForSitecore.initializeSearchbox(element, options);\r\n\t }\r\n\t else {\r\n\t console.error(\"The action '\" + action + \"' is not part of the coveoForSitecore plugin. Ignoring action.\");\r\n\t }\r\n\t};\r\n\tCoveo.initializeJQuery = function (jQueryInstance) {\r\n\t Coveo.$ = jQueryInstance;\r\n\t Coveo.initializeCoveoForSitecorePlugin();\r\n\t};\r\n\tCoveo.initializeCoveoForSitecorePlugin = function () {\r\n\t if (typeof (Coveo.$) !== \"undefined\" && typeof (Coveo.$.fn) != \"undefined\") {\r\n\t Coveo.$.fn.coveoForSitecore = function (action, options) {\r\n\t Coveo.initCoveoForSitecore(this[0], action, options);\r\n\t return this;\r\n\t };\r\n\t }\r\n\t};\r\n\t(function (jQueryInstance) {\r\n\t if (typeof (jQueryInstance) !== \"undefined\") {\r\n\t Coveo.initializeJQuery(jQueryInstance);\r\n\t }\r\n\t})(typeof (Coveo) !== \"undefined\" && typeof (Coveo.$) !== \"undefined\" ? Coveo.$ : jQuery);\r\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar _this = this;\r\n\tvar PluginOptions_1 = __webpack_require__(3);\r\n\tvar CoveoForSitecoreBase_1 = __webpack_require__(4);\r\n\tvar TabsBinding_1 = __webpack_require__(17);\r\n\tvar Searchbox_1 = __webpack_require__(18);\r\n\tvar SearchEndpointHelper_1 = __webpack_require__(12);\r\n\tvar UserContextHandler_1 = __webpack_require__(19);\r\n\tvar CoveoForSitecoreUserContext = __webpack_require__(20);\r\n\tvar CoveoForSitecoreRecommendationsBase_1 = __webpack_require__(21);\r\n\texports.OmniboxResultList = __webpack_require__(22);\r\n\texports.CoveoDistanceResources = __webpack_require__(23);\r\n\tvar recommendations = new CoveoForSitecoreRecommendationsBase_1.default();\r\n\texports.userContext = typeof (CoveoForSitecoreUserContext) !== \"undefined\" ? CoveoForSitecoreUserContext.handler : new UserContextHandler_1.default();\r\n\texports.componentsOptions = new PluginOptions_1.default();\r\n\texports.tabsBinding = new TabsBinding_1.default();\r\n\texports.SearchEndpointHelper = SearchEndpointHelper_1.default;\r\n\texports.defaults = new PluginOptions_1.default();\r\n\tfunction initializeSearch(searchComponent, options) {\r\n\t exports.tabsBinding.applyBindings();\r\n\t if (!_isExistingPlugin(searchComponent)) {\r\n\t if (typeof (options.userContext) === \"undefined\") {\r\n\t options.userContext = exports.userContext.getContext();\r\n\t }\r\n\t exports.plugin = new CoveoForSitecoreBase_1.default(searchComponent, options, exports.defaults);\r\n\t exports.plugin.initialize();\r\n\t }\r\n\t}\r\n\texports.initializeSearch = initializeSearch;\r\n\tfunction initializeSearchbox(searchComponent, options) {\r\n\t if (typeof (options.userContext) === \"undefined\") {\r\n\t options.userContext = exports.userContext.getContext();\r\n\t }\r\n\t exports.plugin = new Searchbox_1.default(searchComponent, options, exports.defaults);\r\n\t exports.plugin.initialize();\r\n\t}\r\n\texports.initializeSearchbox = initializeSearchbox;\r\n\texports.initRecommendations = function (element, userContext) {\r\n\t recommendations.initRecommendations(element, userContext || _this.userContext.getContext());\r\n\t};\r\n\texports.initRelatedQuery = function (element, searchInterfaceElement, userContext, options) {\r\n\t recommendations.initRelatedQuery(element, searchInterfaceElement, userContext || _this.userContext.getContext(), options);\r\n\t};\r\n\tfunction _isExistingPlugin(searchComponent) {\r\n\t return exports.plugin && exports.plugin.element && exports.plugin.element.id === searchComponent.id;\r\n\t}\r\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar PluginOptions = (function () {\r\n\t function PluginOptions() {\r\n\t this.analyticsCustomMetadata = {};\r\n\t this.analyticsEndpointUri = \"/coveo/rest/v6/analytics/\";\r\n\t this.boostExpressions = \"\";\r\n\t this.clientLanguageFieldName = \"\";\r\n\t this.clientLanguageName = \"\";\r\n\t this.componentRefreshCallback = null;\r\n\t this.defaultSortType = \"Relevancy\";\r\n\t this.defaultSortField = \"\";\r\n\t this.defaultSortCriteriaNoSpace = \"Relevancy\";\r\n\t this.defaultSortCriteriaLowercase = \"relevancy\";\r\n\t this.enableClientSideLogging = false;\r\n\t this.externalCollections = [];\r\n\t this.externalSources = [];\r\n\t this.externalSourcesFromCurrentTab = [];\r\n\t this.externalCollectionsFromCurrentTab = [];\r\n\t this.filterExpression = \"\";\r\n\t this.filterResultOnLatestVersion = true;\r\n\t this.filterResultsOnCurrentCulture = false;\r\n\t this.indexSourceName = \"\";\r\n\t this.isEditingInPageEditor = false;\r\n\t this.isInitialized = false;\r\n\t this.isPreviewingInPageEditor = false;\r\n\t this.isPreviewingInPageEditorWithSimulatedDevice = false;\r\n\t this.keepOmniboxSuggestionsProvidersDefaultOrdering = true;\r\n\t this.latestVersionFieldName = \"\";\r\n\t this.omniboxDataRowIndexCounter = 0;\r\n\t this.pageFullPath = \"\";\r\n\t this.pageName = \"\";\r\n\t this.restEndpointUri = \"/coveo/rest/\";\r\n\t this.resultListInfiniteScrollContainer = window;\r\n\t this.searchboxPlaceholderText = \"\";\r\n\t this.searchRedirectionUrl = \"\";\r\n\t this.searchRedirectionItemName = \"\";\r\n\t this.sendToSitecoreAnalytics = false;\r\n\t this.sitecoreItemId = \"\";\r\n\t this.sitecoreItemUri = \"\";\r\n\t this.siteName = \"\";\r\n\t this.userContext = {};\r\n\t }\r\n\t return PluginOptions;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = PluginOptions;\r\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar Coveo = __webpack_require__(5);\r\n\tvar Logger_1 = __webpack_require__(6);\r\n\tvar DefaultSortHandler_1 = __webpack_require__(7);\r\n\tvar ExpressionsHelper_1 = __webpack_require__(8);\r\n\tvar SearchEndpointHelper_1 = __webpack_require__(12);\r\n\tvar OmniboxResultListHandler_1 = __webpack_require__(13);\r\n\tvar SitecoreAnalyticsHandler_1 = __webpack_require__(14);\r\n\tvar CoveoForSitecoreBase = (function () {\r\n\t function CoveoForSitecoreBase(searchComponent, options, defaultOptions) {\r\n\t this.isInPageEditorCssClass = \"coveo-page-editor\";\r\n\t this.isEditingInPageEditorCssClass = \"coveo-page-editor-editing\";\r\n\t this.isPreviewingInPageEditorCssClass = \"coveo-page-editor-previewing\";\r\n\t this.isPreviewingInPageEditorWithSimulatedDeviceCssClass = \"coveo-page-editor-previewing-with-simulator\";\r\n\t this.element = searchComponent;\r\n\t this.domElement = Coveo.$$(searchComponent);\r\n\t this.options = _.extend({}, defaultOptions, options);\r\n\t this.logger = new Logger_1.default(this.options.enableClientSideLogging);\r\n\t this.expressionsHelper = new ExpressionsHelper_1.default();\r\n\t this.omniboxResultListHandler = new OmniboxResultListHandler_1.default();\r\n\t this.sitecoreAnalyticsHandler = new SitecoreAnalyticsHandler_1.default(this.options);\r\n\t this.defaultSortHandler = new DefaultSortHandler_1.default(options);\r\n\t this.context = {};\r\n\t }\r\n\t CoveoForSitecoreBase.prototype.initialize = function () {\r\n\t var _this = this;\r\n\t this.logger.log(\"Initializing search.\");\r\n\t this.initializeSearchOptions();\r\n\t if (!this.options.isInitialized) {\r\n\t this.addPageEditorCssClasses();\r\n\t this.addResultListHeaderCssClasses();\r\n\t this.domElement.on(Coveo.InitializationEvents.afterInitialization, function () {\r\n\t if (!Coveo.HashUtils.getValue(\"sort\", window.location.hash)) {\r\n\t Coveo.state(_this.element, \"sort\", _this.options.defaultSortCriteriaLowercase);\r\n\t }\r\n\t });\r\n\t var mergedOptions = Coveo.Utils.extendDeep({\r\n\t Facet: {},\r\n\t SearchInterface: {}\r\n\t }, this.options);\r\n\t Coveo.init(this.element, mergedOptions);\r\n\t }\r\n\t this.doPostInitializationActions();\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.doPostInitializationActions = function () {\r\n\t var _this = this;\r\n\t _.forEach(this.domElement.findAll(\".CoveoQuerybox input, .CoveoOmnibox input\"), function (element) {\r\n\t element.setAttribute(\"placeholder\", _this.options.searchboxPlaceholderText);\r\n\t });\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.initializeSearchOptions = function () {\r\n\t var _this = this;\r\n\t SearchEndpointHelper_1.default.initializeEndpoint(this.options);\r\n\t if (this.options.enableClientSideLogging) {\r\n\t Coveo.Logger.enable();\r\n\t }\r\n\t if (!this.options.isInitialized) {\r\n\t this.addPageEditorCssClasses();\r\n\t this.domElement.on(Coveo.QueryEvents.buildingQuery, function (e, args) {\r\n\t _this.defaultSortHandler.addSortCriteriaToQuery(args.queryBuilder);\r\n\t _this.addContextToQuery(args.queryBuilder);\r\n\t });\r\n\t this.domElement.on(Coveo.InitializationEvents.afterInitialization, function () {\r\n\t _this.registerSearchEvents();\r\n\t _this.options.isInitialized = true;\r\n\t });\r\n\t if (this.options.sendToSitecoreAnalytics) {\r\n\t this.sitecoreAnalyticsHandler.registerSitecoreAnalytics(this.domElement);\r\n\t }\r\n\t }\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.postAnalytics = function (eventAction, eventType, eventData) {\r\n\t this.sitecoreAnalyticsHandler.postAnalytics(eventAction, eventType, eventData);\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.addPageEditorCssClasses = function () {\r\n\t if (this.isInPageEditor()) {\r\n\t this.domElement.addClass(this.isInPageEditorCssClass);\r\n\t if (this.options.isEditingInPageEditor) {\r\n\t this.domElement.addClass(this.isEditingInPageEditorCssClass);\r\n\t }\r\n\t if (this.options.isPreviewingInPageEditor) {\r\n\t this.domElement.addClass(this.isPreviewingInPageEditorCssClass);\r\n\t }\r\n\t if (this.options.isPreviewingInPageEditorWithSimulatedDevice) {\r\n\t this.domElement.addClass(this.isPreviewingInPageEditorWithSimulatedDeviceCssClass);\r\n\t }\r\n\t }\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.addResultListHeaderCssClasses = function () {\r\n\t var elements = this.getDomElementsMatchingSelector(\".coveo-results-header, .coveo-result-header-section\");\r\n\t _.filter(elements, function (element) {\r\n\t return typeof (element) !== \"undefined\" &&\r\n\t !element.hasClass(\"CoveoQuerySummary\") &&\r\n\t element.hasClass(\"CoveoQueryDuration\") &&\r\n\t element.hasClass(\"CoveoSort\");\r\n\t }).forEach(function (element) {\r\n\t element.addClass(\"coveo-empty\");\r\n\t });\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.getFilterExpressions = function () {\r\n\t return this.expressionsHelper.getFilterExpression(this.options);\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.registerSearchEvents = function () {\r\n\t var _this = this;\r\n\t this.logger.log(\"Registering search events.\");\r\n\t this.domElement.on(Coveo.QueryEvents.buildingQuery, function (e, args) {\r\n\t var optionsWithTabContent = _this.getOptionsWithTabExternalContent(args.queryBuilder.tab);\r\n\t args.queryBuilder.advancedExpression.add(_this.expressionsHelper.getSearchExpression(optionsWithTabContent));\r\n\t args.queryBuilder.constantExpression.add(_this.expressionsHelper.getFilterExpression(optionsWithTabContent));\r\n\t });\r\n\t this.domElement.on(Coveo.AnalyticsEvents.changeAnalyticsCustomData, function (e, args) {\r\n\t var options = _this.options;\r\n\t if (options) {\r\n\t if (options.clientLanguageName) {\r\n\t args.language = options.clientLanguageName;\r\n\t }\r\n\t if (options.pageName) {\r\n\t args.originLevel1 = options.pageName;\r\n\t }\r\n\t if (options.analyticsCustomMetadata) {\r\n\t _.extend(args.metaObject, options.analyticsCustomMetadata);\r\n\t }\r\n\t }\r\n\t });\r\n\t if (this.options.componentRefreshCallback) {\r\n\t this.domElement.on(Coveo.QueryEvents.deferredQuerySuccess, function () {\r\n\t _this.options.componentRefreshCallback();\r\n\t });\r\n\t this.domElement.on(Coveo.QueryEvents.queryError, function () {\r\n\t _this.options.componentRefreshCallback();\r\n\t });\r\n\t }\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.isInPageEditor = function () {\r\n\t return this.options.isEditingInPageEditor ||\r\n\t this.options.isPreviewingInPageEditor ||\r\n\t this.options.isPreviewingInPageEditorWithSimulatedDevice;\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.configureOmnibox = function (options) {\r\n\t this.domElement.on(Coveo.OmniboxEvents.populateOmnibox, this.generatePopulateOmniboxFunction(options));\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.addContextToQuery = function (queryBuilder) {\r\n\t var _this = this;\r\n\t if (typeof (queryBuilder.context) === \"undefined\") {\r\n\t queryBuilder.context = {};\r\n\t }\r\n\t Object.keys(this.options.userContext).map(function (key) {\r\n\t return {\r\n\t key: key,\r\n\t value: _this.options.userContext[key]\r\n\t };\r\n\t }).filter(function (pair) {\r\n\t return pair.value !== \"\";\r\n\t }).forEach(function (pair) {\r\n\t queryBuilder.context[pair.key] = pair.value;\r\n\t });\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.getOptionsWithTabExternalContent = function (currentTabId) {\r\n\t var filterExpressionOptions = _.extend({}, this.options);\r\n\t if (typeof (currentTabId) !== \"undefined\" && this.options.hasOwnProperty(currentTabId)) {\r\n\t var tabOptions = this.options[currentTabId];\r\n\t filterExpressionOptions.externalSourcesFromCurrentTab = tabOptions.externalSources;\r\n\t filterExpressionOptions.externalCollectionsFromCurrentTab = tabOptions.externalCollections;\r\n\t }\r\n\t return filterExpressionOptions;\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.generatePopulateOmniboxFunction = function (options) {\r\n\t var _this = this;\r\n\t var queryController = Coveo.get(this.element).queryController;\r\n\t return function (e, populateOmniboxObject) {\r\n\t _this.omniboxResultListHandler.populateOmniboxResultList(populateOmniboxObject, options, queryController);\r\n\t };\r\n\t };\r\n\t CoveoForSitecoreBase.prototype.getDomElementsMatchingSelector = function (querySelector) {\r\n\t return _.map(document.querySelectorAll(querySelector), function (element) {\r\n\t return Coveo.$$(element);\r\n\t });\r\n\t };\r\n\t return CoveoForSitecoreBase;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = CoveoForSitecoreBase;\r\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_5__;\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar Logger = (function () {\r\n\t function Logger(enableClientSideLogging) {\r\n\t this.enableClientSideLogging = enableClientSideLogging;\r\n\t }\r\n\t Logger.prototype.log = function (message) {\r\n\t if (this.enableClientSideLogging) {\r\n\t console.log([\"TRACE\", \"Coveo for Sitecore\"].concat(message));\r\n\t }\r\n\t };\r\n\t return Logger;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = Logger;\r\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar DefaultSortHandler = (function () {\r\n\t function DefaultSortHandler(defaultSortOptions) {\r\n\t this.fieldSortType = \"Field\";\r\n\t this.defaultSortOptions = defaultSortOptions;\r\n\t }\r\n\t DefaultSortHandler.prototype.addSortCriteriaToQuery = function (queryBuilder) {\r\n\t queryBuilder.sortCriteria = this.defaultSortOptions.defaultSortCriteriaLowercase;\r\n\t if (this.defaultSortOptions.defaultSortType === this.fieldSortType) {\r\n\t queryBuilder.sortField = this.defaultSortOptions.defaultSortField;\r\n\t }\r\n\t };\r\n\t return DefaultSortHandler;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = DefaultSortHandler;\r\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar SearchExpressionsHelper_1 = __webpack_require__(9);\r\n\tvar FilterExpressionHelper_1 = __webpack_require__(10);\r\n\tvar ExpressionHelperUtilities_1 = __webpack_require__(11);\r\n\tvar ExpressionsHelper = (function () {\r\n\t function ExpressionsHelper(filterExpressionHelper, searchExpressionHelper) {\r\n\t var expressionHelperUtilities = new ExpressionHelperUtilities_1.default();\r\n\t this.filterExpressionHelper = filterExpressionHelper || new FilterExpressionHelper_1.default(expressionHelperUtilities);\r\n\t this.searchExpressionHelper = searchExpressionHelper || new SearchExpressionsHelper_1.default(expressionHelperUtilities);\r\n\t }\r\n\t ExpressionsHelper.prototype.getFilterExpression = function (options) {\r\n\t var expression = this.filterExpressionHelper.getContextFilterExpressions(options);\r\n\t return this.filterExpressionHelper.appendExternalContentToExpression(expression, options);\r\n\t };\r\n\t ExpressionsHelper.prototype.getSearchExpression = function (options) {\r\n\t var expressions = [\r\n\t this.searchExpressionHelper.getSourcesAndCollectionsExpression(options, options, options),\r\n\t this.searchExpressionHelper.getSearchFilterExpression(options, options),\r\n\t this.searchExpressionHelper.getSearchBoostExpression(options)\r\n\t ];\r\n\t return expressions.filter(function (expression) { return expression !== \"\"; }).join(\" \");\r\n\t };\r\n\t ;\r\n\t return ExpressionsHelper;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = ExpressionsHelper;\r\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar SearchExpressionHelper = (function () {\r\n\t function SearchExpressionHelper(expressionHelperUtilities) {\r\n\t this.utilities = expressionHelperUtilities;\r\n\t }\r\n\t SearchExpressionHelper.prototype.getSourcesAndCollectionsExpression = function (collectionsOptions, sourcesOptions, externalContentFromCurrentTab) {\r\n\t var newExpression;\r\n\t var sourcesExpression = this.getSourcesExpression(sourcesOptions, externalContentFromCurrentTab);\r\n\t var externalCollections = this.getAllExternalCollections(collectionsOptions, externalContentFromCurrentTab);\r\n\t if (externalCollections.length > 0) {\r\n\t var externalCollectionsExpression = this.utilities.getExternalCollectionsExpression(externalCollections);\r\n\t newExpression = \"(\" + sourcesExpression + \" OR \" + externalCollectionsExpression + \")\";\r\n\t }\r\n\t else {\r\n\t newExpression = sourcesExpression;\r\n\t }\r\n\t return newExpression;\r\n\t };\r\n\t SearchExpressionHelper.prototype.getSearchFilterExpression = function (options, externalContentFromCurrentTab) {\r\n\t var expressions = [options.filterExpression];\r\n\t if (externalContentFromCurrentTab.externalSourcesFromCurrentTab.length > 0) {\r\n\t expressions.push(this.utilities.getExternalSourcesExpression(externalContentFromCurrentTab.externalSourcesFromCurrentTab));\r\n\t }\r\n\t if (externalContentFromCurrentTab.externalCollectionsFromCurrentTab.length > 0) {\r\n\t expressions.push(this.utilities.getExternalCollectionsExpression(externalContentFromCurrentTab.externalCollectionsFromCurrentTab));\r\n\t }\r\n\t return expressions.join(\" OR \");\r\n\t };\r\n\t SearchExpressionHelper.prototype.getSearchBoostExpression = function (options) {\r\n\t return options.boostExpressions;\r\n\t };\r\n\t SearchExpressionHelper.prototype.getSourcesExpression = function (sourcesExpressionOptions, externalContentFromCurrentTab) {\r\n\t var sources = [];\r\n\t if (this.utilities.isDefined(sourcesExpressionOptions.indexSourceName)) {\r\n\t sources.push(sourcesExpressionOptions.indexSourceName);\r\n\t }\r\n\t if (sourcesExpressionOptions.externalSources.length > 0) {\r\n\t sources.push.apply(sources, sourcesExpressionOptions.externalSources);\r\n\t }\r\n\t if (externalContentFromCurrentTab.externalSourcesFromCurrentTab.length > 0) {\r\n\t sources.push.apply(sources, externalContentFromCurrentTab.externalSourcesFromCurrentTab);\r\n\t }\r\n\t return this.utilities.getFilterExpression(\"@syssource\", sources);\r\n\t };\r\n\t SearchExpressionHelper.prototype.getAllExternalCollections = function (externalCollectionsOptions, externalContentFromCurrentTabOptions) {\r\n\t var externalSources = [];\r\n\t externalSources.push.apply(externalSources, externalCollectionsOptions.externalCollections);\r\n\t externalSources.push.apply(externalSources, externalContentFromCurrentTabOptions.externalCollectionsFromCurrentTab);\r\n\t return externalSources;\r\n\t };\r\n\t return SearchExpressionHelper;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = SearchExpressionHelper;\r\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar FilterExpressionHelper = (function () {\r\n\t function FilterExpressionHelper(expressionHelperUtilities) {\r\n\t this.utilities = expressionHelperUtilities;\r\n\t }\r\n\t FilterExpressionHelper.prototype.getFilterExpressions = function (options) {\r\n\t var filterExpressions = this.getContextFilterExpressions(options);\r\n\t var filterExpressionsWithExternalContent = this.appendExternalContentToExpression(filterExpressions, options);\r\n\t return filterExpressionsWithExternalContent;\r\n\t };\r\n\t ;\r\n\t FilterExpressionHelper.prototype.getContextFilterExpressions = function (options) {\r\n\t var expression = \"\";\r\n\t var filterExpressions = [];\r\n\t if (options.filterResultsOnCurrentCulture) {\r\n\t var clientLanguageFilterExpression = this.utilities.getFilterExpression(options.clientLanguageFieldName, options.clientLanguageName);\r\n\t filterExpressions.push(clientLanguageFilterExpression);\r\n\t }\r\n\t if (options.filterResultOnLatestVersion) {\r\n\t var latestVersionFilterExpression = this.utilities.getFilterExpression(options.latestVersionFieldName, \"1\");\r\n\t filterExpressions.push(latestVersionFilterExpression);\r\n\t }\r\n\t if (filterExpressions.length > 0) {\r\n\t var filterExpression = filterExpressions.join(\" \").replace(/^\\s+|\\s+$/g, \"\");\r\n\t expression = \"(\" + filterExpression + \")\";\r\n\t }\r\n\t return expression;\r\n\t };\r\n\t FilterExpressionHelper.prototype.appendExternalContentToExpression = function (expression, options) {\r\n\t var newExpression = expression;\r\n\t if (this.hasExternalContentSpecified(options)) {\r\n\t var expressions = [expression];\r\n\t var externalSources = this.getAllExternalSources(options, options);\r\n\t if (externalSources.length > 0) {\r\n\t expressions.push(this.utilities.getExternalSourcesExpression(externalSources));\r\n\t }\r\n\t var externalCollections = this.getAllExternalCollections(options, options);\r\n\t if (externalCollections.length > 0) {\r\n\t expressions.push(this.utilities.getExternalCollectionsExpression(externalCollections));\r\n\t }\r\n\t newExpression = \"(\" + expressions.join(\" OR \") + \")\";\r\n\t }\r\n\t return newExpression;\r\n\t };\r\n\t ;\r\n\t FilterExpressionHelper.prototype.getAllExternalSources = function (externalSourcesOptions, externalContentFromCurrentTabOptions) {\r\n\t var externalSources = [];\r\n\t externalSources.push.apply(externalSources, externalSourcesOptions.externalSources);\r\n\t externalSources.push.apply(externalSources, externalContentFromCurrentTabOptions.externalSourcesFromCurrentTab);\r\n\t return externalSources;\r\n\t };\r\n\t FilterExpressionHelper.prototype.getAllExternalCollections = function (externalCollectionsOptions, externalContentFromCurrentTabOptions) {\r\n\t var externalSources = [];\r\n\t externalSources.push.apply(externalSources, externalCollectionsOptions.externalCollections);\r\n\t externalSources.push.apply(externalSources, externalContentFromCurrentTabOptions.externalCollectionsFromCurrentTab);\r\n\t return externalSources;\r\n\t };\r\n\t FilterExpressionHelper.prototype.hasExternalContentSpecified = function (options) {\r\n\t return options.externalCollections.length > 0 ||\r\n\t options.externalSources.length > 0 ||\r\n\t options.externalSourcesFromCurrentTab.length > 0 ||\r\n\t options.externalCollectionsFromCurrentTab.length > 0;\r\n\t };\r\n\t ;\r\n\t return FilterExpressionHelper;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = FilterExpressionHelper;\r\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar ExpressionHelperUtilities = (function () {\r\n\t function ExpressionHelperUtilities() {\r\n\t }\r\n\t ExpressionHelperUtilities.prototype.getFilterExpression = function (fieldName, fieldValue) {\r\n\t if (typeof (fieldValue) == \"string\") {\r\n\t return fieldName + \"==\\\"\" + fieldValue + \"\\\"\";\r\n\t }\r\n\t else {\r\n\t var fieldValues = fieldValue;\r\n\t if (fieldValues.length > 0) {\r\n\t return fieldName + \"==(\\\"\" + fieldValues.join('\",\"') + \"\\\")\";\r\n\t }\r\n\t else {\r\n\t return \"\";\r\n\t }\r\n\t }\r\n\t };\r\n\t ;\r\n\t ExpressionHelperUtilities.prototype.getExternalCollectionsExpression = function (externalCollections) {\r\n\t return this.getFilterExpression(\"@syscollection\", externalCollections);\r\n\t };\r\n\t ExpressionHelperUtilities.prototype.getExternalSourcesExpression = function (externalSources) {\r\n\t return this.getFilterExpression(\"@syssource\", externalSources);\r\n\t };\r\n\t ExpressionHelperUtilities.prototype.isDefined = function (property) {\r\n\t return typeof property !== \"undefined\";\r\n\t };\r\n\t return ExpressionHelperUtilities;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = ExpressionHelperUtilities;\r\n\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar Coveo = __webpack_require__(5);\r\n\tvar SearchEndpointHelper = (function () {\r\n\t function SearchEndpointHelper() {\r\n\t }\r\n\t SearchEndpointHelper.initializeEndpoint = function (options) {\r\n\t Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint({\r\n\t restUri: options.restEndpointUri,\r\n\t queryStringArguments: { 'sitecoreItemUri': options.sitecoreItemUri, 'siteName': options.siteName }\r\n\t });\r\n\t };\r\n\t return SearchEndpointHelper;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = SearchEndpointHelper;\r\n\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar Coveo = __webpack_require__(5);\r\n\tvar OmniboxResultListHandler = (function () {\r\n\t function OmniboxResultListHandler() {\r\n\t }\r\n\t OmniboxResultListHandler.getOmniboxDataRowIndex = function () {\r\n\t this.omniboxDataRowIndexCounter = this.omniboxDataRowIndexCounter + 1;\r\n\t return this.omniboxDataRowIndexCounter;\r\n\t };\r\n\t OmniboxResultListHandler.prototype.onOmniboxRowClicked = function (result) {\r\n\t window.location.href = result.clickUri;\r\n\t };\r\n\t OmniboxResultListHandler.prototype.buildOmniboxContent = function (results, options) {\r\n\t var _this = this;\r\n\t var id = options.id ? options.id : options.resultTemplateId;\r\n\t var templateElement = document.getElementById(id);\r\n\t var template = new Coveo.UnderscoreTemplate(templateElement);\r\n\t var resultContainer = this.getResultContainer(options.headerTitle);\r\n\t var content = Coveo.$$(\"div\");\r\n\t content.append(resultContainer.el);\r\n\t results.forEach(function (result) {\r\n\t var oneRowOfContent = template.instantiateToElement(result);\r\n\t var rowElement = Coveo.$$(oneRowOfContent);\r\n\t rowElement.addClass(\"CoveoResult coveo-omnibox-selectable\");\r\n\t rowElement.on(\"click keyboardSelect\", function () {\r\n\t _this.onOmniboxRowClicked(result);\r\n\t });\r\n\t content.append(oneRowOfContent);\r\n\t });\r\n\t return content.el;\r\n\t };\r\n\t OmniboxResultListHandler.prototype.populateOmniboxResultList = function (populateOmniboxObject, options, queryController) {\r\n\t var _this = this;\r\n\t var queryBuilder = queryController.createQueryBuilder(options);\r\n\t if (options.queryExpression && typeof (options.queryExpression) === \"string\") {\r\n\t queryBuilder.advancedExpression.add(options.queryExpression);\r\n\t }\r\n\t queryBuilder.numberOfResults = options.numberOfResults;\r\n\t var query = queryBuilder.build();\r\n\t var promise = this.executeSearchQuery(query)\r\n\t .then(function (response) {\r\n\t if (response.totalCount > 0) {\r\n\t var elementToReturn = _this.buildOmniboxContent(response.results, options);\r\n\t var objectToReturn = {\r\n\t zIndex: options.omniboxDataRowIndex,\r\n\t element: elementToReturn\r\n\t };\r\n\t return objectToReturn;\r\n\t }\r\n\t else {\r\n\t return { element: undefined };\r\n\t }\r\n\t });\r\n\t populateOmniboxObject.rows.push({ deferred: promise });\r\n\t };\r\n\t OmniboxResultListHandler.prototype.executeSearchQuery = function (query) {\r\n\t return Coveo.SearchEndpoint.endpoints[\"default\"].search(query);\r\n\t };\r\n\t OmniboxResultListHandler.prototype.getResultContainer = function (captionText) {\r\n\t var resultContainer = Coveo.$$(\"div\");\r\n\t resultContainer.addClass(\"coveo-omnibox-result-list-header\");\r\n\t resultContainer.append(this.getIcon().el);\r\n\t resultContainer.append(this.getCaption(captionText).el);\r\n\t return resultContainer;\r\n\t };\r\n\t OmniboxResultListHandler.prototype.getIcon = function () {\r\n\t var iconResultList = Coveo.$$(\"span\");\r\n\t iconResultList.addClass(\"coveo-icon-omnibox-result-list\");\r\n\t return iconResultList;\r\n\t };\r\n\t OmniboxResultListHandler.prototype.getCaption = function (captionText) {\r\n\t var caption = Coveo.$$(\"span\");\r\n\t caption.addClass(\"coveo-caption\");\r\n\t caption.el.textContent = captionText;\r\n\t return caption;\r\n\t };\r\n\t OmniboxResultListHandler.omniboxDataRowIndexCounter = 0;\r\n\t return OmniboxResultListHandler;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = OmniboxResultListHandler;\r\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar Coveo = __webpack_require__(5);\r\n\tvar Utilities_1 = __webpack_require__(15);\r\n\tvar EndpointCaller_1 = __webpack_require__(16);\r\n\tvar SitecoreAnalyticsHandler = (function () {\r\n\t function SitecoreAnalyticsHandler(options, endpointCaller) {\r\n\t this.options = options;\r\n\t this.endpointCaller = endpointCaller || new EndpointCaller_1.default();\r\n\t }\r\n\t SitecoreAnalyticsHandler.prototype.registerSitecoreAnalytics = function (domElement, windowReference) {\r\n\t var _this = this;\r\n\t (windowReference || window).onbeforeunload = function () {\r\n\t Coveo.Defer.flush();\r\n\t };\r\n\t domElement.on(Coveo.AnalyticsEvents.searchEvent, function (e, args) {\r\n\t _this.postAnalytics(\"searches\", \"searchEvents\", args.searchEvents);\r\n\t });\r\n\t domElement.on(Coveo.AnalyticsEvents.documentViewEvent, function (e, args) {\r\n\t _this.postAnalytics(\"documentViews\", \"documentViewEvents\", args.documentViewEvent);\r\n\t });\r\n\t domElement.on(Coveo.AnalyticsEvents.customEvent, function (e, args) {\r\n\t _this.postAnalytics(\"custom\", \"customEvents\", args.customEvent);\r\n\t });\r\n\t };\r\n\t SitecoreAnalyticsHandler.prototype.postAnalytics = function (eventAction, eventType, eventData) {\r\n\t var _this = this;\r\n\t var parsedEventData = [];\r\n\t if (typeof (eventData) !== \"undefined\") {\r\n\t parsedEventData = parsedEventData.concat(eventData);\r\n\t }\r\n\t parsedEventData.filter(function (data) {\r\n\t return typeof (data) !== \"undefined\";\r\n\t }).forEach(function (data) {\r\n\t data.sitecoreItemId = _this.options.sitecoreItemId;\r\n\t });\r\n\t var postData = {};\r\n\t postData[eventType] = JSON.stringify(parsedEventData);\r\n\t this.endpointCaller.sendPost(Utilities_1.default.appendTrailingSlash(this.options.analyticsEndpointUri) + eventAction, postData);\r\n\t };\r\n\t return SitecoreAnalyticsHandler;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = SitecoreAnalyticsHandler;\r\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar Utilities = (function () {\r\n\t function Utilities() {\r\n\t }\r\n\t Utilities.appendTrailingSlash = function (url) {\r\n\t return url.charAt(url.length - 1) === \"/\" ? url : url + \"/\";\r\n\t };\r\n\t return Utilities;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = Utilities;\r\n\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar Coveo = __webpack_require__(5);\r\n\tvar EndpointCaller = (function () {\r\n\t function EndpointCaller(endpointCaller) {\r\n\t this.endpointCaller = endpointCaller || new Coveo.EndpointCaller();\r\n\t }\r\n\t EndpointCaller.prototype.sendPost = function (url, postData) {\r\n\t var callOptions = {\r\n\t errorsAsSuccess: false,\r\n\t method: \"POST\",\r\n\t queryString: [],\r\n\t requestData: postData,\r\n\t url: url,\r\n\t responseType: \"text\",\r\n\t requestDataType: \"application/json\"\r\n\t };\r\n\t return this.endpointCaller.call(callOptions);\r\n\t };\r\n\t return EndpointCaller;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = EndpointCaller;\r\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar TabsBinding = (function () {\r\n\t function TabsBinding() {\r\n\t var _this = this;\r\n\t this.bindings = {};\r\n\t this.getElementBinding = function (elementId) {\r\n\t return {\r\n\t elementId: elementId,\r\n\t document: document.getElementById(elementId),\r\n\t binding: _this.bindings[elementId]\r\n\t };\r\n\t };\r\n\t this.elementFound = function (elementBinding) {\r\n\t var elementFound = typeof (elementBinding.document) !== \"undefined\" && elementBinding.document != null;\r\n\t if (!elementFound) {\r\n\t console.error(\"The element with the ID '\" + elementBinding.elementId + \"' was not found. Ensure the element exists in the DOM.\");\r\n\t }\r\n\t return elementFound;\r\n\t };\r\n\t this.initBinding = function (itemId) {\r\n\t if (!_this.bindings.hasOwnProperty(itemId)) {\r\n\t _this.bindings[itemId] = {\r\n\t tabNot: []\r\n\t };\r\n\t }\r\n\t return _this.bindings[itemId];\r\n\t };\r\n\t this.applyBinding = function (elementBinding) {\r\n\t _this.addExcludeFromTabTag(elementBinding.document, elementBinding.binding.tabNot);\r\n\t };\r\n\t this.addExcludeFromTabTag = function (element, bindings) {\r\n\t if (bindings.length > 0) {\r\n\t element.setAttribute(\"data-tab-not\", bindings.join(\",\"));\r\n\t }\r\n\t };\r\n\t }\r\n\t TabsBinding.prototype.excludeItemsIdsInTab = function (elementIds, tabId) {\r\n\t elementIds.map(this.initBinding, this).forEach(function (binding) {\r\n\t binding.tabNot.push(tabId);\r\n\t });\r\n\t };\r\n\t TabsBinding.prototype.applyBindings = function () {\r\n\t Object.keys(this.bindings)\r\n\t .map(this.getElementBinding)\r\n\t .filter(this.elementFound)\r\n\t .forEach(this.applyBinding);\r\n\t };\r\n\t return TabsBinding;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = TabsBinding;\r\n\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar __extends = (this && this.__extends) || function (d, b) {\r\n\t for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\r\n\t function __() { this.constructor = d; }\r\n\t d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n\t};\r\n\tvar Coveo = __webpack_require__(5);\r\n\tvar CoveoForSitecoreBase_1 = __webpack_require__(4);\r\n\tvar Searchbox = (function (_super) {\r\n\t __extends(Searchbox, _super);\r\n\t function Searchbox(searchComponent, searchBoxPluginOptions, defaultSearchBoxPluginOptions) {\r\n\t _super.call(this, searchComponent, searchBoxPluginOptions, defaultSearchBoxPluginOptions);\r\n\t this.searchBoxOptions = _.extend({}, defaultSearchBoxPluginOptions, searchBoxPluginOptions);\r\n\t }\r\n\t Searchbox.prototype.initialize = function () {\r\n\t var _this = this;\r\n\t this.logger.log(\"Initializing searchbox.\");\r\n\t this.initializeSearchOptions();\r\n\t if (!this.options.isInitialized) {\r\n\t this.domElement.on(Coveo.QueryEvents.buildingQuery, function (e, args) {\r\n\t var expression = _this.expressionsHelper.getSearchExpression(_this.searchBoxOptions);\r\n\t args.queryBuilder.advancedExpression.add(expression);\r\n\t });\r\n\t }\r\n\t Coveo.initSearchbox(this.element, this.searchBoxOptions.searchRedirectionUrl, this.searchBoxOptions);\r\n\t if (this.searchBoxOptions.searchRedirectionItemName) {\r\n\t var searchBoxComponent = Coveo.get(this.element, Coveo.SearchInterface);\r\n\t if (searchBoxComponent) {\r\n\t searchBoxComponent.componentOptionsModel.set(\"searchHub\", this.searchBoxOptions.searchRedirectionItemName);\r\n\t }\r\n\t }\r\n\t this.doPostInitializationActions();\r\n\t };\r\n\t return Searchbox;\r\n\t}(CoveoForSitecoreBase_1.default));\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = Searchbox;\r\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar UserContextHandler = (function () {\r\n\t function UserContextHandler() {\r\n\t this.context = {};\r\n\t }\r\n\t UserContextHandler.prototype.initializeContext = function (context) {\r\n\t this.context = this.replaceInvalidCharacterInContext(context);\r\n\t return this;\r\n\t };\r\n\t UserContextHandler.prototype.setContext = function (key, value) {\r\n\t this.context[this.replaceInvalidCharacters(key)] = value;\r\n\t return this;\r\n\t };\r\n\t UserContextHandler.prototype.getContext = function () {\r\n\t return this.context;\r\n\t };\r\n\t UserContextHandler.prototype.replaceInvalidCharacterInContext = function (context) {\r\n\t var _this = this;\r\n\t var validContext = {};\r\n\t Object.keys(context).forEach(function (key) {\r\n\t validContext[_this.replaceInvalidCharacters(key)] = context[key];\r\n\t });\r\n\t return validContext;\r\n\t };\r\n\t UserContextHandler.prototype.replaceInvalidCharacters = function (key) {\r\n\t if (typeof key === \"string\") {\r\n\t return key.replace(UserContextHandler.invalidCharacters, \"_\");\r\n\t }\r\n\t else {\r\n\t console.error(\"The user context key '{key}' is not a string.\");\r\n\t return \"\";\r\n\t }\r\n\t };\r\n\t UserContextHandler.invalidCharacters = /[^A-Za-z0-9_]/ig;\r\n\t return UserContextHandler;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = UserContextHandler;\r\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_20__;\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar Coveo = __webpack_require__(5);\r\n\tvar DefaultSortHandler_1 = __webpack_require__(7);\r\n\tvar SitecoreAnalyticsHandler_1 = __webpack_require__(14);\r\n\tvar ExpressionHelperUtilities_1 = __webpack_require__(11);\r\n\tvar CoveoForSitecoreRecommendations = (function () {\r\n\t function CoveoForSitecoreRecommendations() {\r\n\t }\r\n\t CoveoForSitecoreRecommendations.prototype.initRelatedQuery = function (element, searchInterfaceElement, userContext, options) {\r\n\t var expressionHelperUtilities = new ExpressionHelperUtilities_1.default();\r\n\t var defaultSortHandler = new DefaultSortHandler_1.default(options);\r\n\t var domElement = Coveo.$$(element);\r\n\t domElement.on(Coveo.QueryEvents.buildingQuery, function (event, args) {\r\n\t defaultSortHandler.addSortCriteriaToQuery(args.queryBuilder);\r\n\t if (options.filterResultsOnCurrentCulture) {\r\n\t var languageFilterExpression = expressionHelperUtilities.getFilterExpression(options.clientLanguageFieldName, options.clientLanguageName);\r\n\t args.queryBuilder.constantExpression.add(languageFilterExpression);\r\n\t }\r\n\t });\r\n\t if (options && options.sendToSitecoreAnalytics) {\r\n\t var sitecoreAnalyticsHandler = new SitecoreAnalyticsHandler_1.default(options);\r\n\t sitecoreAnalyticsHandler.registerSitecoreAnalytics(domElement);\r\n\t }\r\n\t Coveo.initRecommendation(element, searchInterfaceElement, userContext, options);\r\n\t };\r\n\t CoveoForSitecoreRecommendations.prototype.initRecommendations = function (element, userContext) {\r\n\t Coveo.initRecommendation(element, null, userContext);\r\n\t };\r\n\t return CoveoForSitecoreRecommendations;\r\n\t}());\r\n\tObject.defineProperty(exports, \"__esModule\", { value: true });\r\n\texports.default = CoveoForSitecoreRecommendations;\r\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar __extends = (this && this.__extends) || function (d, b) {\r\n\t for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\r\n\t function __() { this.constructor = d; }\r\n\t d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n\t};\r\n\tvar Coveo = __webpack_require__(5);\r\n\tvar OmniboxResultListHandler_1 = __webpack_require__(13);\r\n\tvar Component = Coveo.Component;\r\n\tvar OmniboxResultList = (function (_super) {\r\n\t __extends(OmniboxResultList, _super);\r\n\t function OmniboxResultList(element, options, bindings) {\r\n\t _super.call(this, element, OmniboxResultList.ID, bindings);\r\n\t this.element = element;\r\n\t this.options = options;\r\n\t this.omniboxResultListHandler = new OmniboxResultListHandler_1.default();\r\n\t this.options = Coveo.ComponentOptions.initComponentOptions(element, OmniboxResultList, options);\r\n\t if (bindings) {\r\n\t this.initializeOmniboxDataRowIndex(bindings);\r\n\t }\r\n\t this.bind.onRootElement(Coveo.OmniboxEvents.populateOmnibox, this.populateOmnibox);\r\n\t this.bindEnterToSearchButton();\r\n\t }\r\n\t OmniboxResultList.prototype.bindEnterToSearchButton = function () {\r\n\t var queryBoxes = document.querySelectorAll(\".CoveoSearchbox\");\r\n\t _.map(queryBoxes, function (queryBox) {\r\n\t return {\r\n\t input: queryBox.querySelector(\"input\"),\r\n\t button: queryBox.querySelector(\".CoveoSearchButton\")\r\n\t };\r\n\t }).filter(function (queryBoxElements) {\r\n\t return queryBoxElements.button !== null && queryBoxElements.input !== null;\r\n\t }).forEach(function (queryBoxElements) {\r\n\t queryBoxElements.input.addEventListener(\"keyup\", function (event) {\r\n\t if (event.keyCode === 13) {\r\n\t queryBoxElements.button.click();\r\n\t }\r\n\t });\r\n\t });\r\n\t };\r\n\t OmniboxResultList.prototype.populateOmnibox = function (populateOmniboxObject) {\r\n\t this.omniboxResultListHandler.populateOmniboxResultList(populateOmniboxObject, this.options, this.queryController);\r\n\t };\r\n\t OmniboxResultList.prototype.initializeOmniboxDataRowIndex = function (bindings) {\r\n\t var omniboxResultList = document.getElementsByClassName(\"CoveoForSitecoreOmniboxResultList\")[0];\r\n\t if (!bindings.searchInterface.options.originalOptionsObject.keepOmniboxSuggestionsProvidersDefaultOrdering) {\r\n\t this.options.omniboxDataRowIndex = 51 + Coveo.$$(omniboxResultList).children().length - bindings.searchInterface.options.originalOptionsObject.omniboxDataRowIndexCounter;\r\n\t bindings.searchInterface.options.originalOptionsObject.omniboxDataRowIndexCounter++;\r\n\t }\r\n\t };\r\n\t OmniboxResultList.ID = \"ForSitecoreOmniboxResultList\";\r\n\t OmniboxResultList.options = {\r\n\t headerTitle: Coveo.ComponentOptions.buildStringOption(),\r\n\t queryExpression: Coveo.ComponentOptions.buildStringOption(),\r\n\t numberOfResults: Coveo.ComponentOptions.buildNumberOption({ defaultValue: 10, min: 1 }),\r\n\t omniboxDataRowIndex: Coveo.ComponentOptions.buildNumberOption({ defaultValue: 51, min: 16 }),\r\n\t resultTemplateId: Coveo.ComponentOptions.buildStringOption()\r\n\t };\r\n\t return OmniboxResultList;\r\n\t}(Component));\r\n\texports.OmniboxResultList = OmniboxResultList;\r\n\tCoveo.Initialization.registerAutoCreateComponent(OmniboxResultList);\r\n\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\r\n\tvar __extends = (this && this.__extends) || function (d, b) {\r\n\t for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\r\n\t function __() { this.constructor = d; }\r\n\t d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n\t};\r\n\tvar coveo_search_ui_1 = __webpack_require__(5);\r\n\tvar EndpointCaller_1 = __webpack_require__(16);\r\n\tvar GOOGLE_PROVIDER_VALUE = \"google\";\r\n\tvar SITECORE_PROVIDER_VALUE = \"sitecoreGeolocation\";\r\n\tvar BROWSER_PROVIDER_VALUE = \"browser\";\r\n\tvar CUSTOM_PROVIDER_VALUE = \"custom\";\r\n\tvar GOOGLE_MAP_BASE_URL = \"https://www.googleapis.com/geolocation/v1/geolocate?key=\";\r\n\tvar CoveoForSitecoreDistanceResources = (function (_super) {\r\n\t __extends(CoveoForSitecoreDistanceResources, _super);\r\n\t function CoveoForSitecoreDistanceResources(element, options, bindings) {\r\n\t _super.call(this, element, CoveoForSitecoreDistanceResources.ID, bindings);\r\n\t this.element = element;\r\n\t this.options = options;\r\n\t this.bindings = bindings;\r\n\t this.providerWarningDisabled = false;\r\n\t this.options = coveo_search_ui_1.ComponentOptions.initComponentOptions(element, CoveoForSitecoreDistanceResources, options);\r\n\t this.endpointCaller = new EndpointCaller_1.default();\r\n\t if (this.options.geolocationProviders) {\r\n\t this.options.geolocationProviders = this.options.geolocationProviders.reverse();\r\n\t this.tryNextGeolocationProvider();\r\n\t }\r\n\t }\r\n\t CoveoForSitecoreDistanceResources.prototype.setDistance = function (latitude, longitude) {\r\n\t this.latitude = latitude;\r\n\t this.longitude = longitude;\r\n\t this.registerDistanceQuery();\r\n\t this.queryController.executeQuery();\r\n\t };\r\n\t CoveoForSitecoreDistanceResources.prototype.setCoordinateFromGoogle = function () {\r\n\t var _this = this;\r\n\t if (!!this.options.googleApiKey) {\r\n\t var postData = {};\r\n\t var baseMapsUrl = GOOGLE_MAP_BASE_URL + this.options.googleApiKey;\r\n\t var geolocationResponse = this.endpointCaller.sendPost(baseMapsUrl, postData);\r\n\t geolocationResponse.then(function (positionData) {\r\n\t var location = positionData.data.location;\r\n\t if (!!location) {\r\n\t _this.setDistance(location.lat, location.lng);\r\n\t }\r\n\t else {\r\n\t _this.tryNextGeolocationProvider();\r\n\t }\r\n\t });\r\n\t }\r\n\t else {\r\n\t this.logger.error(GOOGLE_PROVIDER_VALUE + \" provider was selected, but \\\"googleApiKey\\\" option was not set.\");\r\n\t this.tryNextGeolocationProvider();\r\n\t }\r\n\t };\r\n\t CoveoForSitecoreDistanceResources.prototype.setDefaultCoordinates = function () {\r\n\t if (!this.isNullOrEmpty(this.options.defaultLatitude) && !this.isNullOrEmpty(this.options.defaultLongitude)) {\r\n\t this.setDistance(this.options.defaultLatitude, this.options.defaultLongitude);\r\n\t }\r\n\t else {\r\n\t this.logger.error(SITECORE_PROVIDER_VALUE + \" provider was selected, but \\\"defaultLongitude\\\" and \\\"defaultLatitude\\\" options were not set.\");\r\n\t this.tryNextGeolocationProvider();\r\n\t }\r\n\t };\r\n\t CoveoForSitecoreDistanceResources.prototype.setCoordinatesFromBrowser = function () {\r\n\t var _this = this;\r\n\t navigator.geolocation.getCurrentPosition(function (position) {\r\n\t _this.setDistance(position.coords.latitude, position.coords.longitude);\r\n\t }, function (err) {\r\n\t _this.tryNextGeolocationProvider();\r\n\t });\r\n\t };\r\n\t CoveoForSitecoreDistanceResources.prototype.registerDistanceQuery = function () {\r\n\t var _this = this;\r\n\t this.bind.onRootElement(Coveo.QueryEvents.buildingQuery, function (args) {\r\n\t var geoQueryFunction = {\r\n\t 'function': _this.getConvertedUnitsFunction(\"dist(\" + _this.options.latitudeField + \", \" + _this.options.longitudeField + \", \" + _this.latitude + \", \" + _this.longitude + \")\"),\r\n\t 'fieldName': _this.options.distanceField\r\n\t };\r\n\t if (args && args.queryBuilder) {\r\n\t args.queryBuilder.queryFunctions.push(geoQueryFunction);\r\n\t _this.enableDistanceComponents();\r\n\t }\r\n\t });\r\n\t };\r\n\t CoveoForSitecoreDistanceResources.prototype.enableDistanceComponents = function () {\r\n\t var _this = this;\r\n\t var distanceComponents = document.getElementsByClassName(this.options.disabledDistanceCssClass);\r\n\t var elements = [];\r\n\t for (var i = 0, length_1 = distanceComponents.length; i < length_1; i++) {\r\n\t elements.push(distanceComponents.item(i));\r\n\t }\r\n\t elements.forEach(function (element) {\r\n\t try {\r\n\t element.classList.remove(_this.options.disabledDistanceCssClass);\r\n\t Coveo.get(element).enable();\r\n\t }\r\n\t catch (exception) {\r\n\t _this.logger.error(\"Could not re-enable distance component:\", exception, element);\r\n\t }\r\n\t });\r\n\t };\r\n\t CoveoForSitecoreDistanceResources.prototype.getConvertedUnitsFunction = function (queryFunction) {\r\n\t return queryFunction + \"/\" + this.options.unitConversionFactor;\r\n\t };\r\n\t CoveoForSitecoreDistanceResources.prototype.tryNextGeolocationProvider = function () {\r\n\t var currentGeolocationProvider = this.options.geolocationProviders.pop();\r\n\t if (currentGeolocationProvider == null) {\r\n\t if (!this.providerWarningDisabled) {\r\n\t console.warn(\"None of the mentioned geolocation providers were able to provide the user's coordinates. The distance field will not be calculated and the distance components will be disabled until the next call to \\\"setDistance\\\".\");\r\n\t }\r\n\t }\r\n\t else {\r\n\t switch (currentGeolocationProvider) {\r\n\t case GOOGLE_PROVIDER_VALUE:\r\n\t this.setCoordinateFromGoogle();\r\n\t break;\r\n\t case CUSTOM_PROVIDER_VALUE:\r\n\t this.providerWarningDisabled = true;\r\n\t break;\r\n\t case SITECORE_PROVIDER_VALUE:\r\n\t this.setDefaultCoordinates();\r\n\t break;\r\n\t case BROWSER_PROVIDER_VALUE:\r\n\t this.setCoordinatesFromBrowser();\r\n\t break;\r\n\t default:\r\n\t console.warn(\"Invalid geolocation provider: '\" + currentGeolocationProvider + \"'.\");\r\n\t this.tryNextGeolocationProvider();\r\n\t }\r\n\t }\r\n\t };\r\n\t CoveoForSitecoreDistanceResources.prototype.isNullOrEmpty = function (value) {\r\n\t return value === null || typeof (value) === \"undefined\";\r\n\t };\r\n\t CoveoForSitecoreDistanceResources.ID = \"ForSitecoreDistanceResources\";\r\n\t CoveoForSitecoreDistanceResources.options = {\r\n\t distanceField: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n\t latitudeField: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n\t longitudeField: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n\t defaultLatitude: coveo_search_ui_1.ComponentOptions.buildNumberOption(),\r\n\t defaultLongitude: coveo_search_ui_1.ComponentOptions.buildNumberOption(),\r\n\t geolocationProviders: coveo_search_ui_1.ComponentOptions.buildListOption(),\r\n\t googleApiKey: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n\t unitType: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n\t unitConversionFactor: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n\t disabledDistanceCssClass: coveo_search_ui_1.ComponentOptions.buildStringOption({\r\n\t defaultValue: \"coveo-distance-disabled\"\r\n\t })\r\n\t };\r\n\t return CoveoForSitecoreDistanceResources;\r\n\t}(coveo_search_ui_1.Component));\r\n\texports.CoveoForSitecoreDistanceResources = CoveoForSitecoreDistanceResources;\r\n\tcoveo_search_ui_1.Initialization.registerAutoCreateComponent(CoveoForSitecoreDistanceResources);\r\n\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\t// Copyright (c) 2005-2018, Coveo Solutions Inc.\r\n\t\"use strict\";\r\n\tvar _this = this;\r\n\tvar PluginOptions_1 = __webpack_require__(3);\r\n\tvar CoveoForSitecoreBase_1 = __webpack_require__(4);\r\n\tvar TabsBinding_1 = __webpack_require__(17);\r\n\tvar Searchbox_1 = __webpack_require__(18);\r\n\tvar SearchEndpointHelper_1 = __webpack_require__(12);\r\n\tvar UserContextHandler_1 = __webpack_require__(19);\r\n\tvar CoveoForSitecoreUserContext = __webpack_require__(20);\r\n\tvar CoveoForSitecoreRecommendationsBase_1 = __webpack_require__(21);\r\n\texports.OmniboxResultList = __webpack_require__(22);\r\n\texports.CoveoDistanceResources = __webpack_require__(23);\r\n\tvar recommendations = new CoveoForSitecoreRecommendationsBase_1[\"default\"]();\r\n\texports.userContext = typeof (CoveoForSitecoreUserContext) !== \"undefined\" ? CoveoForSitecoreUserContext.handler : new UserContextHandler_1[\"default\"]();\r\n\texports.componentsOptions = new PluginOptions_1[\"default\"]();\r\n\texports.tabsBinding = new TabsBinding_1[\"default\"]();\r\n\texports.SearchEndpointHelper = SearchEndpointHelper_1[\"default\"];\r\n\texports.defaults = new PluginOptions_1[\"default\"]();\r\n\tfunction initializeSearch(searchComponent, options) {\r\n\t exports.tabsBinding.applyBindings();\r\n\t if (!_isExistingPlugin(searchComponent)) {\r\n\t if (typeof (options.userContext) === \"undefined\") {\r\n\t options.userContext = exports.userContext.getContext();\r\n\t }\r\n\t exports.plugin = new CoveoForSitecoreBase_1[\"default\"](searchComponent, options, exports.defaults);\r\n\t exports.plugin.initialize();\r\n\t }\r\n\t}\r\n\texports.initializeSearch = initializeSearch;\r\n\tfunction initializeSearchbox(searchComponent, options) {\r\n\t if (typeof (options.userContext) === \"undefined\") {\r\n\t options.userContext = exports.userContext.getContext();\r\n\t }\r\n\t exports.plugin = new Searchbox_1[\"default\"](searchComponent, options, exports.defaults);\r\n\t exports.plugin.initialize();\r\n\t}\r\n\texports.initializeSearchbox = initializeSearchbox;\r\n\texports.initRecommendations = function (element, userContext) {\r\n\t recommendations.initRecommendations(element, userContext || _this.userContext.getContext());\r\n\t};\r\n\texports.initRelatedQuery = function (element, searchInterfaceElement, userContext, options) {\r\n\t recommendations.initRelatedQuery(element, searchInterfaceElement, userContext || _this.userContext.getContext(), options);\r\n\t};\r\n\tfunction _isExistingPlugin(searchComponent) {\r\n\t return exports.plugin && exports.plugin.element && exports.plugin.element.id === searchComponent.id;\r\n\t}\r\n\n\n/***/ })\n/******/ ])\n});\n;\n\n\n// WEBPACK FOOTER //\n// CoveoForSitecore.min.js"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 3b4280009ac5d552cb53","// Copyright (c) 2005-2018, Coveo Solutions Inc.\r\n\"use strict\";\r\n/// \r\nvar CoveoForSitecore = require(\"./CoveoForSitecore\");\r\nCoveo.initCoveoForSitecore = function (element, action, options) {\r\n if (action === \"init\") {\r\n CoveoForSitecore.initializeSearch(element, options);\r\n }\r\n else if (action === \"initSearchbox\") {\r\n CoveoForSitecore.initializeSearchbox(element, options);\r\n }\r\n else {\r\n console.error(\"The action '\" + action + \"' is not part of the coveoForSitecore plugin. Ignoring action.\");\r\n }\r\n};\r\nCoveo.initializeJQuery = function (jQueryInstance) {\r\n Coveo.$ = jQueryInstance;\r\n Coveo.initializeCoveoForSitecorePlugin();\r\n};\r\nCoveo.initializeCoveoForSitecorePlugin = function () {\r\n if (typeof (Coveo.$) !== \"undefined\" && typeof (Coveo.$.fn) != \"undefined\") {\r\n Coveo.$.fn.coveoForSitecore = function (action, options) {\r\n Coveo.initCoveoForSitecore(this[0], action, options);\r\n return this;\r\n };\r\n }\r\n};\r\n(function (jQueryInstance) {\r\n if (typeof (jQueryInstance) !== \"undefined\") {\r\n Coveo.initializeJQuery(jQueryInstance);\r\n }\r\n})(typeof (Coveo) !== \"undefined\" && typeof (Coveo.$) !== \"undefined\" ? Coveo.$ : jQuery);\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./CoveoForSitecore.JQuery.ts\n// module id = 1\n// module chunks = 0","\"use strict\";\r\nvar _this = this;\r\nvar PluginOptions_1 = require(\"./Base/PluginOptions\");\r\nvar CoveoForSitecoreBase_1 = require(\"./Base/CoveoForSitecoreBase\");\r\nvar TabsBinding_1 = require(\"./Base/Tabs/TabsBinding\");\r\nvar Searchbox_1 = require(\"./Base/Searchbox\");\r\nvar SearchEndpointHelper_1 = require(\"./Base/SearchEndpointHelper\");\r\nvar UserContextHandler_1 = require(\"./UserContext/UserContextHandler\");\r\nvar CoveoForSitecoreUserContext = require(\"./CoveoForSitecoreUserContext\");\r\nvar CoveoForSitecoreRecommendationsBase_1 = require(\"./Base/Recommendations/CoveoForSitecoreRecommendationsBase\");\r\nexports.OmniboxResultList = require(\"./Base/OmniboxResultList/OmniboxResultList\");\r\nexports.CoveoDistanceResources = require(\"./CoveoDistanceRessources/CoveoDistanceResources\");\r\nvar recommendations = new CoveoForSitecoreRecommendationsBase_1.default();\r\nexports.userContext = typeof (CoveoForSitecoreUserContext) !== \"undefined\" ? CoveoForSitecoreUserContext.handler : new UserContextHandler_1.default();\r\nexports.componentsOptions = new PluginOptions_1.default();\r\nexports.tabsBinding = new TabsBinding_1.default();\r\nexports.SearchEndpointHelper = SearchEndpointHelper_1.default;\r\nexports.defaults = new PluginOptions_1.default();\r\nfunction initializeSearch(searchComponent, options) {\r\n exports.tabsBinding.applyBindings();\r\n if (!_isExistingPlugin(searchComponent)) {\r\n if (typeof (options.userContext) === \"undefined\") {\r\n options.userContext = exports.userContext.getContext();\r\n }\r\n exports.plugin = new CoveoForSitecoreBase_1.default(searchComponent, options, exports.defaults);\r\n exports.plugin.initialize();\r\n }\r\n}\r\nexports.initializeSearch = initializeSearch;\r\nfunction initializeSearchbox(searchComponent, options) {\r\n if (typeof (options.userContext) === \"undefined\") {\r\n options.userContext = exports.userContext.getContext();\r\n }\r\n exports.plugin = new Searchbox_1.default(searchComponent, options, exports.defaults);\r\n exports.plugin.initialize();\r\n}\r\nexports.initializeSearchbox = initializeSearchbox;\r\nexports.initRecommendations = function (element, userContext) {\r\n recommendations.initRecommendations(element, userContext || _this.userContext.getContext());\r\n};\r\nexports.initRelatedQuery = function (element, searchInterfaceElement, userContext, options) {\r\n recommendations.initRelatedQuery(element, searchInterfaceElement, userContext || _this.userContext.getContext(), options);\r\n};\r\nfunction _isExistingPlugin(searchComponent) {\r\n return exports.plugin && exports.plugin.element && exports.plugin.element.id === searchComponent.id;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./CoveoForSitecore.js\n// module id = 2\n// module chunks = 0","\"use strict\";\r\nvar PluginOptions = (function () {\r\n function PluginOptions() {\r\n this.analyticsCustomMetadata = {};\r\n this.analyticsEndpointUri = \"/coveo/rest/v6/analytics/\";\r\n this.boostExpressions = \"\";\r\n this.clientLanguageFieldName = \"\";\r\n this.clientLanguageName = \"\";\r\n this.componentRefreshCallback = null;\r\n this.defaultSortType = \"Relevancy\";\r\n this.defaultSortField = \"\";\r\n this.defaultSortCriteriaNoSpace = \"Relevancy\";\r\n this.defaultSortCriteriaLowercase = \"relevancy\";\r\n this.enableClientSideLogging = false;\r\n this.externalCollections = [];\r\n this.externalSources = [];\r\n this.externalSourcesFromCurrentTab = [];\r\n this.externalCollectionsFromCurrentTab = [];\r\n this.filterExpression = \"\";\r\n this.filterResultOnLatestVersion = true;\r\n this.filterResultsOnCurrentCulture = false;\r\n this.indexSourceName = \"\";\r\n this.isEditingInPageEditor = false;\r\n this.isInitialized = false;\r\n this.isPreviewingInPageEditor = false;\r\n this.isPreviewingInPageEditorWithSimulatedDevice = false;\r\n this.keepOmniboxSuggestionsProvidersDefaultOrdering = true;\r\n this.latestVersionFieldName = \"\";\r\n this.omniboxDataRowIndexCounter = 0;\r\n this.pageFullPath = \"\";\r\n this.pageName = \"\";\r\n this.restEndpointUri = \"/coveo/rest/\";\r\n this.resultListInfiniteScrollContainer = window;\r\n this.searchboxPlaceholderText = \"\";\r\n this.searchRedirectionUrl = \"\";\r\n this.searchRedirectionItemName = \"\";\r\n this.sendToSitecoreAnalytics = false;\r\n this.sitecoreItemId = \"\";\r\n this.sitecoreItemUri = \"\";\r\n this.siteName = \"\";\r\n this.userContext = {};\r\n }\r\n return PluginOptions;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = PluginOptions;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/PluginOptions.js\n// module id = 3\n// module chunks = 0","\"use strict\";\r\nvar Coveo = require(\"coveo-search-ui\");\r\nvar Logger_1 = require(\"./Logger\");\r\nvar DefaultSortHandler_1 = require(\"./Sorts/DefaultSortHandler\");\r\nvar ExpressionsHelper_1 = require(\"./Rules/ExpressionsHelper\");\r\nvar SearchEndpointHelper_1 = require(\"./SearchEndpointHelper\");\r\nvar OmniboxResultListHandler_1 = require(\"./OmniboxResultList/OmniboxResultListHandler\");\r\nvar SitecoreAnalyticsHandler_1 = require(\"./Analytics/SitecoreAnalyticsHandler\");\r\nvar CoveoForSitecoreBase = (function () {\r\n function CoveoForSitecoreBase(searchComponent, options, defaultOptions) {\r\n this.isInPageEditorCssClass = \"coveo-page-editor\";\r\n this.isEditingInPageEditorCssClass = \"coveo-page-editor-editing\";\r\n this.isPreviewingInPageEditorCssClass = \"coveo-page-editor-previewing\";\r\n this.isPreviewingInPageEditorWithSimulatedDeviceCssClass = \"coveo-page-editor-previewing-with-simulator\";\r\n this.element = searchComponent;\r\n this.domElement = Coveo.$$(searchComponent);\r\n this.options = _.extend({}, defaultOptions, options);\r\n this.logger = new Logger_1.default(this.options.enableClientSideLogging);\r\n this.expressionsHelper = new ExpressionsHelper_1.default();\r\n this.omniboxResultListHandler = new OmniboxResultListHandler_1.default();\r\n this.sitecoreAnalyticsHandler = new SitecoreAnalyticsHandler_1.default(this.options);\r\n this.defaultSortHandler = new DefaultSortHandler_1.default(options);\r\n this.context = {};\r\n }\r\n CoveoForSitecoreBase.prototype.initialize = function () {\r\n var _this = this;\r\n this.logger.log(\"Initializing search.\");\r\n this.initializeSearchOptions();\r\n if (!this.options.isInitialized) {\r\n this.addPageEditorCssClasses();\r\n this.addResultListHeaderCssClasses();\r\n this.domElement.on(Coveo.InitializationEvents.afterInitialization, function () {\r\n if (!Coveo.HashUtils.getValue(\"sort\", window.location.hash)) {\r\n Coveo.state(_this.element, \"sort\", _this.options.defaultSortCriteriaLowercase);\r\n }\r\n });\r\n var mergedOptions = Coveo.Utils.extendDeep({\r\n Facet: {},\r\n SearchInterface: {}\r\n }, this.options);\r\n Coveo.init(this.element, mergedOptions);\r\n }\r\n this.doPostInitializationActions();\r\n };\r\n CoveoForSitecoreBase.prototype.doPostInitializationActions = function () {\r\n var _this = this;\r\n _.forEach(this.domElement.findAll(\".CoveoQuerybox input, .CoveoOmnibox input\"), function (element) {\r\n element.setAttribute(\"placeholder\", _this.options.searchboxPlaceholderText);\r\n });\r\n };\r\n CoveoForSitecoreBase.prototype.initializeSearchOptions = function () {\r\n var _this = this;\r\n SearchEndpointHelper_1.default.initializeEndpoint(this.options);\r\n if (this.options.enableClientSideLogging) {\r\n Coveo.Logger.enable();\r\n }\r\n if (!this.options.isInitialized) {\r\n this.addPageEditorCssClasses();\r\n this.domElement.on(Coveo.QueryEvents.buildingQuery, function (e, args) {\r\n _this.defaultSortHandler.addSortCriteriaToQuery(args.queryBuilder);\r\n _this.addContextToQuery(args.queryBuilder);\r\n });\r\n this.domElement.on(Coveo.InitializationEvents.afterInitialization, function () {\r\n _this.registerSearchEvents();\r\n _this.options.isInitialized = true;\r\n });\r\n if (this.options.sendToSitecoreAnalytics) {\r\n this.sitecoreAnalyticsHandler.registerSitecoreAnalytics(this.domElement);\r\n }\r\n }\r\n };\r\n CoveoForSitecoreBase.prototype.postAnalytics = function (eventAction, eventType, eventData) {\r\n this.sitecoreAnalyticsHandler.postAnalytics(eventAction, eventType, eventData);\r\n };\r\n CoveoForSitecoreBase.prototype.addPageEditorCssClasses = function () {\r\n if (this.isInPageEditor()) {\r\n this.domElement.addClass(this.isInPageEditorCssClass);\r\n if (this.options.isEditingInPageEditor) {\r\n this.domElement.addClass(this.isEditingInPageEditorCssClass);\r\n }\r\n if (this.options.isPreviewingInPageEditor) {\r\n this.domElement.addClass(this.isPreviewingInPageEditorCssClass);\r\n }\r\n if (this.options.isPreviewingInPageEditorWithSimulatedDevice) {\r\n this.domElement.addClass(this.isPreviewingInPageEditorWithSimulatedDeviceCssClass);\r\n }\r\n }\r\n };\r\n CoveoForSitecoreBase.prototype.addResultListHeaderCssClasses = function () {\r\n var elements = this.getDomElementsMatchingSelector(\".coveo-results-header, .coveo-result-header-section\");\r\n _.filter(elements, function (element) {\r\n return typeof (element) !== \"undefined\" &&\r\n !element.hasClass(\"CoveoQuerySummary\") &&\r\n element.hasClass(\"CoveoQueryDuration\") &&\r\n element.hasClass(\"CoveoSort\");\r\n }).forEach(function (element) {\r\n element.addClass(\"coveo-empty\");\r\n });\r\n };\r\n CoveoForSitecoreBase.prototype.getFilterExpressions = function () {\r\n return this.expressionsHelper.getFilterExpression(this.options);\r\n };\r\n CoveoForSitecoreBase.prototype.registerSearchEvents = function () {\r\n var _this = this;\r\n this.logger.log(\"Registering search events.\");\r\n this.domElement.on(Coveo.QueryEvents.buildingQuery, function (e, args) {\r\n var optionsWithTabContent = _this.getOptionsWithTabExternalContent(args.queryBuilder.tab);\r\n args.queryBuilder.advancedExpression.add(_this.expressionsHelper.getSearchExpression(optionsWithTabContent));\r\n args.queryBuilder.constantExpression.add(_this.expressionsHelper.getFilterExpression(optionsWithTabContent));\r\n });\r\n this.domElement.on(Coveo.AnalyticsEvents.changeAnalyticsCustomData, function (e, args) {\r\n var options = _this.options;\r\n if (options) {\r\n if (options.clientLanguageName) {\r\n args.language = options.clientLanguageName;\r\n }\r\n if (options.pageName) {\r\n args.originLevel1 = options.pageName;\r\n }\r\n if (options.analyticsCustomMetadata) {\r\n _.extend(args.metaObject, options.analyticsCustomMetadata);\r\n }\r\n }\r\n });\r\n if (this.options.componentRefreshCallback) {\r\n this.domElement.on(Coveo.QueryEvents.deferredQuerySuccess, function () {\r\n _this.options.componentRefreshCallback();\r\n });\r\n this.domElement.on(Coveo.QueryEvents.queryError, function () {\r\n _this.options.componentRefreshCallback();\r\n });\r\n }\r\n };\r\n CoveoForSitecoreBase.prototype.isInPageEditor = function () {\r\n return this.options.isEditingInPageEditor ||\r\n this.options.isPreviewingInPageEditor ||\r\n this.options.isPreviewingInPageEditorWithSimulatedDevice;\r\n };\r\n CoveoForSitecoreBase.prototype.configureOmnibox = function (options) {\r\n this.domElement.on(Coveo.OmniboxEvents.populateOmnibox, this.generatePopulateOmniboxFunction(options));\r\n };\r\n CoveoForSitecoreBase.prototype.addContextToQuery = function (queryBuilder) {\r\n var _this = this;\r\n if (typeof (queryBuilder.context) === \"undefined\") {\r\n queryBuilder.context = {};\r\n }\r\n Object.keys(this.options.userContext).map(function (key) {\r\n return {\r\n key: key,\r\n value: _this.options.userContext[key]\r\n };\r\n }).filter(function (pair) {\r\n return pair.value !== \"\";\r\n }).forEach(function (pair) {\r\n queryBuilder.context[pair.key] = pair.value;\r\n });\r\n };\r\n CoveoForSitecoreBase.prototype.getOptionsWithTabExternalContent = function (currentTabId) {\r\n var filterExpressionOptions = _.extend({}, this.options);\r\n if (typeof (currentTabId) !== \"undefined\" && this.options.hasOwnProperty(currentTabId)) {\r\n var tabOptions = this.options[currentTabId];\r\n filterExpressionOptions.externalSourcesFromCurrentTab = tabOptions.externalSources;\r\n filterExpressionOptions.externalCollectionsFromCurrentTab = tabOptions.externalCollections;\r\n }\r\n return filterExpressionOptions;\r\n };\r\n CoveoForSitecoreBase.prototype.generatePopulateOmniboxFunction = function (options) {\r\n var _this = this;\r\n var queryController = Coveo.get(this.element).queryController;\r\n return function (e, populateOmniboxObject) {\r\n _this.omniboxResultListHandler.populateOmniboxResultList(populateOmniboxObject, options, queryController);\r\n };\r\n };\r\n CoveoForSitecoreBase.prototype.getDomElementsMatchingSelector = function (querySelector) {\r\n return _.map(document.querySelectorAll(querySelector), function (element) {\r\n return Coveo.$$(element);\r\n });\r\n };\r\n return CoveoForSitecoreBase;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = CoveoForSitecoreBase;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/CoveoForSitecoreBase.js\n// module id = 4\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_5__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"Coveo\"\n// module id = 5\n// module chunks = 0","\"use strict\";\r\nvar Logger = (function () {\r\n function Logger(enableClientSideLogging) {\r\n this.enableClientSideLogging = enableClientSideLogging;\r\n }\r\n Logger.prototype.log = function (message) {\r\n if (this.enableClientSideLogging) {\r\n console.log([\"TRACE\", \"Coveo for Sitecore\"].concat(message));\r\n }\r\n };\r\n return Logger;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = Logger;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Logger.js\n// module id = 6\n// module chunks = 0","\"use strict\";\r\nvar DefaultSortHandler = (function () {\r\n function DefaultSortHandler(defaultSortOptions) {\r\n this.fieldSortType = \"Field\";\r\n this.defaultSortOptions = defaultSortOptions;\r\n }\r\n DefaultSortHandler.prototype.addSortCriteriaToQuery = function (queryBuilder) {\r\n queryBuilder.sortCriteria = this.defaultSortOptions.defaultSortCriteriaLowercase;\r\n if (this.defaultSortOptions.defaultSortType === this.fieldSortType) {\r\n queryBuilder.sortField = this.defaultSortOptions.defaultSortField;\r\n }\r\n };\r\n return DefaultSortHandler;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = DefaultSortHandler;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Sorts/DefaultSortHandler.js\n// module id = 7\n// module chunks = 0","\"use strict\";\r\nvar SearchExpressionsHelper_1 = require(\"./SearchExpressionsHelper\");\r\nvar FilterExpressionHelper_1 = require(\"./FilterExpressionHelper\");\r\nvar ExpressionHelperUtilities_1 = require(\"./ExpressionHelperUtilities\");\r\nvar ExpressionsHelper = (function () {\r\n function ExpressionsHelper(filterExpressionHelper, searchExpressionHelper) {\r\n var expressionHelperUtilities = new ExpressionHelperUtilities_1.default();\r\n this.filterExpressionHelper = filterExpressionHelper || new FilterExpressionHelper_1.default(expressionHelperUtilities);\r\n this.searchExpressionHelper = searchExpressionHelper || new SearchExpressionsHelper_1.default(expressionHelperUtilities);\r\n }\r\n ExpressionsHelper.prototype.getFilterExpression = function (options) {\r\n var expression = this.filterExpressionHelper.getContextFilterExpressions(options);\r\n return this.filterExpressionHelper.appendExternalContentToExpression(expression, options);\r\n };\r\n ExpressionsHelper.prototype.getSearchExpression = function (options) {\r\n var expressions = [\r\n this.searchExpressionHelper.getSourcesAndCollectionsExpression(options, options, options),\r\n this.searchExpressionHelper.getSearchFilterExpression(options, options),\r\n this.searchExpressionHelper.getSearchBoostExpression(options)\r\n ];\r\n return expressions.filter(function (expression) { return expression !== \"\"; }).join(\" \");\r\n };\r\n ;\r\n return ExpressionsHelper;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = ExpressionsHelper;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Rules/ExpressionsHelper.js\n// module id = 8\n// module chunks = 0","\"use strict\";\r\nvar SearchExpressionHelper = (function () {\r\n function SearchExpressionHelper(expressionHelperUtilities) {\r\n this.utilities = expressionHelperUtilities;\r\n }\r\n SearchExpressionHelper.prototype.getSourcesAndCollectionsExpression = function (collectionsOptions, sourcesOptions, externalContentFromCurrentTab) {\r\n var newExpression;\r\n var sourcesExpression = this.getSourcesExpression(sourcesOptions, externalContentFromCurrentTab);\r\n var externalCollections = this.getAllExternalCollections(collectionsOptions, externalContentFromCurrentTab);\r\n if (externalCollections.length > 0) {\r\n var externalCollectionsExpression = this.utilities.getExternalCollectionsExpression(externalCollections);\r\n newExpression = \"(\" + sourcesExpression + \" OR \" + externalCollectionsExpression + \")\";\r\n }\r\n else {\r\n newExpression = sourcesExpression;\r\n }\r\n return newExpression;\r\n };\r\n SearchExpressionHelper.prototype.getSearchFilterExpression = function (options, externalContentFromCurrentTab) {\r\n var expressions = [options.filterExpression];\r\n if (externalContentFromCurrentTab.externalSourcesFromCurrentTab.length > 0) {\r\n expressions.push(this.utilities.getExternalSourcesExpression(externalContentFromCurrentTab.externalSourcesFromCurrentTab));\r\n }\r\n if (externalContentFromCurrentTab.externalCollectionsFromCurrentTab.length > 0) {\r\n expressions.push(this.utilities.getExternalCollectionsExpression(externalContentFromCurrentTab.externalCollectionsFromCurrentTab));\r\n }\r\n return expressions.join(\" OR \");\r\n };\r\n SearchExpressionHelper.prototype.getSearchBoostExpression = function (options) {\r\n return options.boostExpressions;\r\n };\r\n SearchExpressionHelper.prototype.getSourcesExpression = function (sourcesExpressionOptions, externalContentFromCurrentTab) {\r\n var sources = [];\r\n if (this.utilities.isDefined(sourcesExpressionOptions.indexSourceName)) {\r\n sources.push(sourcesExpressionOptions.indexSourceName);\r\n }\r\n if (sourcesExpressionOptions.externalSources.length > 0) {\r\n sources.push.apply(sources, sourcesExpressionOptions.externalSources);\r\n }\r\n if (externalContentFromCurrentTab.externalSourcesFromCurrentTab.length > 0) {\r\n sources.push.apply(sources, externalContentFromCurrentTab.externalSourcesFromCurrentTab);\r\n }\r\n return this.utilities.getFilterExpression(\"@syssource\", sources);\r\n };\r\n SearchExpressionHelper.prototype.getAllExternalCollections = function (externalCollectionsOptions, externalContentFromCurrentTabOptions) {\r\n var externalSources = [];\r\n externalSources.push.apply(externalSources, externalCollectionsOptions.externalCollections);\r\n externalSources.push.apply(externalSources, externalContentFromCurrentTabOptions.externalCollectionsFromCurrentTab);\r\n return externalSources;\r\n };\r\n return SearchExpressionHelper;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = SearchExpressionHelper;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Rules/SearchExpressionsHelper.js\n// module id = 9\n// module chunks = 0","\"use strict\";\r\nvar FilterExpressionHelper = (function () {\r\n function FilterExpressionHelper(expressionHelperUtilities) {\r\n this.utilities = expressionHelperUtilities;\r\n }\r\n FilterExpressionHelper.prototype.getFilterExpressions = function (options) {\r\n var filterExpressions = this.getContextFilterExpressions(options);\r\n var filterExpressionsWithExternalContent = this.appendExternalContentToExpression(filterExpressions, options);\r\n return filterExpressionsWithExternalContent;\r\n };\r\n ;\r\n FilterExpressionHelper.prototype.getContextFilterExpressions = function (options) {\r\n var expression = \"\";\r\n var filterExpressions = [];\r\n if (options.filterResultsOnCurrentCulture) {\r\n var clientLanguageFilterExpression = this.utilities.getFilterExpression(options.clientLanguageFieldName, options.clientLanguageName);\r\n filterExpressions.push(clientLanguageFilterExpression);\r\n }\r\n if (options.filterResultOnLatestVersion) {\r\n var latestVersionFilterExpression = this.utilities.getFilterExpression(options.latestVersionFieldName, \"1\");\r\n filterExpressions.push(latestVersionFilterExpression);\r\n }\r\n if (filterExpressions.length > 0) {\r\n var filterExpression = filterExpressions.join(\" \").replace(/^\\s+|\\s+$/g, \"\");\r\n expression = \"(\" + filterExpression + \")\";\r\n }\r\n return expression;\r\n };\r\n FilterExpressionHelper.prototype.appendExternalContentToExpression = function (expression, options) {\r\n var newExpression = expression;\r\n if (this.hasExternalContentSpecified(options)) {\r\n var expressions = [expression];\r\n var externalSources = this.getAllExternalSources(options, options);\r\n if (externalSources.length > 0) {\r\n expressions.push(this.utilities.getExternalSourcesExpression(externalSources));\r\n }\r\n var externalCollections = this.getAllExternalCollections(options, options);\r\n if (externalCollections.length > 0) {\r\n expressions.push(this.utilities.getExternalCollectionsExpression(externalCollections));\r\n }\r\n newExpression = \"(\" + expressions.join(\" OR \") + \")\";\r\n }\r\n return newExpression;\r\n };\r\n ;\r\n FilterExpressionHelper.prototype.getAllExternalSources = function (externalSourcesOptions, externalContentFromCurrentTabOptions) {\r\n var externalSources = [];\r\n externalSources.push.apply(externalSources, externalSourcesOptions.externalSources);\r\n externalSources.push.apply(externalSources, externalContentFromCurrentTabOptions.externalSourcesFromCurrentTab);\r\n return externalSources;\r\n };\r\n FilterExpressionHelper.prototype.getAllExternalCollections = function (externalCollectionsOptions, externalContentFromCurrentTabOptions) {\r\n var externalSources = [];\r\n externalSources.push.apply(externalSources, externalCollectionsOptions.externalCollections);\r\n externalSources.push.apply(externalSources, externalContentFromCurrentTabOptions.externalCollectionsFromCurrentTab);\r\n return externalSources;\r\n };\r\n FilterExpressionHelper.prototype.hasExternalContentSpecified = function (options) {\r\n return options.externalCollections.length > 0 ||\r\n options.externalSources.length > 0 ||\r\n options.externalSourcesFromCurrentTab.length > 0 ||\r\n options.externalCollectionsFromCurrentTab.length > 0;\r\n };\r\n ;\r\n return FilterExpressionHelper;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = FilterExpressionHelper;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Rules/FilterExpressionHelper.js\n// module id = 10\n// module chunks = 0","\"use strict\";\r\nvar ExpressionHelperUtilities = (function () {\r\n function ExpressionHelperUtilities() {\r\n }\r\n ExpressionHelperUtilities.prototype.getFilterExpression = function (fieldName, fieldValue) {\r\n if (typeof (fieldValue) == \"string\") {\r\n return fieldName + \"==\\\"\" + fieldValue + \"\\\"\";\r\n }\r\n else {\r\n var fieldValues = fieldValue;\r\n if (fieldValues.length > 0) {\r\n return fieldName + \"==(\\\"\" + fieldValues.join('\",\"') + \"\\\")\";\r\n }\r\n else {\r\n return \"\";\r\n }\r\n }\r\n };\r\n ;\r\n ExpressionHelperUtilities.prototype.getExternalCollectionsExpression = function (externalCollections) {\r\n return this.getFilterExpression(\"@syscollection\", externalCollections);\r\n };\r\n ExpressionHelperUtilities.prototype.getExternalSourcesExpression = function (externalSources) {\r\n return this.getFilterExpression(\"@syssource\", externalSources);\r\n };\r\n ExpressionHelperUtilities.prototype.isDefined = function (property) {\r\n return typeof property !== \"undefined\";\r\n };\r\n return ExpressionHelperUtilities;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = ExpressionHelperUtilities;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Rules/ExpressionHelperUtilities.js\n// module id = 11\n// module chunks = 0","\"use strict\";\r\nvar Coveo = require(\"coveo-search-ui\");\r\nvar SearchEndpointHelper = (function () {\r\n function SearchEndpointHelper() {\r\n }\r\n SearchEndpointHelper.initializeEndpoint = function (options) {\r\n Coveo.SearchEndpoint.endpoints[\"default\"] = new Coveo.SearchEndpoint({\r\n restUri: options.restEndpointUri,\r\n queryStringArguments: { 'sitecoreItemUri': options.sitecoreItemUri, 'siteName': options.siteName }\r\n });\r\n };\r\n return SearchEndpointHelper;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = SearchEndpointHelper;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/SearchEndpointHelper.js\n// module id = 12\n// module chunks = 0","\"use strict\";\r\nvar Coveo = require(\"coveo-search-ui\");\r\nvar OmniboxResultListHandler = (function () {\r\n function OmniboxResultListHandler() {\r\n }\r\n OmniboxResultListHandler.getOmniboxDataRowIndex = function () {\r\n this.omniboxDataRowIndexCounter = this.omniboxDataRowIndexCounter + 1;\r\n return this.omniboxDataRowIndexCounter;\r\n };\r\n OmniboxResultListHandler.prototype.onOmniboxRowClicked = function (result) {\r\n window.location.href = result.clickUri;\r\n };\r\n OmniboxResultListHandler.prototype.buildOmniboxContent = function (results, options) {\r\n var _this = this;\r\n var id = options.id ? options.id : options.resultTemplateId;\r\n var templateElement = document.getElementById(id);\r\n var template = new Coveo.UnderscoreTemplate(templateElement);\r\n var resultContainer = this.getResultContainer(options.headerTitle);\r\n var content = Coveo.$$(\"div\");\r\n content.append(resultContainer.el);\r\n results.forEach(function (result) {\r\n var oneRowOfContent = template.instantiateToElement(result);\r\n var rowElement = Coveo.$$(oneRowOfContent);\r\n rowElement.addClass(\"CoveoResult coveo-omnibox-selectable\");\r\n rowElement.on(\"click keyboardSelect\", function () {\r\n _this.onOmniboxRowClicked(result);\r\n });\r\n content.append(oneRowOfContent);\r\n });\r\n return content.el;\r\n };\r\n OmniboxResultListHandler.prototype.populateOmniboxResultList = function (populateOmniboxObject, options, queryController) {\r\n var _this = this;\r\n var queryBuilder = queryController.createQueryBuilder(options);\r\n if (options.queryExpression && typeof (options.queryExpression) === \"string\") {\r\n queryBuilder.advancedExpression.add(options.queryExpression);\r\n }\r\n queryBuilder.numberOfResults = options.numberOfResults;\r\n var query = queryBuilder.build();\r\n var promise = this.executeSearchQuery(query)\r\n .then(function (response) {\r\n if (response.totalCount > 0) {\r\n var elementToReturn = _this.buildOmniboxContent(response.results, options);\r\n var objectToReturn = {\r\n zIndex: options.omniboxDataRowIndex,\r\n element: elementToReturn\r\n };\r\n return objectToReturn;\r\n }\r\n else {\r\n return { element: undefined };\r\n }\r\n });\r\n populateOmniboxObject.rows.push({ deferred: promise });\r\n };\r\n OmniboxResultListHandler.prototype.executeSearchQuery = function (query) {\r\n return Coveo.SearchEndpoint.endpoints[\"default\"].search(query);\r\n };\r\n OmniboxResultListHandler.prototype.getResultContainer = function (captionText) {\r\n var resultContainer = Coveo.$$(\"div\");\r\n resultContainer.addClass(\"coveo-omnibox-result-list-header\");\r\n resultContainer.append(this.getIcon().el);\r\n resultContainer.append(this.getCaption(captionText).el);\r\n return resultContainer;\r\n };\r\n OmniboxResultListHandler.prototype.getIcon = function () {\r\n var iconResultList = Coveo.$$(\"span\");\r\n iconResultList.addClass(\"coveo-icon-omnibox-result-list\");\r\n return iconResultList;\r\n };\r\n OmniboxResultListHandler.prototype.getCaption = function (captionText) {\r\n var caption = Coveo.$$(\"span\");\r\n caption.addClass(\"coveo-caption\");\r\n caption.el.textContent = captionText;\r\n return caption;\r\n };\r\n OmniboxResultListHandler.omniboxDataRowIndexCounter = 0;\r\n return OmniboxResultListHandler;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = OmniboxResultListHandler;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/OmniboxResultList/OmniboxResultListHandler.js\n// module id = 13\n// module chunks = 0","\"use strict\";\r\nvar Coveo = require(\"coveo-search-ui\");\r\nvar Utilities_1 = require(\"../Utilities\");\r\nvar EndpointCaller_1 = require(\"../EndpointCaller\");\r\nvar SitecoreAnalyticsHandler = (function () {\r\n function SitecoreAnalyticsHandler(options, endpointCaller) {\r\n this.options = options;\r\n this.endpointCaller = endpointCaller || new EndpointCaller_1.default();\r\n }\r\n SitecoreAnalyticsHandler.prototype.registerSitecoreAnalytics = function (domElement, windowReference) {\r\n var _this = this;\r\n (windowReference || window).onbeforeunload = function () {\r\n Coveo.Defer.flush();\r\n };\r\n domElement.on(Coveo.AnalyticsEvents.searchEvent, function (e, args) {\r\n _this.postAnalytics(\"searches\", \"searchEvents\", args.searchEvents);\r\n });\r\n domElement.on(Coveo.AnalyticsEvents.documentViewEvent, function (e, args) {\r\n _this.postAnalytics(\"documentViews\", \"documentViewEvents\", args.documentViewEvent);\r\n });\r\n domElement.on(Coveo.AnalyticsEvents.customEvent, function (e, args) {\r\n _this.postAnalytics(\"custom\", \"customEvents\", args.customEvent);\r\n });\r\n };\r\n SitecoreAnalyticsHandler.prototype.postAnalytics = function (eventAction, eventType, eventData) {\r\n var _this = this;\r\n var parsedEventData = [];\r\n if (typeof (eventData) !== \"undefined\") {\r\n parsedEventData = parsedEventData.concat(eventData);\r\n }\r\n parsedEventData.filter(function (data) {\r\n return typeof (data) !== \"undefined\";\r\n }).forEach(function (data) {\r\n data.sitecoreItemId = _this.options.sitecoreItemId;\r\n });\r\n var postData = {};\r\n postData[eventType] = JSON.stringify(parsedEventData);\r\n this.endpointCaller.sendPost(Utilities_1.default.appendTrailingSlash(this.options.analyticsEndpointUri) + eventAction, postData);\r\n };\r\n return SitecoreAnalyticsHandler;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = SitecoreAnalyticsHandler;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Analytics/SitecoreAnalyticsHandler.js\n// module id = 14\n// module chunks = 0","\"use strict\";\r\nvar Utilities = (function () {\r\n function Utilities() {\r\n }\r\n Utilities.appendTrailingSlash = function (url) {\r\n return url.charAt(url.length - 1) === \"/\" ? url : url + \"/\";\r\n };\r\n return Utilities;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = Utilities;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Utilities.js\n// module id = 15\n// module chunks = 0","\"use strict\";\r\nvar Coveo = require(\"coveo-search-ui\");\r\nvar EndpointCaller = (function () {\r\n function EndpointCaller(endpointCaller) {\r\n this.endpointCaller = endpointCaller || new Coveo.EndpointCaller();\r\n }\r\n EndpointCaller.prototype.sendPost = function (url, postData) {\r\n var callOptions = {\r\n errorsAsSuccess: false,\r\n method: \"POST\",\r\n queryString: [],\r\n requestData: postData,\r\n url: url,\r\n responseType: \"text\",\r\n requestDataType: \"application/json\"\r\n };\r\n return this.endpointCaller.call(callOptions);\r\n };\r\n return EndpointCaller;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = EndpointCaller;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/EndpointCaller.js\n// module id = 16\n// module chunks = 0","\"use strict\";\r\nvar TabsBinding = (function () {\r\n function TabsBinding() {\r\n var _this = this;\r\n this.bindings = {};\r\n this.getElementBinding = function (elementId) {\r\n return {\r\n elementId: elementId,\r\n document: document.getElementById(elementId),\r\n binding: _this.bindings[elementId]\r\n };\r\n };\r\n this.elementFound = function (elementBinding) {\r\n var elementFound = typeof (elementBinding.document) !== \"undefined\" && elementBinding.document != null;\r\n if (!elementFound) {\r\n console.error(\"The element with the ID '\" + elementBinding.elementId + \"' was not found. Ensure the element exists in the DOM.\");\r\n }\r\n return elementFound;\r\n };\r\n this.initBinding = function (itemId) {\r\n if (!_this.bindings.hasOwnProperty(itemId)) {\r\n _this.bindings[itemId] = {\r\n tabNot: []\r\n };\r\n }\r\n return _this.bindings[itemId];\r\n };\r\n this.applyBinding = function (elementBinding) {\r\n _this.addExcludeFromTabTag(elementBinding.document, elementBinding.binding.tabNot);\r\n };\r\n this.addExcludeFromTabTag = function (element, bindings) {\r\n if (bindings.length > 0) {\r\n element.setAttribute(\"data-tab-not\", bindings.join(\",\"));\r\n }\r\n };\r\n }\r\n TabsBinding.prototype.excludeItemsIdsInTab = function (elementIds, tabId) {\r\n elementIds.map(this.initBinding, this).forEach(function (binding) {\r\n binding.tabNot.push(tabId);\r\n });\r\n };\r\n TabsBinding.prototype.applyBindings = function () {\r\n Object.keys(this.bindings)\r\n .map(this.getElementBinding)\r\n .filter(this.elementFound)\r\n .forEach(this.applyBinding);\r\n };\r\n return TabsBinding;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = TabsBinding;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Tabs/TabsBinding.js\n// module id = 17\n// module chunks = 0","\"use strict\";\r\nvar __extends = (this && this.__extends) || function (d, b) {\r\n for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n};\r\nvar Coveo = require(\"coveo-search-ui\");\r\nvar CoveoForSitecoreBase_1 = require(\"./CoveoForSitecoreBase\");\r\nvar Searchbox = (function (_super) {\r\n __extends(Searchbox, _super);\r\n function Searchbox(searchComponent, searchBoxPluginOptions, defaultSearchBoxPluginOptions) {\r\n _super.call(this, searchComponent, searchBoxPluginOptions, defaultSearchBoxPluginOptions);\r\n this.searchBoxOptions = _.extend({}, defaultSearchBoxPluginOptions, searchBoxPluginOptions);\r\n }\r\n Searchbox.prototype.initialize = function () {\r\n var _this = this;\r\n this.logger.log(\"Initializing searchbox.\");\r\n this.initializeSearchOptions();\r\n if (!this.options.isInitialized) {\r\n this.domElement.on(Coveo.QueryEvents.buildingQuery, function (e, args) {\r\n var expression = _this.expressionsHelper.getSearchExpression(_this.searchBoxOptions);\r\n args.queryBuilder.advancedExpression.add(expression);\r\n });\r\n }\r\n Coveo.initSearchbox(this.element, this.searchBoxOptions.searchRedirectionUrl, this.searchBoxOptions);\r\n if (this.searchBoxOptions.searchRedirectionItemName) {\r\n var searchBoxComponent = Coveo.get(this.element, Coveo.SearchInterface);\r\n if (searchBoxComponent) {\r\n searchBoxComponent.componentOptionsModel.set(\"searchHub\", this.searchBoxOptions.searchRedirectionItemName);\r\n }\r\n }\r\n this.doPostInitializationActions();\r\n };\r\n return Searchbox;\r\n}(CoveoForSitecoreBase_1.default));\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = Searchbox;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Searchbox.js\n// module id = 18\n// module chunks = 0","\"use strict\";\r\nvar UserContextHandler = (function () {\r\n function UserContextHandler() {\r\n this.context = {};\r\n }\r\n UserContextHandler.prototype.initializeContext = function (context) {\r\n this.context = this.replaceInvalidCharacterInContext(context);\r\n return this;\r\n };\r\n UserContextHandler.prototype.setContext = function (key, value) {\r\n this.context[this.replaceInvalidCharacters(key)] = value;\r\n return this;\r\n };\r\n UserContextHandler.prototype.getContext = function () {\r\n return this.context;\r\n };\r\n UserContextHandler.prototype.replaceInvalidCharacterInContext = function (context) {\r\n var _this = this;\r\n var validContext = {};\r\n Object.keys(context).forEach(function (key) {\r\n validContext[_this.replaceInvalidCharacters(key)] = context[key];\r\n });\r\n return validContext;\r\n };\r\n UserContextHandler.prototype.replaceInvalidCharacters = function (key) {\r\n if (typeof key === \"string\") {\r\n return key.replace(UserContextHandler.invalidCharacters, \"_\");\r\n }\r\n else {\r\n console.error(\"The user context key '{key}' is not a string.\");\r\n return \"\";\r\n }\r\n };\r\n UserContextHandler.invalidCharacters = /[^A-Za-z0-9_]/ig;\r\n return UserContextHandler;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = UserContextHandler;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./UserContext/UserContextHandler.js\n// module id = 19\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_20__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"CoveoForSitecoreUserContext\"\n// module id = 20\n// module chunks = 0","\"use strict\";\r\nvar Coveo = require(\"coveo-search-ui\");\r\nvar DefaultSortHandler_1 = require(\"../Sorts/DefaultSortHandler\");\r\nvar SitecoreAnalyticsHandler_1 = require(\"../Analytics/SitecoreAnalyticsHandler\");\r\nvar ExpressionHelperUtilities_1 = require(\"../Rules/ExpressionHelperUtilities\");\r\nvar CoveoForSitecoreRecommendations = (function () {\r\n function CoveoForSitecoreRecommendations() {\r\n }\r\n CoveoForSitecoreRecommendations.prototype.initRelatedQuery = function (element, searchInterfaceElement, userContext, options) {\r\n var expressionHelperUtilities = new ExpressionHelperUtilities_1.default();\r\n var defaultSortHandler = new DefaultSortHandler_1.default(options);\r\n var domElement = Coveo.$$(element);\r\n domElement.on(Coveo.QueryEvents.buildingQuery, function (event, args) {\r\n defaultSortHandler.addSortCriteriaToQuery(args.queryBuilder);\r\n if (options.filterResultsOnCurrentCulture) {\r\n var languageFilterExpression = expressionHelperUtilities.getFilterExpression(options.clientLanguageFieldName, options.clientLanguageName);\r\n args.queryBuilder.constantExpression.add(languageFilterExpression);\r\n }\r\n });\r\n if (options && options.sendToSitecoreAnalytics) {\r\n var sitecoreAnalyticsHandler = new SitecoreAnalyticsHandler_1.default(options);\r\n sitecoreAnalyticsHandler.registerSitecoreAnalytics(domElement);\r\n }\r\n Coveo.initRecommendation(element, searchInterfaceElement, userContext, options);\r\n };\r\n CoveoForSitecoreRecommendations.prototype.initRecommendations = function (element, userContext) {\r\n Coveo.initRecommendation(element, null, userContext);\r\n };\r\n return CoveoForSitecoreRecommendations;\r\n}());\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.default = CoveoForSitecoreRecommendations;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/Recommendations/CoveoForSitecoreRecommendationsBase.js\n// module id = 21\n// module chunks = 0","\"use strict\";\r\nvar __extends = (this && this.__extends) || function (d, b) {\r\n for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n};\r\nvar Coveo = require(\"coveo-search-ui\");\r\nvar OmniboxResultListHandler_1 = require(\"./OmniboxResultListHandler\");\r\nvar Component = Coveo.Component;\r\nvar OmniboxResultList = (function (_super) {\r\n __extends(OmniboxResultList, _super);\r\n function OmniboxResultList(element, options, bindings) {\r\n _super.call(this, element, OmniboxResultList.ID, bindings);\r\n this.element = element;\r\n this.options = options;\r\n this.omniboxResultListHandler = new OmniboxResultListHandler_1.default();\r\n this.options = Coveo.ComponentOptions.initComponentOptions(element, OmniboxResultList, options);\r\n if (bindings) {\r\n this.initializeOmniboxDataRowIndex(bindings);\r\n }\r\n this.bind.onRootElement(Coveo.OmniboxEvents.populateOmnibox, this.populateOmnibox);\r\n this.bindEnterToSearchButton();\r\n }\r\n OmniboxResultList.prototype.bindEnterToSearchButton = function () {\r\n var queryBoxes = document.querySelectorAll(\".CoveoSearchbox\");\r\n _.map(queryBoxes, function (queryBox) {\r\n return {\r\n input: queryBox.querySelector(\"input\"),\r\n button: queryBox.querySelector(\".CoveoSearchButton\")\r\n };\r\n }).filter(function (queryBoxElements) {\r\n return queryBoxElements.button !== null && queryBoxElements.input !== null;\r\n }).forEach(function (queryBoxElements) {\r\n queryBoxElements.input.addEventListener(\"keyup\", function (event) {\r\n if (event.keyCode === 13) {\r\n queryBoxElements.button.click();\r\n }\r\n });\r\n });\r\n };\r\n OmniboxResultList.prototype.populateOmnibox = function (populateOmniboxObject) {\r\n this.omniboxResultListHandler.populateOmniboxResultList(populateOmniboxObject, this.options, this.queryController);\r\n };\r\n OmniboxResultList.prototype.initializeOmniboxDataRowIndex = function (bindings) {\r\n var omniboxResultList = document.getElementsByClassName(\"CoveoForSitecoreOmniboxResultList\")[0];\r\n if (!bindings.searchInterface.options.originalOptionsObject.keepOmniboxSuggestionsProvidersDefaultOrdering) {\r\n this.options.omniboxDataRowIndex = 51 + Coveo.$$(omniboxResultList).children().length - bindings.searchInterface.options.originalOptionsObject.omniboxDataRowIndexCounter;\r\n bindings.searchInterface.options.originalOptionsObject.omniboxDataRowIndexCounter++;\r\n }\r\n };\r\n OmniboxResultList.ID = \"ForSitecoreOmniboxResultList\";\r\n OmniboxResultList.options = {\r\n headerTitle: Coveo.ComponentOptions.buildStringOption(),\r\n queryExpression: Coveo.ComponentOptions.buildStringOption(),\r\n numberOfResults: Coveo.ComponentOptions.buildNumberOption({ defaultValue: 10, min: 1 }),\r\n omniboxDataRowIndex: Coveo.ComponentOptions.buildNumberOption({ defaultValue: 51, min: 16 }),\r\n resultTemplateId: Coveo.ComponentOptions.buildStringOption()\r\n };\r\n return OmniboxResultList;\r\n}(Component));\r\nexports.OmniboxResultList = OmniboxResultList;\r\nCoveo.Initialization.registerAutoCreateComponent(OmniboxResultList);\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Base/OmniboxResultList/OmniboxResultList.js\n// module id = 22\n// module chunks = 0","\"use strict\";\r\nvar __extends = (this && this.__extends) || function (d, b) {\r\n for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n};\r\nvar coveo_search_ui_1 = require(\"coveo-search-ui\");\r\nvar EndpointCaller_1 = require(\"../Base/EndpointCaller\");\r\nvar GOOGLE_PROVIDER_VALUE = \"google\";\r\nvar SITECORE_PROVIDER_VALUE = \"sitecoreGeolocation\";\r\nvar BROWSER_PROVIDER_VALUE = \"browser\";\r\nvar CUSTOM_PROVIDER_VALUE = \"custom\";\r\nvar GOOGLE_MAP_BASE_URL = \"https://www.googleapis.com/geolocation/v1/geolocate?key=\";\r\nvar CoveoForSitecoreDistanceResources = (function (_super) {\r\n __extends(CoveoForSitecoreDistanceResources, _super);\r\n function CoveoForSitecoreDistanceResources(element, options, bindings) {\r\n _super.call(this, element, CoveoForSitecoreDistanceResources.ID, bindings);\r\n this.element = element;\r\n this.options = options;\r\n this.bindings = bindings;\r\n this.providerWarningDisabled = false;\r\n this.options = coveo_search_ui_1.ComponentOptions.initComponentOptions(element, CoveoForSitecoreDistanceResources, options);\r\n this.endpointCaller = new EndpointCaller_1.default();\r\n if (this.options.geolocationProviders) {\r\n this.options.geolocationProviders = this.options.geolocationProviders.reverse();\r\n this.tryNextGeolocationProvider();\r\n }\r\n }\r\n CoveoForSitecoreDistanceResources.prototype.setDistance = function (latitude, longitude) {\r\n this.latitude = latitude;\r\n this.longitude = longitude;\r\n this.registerDistanceQuery();\r\n this.queryController.executeQuery();\r\n };\r\n CoveoForSitecoreDistanceResources.prototype.setCoordinateFromGoogle = function () {\r\n var _this = this;\r\n if (!!this.options.googleApiKey) {\r\n var postData = {};\r\n var baseMapsUrl = GOOGLE_MAP_BASE_URL + this.options.googleApiKey;\r\n var geolocationResponse = this.endpointCaller.sendPost(baseMapsUrl, postData);\r\n geolocationResponse.then(function (positionData) {\r\n var location = positionData.data.location;\r\n if (!!location) {\r\n _this.setDistance(location.lat, location.lng);\r\n }\r\n else {\r\n _this.tryNextGeolocationProvider();\r\n }\r\n });\r\n }\r\n else {\r\n this.logger.error(GOOGLE_PROVIDER_VALUE + \" provider was selected, but \\\"googleApiKey\\\" option was not set.\");\r\n this.tryNextGeolocationProvider();\r\n }\r\n };\r\n CoveoForSitecoreDistanceResources.prototype.setDefaultCoordinates = function () {\r\n if (!this.isNullOrEmpty(this.options.defaultLatitude) && !this.isNullOrEmpty(this.options.defaultLongitude)) {\r\n this.setDistance(this.options.defaultLatitude, this.options.defaultLongitude);\r\n }\r\n else {\r\n this.logger.error(SITECORE_PROVIDER_VALUE + \" provider was selected, but \\\"defaultLongitude\\\" and \\\"defaultLatitude\\\" options were not set.\");\r\n this.tryNextGeolocationProvider();\r\n }\r\n };\r\n CoveoForSitecoreDistanceResources.prototype.setCoordinatesFromBrowser = function () {\r\n var _this = this;\r\n navigator.geolocation.getCurrentPosition(function (position) {\r\n _this.setDistance(position.coords.latitude, position.coords.longitude);\r\n }, function (err) {\r\n _this.tryNextGeolocationProvider();\r\n });\r\n };\r\n CoveoForSitecoreDistanceResources.prototype.registerDistanceQuery = function () {\r\n var _this = this;\r\n this.bind.onRootElement(Coveo.QueryEvents.buildingQuery, function (args) {\r\n var geoQueryFunction = {\r\n 'function': _this.getConvertedUnitsFunction(\"dist(\" + _this.options.latitudeField + \", \" + _this.options.longitudeField + \", \" + _this.latitude + \", \" + _this.longitude + \")\"),\r\n 'fieldName': _this.options.distanceField\r\n };\r\n if (args && args.queryBuilder) {\r\n args.queryBuilder.queryFunctions.push(geoQueryFunction);\r\n _this.enableDistanceComponents();\r\n }\r\n });\r\n };\r\n CoveoForSitecoreDistanceResources.prototype.enableDistanceComponents = function () {\r\n var _this = this;\r\n var distanceComponents = document.getElementsByClassName(this.options.disabledDistanceCssClass);\r\n var elements = [];\r\n for (var i = 0, length_1 = distanceComponents.length; i < length_1; i++) {\r\n elements.push(distanceComponents.item(i));\r\n }\r\n elements.forEach(function (element) {\r\n try {\r\n element.classList.remove(_this.options.disabledDistanceCssClass);\r\n Coveo.get(element).enable();\r\n }\r\n catch (exception) {\r\n _this.logger.error(\"Could not re-enable distance component:\", exception, element);\r\n }\r\n });\r\n };\r\n CoveoForSitecoreDistanceResources.prototype.getConvertedUnitsFunction = function (queryFunction) {\r\n return queryFunction + \"/\" + this.options.unitConversionFactor;\r\n };\r\n CoveoForSitecoreDistanceResources.prototype.tryNextGeolocationProvider = function () {\r\n var currentGeolocationProvider = this.options.geolocationProviders.pop();\r\n if (currentGeolocationProvider == null) {\r\n if (!this.providerWarningDisabled) {\r\n console.warn(\"None of the mentioned geolocation providers were able to provide the user's coordinates. The distance field will not be calculated and the distance components will be disabled until the next call to \\\"setDistance\\\".\");\r\n }\r\n }\r\n else {\r\n switch (currentGeolocationProvider) {\r\n case GOOGLE_PROVIDER_VALUE:\r\n this.setCoordinateFromGoogle();\r\n break;\r\n case CUSTOM_PROVIDER_VALUE:\r\n this.providerWarningDisabled = true;\r\n break;\r\n case SITECORE_PROVIDER_VALUE:\r\n this.setDefaultCoordinates();\r\n break;\r\n case BROWSER_PROVIDER_VALUE:\r\n this.setCoordinatesFromBrowser();\r\n break;\r\n default:\r\n console.warn(\"Invalid geolocation provider: '\" + currentGeolocationProvider + \"'.\");\r\n this.tryNextGeolocationProvider();\r\n }\r\n }\r\n };\r\n CoveoForSitecoreDistanceResources.prototype.isNullOrEmpty = function (value) {\r\n return value === null || typeof (value) === \"undefined\";\r\n };\r\n CoveoForSitecoreDistanceResources.ID = \"ForSitecoreDistanceResources\";\r\n CoveoForSitecoreDistanceResources.options = {\r\n distanceField: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n latitudeField: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n longitudeField: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n defaultLatitude: coveo_search_ui_1.ComponentOptions.buildNumberOption(),\r\n defaultLongitude: coveo_search_ui_1.ComponentOptions.buildNumberOption(),\r\n geolocationProviders: coveo_search_ui_1.ComponentOptions.buildListOption(),\r\n googleApiKey: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n unitType: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n unitConversionFactor: coveo_search_ui_1.ComponentOptions.buildStringOption(),\r\n disabledDistanceCssClass: coveo_search_ui_1.ComponentOptions.buildStringOption({\r\n defaultValue: \"coveo-distance-disabled\"\r\n })\r\n };\r\n return CoveoForSitecoreDistanceResources;\r\n}(coveo_search_ui_1.Component));\r\nexports.CoveoForSitecoreDistanceResources = CoveoForSitecoreDistanceResources;\r\ncoveo_search_ui_1.Initialization.registerAutoCreateComponent(CoveoForSitecoreDistanceResources);\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./CoveoDistanceRessources/CoveoDistanceResources.js\n// module id = 23\n// module chunks = 0","// Copyright (c) 2005-2018, Coveo Solutions Inc.\r\n\"use strict\";\r\nvar _this = this;\r\nvar PluginOptions_1 = require(\"./Base/PluginOptions\");\r\nvar CoveoForSitecoreBase_1 = require(\"./Base/CoveoForSitecoreBase\");\r\nvar TabsBinding_1 = require(\"./Base/Tabs/TabsBinding\");\r\nvar Searchbox_1 = require(\"./Base/Searchbox\");\r\nvar SearchEndpointHelper_1 = require(\"./Base/SearchEndpointHelper\");\r\nvar UserContextHandler_1 = require(\"./UserContext/UserContextHandler\");\r\nvar CoveoForSitecoreUserContext = require(\"./CoveoForSitecoreUserContext\");\r\nvar CoveoForSitecoreRecommendationsBase_1 = require(\"./Base/Recommendations/CoveoForSitecoreRecommendationsBase\");\r\nexports.OmniboxResultList = require(\"./Base/OmniboxResultList/OmniboxResultList\");\r\nexports.CoveoDistanceResources = require(\"./CoveoDistanceRessources/CoveoDistanceResources\");\r\nvar recommendations = new CoveoForSitecoreRecommendationsBase_1[\"default\"]();\r\nexports.userContext = typeof (CoveoForSitecoreUserContext) !== \"undefined\" ? CoveoForSitecoreUserContext.handler : new UserContextHandler_1[\"default\"]();\r\nexports.componentsOptions = new PluginOptions_1[\"default\"]();\r\nexports.tabsBinding = new TabsBinding_1[\"default\"]();\r\nexports.SearchEndpointHelper = SearchEndpointHelper_1[\"default\"];\r\nexports.defaults = new PluginOptions_1[\"default\"]();\r\nfunction initializeSearch(searchComponent, options) {\r\n exports.tabsBinding.applyBindings();\r\n if (!_isExistingPlugin(searchComponent)) {\r\n if (typeof (options.userContext) === \"undefined\") {\r\n options.userContext = exports.userContext.getContext();\r\n }\r\n exports.plugin = new CoveoForSitecoreBase_1[\"default\"](searchComponent, options, exports.defaults);\r\n exports.plugin.initialize();\r\n }\r\n}\r\nexports.initializeSearch = initializeSearch;\r\nfunction initializeSearchbox(searchComponent, options) {\r\n if (typeof (options.userContext) === \"undefined\") {\r\n options.userContext = exports.userContext.getContext();\r\n }\r\n exports.plugin = new Searchbox_1[\"default\"](searchComponent, options, exports.defaults);\r\n exports.plugin.initialize();\r\n}\r\nexports.initializeSearchbox = initializeSearchbox;\r\nexports.initRecommendations = function (element, userContext) {\r\n recommendations.initRecommendations(element, userContext || _this.userContext.getContext());\r\n};\r\nexports.initRelatedQuery = function (element, searchInterfaceElement, userContext, options) {\r\n recommendations.initRelatedQuery(element, searchInterfaceElement, userContext || _this.userContext.getContext(), options);\r\n};\r\nfunction _isExistingPlugin(searchComponent) {\r\n return exports.plugin && exports.plugin.element && exports.plugin.element.id === searchComponent.id;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./CoveoForSitecore.ts\n// module id = 24\n// module chunks = 0"],"sourceRoot":""}