From f4f472623137fd4fd7dfe01b814fc911ffc2bb59 Mon Sep 17 00:00:00 2001 From: SrGooglo Date: Tue, 13 Dec 2022 11:56:15 +0000 Subject: [PATCH] improve `publicData` method --- packages/app/src/models/user/index.js | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/packages/app/src/models/user/index.js b/packages/app/src/models/user/index.js index 4b36fa2c..f1a2f8be 100755 --- a/packages/app/src/models/user/index.js +++ b/packages/app/src/models/user/index.js @@ -31,14 +31,22 @@ export default class User { return User.bridge.get.user(undefined, { _id: user_id }) } - static async publicData() { - const token = await Session.decodedToken() - - if (!token) { - return false + static async publicData(payload = {}) { + if (!User.bridge) { + throw new Error("Bridge is not available") } - return User.bridge.get.userPublicData({ username: token.username }) + if (!payload.username && !payload.user_id) { + const token = await Session.decodedToken() + + if (token) { + payload.username = token.username + } else { + throw new Error("username or user_id is required") + } + } + + return User.bridge.get.userPublicData({ username: payload.username, user_id: payload.user_id }) } static async roles() {