UNPKG

@yuebai008/cli

Version:

Command line interface for rapid qg-minigame development

1 lines 522 B
import{RegisteredFileStrings}from"./localized-string-set.js";export class I18n{supportedLocales;localeData=new Map;defaultLocale;constructor(e,t){this.defaultLocale=t,this.supportedLocales=new Set(e)}registerLocaleData(e,t){this.localeData.set(e,t)}registerFileStrings(e,t){return new RegisteredFileStrings(e,t,this.localeData)}lookupClosestSupportedLocale(e){const t=Intl.getCanonicalLocales(e)[0].split("-");for(;t.length;){const e=t.join("-");if(this.supportedLocales.has(e))return e;t.pop()}return this.defaultLocale}}