From 2c15516d9648001e2ab307e4b1021d63be75de4f Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Wed, 30 Mar 2022 13:28:37 -0700 Subject: [PATCH] Order labels by createdAt so they maintain a consistent order --- packages/api/src/resolvers/labels/index.ts | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/api/src/resolvers/labels/index.ts b/packages/api/src/resolvers/labels/index.ts index fd779086e..249105f78 100644 --- a/packages/api/src/resolvers/labels/index.ts +++ b/packages/api/src/resolvers/labels/index.ts @@ -42,9 +42,16 @@ export const labelsResolver = authorized( }) try { - const user = await User.findOne(uid, { - relations: ['labels'], - }) + const user = await getRepository(User) + .createQueryBuilder("user") + .innerJoinAndSelect( + "user.labels", + "labels", + ) + .where("user.id = :uid", { uid }) + .orderBy("labels.createdAt", "DESC") + .getOne() + if (!user) { return { errorCodes: [LabelsErrorCode.Unauthorized], @@ -52,7 +59,7 @@ export const labelsResolver = authorized( } return { - labels: user.labels || [], + labels: user.labels?.sort((a,b) => a.createdAt.getTime() - b.createdAt.getTime()) || [], } } catch (error) { log.error(error)