{"version":3,"file":"audienceSortApiHandlers-CpqgPAIo-chunk.js","sources":["../../../src/components/utility/api/GetAcceptProfessionalAffirmation.js","../../../src/components/utility/api/GetAudienceTypeLocationData.js","../../../src/components/utility/api/GetAudienceTypesForCountryData.js","../../../src/components/utility/api/GetSelectAudienceType.js","../../../src/components/public-site/audience-sort/utility/audienceSortApiHandlers.jsx"],"sourcesContent":["import ky from \"ky-universal\";\n\nconst getAcceptProfessionalAffirmationData = async (url, countryKey) => {\n\tlet apiUrl;\n\tif (!process.env.NODE_ENV || process.env.NODE_ENV === \"development\") {\n\t\tapiUrl = \"http://localhost:7000/audience-selector-api/accept-professional-affirmation\";\n\t} else {\n\t\tapiUrl = url;\n\t}\n\tconst data = await ky\n\t\t.post(apiUrl, {\n\t\t\theaders: new Headers({\n\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t}),\n\t\t\tbody: JSON.stringify({\n\t\t\t\tcountryKey,\n\t\t\t}),\n\t\t})\n\t\t.then((response) => {\n\t\t\tif (response.status === 200) {\n\t\t\t\treturn response.json().then((data) => {\n\t\t\t\t\tif (data.hasOwnProperty(\"status\")) {\n\t\t\t\t\t\tif (data.status === \"failed\") {\n\t\t\t\t\t\t\tconsole.error(data);\n\t\t\t\t\t\t\t// { \"status\": \"failed\", \"action\": \"none\" }\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstatus: data.status,\n\t\t\t\t\t\t\t\tdata: data,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (data.action === \"reload\") {\n\t\t\t\t\t\t\t// { status: \"success\", action: \"reload\" }\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstatus: data.status,\n\t\t\t\t\t\t\t\tdata: data.action,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: \"success\",\n\t\t\t\t\t\t\tdata: { ...data, countryKey },\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\tstatus: \"success\",\n\t\t\t\t\t\tdata: { ...data, countryKey },\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: \"failed\",\n\t\t\t\t\terror: `${response.status}`,\n\t\t\t\t};\n\t\t\t}\n\t\t})\n\t\t.then((res) => res)\n\t\t.catch((error) => {\n\t\t\tconsole.error(error);\n\t\t\treturn {\n\t\t\t\tstatus: \"failed\",\n\t\t\t\terror: error,\n\t\t\t};\n\t\t});\n\treturn data;\n};\n\nexport default getAcceptProfessionalAffirmationData;\n","import ky from \"ky-universal\";\n\nconst getAudienceTypeLocationData = async (apiUrl, country, countryKey, isSplashModal) => {\n\tlet countryUrl;\n\tif (!process.env.NODE_ENV || process.env.NODE_ENV === \"development\") {\n\t\tcountryUrl = \"http://localhost:7000/audience-selector-api/get-audience-type-location-data\";\n\t} else {\n\t\tcountryUrl = apiUrl + country.apiUrl;\n\t}\n\n\tconst data = await ky\n\t\t.post(countryUrl, {\n\t\t\theaders: new Headers({\n\t\t\t\t\"Content-Type\": \"application/json\"\n\t\t\t}),\n\t\t\tbody: JSON.stringify({\n\t\t\t\tcountryKey: countryKey,\n\t\t\t\tsplash: isSplashModal\n\t\t\t})\n\t\t})\n\t\t.then((response) => {\n\t\t\tif (response.status === 200) {\n\t\t\t\treturn response.json().then((data) => {\n\t\t\t\t\tif (data.hasOwnProperty(\"status\")) {\n\t\t\t\t\t\tif (data.status === \"failed\") {\n\t\t\t\t\t\t\tconsole.error(data);\n\t\t\t\t\t\t\t// { \"status\": \"failed\", \"action\": \"none\" }\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstatus: data.status,\n\t\t\t\t\t\t\t\tdata: data\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (data.action === \"reload\") {\n\t\t\t\t\t\t\t// { status: \"success\", action: \"reload\" }\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstatus: data.status,\n\t\t\t\t\t\t\t\tdata: data.action\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: \"success\",\n\t\t\t\t\t\t\tdata: data\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\tstatus: \"success\",\n\t\t\t\t\t\tdata: data\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: \"failed\",\n\t\t\t\t\terror: `${response.status}`\n\t\t\t\t};\n\t\t\t}\n\t\t})\n\t\t.then((res) => res)\n\t\t.catch((error) => {\n\t\t\tconsole.error(error);\n\t\t\treturn {\n\t\t\t\tstatus: \"failed\",\n\t\t\t\terror: error\n\t\t\t};\n\t\t});\n\treturn data;\n};\n\nexport default getAudienceTypeLocationData;\n","import ky from \"ky-universal\";\n\nconst getAudienceTypesForCountryData = async (audienceType) => {\n\tlet apiUrl, countryKey;\n\tif (audienceType.isPage) {\n\t\tapiUrl = window[audienceType.source].apiUrl;\n\t\tcountryKey = window[audienceType.source].countryKey;\n\t} else {\n\t\tapiUrl = audienceType.apiUrl;\n\t\tcountryKey = audienceType.country.countryKey;\n\t}\n\n\tif (!process.env.NODE_ENV || process.env.NODE_ENV === \"development\") {\n\t\tapiUrl = \"http://localhost:7000/audience-selector-api/get-audience-types-for-country\";\n\t}\n\n\tconst data = await ky\n\t\t.post(apiUrl, {\n\t\t\theaders: new Headers({\n\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t}),\n\t\t\tbody: JSON.stringify({\n\t\t\t\tcountryKey: countryKey,\n\t\t\t}),\n\t\t})\n\t\t.then((response) => {\n\t\t\tif (response.status === 200) {\n\t\t\t\treturn response.json().then((data) => {\n\t\t\t\t\tif (data.hasOwnProperty(\"status\")) {\n\t\t\t\t\t\tif (data.status === \"failed\") {\n\t\t\t\t\t\t\tconsole.error(data);\n\t\t\t\t\t\t\t// { \"status\": \"failed\", \"action\": \"none\" }\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstatus: data.status,\n\t\t\t\t\t\t\t\tdata: data,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (data.action === \"reload\") {\n\t\t\t\t\t\t\t// { status: \"success\", action: \"reload\" }\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstatus: data.status,\n\t\t\t\t\t\t\t\tdata: data.action,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: \"success\",\n\t\t\t\t\t\t\tdata: data,\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\tstatus: \"success\",\n\t\t\t\t\t\tdata: data,\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: \"failed\",\n\t\t\t\t\terror: `${response.status}`,\n\t\t\t\t};\n\t\t\t}\n\t\t})\n\t\t.then((res) => res)\n\t\t.catch((error) => {\n\t\t\tconsole.error(error);\n\t\t\treturn {\n\t\t\t\tstatus: \"failed\",\n\t\t\t\terror: error,\n\t\t\t};\n\t\t});\n\treturn data;\n};\n\nexport default getAudienceTypesForCountryData;\n","import ky from \"ky-universal\";\n\nconst getSelectAudienceTypeData = async (url, audienceTypeId, countryKey) => {\n\tlet apiUrl;\n\tif (!process.env.NODE_ENV || process.env.NODE_ENV === \"development\") {\n\t\tapiUrl = \"http://localhost:7000/audience-selector-api/select-audience-type\";\n\t} else {\n\t\tapiUrl = url;\n\t}\n\tconst newData = await ky\n\t\t.post(apiUrl, {\n\t\t\theaders: new Headers({\n\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t}),\n\t\t\tbody: JSON.stringify({\n\t\t\t\taudienceTypeId,\n\t\t\t\tcountryKey,\n\t\t\t}),\n\t\t})\n\t\t.then((response) => {\n\t\t\tif (response.status === 200) {\n\t\t\t\treturn response.json().then((data) => {\n\t\t\t\t\tif (data.hasOwnProperty(\"status\")) {\n\t\t\t\t\t\tif (data.status === \"failed\") {\n\t\t\t\t\t\t\tconsole.error(data);\n\t\t\t\t\t\t\t// { \"status\": \"failed\", \"action\": \"none\" }\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstatus: data.status,\n\t\t\t\t\t\t\t\tdata: data,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (data.action === \"reload\") {\n\t\t\t\t\t\t\t// { status: \"success\", action: \"reload\" }\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstatus: data.status,\n\t\t\t\t\t\t\t\tdata: data.action,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (data.action === \"display-affirmation-screen\") {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tstatus: \"success\",\n\t\t\t\t\t\t\t\tdata: { ...data, countryKey },\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: \"success\",\n\t\t\t\t\t\t\tdata: data,\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\tstatus: \"success\",\n\t\t\t\t\t\tdata: data,\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: \"failed\",\n\t\t\t\t\terror: `${response.status}`,\n\t\t\t\t};\n\t\t\t}\n\t\t})\n\t\t.then((res) => res)\n\t\t.catch((error) => {\n\t\t\tconsole.error(error);\n\t\t\treturn {\n\t\t\t\tstatus: \"failed\",\n\t\t\t\terror: error,\n\t\t\t};\n\t\t});\n\treturn newData;\n};\n\nexport default getSelectAudienceTypeData;\n","import getAcceptProfessionalAffirmationData from \"components/utility/api/GetAcceptProfessionalAffirmation\";\nimport getAudienceTypeLocationData from \"components/utility/api/GetAudienceTypeLocationData\";\nimport getAudienceTypesForCountryData from \"components/utility/api/GetAudienceTypesForCountryData\";\nimport getSelectAudienceTypeData from \"components/utility/api/GetSelectAudienceType\";\nexport const individualGUID = \"72F4ED1678744217ADBB47C57F3F0638\";\nexport const financialProfessionalGUID = \"E5058E607C494673AD1EA98EEA717C17\";\nexport const changeCountry = async (\n\tevent,\n\taudienceTypesData,\n\tsetCountryListData,\n\tisSplashModal = false\n) => {\n\tif (event.type === \"keydown\" && [\"Tab\", \"Shift\"].includes(event.key)) return;\n\tlet baseUrl = window.location.origin;\n\tconst countryApiUrl = {\n\t\tapiUrl: audienceTypesData.countrySelection.apiUrl\n\t};\n\n\tconst countryListData = await getAudienceTypeLocationData(\n\t\tbaseUrl,\n\t\tcountryApiUrl,\n\t\taudienceTypesData.countryKey,\n\t\tisSplashModal\n\t);\n\n\tif (countryListData.status === \"success\") {\n\t\tconst countryKey = audienceTypesData.countryKey;\n\t\tlet newCountryData = { ...countryListData.data, countryKey };\n\t\tsetCountryListData(newCountryData);\n\t}\n};\n\nexport const getLocationData = async (apiParams, countryListData, setAudienceTypesData) => {\n\tconst audienceType = { apiUrl: countryListData.apiUrl, ...apiParams };\n\tconst locationApiData = await getAudienceTypesForCountryData(audienceType);\n\tif (locationApiData.status === \"success\") {\n\t\tsetAudienceTypesData(locationApiData.data);\n\t}\n};\n\nexport const getAudienceSelection = async (\n\te,\n\tval,\n\tredirect,\n\taudienceTypesData,\n\tsetAudienceSelectionData,\n\tcurrentPage\n) => {\n\tif (e.type === \"click\" || e.key === \"Enter\") e.preventDefault();\n\tconst audienceUrl = window.location.origin + audienceTypesData.apiUrl;\n\tconst audienceSelectionData = await getSelectAudienceTypeData(\n\t\taudienceUrl,\n\t\tval.audienceTypeId,\n\t\taudienceTypesData.countryKey\n\t);\n\n\tif (audienceSelectionData.status === \"success\") {\n\t\tsetAudienceSelectionData(audienceSelectionData.data);\n\t\tif (audienceSelectionData.data === \"reload\") {\n\t\t\tswitch (currentPage) {\n\t\t\t\tcase \"nav\": {\n\t\t\t\t\tif (redirect) {\n\t\t\t\t\t\twindow.location.replace(window.location.origin + \"/\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\twindow.location.replace(\n\t\t\t\t\t\t\twindow.location.origin + window.audienceSwitcherModal.redirectUrl\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"global-splash\": {\n\t\t\t\t\twindow.location.replace(window.location.origin + window.splashPageModal.redirectUrl);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"unknown-splash\": {\n\t\t\t\t\twindow.location.replace(\n\t\t\t\t\t\twindow.location.origin + window.unknownAudienceSplashPage.redirectUrl\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"professional-affirmation\": {\n\t\t\t\t\twindow.location.replace(\n\t\t\t\t\t\twindow.location.origin + window.professionalAffirmationSplashPage.redirectUrl\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase \"from-link\": {\n\t\t\t\t\tconst modalInitData = window[\"audienceSelectorModalFromLink\"];\n\t\t\t\t\tif (modalInitData.reload) window.location.reload();\n\t\t\t\t\tif (\n\t\t\t\t\t\tmodalInitData.countryKey === audienceTypesData.countryKey &&\n\t\t\t\t\t\tval.audienceTypeId === individualGUID\n\t\t\t\t\t) {\n\t\t\t\t\t\t// notify analytics about the change in content\n\t\t\t\t\t\twindow.dataLayer.push({\n\t\t\t\t\t\t\tevent: \"page_view\",\n\t\t\t\t\t\t\taudience: \"individual investor\",\n\t\t\t\t\t\t\tsplash: 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// remove /us-en/, /de-de/, /gb-en/, etc\n\t\t\t\t\t\tconst path = window.location.pathname;\n\t\t\t\t\t\twindow.location.replace(\n\t\t\t\t\t\t\twindow.location.origin + path.replace(/\\/\\w{2}-\\w{2}(\\/)/, \"$1\")\n\t\t\t\t\t\t);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\twindow.location.replace(window.location.origin);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport const sendAcceptContinue = async (\n\taudienceSelectionData,\n\tcurrentPage,\n\tcameFromInitialStep = true\n) => {\n\tconst affirmationCheck = true;\n\tif (affirmationCheck) {\n\t\tlet baseUrl = window.location.origin;\n\t\tbaseUrl = baseUrl + audienceSelectionData.apiUrl;\n\t\tconst proAffData = await getAcceptProfessionalAffirmationData(\n\t\t\tbaseUrl,\n\t\t\taudienceSelectionData.countryKey\n\t\t);\n\n\t\tif (proAffData.status === \"success\") {\n\t\t\tif (proAffData.data === \"reload\") {\n\t\t\t\tswitch (currentPage) {\n\t\t\t\t\tcase \"nav\": {\n\t\t\t\t\t\tif (cameFromInitialStep) {\n\t\t\t\t\t\t\twindow.location.href =\n\t\t\t\t\t\t\t\twindow.location.origin + window.audienceSwitcherModal.redirectUrl;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\twindow.location.href = window.location.origin + \"/\";\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"global-splash\": {\n\t\t\t\t\t\twindow.location.href = window.location.origin + window.splashPageModal.redirectUrl;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"unknown-splash\": {\n\t\t\t\t\t\twindow.location.href =\n\t\t\t\t\t\t\twindow.location.origin + window.unknownAudienceSplashPage.redirectUrl;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"professional-affirmation\": {\n\t\t\t\t\t\twindow.location.href =\n\t\t\t\t\t\t\twindow.location.origin + window.professionalAffirmationSplashPage.redirectUrl;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"from-link\": {\n\t\t\t\t\t\t// remove /us-en/, /de-de/, /gb-en/, etc\n\t\t\t\t\t\tconst path = window.location.pathname;\n\t\t\t\t\t\twindow.location.replace(\n\t\t\t\t\t\t\twindow.location.origin + path.replace(/\\/\\w{2}-\\w{2}(\\/)/, \"$1\")\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif (window[\"professionalAffirmationSplashModal\"].reload) window.location.reload();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase \"pro-only-entry\":\n\t\t\t\t\t\t// notify analytics about the change in content\n\t\t\t\t\t\tif (window[\"professionalAffirmationSplashModal\"].reload) window.location.reload();\n\t\t\t\t\t\twindow.dataLayer.push({\n\t\t\t\t\t\t\tevent: \"page_view\",\n\t\t\t\t\t\t\taudience: \"financial professional\",\n\t\t\t\t\t\t\tsplash: 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault: {\n\t\t\t\t\t\twindow.location.replace(window.location.origin);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport const eventMisfired = (event) => {\n\tevent.stopPropagation();\n\tconst allowedKeys = new Set([\"Enter\", \"Space\"]);\n\tif (\"code\" in event && !allowedKeys.has(event.code)) return true;\n\tevent.preventDefault();\n};\n"],"names":["getAcceptProfessionalAffirmationData","url","countryKey","apiUrl","ky","response","data","res","error","getAudienceTypeLocationData","country","isSplashModal","countryUrl","getAudienceTypesForCountryData","audienceType","getSelectAudienceTypeData","audienceTypeId","individualGUID","financialProfessionalGUID","changeCountry","event","audienceTypesData","setCountryListData","baseUrl","countryApiUrl","countryListData","newCountryData","getLocationData","apiParams","setAudienceTypesData","locationApiData","getAudienceSelection","e","val","redirect","setAudienceSelectionData","currentPage","audienceUrl","audienceSelectionData","modalInitData","path","sendAcceptContinue","cameFromInitialStep","proAffData","eventMisfired","allowedKeys"],"mappings":"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"}