oak-general-business/lib/components/my/info/index.js

58 lines
2.0 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var assert_1 = tslib_1.__importDefault(require("assert"));
var uuid_1 = require("oak-domain/lib/utils/uuid");
exports.default = OakComponent({
isList: false,
formData: function (_a) {
var features = _a.features;
var userInfo = features.token.getUserInfo();
if (userInfo) {
var id = userInfo.id, nickname = userInfo.nickname, name_1 = userInfo.name, mobile$user = userInfo.mobile$user, idState = userInfo.idState, userState = userInfo.userState, gender = userInfo.gender;
var mobileText = mobile$user.length > 1 ? this.t('moreThanOne') : (mobile$user.length == 1 ? mobile$user[0].mobile : this.t('unset'));
return {
nameText: nickname || name_1,
mobileText: mobileText,
userId: id,
nickname: nickname,
name: name_1,
idState: idState,
userState: userState,
gender: gender,
};
}
return {};
},
properties: {
hideLogout: Boolean,
},
lifetimes: {
attached: function () {
var _this = this;
this.subscribed.push(this.features.token.subscribe(function () { return _this.reRender(); }));
this.subscribed.push(this.features.cache.subscribe(function () { return _this.reRender(); }));
}
},
methods: {
logout: function () {
this.features.token.logout();
},
updateAttribute: function (attr, value) {
var _a;
var userId = this.state.userId;
(0, assert_1.default)(userId);
return this.features.cache.operate('user', {
id: (0, uuid_1.generateNewId)(),
action: 'update',
data: (_a = {},
_a[attr] = value,
_a),
filter: {
id: userId,
}
});
}
}
});