{"version":3,"file":"5f872dad.js","sources":["../../../src/components/globals/url-management/URLManagerGL.client.tsx"],"sourcesContent":["import {useCallback, useEffect, useState} from 'react';\nimport {useUrl} from '@shopify/hydrogen';\nimport {CountryCode} from '@shopify/hydrogen/storefront-api-types';\n\nexport function URLManagerGL({sessionCountry}: {sessionCountry: CountryCode}) {\n const url = useUrl();\n const [currentCode, setCurrentCode] = useState(sessionCountry);\n const [isFetching, setIsFetching] = useState(false);\n const glCountry = url.searchParams.get('glCountry');\n const glCurrency = url.searchParams.get('glCurrency');\n\n useEffect(() => {\n if (\n glCountry &&\n glCountry !== currentCode &&\n !isFetching &&\n !import.meta.env.SSR\n ) {\n setIsFetching(true);\n fetch(`/api/countries`, {\n body: JSON.stringify({\n countryCode: glCountry.toUpperCase(),\n countryName: null,\n currencyCode: glCurrency?.toUpperCase() || null,\n }),\n method: 'POST',\n })\n .then((resp) => {\n if (!resp.ok) {\n clearParams();\n setIsFetching(false);\n return;\n }\n\n setCurrentCode(glCountry as CountryCode);\n window.location.reload();\n })\n .catch((error) => {\n console.error(error);\n clearParams();\n setIsFetching(false);\n });\n }\n }, [glCountry, glCurrency]);\n\n const clearParams = useCallback(() => {\n url.searchParams.delete('glCountry');\n url.searchParams.delete('glCurrency');\n history.replaceState({}, '', url);\n }, [url]);\n\n if (isFetching) {\n return (\n
\n );\n }\n\n return null;\n}\n"],"names":["URLManagerGL","sessionCountry","url","useUrl","currentCode","setCurrentCode","useState","isFetching","setIsFetching","glCountry","searchParams","get","glCurrency","useEffect","fetch","body","JSON","stringify","countryCode","toUpperCase","countryName","currencyCode","method","then","resp","ok","clearParams","window","location","reload","catch","error","console","useCallback","delete","history","replaceState"],"mappings":"+WAIO,SAASA,EAAa,CAACC,eAAAA,CAA6C,EAAG,CAC5E,MAAMC,EAAMC,IACN,CAACC,EAAaC,CAAc,EAAIC,mBAASL,CAAc,EACvD,CAACM,EAAYC,CAAa,EAAIF,mBAAS,EAAK,EAC5CG,EAAYP,EAAIQ,aAAaC,IAAI,WAAW,EAC5CC,EAAaV,EAAIQ,aAAaC,IAAI,YAAY,EAEpDE,EAAAA,QAAAA,UAAU,IAAM,CAEZJ,GACAA,IAAcL,GACd,CAACG,IAGDC,EAAc,EAAI,EAClBM,MAAO,iBAAiB,CACtBC,KAAMC,KAAKC,UAAU,CACnBC,YAAaT,EAAUU,YAAa,EACpCC,YAAa,KACbC,cAAcT,GAAAA,YAAAA,EAAYO,gBAAiB,IAAA,CAC5C,EACDG,OAAQ,MAAA,CACT,EACEC,KAAeC,GAAA,CACV,GAAA,CAACA,EAAKC,GAAI,CACCC,IACblB,EAAc,EAAK,EACnB,MACF,CAEAH,EAAeI,CAAyB,EACxCkB,OAAOC,SAASC,QAAQ,CACzB,EACAC,MAAiBC,GAAA,CAChBC,QAAQD,MAAMA,CAAK,EACNL,IACblB,EAAc,EAAK,CAAA,CACpB,EACL,EACC,CAACC,EAAWG,CAAU,CAAC,EAEpBc,MAAAA,EAAcO,EAAAA,QAAAA,YAAY,IAAM,CAChCvB,EAAAA,aAAawB,OAAO,WAAW,EAC/BxB,EAAAA,aAAawB,OAAO,YAAY,EACpCC,QAAQC,aAAa,CAAA,EAAI,GAAIlC,CAAG,CAAA,EAC/B,CAACA,CAAG,CAAC,EAER,OAAIK,IAEA,MAAA,CAAK,UAAU,sDAAA,CAAyD,EAIrE,IACT"}