@lskjs/i18
Version:
LSK module for internationalization with i18next.
64 lines (63 loc) • 2.16 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = _default;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _env = require("@lskjs/env");
var _jsCookie = _interopRequireDefault(require("js-cookie"));
function _default(_x) {
return _ref.apply(this, arguments);
}
function _ref() {
_ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(locale) {
var _this = this;
var UserStore;
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (!(locale && this.user && this.user.locale !== locale)) {
_context.next = 10;
break;
}
_context.prev = 1;
UserStore = this.stores.UserStore;
_context.next = 5;
return UserStore.update({
_id: this.user._id,
locale: locale
});
case 5:
_context.next = 10;
break;
case 7:
_context.prev = 7;
_context.t0 = _context["catch"](1);
console.error('uapp.setLocale', _context.t0); // eslint-disable-line no-console
case 10:
if (_jsCookie["default"] && locale && _jsCookie["default"].get('locale') !== locale) {
_jsCookie["default"].set('locale', locale);
}
if (!(this.i18.locale !== locale)) {
_context.next = 15;
break;
}
_context.next = 14;
return this.i18.setLocale(locale);
case 14:
if (!_env.isDev) {
setTimeout(function () {
_this.refresh();
}, 200);
}
case 15:
case "end":
return _context.stop();
}
}, _callee, this, [[1, 7]]);
}));
return _ref.apply(this, arguments);
}
//# sourceMappingURL=setLocale.js.map