diff --git a/src/utils/user.js b/src/utils/user.js index d35d847ed..293c09f23 100644 --- a/src/utils/user.js +++ b/src/utils/user.js @@ -49,10 +49,20 @@ export const adminBlogs = userInfo?.blogs?.filter(blog => blog.admin) ?? []; */ export const adminBlogNames = adminBlogs.map(blog => blog.name); +let communitiesOrder = []; +try { + communitiesOrder = JSON.parse(localStorage.getItem('sortableCommunitiesOrder')); +} catch {} + +const getOrder = community => { + const index = communitiesOrder.indexOf(community.name); + return index === -1 ? Number.MAX_SAFE_INTEGER : index; +}; + /** * {object?} joinedCommunities - An array of community objects the current user has joined */ -export const joinedCommunities = fetchedCommunitiesInfo.response; +export const joinedCommunities = [...fetchedCommunitiesInfo.response].sort((a, b) => getOrder(a) - getOrder(b)); /** * {string[]} joinedCommunityUuids - An array of community uuids the current user has joined