{ "version": 3, "sources": ["apps/business-center-client/src/app/core/language-service.service.ts"], "sourcesContent": ["import { Injectable } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { AtlasLanguageService, Language } from '@galaxy/atlas/core';\nimport { getLocale } from '@vendasta/galaxy/i18n';\nimport { Observable } from 'rxjs';\nimport { map, shareReplay, startWith } from 'rxjs/operators';\n\nexport enum LOCALES {\n EN = 'en',\n FR = 'fr',\n FR_FR = 'fr-fr',\n FR_CA = 'fr-ca',\n CS = 'cs',\n PT = 'pt',\n NL = 'nl',\n DE = 'de',\n ES_419 = 'es-419',\n RU = 'ru',\n AF = 'af',\n}\n\n@Injectable({ providedIn: 'root' })\nexport class LanguageService {\n public currentLocale: LOCALES;\n public currentLocale$: Observable;\n\n // the starting language is loaded from a previously stored local storage entry\n private readonly startingLanguage: Language;\n\n constructor(private atlasLanguageService: AtlasLanguageService) {\n this.startingLanguage = this.getEnumValueFromStringValue(getLocale());\n this.currentLocale$ = atlasLanguageService.language$.pipe(\n startWith(this.startingLanguage),\n map((lang: Language) => {\n const locale = this.getLocaleEnumValueFromLanguageEnumValue(lang);\n return locale ? locale : this.getLocaleEnumValueFromLanguageEnumValue(this.startingLanguage);\n }),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n this.currentLocale$.pipe(takeUntilDestroyed()).subscribe((locale: LOCALES) => {\n this.currentLocale = locale;\n });\n }\n\n private getEnumValueFromStringValue(stringValue: string): Language {\n switch (stringValue) {\n case Language.FRENCH.toString():\n case Language.FRENCH_CANADA.toString():\n return Language.FRENCH_CANADA;\n case Language.FRENCH_FRANCE.toString():\n return Language.FRENCH_FRANCE;\n case Language.CZECH.toString():\n return Language.CZECH;\n case Language.PORTUGUESE.toString():\n return Language.PORTUGUESE;\n case Language.DUTCH.toString():\n return Language.DUTCH;\n case Language.GERMAN.toString():\n return Language.GERMAN;\n case Language.SPANISH_LATIN_AMERICA.toString():\n return Language.SPANISH_LATIN_AMERICA;\n case Language.ENGLISH.toString():\n return Language.ENGLISH;\n case Language.RUSSIAN.toString():\n return Language.RUSSIAN;\n case Language.AFRIKAANS.toString():\n return Language.AFRIKAANS;\n default:\n console.error('unknown locale found, defaulting to English');\n return Language.ENGLISH;\n }\n }\n\n private getLocaleEnumValueFromLanguageEnumValue(value: Language): LOCALES {\n switch (value) {\n case Language.FRENCH:\n case Language.FRENCH_CANADA:\n return LOCALES.FR_CA;\n case Language.FRENCH_FRANCE:\n return LOCALES.FR_FR;\n case Language.CZECH:\n return LOCALES.CS;\n case Language.PORTUGUESE:\n return LOCALES.PT;\n case Language.DUTCH:\n return LOCALES.NL;\n case Language.GERMAN:\n return LOCALES.DE;\n case Language.SPANISH_LATIN_AMERICA:\n return LOCALES.ES_419;\n case Language.ENGLISH:\n return LOCALES.EN;\n case Language.RUSSIAN:\n return LOCALES.RU;\n case Language.AFRIKAANS:\n return LOCALES.AF;\n default:\n return null;\n }\n }\n}\n"], "mappings": "oRAAA,IAOYA,EAeCC,EAtBbC,EAAAC,EAAA,KACAC,IACAC,IACAC,IAEAC,YAEYP,EAAZ,SAAYA,EAAO,CACjBA,OAAAA,EAAA,GAAA,KACAA,EAAA,GAAA,KACAA,EAAA,MAAA,QACAA,EAAA,MAAA,QACAA,EAAA,GAAA,KACAA,EAAA,GAAA,KACAA,EAAA,GAAA,KACAA,EAAA,GAAA,KACAA,EAAA,OAAA,SACAA,EAAA,GAAA,KACAA,EAAA,GAAA,KAXUA,CAYZ,EAZYA,GAAO,CAAA,CAAA,EAeNC,GAAe,IAAA,CAAtB,IAAOA,EAAP,MAAOA,CAAe,CAO1BO,YAAoBC,EAA0C,CAA1C,KAAAA,qBAAAA,EAClB,KAAKC,iBAAmB,KAAKC,4BAA4BC,EAAS,CAAE,EACpE,KAAKC,eAAiBJ,EAAqBK,UAAUC,KACnDC,EAAU,KAAKN,gBAAgB,EAC/BO,EAAKC,GAAkB,CACrB,IAAMC,EAAS,KAAKC,wCAAwCF,CAAI,EAChE,OAAOC,GAAkB,KAAKC,wCAAwC,KAAKV,gBAAgB,CAC7F,CAAC,EACDW,EAAY,CAAEC,SAAU,GAAMC,WAAY,CAAC,CAAE,CAAC,EAGhD,KAAKV,eAAeE,KAAKS,EAAkB,CAAE,EAAEC,UAAWN,GAAmB,CAC3E,KAAKO,cAAgBP,CACvB,CAAC,CACH,CAEQR,4BAA4BgB,EAAmB,CACrD,OAAQA,EAAW,CACjB,KAAKC,EAASC,OAAOC,SAAQ,EAC7B,KAAKF,EAASG,cAAcD,SAAQ,EAClC,OAAOF,EAASG,cAClB,KAAKH,EAASI,cAAcF,SAAQ,EAClC,OAAOF,EAASI,cAClB,KAAKJ,EAASK,MAAMH,SAAQ,EAC1B,OAAOF,EAASK,MAClB,KAAKL,EAASM,WAAWJ,SAAQ,EAC/B,OAAOF,EAASM,WAClB,KAAKN,EAASO,MAAML,SAAQ,EAC1B,OAAOF,EAASO,MAClB,KAAKP,EAASQ,OAAON,SAAQ,EAC3B,OAAOF,EAASQ,OAClB,KAAKR,EAASS,sBAAsBP,SAAQ,EAC1C,OAAOF,EAASS,sBAClB,KAAKT,EAASU,QAAQR,SAAQ,EAC5B,OAAOF,EAASU,QAClB,KAAKV,EAASW,QAAQT,SAAQ,EAC5B,OAAOF,EAASW,QAClB,KAAKX,EAASY,UAAUV,SAAQ,EAC9B,OAAOF,EAASY,UAClB,QACEC,eAAQC,MAAM,6CAA6C,EACpDd,EAASU,OACpB,CACF,CAEQlB,wCAAwCuB,EAAe,CAC7D,OAAQA,EAAK,CACX,KAAKf,EAASC,OACd,KAAKD,EAASG,cACZ,OAAO/B,EAAQ4C,MACjB,KAAKhB,EAASI,cACZ,OAAOhC,EAAQ6C,MACjB,KAAKjB,EAASK,MACZ,OAAOjC,EAAQ8C,GACjB,KAAKlB,EAASM,WACZ,OAAOlC,EAAQ+C,GACjB,KAAKnB,EAASO,MACZ,OAAOnC,EAAQgD,GACjB,KAAKpB,EAASQ,OACZ,OAAOpC,EAAQiD,GACjB,KAAKrB,EAASS,sBACZ,OAAOrC,EAAQkD,OACjB,KAAKtB,EAASU,QACZ,OAAOtC,EAAQmD,GACjB,KAAKvB,EAASW,QACZ,OAAOvC,EAAQoD,GACjB,KAAKxB,EAASY,UACZ,OAAOxC,EAAQqD,GACjB,QACE,OAAO,IACX,CACF,yCA9EWpD,GAAeqD,EAAAC,CAAA,CAAA,CAAA,wBAAftD,EAAeuD,QAAfvD,EAAewD,UAAAC,WADF,MAAM,CAAA,EAC1B,IAAOzD,EAAP0D,SAAO1D,CAAe,GAAA", "names": ["LOCALES", "LanguageService", "init_language_service_service", "__esmMin", "init_rxjs_interop", "init_src", "init_i18n", "init_operators", "constructor", "atlasLanguageService", "startingLanguage", "getEnumValueFromStringValue", "getLocale", "currentLocale$", "language$", "pipe", "startWith", "map", "lang", "locale", "getLocaleEnumValueFromLanguageEnumValue", "shareReplay", "refCount", "bufferSize", "takeUntilDestroyed", "subscribe", "currentLocale", "stringValue", "Language", "FRENCH", "toString", "FRENCH_CANADA", "FRENCH_FRANCE", "CZECH", "PORTUGUESE", "DUTCH", "GERMAN", "SPANISH_LATIN_AMERICA", "ENGLISH", "RUSSIAN", "AFRIKAANS", "console", "error", "value", "FR_CA", "FR_FR", "CS", "PT", "NL", "DE", "ES_419", "EN", "RU", "AF", "\u0275\u0275inject", "AtlasLanguageService", "factory", "\u0275fac", "providedIn", "_LanguageService"] }