UNPKG

@dialpad/dialtone

Version:

Dialpad's Dialtone design system monorepo

3 lines (2 loc) 1.98 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("@dialpad/i18n"),s=require("vue"),u=require("./en-US.cjs"),d=require("./zh-CN.cjs"),f=require("./nl-NL.cjs"),g=require("./fr-FR.cjs"),S=require("./de-DE.cjs"),N=require("./it-IT.cjs"),p=require("./ja-JP.cjs"),w=require("./pt-BR.cjs"),L=require("./ru-RU.cjs"),R=require("./es-LA.cjs"),e="dialtone",o={ENGLISH:"en-US",CHINESE:"zh-CN",DUTCH:"nl-NL",FRENCH:"fr-FR",GERMAN:"de-DE",ITALIAN:"it-IT",JAPANESE:"ja-JP",PORTUGUESE:"pt-BR",RUSSIAN:"ru-RU",SPANISH:"es-LA"},c="en-US";class l{constructor(t=null){if(typeof l.instance=="object")return l.instance;const r=s.getCurrentInstance().appContext.app;this._locale=t||l.getPreferredLocale();const n=new a.RawBundleSource({resources:a.RawBundleSource.builtResources([["en-US",e,u.default],["zh-CN",e,d.default],["nl-NL",e,f.default],["fr-FR",e,g.default],["de-DE",e,S.default],["it-IT",e,N.default],["ja-JP",e,p.default],["pt-BR",e,w.default],["ru-RU",e,L.default],["es-LA",e,R.default]])});return new a.LocaleManager({bundleSource:n,allowedLocales:Object.values(o),fallbackLocale:c,preferredLocale:this._locale,namespaces:[e]}).install(r,e),l.instance=this,typeof window<"u"&&(window.onstorage=i=>{i.key==="user-locale"&&(this.currentLocale=i.newValue)}),this}static getPreferredLocale(){if(typeof window>"u"||!window.localStorage)return c;const t=window.localStorage.getItem("user-locale"),r=Object.values(o).find(n=>n.startsWith(navigator.language.slice(0,2)));return t||r||c}static getAllowedLocales(){return o}$t(...t){return a.useI18N(e).$t(...t)}$ta(...t){return a.useI18N(e).$ta(...t)}get currentLocale(){return this._locale}set currentLocale(t){if(t!==this._locale){if(!Object.values(o).includes(t))throw new Error(`Locale ${t} is not allowed, please use one of the following: ${Object.values(o).join(", ")}`);this._locale=t,a.useI18N(e).setI18N({preferredLocale:t},e)}}}exports.DialtoneLocalization=l; //# sourceMappingURL=index.cjs.map