{"version":3,"file":"index.mjs","sources":["../../../../packages/locale/index.ts"],"sourcesContent":["/*\n * @Author: zouyaoji@https://github.com/zouyaoji\n * @Date: 2021-10-27 15:54:11\n * @LastEditTime: 2022-02-10 10:52:35\n * @LastEditors: zouyaoji\n * @Description:\n * @FilePath: \\vue-cesium@next\\packages\\locale\\index.ts\n */\nimport defaultLang from './lang/zh-hans'\n\nexport type TranslatePair = {\n  [key: string]: string | string[] | TranslatePair\n}\n\nexport type Language = {\n  name: string\n  nativeName: string\n  vc: TranslatePair\n}\n\nlet lang: Language = defaultLang as Language\n\nfunction template(str: string, option) {\n  if (!str || !option) return str\n\n  return str.replace(/\\{(\\w+)\\}/g, (match, key) => {\n    return option[key]\n  })\n}\n\nconst defaultTranslator = (...args: any[]) => {\n  const [path, option] = args\n  let value\n  const array = path.split('.')\n  let current = lang\n  for (let i = 0, j = array.length; i < j; i++) {\n    const property = array[i]\n    value = current[property]\n    if (i === j - 1) return template(value, option)\n    if (!value) return ''\n    current = value\n  }\n  return template(value, option)\n}\n\nexport const t = (...args: any[]): string => {\n  return defaultTranslator(...args)\n}\n\nexport const use = (l: Language): void => {\n  lang = l || lang\n  if (lang.name) {\n    // dayjs.locale(lang.name)\n  }\n}\n\nexport const setLocale = use\n"],"names":[],"mappings":";;AACA,IAAI,IAAI,GAAG,WAAW,CAAC;AACvB,SAAS,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE;AAC/B,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM;AACrB,IAAI,OAAO,GAAG,CAAC;AACf,EAAE,OAAO,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK;AACnD,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;AACvB,GAAG,CAAC,CAAC;AACL,CAAC;AACD,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,KAAK;AACvC,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;AAC9B,EAAE,IAAI,KAAK,CAAC;AACZ,EAAE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAChC,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC;AACrB,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AAChD,IAAI,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;AAC9B,IAAI,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC9B,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;AACnB,MAAM,OAAO,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACrC,IAAI,IAAI,CAAC,KAAK;AACd,MAAM,OAAO,EAAE,CAAC;AAChB,IAAI,OAAO,GAAG,KAAK,CAAC;AACpB,GAAG;AACH,EAAE,OAAO,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACjC,CAAC,CAAC;AACU,MAAC,CAAC,GAAG,CAAC,GAAG,IAAI,KAAK;AAC9B,EAAE,OAAO,iBAAiB,CAAC,GAAG,IAAI,CAAC,CAAC;AACpC,EAAE;AACU,MAAC,GAAG,GAAG,CAAC,CAAC,KAAK;AAC1B,EAAE,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC;AACnB,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE;AACjB,GAAG;AACH,EAAE;AACU,MAAC,SAAS,GAAG;;;;"}