{"version":3,"file":"language_controller-BjR4A9v_.js","names":[],"sources":["../../../app/javascript/entrypoints/controllers/language_controller.js"],"sourcesContent":["import { Controller } from \"@hotwired/stimulus\";\n\nexport default class extends Controller {\n static targets = [\"frFlag\", \"enFlag\"];\n\n connect() {\n const currentLocale = this.getLocaleFromUrl() || \"fr\";\n this.updateFlagVisibility(currentLocale);\n }\n\n selectLanguage(event) {\n const selectedLanguage = event.currentTarget.dataset.language;\n\n const currentPath = window.location.pathname;\n const pathWithoutLocale = currentPath.replace(/^\\/(fr|en)/, \"\");\n const newPath = `/${selectedLanguage}${pathWithoutLocale || \"/\"}`;\n\n window.location.href = newPath;\n }\n\n updateFlagVisibility(locale) {\n this.hideAllFlags();\n\n if (locale === \"en\") {\n this.enFlagTarget.classList.remove(\"hidden\");\n } else {\n this.frFlagTarget.classList.remove(\"hidden\");\n }\n }\n\n hideAllFlags() {\n this.frFlagTarget.classList.add(\"hidden\");\n this.enFlagTarget.classList.add(\"hidden\");\n }\n\n getLocaleFromUrl() {\n const pathParts = window.location.pathname.split(\"/\");\n const supportedLocales = [\"fr\", \"en\"];\n return supportedLocales.includes(pathParts[1]) ? pathParts[1] : null;\n }\n}\n"],"mappings":"4GAEA,EAAA,cAA6B,CAAW,CACtC,OAAO,QAAU,CAAC,SAAU,SAAS,CAErC,SAAU,CACR,IAAM,EAAgB,KAAK,kBAAkB,EAAI,KACjD,KAAK,qBAAqB,EAAc,CAG1C,eAAe,EAAO,CAKpB,IAAM,EAAU,IAJS,EAAM,cAAc,QAAQ,WAEjC,OAAO,SAAS,SACE,QAAQ,aAAc,GAAG,EACH,MAE5D,OAAO,SAAS,KAAO,EAGzB,qBAAqB,EAAQ,CAC3B,KAAK,cAAc,CAEf,IAAW,KACb,KAAK,aAAa,UAAU,OAAO,SAAS,CAE5C,KAAK,aAAa,UAAU,OAAO,SAAS,CAIhD,cAAe,CACb,KAAK,aAAa,UAAU,IAAI,SAAS,CACzC,KAAK,aAAa,UAAU,IAAI,SAAS,CAG3C,kBAAmB,CACjB,IAAM,EAAY,OAAO,SAAS,SAAS,MAAM,IAAI,CAErD,MADyB,CAAC,KAAM,KAAK,CACb,SAAS,EAAU,GAAG,CAAG,EAAU,GAAK"}