{"version":3,"file":"hero.js?v=44f5a508e9298d07220c","mappings":"w5DAWA,IAAIA,kBAAoB,IAAIC,2DAAAA,EAAkBC,kDAAAA,EAAUC,WAAWC,MAKnE,SAASC,YAAYC,SACjB,IAAIC,OAASC,qDAAAA,EAAYC,aAAaH,SAChCI,cAAgBC,2DAAcJ,OAAOK,MAAOL,OAAOM,QAEnDC,aAAYC,cAAAA,cAAA,GACXL,eAAa,IAChBM,OAAOC,UACCA,SAASC,OAAMC,OAAA,IAAC,OAAQ,WAAaA,KAAA,OAAMC,OAAOC,QAAUC,UAAUC,SAAS,qBAAqB,IAChFC,QAAQC,QAAQ,CAChCC,QAAST,SAASU,KAAI,KAAM,CACxBC,KAAM,GACNC,OAAQ,EACRC,QAAS,EACTC,KAAM,EACNC,iBAAkB,EAClBC,YAAa,EACbC,kBAAkB,EAClBb,MAAO,GACPc,QAAS,GACTf,OAAQ,SAObV,cAAcM,OAAOC,YA+DpC,OA3Da,IAAImB,IAAI,CACjBC,GAAI,IAAM/B,QAAQgC,GAClBC,OAAQ,CAACC,gEAAAA,GACTC,WAAY,CACRC,iBAAgB,kDAChBC,aAAY,kDACZC,SAAQ,kDACRC,aAAY,iDACZC,QAAO,kDACPC,4BAA2B,8EAC3BC,qBAAoB,uEACpBC,wBAAuB,0EACvBC,OAAM,qDACNC,YAAWA,kDAAAA,IAEfC,KAAM,CACFC,QAASnD,kDAAAA,EAAUoD,QAAQlD,KAC3BmD,wBAAyBC,UAAUC,6BACnCC,eAAe,EACf5C,aACA6C,YAAa,GACbC,aAAcrD,OAAOqD,aACrBC,YAAa,KACbC,gBAAiB,cACjBC,aAAc,KACdC,cAAezD,OAAOyD,eAE1BC,QAAS,CACLC,eAAAA,CAAgBC,QACZC,KAAKb,wBAAwBjD,QAAQgC,IACrC8B,KAAKV,eAAgB,CAClC,EACSW,OAAQ,WACJD,KAAKE,MAAMC,YAAYJ,OAAOK,GAAI,IACtC,EACAC,OAAQ,WACJL,KAAKE,MAAMC,YAAYJ,OAAOK,GAAI,IACtC,EACAE,sBAAuB,WACnBN,KAAKL,aAAeK,KAAKO,aAAe,CAAC,QACzCP,KAAKL,aAAaa,KAAKR,KAAKN,gBAChC,GAEJe,SAAU,CACNC,YAAa,WACT,OAAOV,KAAKL,YAChB,GAEJgB,QAAS,WACDX,KAAKR,eACAQ,KAAKV,eACNU,KAAKb,wBAAwBjD,QAAQgC,IAEzC8B,KAAKY,iCACLZ,KAAKM,wBAEb,IAGUO,GAClB,CA9FAzB,UAAU0B,8BAA8BhF,kDAAAA,EAAUC,WAAWC,MAAM,WAC/DJ,kBAAkBmF,WAAW9E,YACjC,G","sources":["webpack://RdoWeb/./ResourcePackages/Main/assets/src/scripts/widgets/hero.js"],"sourcesContent":["import { WidgetInitializer } from \"../functions/widget-initializer\";\r\nimport { Constants } from \"../functions/constants\";\r\nimport { Splide, SplideSlide } from '@splidejs/vue-splide';\r\nimport { ConfigUtils } from \"../functions/config-utils\";\r\nimport algoliasearch from 'algoliasearch/lite';\r\nimport { AisInstantSearch, AisHighlight, AisIndex, AisConfigure, AisHits } from 'vue-instantsearch';\r\nimport QueryRuleCustomDataExtended from \"../components/search/QueryRuleCustomDataExtended\";\r\nimport AutocompleteInstance from \"../components/search/AutocompleteInstance\";\r\nimport AutocompleteSingleIndex from \"../components/search/AutocompleteSingleIndex\";\r\nimport algoliaAutocompleteMixin from \"../mixins/algolia-autocomplete-mixin\"\r\n\r\nvar widgetInitializer = new WidgetInitializer(Constants.COMPONENTS.HERO);\r\nGlobalApp.registerInitializationHandler(Constants.COMPONENTS.HERO, function () {\r\n widgetInitializer.initialize(initHeroApp);\r\n});\r\n\r\nfunction initHeroApp(element) {\r\n var config = ConfigUtils.getConfigFor(element);\r\n const algoliaClient = algoliasearch(config.appId, config.apiKey);\r\n\r\n const searchClient = {\r\n ...algoliaClient,\r\n search(requests) {\r\n if (requests.every(({ params, indexName }) => !params.query && !indexName.endsWith('_query_suggestions'))) {\r\n var emptyResponse = Promise.resolve({\r\n results: requests.map(() => ({\r\n hits: [],\r\n nbHits: 0,\r\n nbPages: 0,\r\n page: 0,\r\n processingTimeMS: 0,\r\n hitsPerPage: 0,\r\n exhaustiveNbHits: false,\r\n query: '',\r\n queryID: '',\r\n params: '',\r\n })),\r\n });\r\n\r\n return emptyResponse;\r\n }\r\n\r\n return algoliaClient.search(requests);\r\n },\r\n };\r\n\r\n let vueApp = new Vue({\r\n el: '#' + element.id,\r\n mixins: [algoliaAutocompleteMixin],\r\n components: {\r\n AisInstantSearch,\r\n AisHighlight,\r\n AisIndex,\r\n AisConfigure,\r\n AisHits,\r\n QueryRuleCustomDataExtended,\r\n AutocompleteInstance,\r\n AutocompleteSingleIndex,\r\n Splide,\r\n SplideSlide\r\n },\r\n data: {\r\n options: Constants.SLIDERS.HERO,\r\n initializationReadyHook: GlobalApp.getInitializationReadyHook(),\r\n splideMounted: false,\r\n searchClient: searchClient,\r\n middlewares: [],\r\n renderSearch: config.renderSearch,\r\n search_term: null,\r\n default_context: 'hero-search',\r\n rule_context: null,\r\n searchPageUrl: config.searchPageUrl\r\n },\r\n methods: {\r\n onSplideMounted(splide) {\r\n this.initializationReadyHook(element.id);\r\n this.splideMounted = true;\r\n\t\t\t},\r\n goPrev: function () {\r\n this.$refs.hero_slider.splide.go( '-' );\r\n },\r\n goNext: function () {\r\n this.$refs.hero_slider.splide.go( '+' );\r\n },\r\n initializeRuleContext: function () {\r\n this.rule_context = this.pageContext || ['home'];\r\n this.rule_context.push(this.default_context);\r\n }\r\n },\r\n computed: {\r\n ruleContext: function () {\r\n return this.rule_context;\r\n },\r\n },\r\n created: function () {\r\n if (this.renderSearch) {\r\n if (!this.splideMounted)\r\n this.initializationReadyHook(element.id);\r\n\r\n this.initializeAutocompleteInsights();\r\n this.initializeRuleContext();\r\n }\r\n },\r\n });\r\n\r\n return vueApp.$el;\r\n}"],"names":["widgetInitializer","WidgetInitializer","Constants","COMPONENTS","HERO","initHeroApp","element","config","ConfigUtils","getConfigFor","algoliaClient","algoliasearch","appId","apiKey","searchClient","_objectSpread","search","requests","every","_ref","params","query","indexName","endsWith","Promise","resolve","results","map","hits","nbHits","nbPages","page","processingTimeMS","hitsPerPage","exhaustiveNbHits","queryID","Vue","el","id","mixins","algoliaAutocompleteMixin","components","AisInstantSearch","AisHighlight","AisIndex","AisConfigure","AisHits","QueryRuleCustomDataExtended","AutocompleteInstance","AutocompleteSingleIndex","Splide","SplideSlide","data","options","SLIDERS","initializationReadyHook","GlobalApp","getInitializationReadyHook","splideMounted","middlewares","renderSearch","search_term","default_context","rule_context","searchPageUrl","methods","onSplideMounted","splide","this","goPrev","$refs","hero_slider","go","goNext","initializeRuleContext","pageContext","push","computed","ruleContext","created","initializeAutocompleteInsights","$el","registerInitializationHandler","initialize"],"sourceRoot":""}