UNPKG

@matechat/core

Version:

前端智能化场景解决方案UI库,轻松构建你的AI应用。

65 lines (64 loc) 1.78 kB
import { ref as u, reactive as l } from "vue"; function h(n) { return new f(n); } let f = class { constructor(r) { this.locale = u("zh-cn"), this.messages = l({}), this.use = (e) => { this.locale.value = e; }, this.t = (e, s = {}) => { const t = this.messages[this.locale.value]; return p(e, s, t); }, this.mergeLocaleMessages = (e, s) => this.messages[e] ? (this.messages[e] = o(this.messages[e], s), o(this.messages[e], s)) : (this.messages[e] = s, this.messages), this.locale.value = r.locale, this.messages = l(r.messages); } }; function p(n, r, e) { const s = n.split("."); let t = e || {}; return s.forEach((c) => { t = t[c] ?? n; }), typeof t == "function" ? t(r) : t.replace(/{(\w+)}/g, (c, a) => r[a] ?? `{${a}}`); } function o(n, r) { const e = { ...n }; for (const s in r) if (Object.prototype.hasOwnProperty.call(r, s)) { const t = r[s], c = n[s]; typeof t == "object" && t !== null ? typeof c == "object" && c !== null ? e[s] = o(c, t) : e[s] = { ...t } : e[s] = t; } return e; } const g = { Input: { send: "Send", pauseAnswer: "Stop", pleaseEnter: "Please enter your question...", pleaseEnterPlaceholder: "Please enter your question and press {enterKey} to send, {shiftEnterKey} to wrap." } }, y = { Input: { send: "发送", pauseAnswer: "停止回答", pleaseEnter: "请输入您的问题...", pleaseEnterPlaceholder: "请输入您的问题,并按{enterKey}发送,按{shiftEnterKey}换行" } }, M = { "en-us": g, "zh-cn": y }, i = h({ locale: "zh-cn", messages: M }); function I() { return i; } const E = { install: (n) => { n.config.globalProperties.McI18n = i; } }; export { E as McLocale, i as default, I as useMcI18n };