@cloudbase/app
Version:
cloudbase javascript sdk core
54 lines • 8.26 kB
JavaScript
var _a;
import { langEvent } from '@cloudbase/utilities';
export var LANGS;
(function (LANGS) {
LANGS["ZH"] = "zh-CN";
LANGS["EN"] = "en-US";
})(LANGS || (LANGS = {}));
export var LANG_HEADER_KEY = 'Accept-Language';
export var langMap = (_a = {},
_a[LANGS.EN] = {
'请检查调用方式,或前往云开发 AI+ 首页查看文档': 'Please check the calling method or visit the AI+ homepage to view the documentation',
'AI+ 请求出错,错误码': 'AI+ request error, error code',
错误信息: 'error message',
未实现: 'not implemented',
'小程序不支持 wasm 加载': 'wasm loading is not supported in mini programs',
'小程序不支持动态 js 加载': 'dynamic js loading is not supported in mini programs',
请求超时: 'request timeout',
'缺少 privatelink sdk 地址': 'missing privatelink sdk address',
},
_a);
export var t = function (text, lang) { var _a; return ((_a = langMap[lang]) === null || _a === void 0 ? void 0 : _a[text]) || text; };
var getLangCacheKey = function (config) { return "lang_".concat(config.clientId || config.env); };
export var i18nProxy = function (platform, config) {
var _a, _b;
var cacheKey = getLangCacheKey(config);
var localStorage = (platform.adapter || {}).localStorage;
var lang = config.lang || ((_a = localStorage === null || localStorage === void 0 ? void 0 : localStorage.getItem) === null || _a === void 0 ? void 0 : _a.call(localStorage, cacheKey)) || LANGS.ZH;
(_b = localStorage === null || localStorage === void 0 ? void 0 : localStorage.setItem) === null || _b === void 0 ? void 0 : _b.call(localStorage, cacheKey, lang);
return new Proxy({
t: function (text) { return t(text, lang); },
LANG_HEADER_KEY: LANG_HEADER_KEY,
lang: lang,
}, {
get: function (target, prop) {
var _a;
if (prop === 'lang') {
return ((_a = localStorage === null || localStorage === void 0 ? void 0 : localStorage.getItem) === null || _a === void 0 ? void 0 : _a.call(localStorage, cacheKey)) || target[prop];
}
return target[prop];
},
set: function (target, prop, newValue) {
var _a;
if (prop === 'lang' && newValue !== target[prop]) {
target[prop] = newValue;
target.t = function (text) { return t(text, newValue); };
(_a = localStorage === null || localStorage === void 0 ? void 0 : localStorage.setItem) === null || _a === void 0 ? void 0 : _a.call(localStorage, cacheKey, newValue);
langEvent.bus.fire(langEvent.LANG_CHANGE_EVENT, { i18n: target });
}
target[prop] = newValue;
return true;
},
});
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWJzL2xhbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUVoRCxNQUFNLENBQU4sSUFBWSxLQUdYO0FBSEQsV0FBWSxLQUFLO0lBQ2YscUJBQVksQ0FBQTtJQUNaLHFCQUFZLENBQUE7QUFDZCxDQUFDLEVBSFcsS0FBSyxLQUFMLEtBQUssUUFHaEI7QUFFRCxNQUFNLENBQUMsSUFBTSxlQUFlLEdBQUcsaUJBQWlCLENBQUE7QUFFaEQsTUFBTSxDQUFDLElBQU0sT0FBTztJQUNsQixHQUFDLEtBQUssQ0FBQyxFQUFFLElBQUc7UUFDViwyQkFBMkIsRUFDekIscUZBQXFGO1FBQ3ZGLGNBQWMsRUFBRSwrQkFBK0I7UUFDL0MsSUFBSSxFQUFFLGVBQWU7UUFDckIsR0FBRyxFQUFFLGlCQUFpQjtRQUN0QixnQkFBZ0IsRUFBRSxnREFBZ0Q7UUFDbEUsZ0JBQWdCLEVBQUUsc0RBQXNEO1FBQ3hFLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsdUJBQXVCLEVBQUUsaUNBQWlDO0tBQzNEO09BQ0YsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFNLENBQUMsR0FBRyxVQUFDLElBQVksRUFBRSxJQUFXLFlBQUssT0FBQSxDQUFBLE1BQUEsT0FBTyxDQUFDLElBQUksQ0FBQywwQ0FBRyxJQUFJLENBQUMsS0FBSSxJQUFJLENBQUEsRUFBQSxDQUFBO0FBRTdFLElBQU0sZUFBZSxHQUFHLFVBQUEsTUFBTSxJQUFJLE9BQUEsZUFBUSxNQUFNLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUUsRUFBdkMsQ0FBdUMsQ0FBQTtBQUV6RSxNQUFNLENBQUMsSUFBTSxTQUFTLEdBQUcsVUFBQyxRQUFRLEVBQUUsTUFBTTs7SUFDeEMsSUFBTSxRQUFRLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ2hDLElBQUEsWUFBWSxHQUFLLENBQUEsUUFBUSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUEsYUFBM0IsQ0FBMkI7SUFDL0MsSUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksS0FBSSxNQUFBLFlBQVksYUFBWixZQUFZLHVCQUFaLFlBQVksQ0FBRSxPQUFPLDZEQUFHLFFBQVEsQ0FBQyxDQUFBLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQTtJQUN6RSxNQUFBLFlBQVksYUFBWixZQUFZLHVCQUFaLFlBQVksQ0FBRSxPQUFPLDZEQUFHLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUV2QyxPQUFPLElBQUksS0FBSyxDQUNkO1FBQ0UsQ0FBQyxFQUFFLFVBQUMsSUFBWSxJQUFLLE9BQUEsQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsRUFBYixDQUFhO1FBQ2xDLGVBQWUsaUJBQUE7UUFDZixJQUFJLE1BQUE7S0FDTCxFQUNEO1FBQ0UsR0FBRyxZQUFDLE1BQU0sRUFBRSxJQUFJOztZQUNkLElBQUksSUFBSSxLQUFLLE1BQU0sRUFBRTtnQkFDbkIsT0FBTyxDQUFBLE1BQUEsWUFBWSxhQUFaLFlBQVksdUJBQVosWUFBWSxDQUFFLE9BQU8sNkRBQUcsUUFBUSxDQUFDLEtBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO2FBQ3pEO1lBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDckIsQ0FBQztRQUNELEdBQUcsWUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVE7O1lBQ3hCLElBQUksSUFBSSxLQUFLLE1BQU0sSUFBSSxRQUFRLEtBQUssTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNoRCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFBO2dCQUN2QixNQUFNLENBQUMsQ0FBQyxHQUFHLFVBQUMsSUFBWSxJQUFLLE9BQUEsQ0FBQyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsRUFBakIsQ0FBaUIsQ0FBQTtnQkFDOUMsTUFBQSxZQUFZLGFBQVosWUFBWSx1QkFBWixZQUFZLENBQUUsT0FBTyw2REFBRyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUE7Z0JBQzNDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFBO2FBQ2xFO1lBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQTtZQUV2QixPQUFPLElBQUksQ0FBQTtRQUNiLENBQUM7S0FDRixDQUNGLENBQUE7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBsYW5nRXZlbnQgfSBmcm9tICdAY2xvdWRiYXNlL3V0aWxpdGllcydcblxuZXhwb3J0IGVudW0gTEFOR1Mge1xuICBaSCA9ICd6aC1DTicsXG4gIEVOID0gJ2VuLVVTJyxcbn1cblxuZXhwb3J0IGNvbnN0IExBTkdfSEVBREVSX0tFWSA9ICdBY2NlcHQtTGFuZ3VhZ2UnXG5cbmV4cG9ydCBjb25zdCBsYW5nTWFwID0ge1xuICBbTEFOR1MuRU5dOiB7XG4gICAgJ+ivt+ajgOafpeiwg+eUqOaWueW8j++8jOaIluWJjeW+gOS6keW8gOWPkSBBSSsg6aaW6aG15p+l55yL5paH5qGjJzpcbiAgICAgICdQbGVhc2UgY2hlY2sgdGhlIGNhbGxpbmcgbWV0aG9kIG9yIHZpc2l0IHRoZSBBSSsgaG9tZXBhZ2UgdG8gdmlldyB0aGUgZG9jdW1lbnRhdGlvbicsXG4gICAgJ0FJKyDor7fmsYLlh7rplJnvvIzplJnor6/noIEnOiAnQUkrIHJlcXVlc3QgZXJyb3IsIGVycm9yIGNvZGUnLFxuICAgIOmUmeivr+S/oeaBrzogJ2Vycm9yIG1lc3NhZ2UnLFxuICAgIOacquWunueOsDogJ25vdCBpbXBsZW1lbnRlZCcsXG4gICAgJ+Wwj+eoi+W6j+S4jeaUr+aMgSB3YXNtIOWKoOi9vSc6ICd3YXNtIGxvYWRpbmcgaXMgbm90IHN1cHBvcnRlZCBpbiBtaW5pIHByb2dyYW1zJyxcbiAgICAn5bCP56iL5bqP5LiN5pSv5oyB5Yqo5oCBIGpzIOWKoOi9vSc6ICdkeW5hbWljIGpzIGxvYWRpbmcgaXMgbm90IHN1cHBvcnRlZCBpbiBtaW5pIHByb2dyYW1zJyxcbiAgICDor7fmsYLotoXml7Y6ICdyZXF1ZXN0IHRpbWVvdXQnLFxuICAgICfnvLrlsJEgcHJpdmF0ZWxpbmsgc2RrIOWcsOWdgCc6ICdtaXNzaW5nIHByaXZhdGVsaW5rIHNkayBhZGRyZXNzJyxcbiAgfSxcbn1cblxuZXhwb3J0IGNvbnN0IHQgPSAodGV4dDogc3RyaW5nLCBsYW5nOiBMQU5HUykgPT4gbGFuZ01hcFtsYW5nXT8uW3RleHRdIHx8IHRleHRcblxuY29uc3QgZ2V0TGFuZ0NhY2hlS2V5ID0gY29uZmlnID0+IGBsYW5nXyR7Y29uZmlnLmNsaWVudElkIHx8IGNvbmZpZy5lbnZ9YFxuXG5leHBvcnQgY29uc3QgaTE4blByb3h5ID0gKHBsYXRmb3JtLCBjb25maWcpID0+IHtcbiAgY29uc3QgY2FjaGVLZXkgPSBnZXRMYW5nQ2FjaGVLZXkoY29uZmlnKVxuICBjb25zdCB7IGxvY2FsU3RvcmFnZSB9ID0gcGxhdGZvcm0uYWRhcHRlciB8fCB7fVxuICBjb25zdCBsYW5nID0gY29uZmlnLmxhbmcgfHwgbG9jYWxTdG9yYWdlPy5nZXRJdGVtPy4oY2FjaGVLZXkpIHx8IExBTkdTLlpIXG4gIGxvY2FsU3RvcmFnZT8uc2V0SXRlbT8uKGNhY2hlS2V5LCBsYW5nKVxuXG4gIHJldHVybiBuZXcgUHJveHkoXG4gICAge1xuICAgICAgdDogKHRleHQ6IHN0cmluZykgPT4gdCh0ZXh0LCBsYW5nKSxcbiAgICAgIExBTkdfSEVBREVSX0tFWSxcbiAgICAgIGxhbmcsXG4gICAgfSxcbiAgICB7XG4gICAgICBnZXQodGFyZ2V0LCBwcm9wKSB7XG4gICAgICAgIGlmIChwcm9wID09PSAnbGFuZycpIHtcbiAgICAgICAgICByZXR1cm4gbG9jYWxTdG9yYWdlPy5nZXRJdGVtPy4oY2FjaGVLZXkpIHx8IHRhcmdldFtwcm9wXVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0YXJnZXRbcHJvcF1cbiAgICAgIH0sXG4gICAgICBzZXQodGFyZ2V0LCBwcm9wLCBuZXdWYWx1ZSkge1xuICAgICAgICBpZiAocHJvcCA9PT0gJ2xhbmcnICYmIG5ld1ZhbHVlICE9PSB0YXJnZXRbcHJvcF0pIHtcbiAgICAgICAgICB0YXJnZXRbcHJvcF0gPSBuZXdWYWx1ZVxuICAgICAgICAgIHRhcmdldC50ID0gKHRleHQ6IHN0cmluZykgPT4gdCh0ZXh0LCBuZXdWYWx1ZSlcbiAgICAgICAgICBsb2NhbFN0b3JhZ2U/LnNldEl0ZW0/LihjYWNoZUtleSwgbmV3VmFsdWUpXG4gICAgICAgICAgbGFuZ0V2ZW50LmJ1cy5maXJlKGxhbmdFdmVudC5MQU5HX0NIQU5HRV9FVkVOVCwgeyBpMThuOiB0YXJnZXQgfSlcbiAgICAgICAgfVxuXG4gICAgICAgIHRhcmdldFtwcm9wXSA9IG5ld1ZhbHVlXG5cbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH0sXG4gICAgfSxcbiAgKVxufVxuIl19