{"version":3,"sources":["../node_modules/@dtcm/ui-components/dist/utils/algolia.js"],"names":["state","client","indexes","Algolia","getClient","Promise","resolve","then","algoliasearch","applicationId","id","apiKey","key","STORYBOOK_MODE","window","console","log","default","getIndex","indexNameSuffix","indexName","getFullIndexName","initIndex","getFiltersFromCheckboxes","filtersObject","filterNameToOmit","Object","keys","reduce","filters","filterPiece","map","filterItem","push","concat","getFilters","data","arguments","length","undefined","values","item","targetItem","filter","taxonomyType","value","name","targetItems","forEach","prefix","fullTextSearchIndex","result"],"mappings":"kHAAA,4EAEIA,EAAQ,CACVC,OAAQ,KACRC,QAAS,IAEPC,EAAU,CACZC,UAQF,WACE,GAAIJ,EAAMC,OACR,OAAOI,QAAQC,QAAQN,EAAMC,QAE/B,OAAO,oCAAwEM,MAAK,SAAUC,GAC5F,IAAIC,EAAgB,EAAuBC,GACvCC,EAAS,EAAuBC,IASpC,OARK,mOAAYC,iBACfJ,EAAgB,YAAIK,OAAQ,uBAAyB,EAAuBJ,GAC5EC,EAAS,YAAIG,OAAQ,wBAA0B,EAAuBF,KAEnEH,GAAkBE,GACrBI,QAAQC,IAAI,mDAEdhB,EAAMC,OAASO,EAAcS,QAAQR,EAAeE,GAC7CX,EAAMC,WAtBfiB,SAyBF,SAAkBC,GAChB,IAAIC,EAAYC,EAAiBF,GACjC,GAAInB,EAAME,QAAQkB,GAChB,OAAOf,QAAQC,QAAQN,EAAME,QAAQkB,IAEvC,OAAOjB,EAAQC,YAAYG,MAAK,SAAUN,GAExC,OADAD,EAAME,QAAQkB,GAAanB,EAAOqB,UAAUF,GACrCpB,EAAME,QAAQkB,OA/BvBC,iBAAkBA,EAClBE,yBAsEF,SAAkCC,EAAeC,GAC/C,OAAOC,OAAOC,KAAKH,GAAeI,QAAO,SAAUC,EAASjB,GAC1D,GAAIA,IAAQa,EAAkB,OAAOI,EACrC,IAAIC,EAAc,GAMlB,OAJAN,EAAcZ,GAAKmB,KAAI,SAAUC,GAC/BF,EAAYG,KAAK,GAAGC,OAAOtB,EAAK,KAAKsB,OAAOF,OAE9CH,EAAQI,KAAKH,GACND,IACN,KA/EHM,WAiFF,WACE,IAAIC,EAAOC,UAAUC,OAAS,QAAsBC,IAAjBF,UAAU,GAAmBA,UAAU,GAAK,GAC3ER,EAAUH,OAAOc,OAAOJ,GAC5B,OAAOP,EAAQD,QAAO,SAAUC,EAASY,GACvC,GAAIA,EAAKC,WAAY,CACnB,IAAIC,EAASF,EAAKC,WAClBb,EAAQI,KAAK,GAAGC,OAAOS,EAAOC,aAAaC,MAAO,KAAKX,OAAOS,EAAOG,OAEnEL,EAAKM,aACYN,EAAKM,YAEXC,SAAQ,SAAUhB,GAC7BH,EAAQI,KAAK,GAAGC,OAAOF,EAAWY,aAAaC,MAAO,KAAKX,OAAOF,EAAWc,UAIjF,OAAOjB,IACN,MAlEE,SAASR,EAAiBF,GAuB/B,IACI8B,EADOnC,OACOmC,OACdC,EAAsB,YAAIpC,OAAQ,wBAA0B,GAC5D,mOAAYD,iBACdqC,EAAsB,2BAExB,IAAIC,EAASF,EAASA,EAAS9B,EAAkBA,EAMjD,OALKgC,GACCD,IACFC,EAASD,GAGNC,EAjEM","file":"static/js/AlgoliaModule.ba4acefc.chunk.js","sourcesContent":["import { get } from './index';\nimport algoliaDefaultSettings from '../algoliaDefaultSettings.json';\nvar state = {\n client: null,\n indexes: {}\n};\nvar Algolia = {\n getClient: getClient,\n getIndex: getIndex,\n getFullIndexName: getFullIndexName,\n getFiltersFromCheckboxes: getFiltersFromCheckboxes,\n getFilters: getFilters\n};\nexport default Algolia;\n// declare var algoliaSettings: any;\nfunction getClient() {\n if (state.client) {\n return Promise.resolve(state.client);\n }\n return import(/* webpackChunkName: \"AlgoliaSearchLite\" */'algoliasearch/lite').then(function (algoliasearch) {\n var applicationId = algoliaDefaultSettings.id;\n var apiKey = algoliaDefaultSettings.key;\n if (!process.env.STORYBOOK_MODE) {\n applicationId = get(window, 'algoliaSettings.id') || algoliaDefaultSettings.id;\n apiKey = get(window, 'algoliaSettings.key') || algoliaDefaultSettings.key;\n }\n if (!applicationId || !apiKey) {\n console.log('Algolia connection parameters were not provided');\n }\n state.client = algoliasearch.default(applicationId, apiKey);\n return state.client;\n });\n}\nfunction getIndex(indexNameSuffix) {\n var indexName = getFullIndexName(indexNameSuffix);\n if (state.indexes[indexName]) {\n return Promise.resolve(state.indexes[indexName]);\n }\n return Algolia.getClient().then(function (client) {\n state.indexes[indexName] = client.initIndex(indexName);\n return state.indexes[indexName];\n });\n}\nexport function getFullIndexName(indexNameSuffix) {\n // this token will be replaced by Azure DevOps when deploying code to one of environments\n\n // const indexNameEnvVar = 'qa_vd_en';\n\n // // if the variable is set in process.env - use it, otherwise, fallback to string replaceable one\n // let indexNamePrefix = indexNameEnvVar ? indexNameEnvVar : 'dotprod93';\n\n // if (indexNamePrefix.startsWith('#')) {\n // console.error(\n // 'The Algolia index name is neither defined as environment variable nor embedded via CI in js. Falling back to default: dotprod'\n // );\n // }\n\n // // let indexNamePrefix = 'dotqa';\n\n // // but when running in styleguide or locally from Sitecore, the token won't be replaced\n // // so we need to replace it with 'dotsite' which is used for development\n // indexNamePrefix = indexNamePrefix.startsWith('#') ? 'dotprod' : indexNamePrefix;\n\n // const indexName = indexNamePrefix + indexNameSuffix;\n\n // debugger\n var wind = window;\n var prefix = wind.prefix;\n var fullTextSearchIndex = get(window, 'fullTextSearchIndex') || '';\n if (process.env.STORYBOOK_MODE) {\n fullTextSearchIndex = 'int_fulltext_leisure_en';\n }\n var result = prefix ? prefix + indexNameSuffix : indexNameSuffix;\n if (!result) {\n if (fullTextSearchIndex) {\n result = fullTextSearchIndex;\n }\n }\n return result;\n}\nfunction getFiltersFromCheckboxes(filtersObject, filterNameToOmit) {\n return Object.keys(filtersObject).reduce(function (filters, key) {\n if (key === filterNameToOmit) return filters;\n var filterPiece = [];\n // eslint-disable-next-line array-callback-return\n filtersObject[key].map(function (filterItem) {\n filterPiece.push(\"\".concat(key, \":\").concat(filterItem));\n });\n filters.push(filterPiece);\n return filters;\n }, []);\n}\nfunction getFilters() {\n var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var filters = Object.values(data);\n return filters.reduce(function (filters, item) {\n if (item.targetItem) {\n var filter = item.targetItem;\n filters.push(\"\".concat(filter.taxonomyType.value, \":\").concat(filter.name));\n }\n if (item.targetItems) {\n var filtersArray = item.targetItems;\n // const filterPiece: string[] = [];\n filtersArray.forEach(function (filterItem) {\n filters.push(\"\".concat(filterItem.taxonomyType.value, \":\").concat(filterItem.name));\n });\n // filters.push(filterPiece);\n }\n return filters;\n }, []);\n}"],"sourceRoot":""}