diff --git a/packages/app/src/models/user/index.js b/packages/app/src/models/user/index.js index 751463a6..45878c71 100755 --- a/packages/app/src/models/user/index.js +++ b/packages/app/src/models/user/index.js @@ -5,20 +5,32 @@ export default class User { return window.app?.api.withEndpoints("main") } - static async data(username) { + static async data(payload) { + const token = await Session.decodedToken() + + if (!token || !User.bridge) { + return false + } + + return User.bridge.get.user(undefined, payload ?? { username: token.username }) + } + + static async dataByUsername(username) { if (!username) { - const token = await Session.decodedToken() - - if (!token || !User.bridge) { - return false - } - - username = token.username + throw new Error("username is required") } return User.bridge.get.user(undefined, { username }) } + static async dataById(user_id) { + if (!user_id) { + throw new Error("user_id is required") + } + + return User.bridge.get.user(undefined, { _id: user_id }) + } + static async publicData() { const token = await Session.decodedToken() @@ -106,6 +118,19 @@ export default class User { return data } + static async getConnectedUsersFollowing() { + if (!User.bridge) { + return false + } + + const { data } = await app.api.customRequest("main", { + method: "GET", + url: "/connected_users_following", + }) + + return data + } + getData = async (payload, callback) => { const request = await User.bridge.get.user(undefined, { username: payload.username, _id: payload.user_id }, { parseData: false