A decentralized music tracking and discovery platform built on AT Protocol 🎵

[api] fix directory query (dropbox/googledrive)

+15 -2
+6 -1
apps/api/src/xrpc/app/rocksky/dropbox/getFiles.ts
··· 1 import { HandlerAuth } from "@atproto/xrpc-server"; 2 import { Context } from "context"; 3 import { and, eq } from "drizzle-orm"; 4 import { Effect, pipe } from "effect"; 5 import { Server } from "lexicon"; 6 import { QueryParams } from "lexicon/types/app/rocksky/dropbox/getFiles"; ··· 50 eq(tables.dropbox.id, tables.dropboxDirectories.dropboxId) 51 ) 52 .leftJoin(tables.users, eq(tables.dropbox.userId, tables.users.id)) 53 .where( 54 and( 55 eq(tables.users.did, did), 56 - eq(tables.dropboxDirectories.path, params.at) 57 ) 58 ) 59 .execute(),
··· 1 import { HandlerAuth } from "@atproto/xrpc-server"; 2 import { Context } from "context"; 3 import { and, eq } from "drizzle-orm"; 4 + import { alias } from "drizzle-orm/pg-core"; 5 import { Effect, pipe } from "effect"; 6 import { Server } from "lexicon"; 7 import { QueryParams } from "lexicon/types/app/rocksky/dropbox/getFiles"; ··· 51 eq(tables.dropbox.id, tables.dropboxDirectories.dropboxId) 52 ) 53 .leftJoin(tables.users, eq(tables.dropbox.userId, tables.users.id)) 54 + .leftJoin( 55 + alias(tables.dropboxDirectories, "parent"), 56 + eq(tables.dropboxDirectories.id, tables.dropboxDirectories.parentId) 57 + ) 58 .where( 59 and( 60 eq(tables.users.did, did), 61 + eq(alias(tables.dropboxDirectories, "parent").path, params.at) 62 ) 63 ) 64 .execute(),
+9 -1
apps/api/src/xrpc/app/rocksky/googledrive/getFiles.ts
··· 1 import { Context } from "context"; 2 import { and, eq } from "drizzle-orm"; 3 import { Effect, pipe } from "effect"; 4 import { Server } from "lexicon"; 5 import { QueryParams } from "lexicon/types/app/rocksky/googledrive/getFiles"; ··· 49 eq(tables.googleDrive.id, tables.googleDriveDirectories.googleDriveId) 50 ) 51 .leftJoin(tables.users, eq(tables.googleDrive.userId, tables.users.id)) 52 .where( 53 and( 54 eq(tables.users.did, did), 55 - eq(tables.googleDriveDirectories.path, params.at) 56 ) 57 ) 58 .execute(),
··· 1 import { Context } from "context"; 2 import { and, eq } from "drizzle-orm"; 3 + import { alias } from "drizzle-orm/pg-core"; 4 import { Effect, pipe } from "effect"; 5 import { Server } from "lexicon"; 6 import { QueryParams } from "lexicon/types/app/rocksky/googledrive/getFiles"; ··· 50 eq(tables.googleDrive.id, tables.googleDriveDirectories.googleDriveId) 51 ) 52 .leftJoin(tables.users, eq(tables.googleDrive.userId, tables.users.id)) 53 + .leftJoin( 54 + alias(tables.googleDriveDirectories, "parent"), 55 + eq( 56 + tables.googleDriveDirectories.id, 57 + tables.googleDriveDirectories.parentId 58 + ) 59 + ) 60 .where( 61 and( 62 eq(tables.users.did, did), 63 + eq(alias(tables.googleDriveDirectories, "parent").path, params.at) 64 ) 65 ) 66 .execute(),