Use raw SQL for counts/loads/creates/moves so Habbo DBs with VARCHAR page_id and no AUTO_INCREMENT still show and persist furni. Co-authored-by: Cursor <[email protected]>
23 lines
741 B
TypeScript
23 lines
741 B
TypeScript
import { withAdmin } from "@/lib/api-handler";
|
|
import { apiError, apiOk } from "@/lib/api-response";
|
|
import { PERMS } from "@/lib/permissions";
|
|
import { loadCatalogItemsData } from "@/lib/services/catalog-items-loader";
|
|
|
|
function jsonSafe<T>(data: T): T {
|
|
return JSON.parse(
|
|
JSON.stringify(data, (_k, v) => (typeof v === "bigint" ? Number(v) : v)),
|
|
) as T;
|
|
}
|
|
|
|
export const GET = withAdmin(
|
|
{ permission: PERMS.CATALOG_VIEW },
|
|
async (request) => {
|
|
const pageId = Number(request.nextUrl.searchParams.get("pageId"));
|
|
if (!Number.isFinite(pageId) || pageId <= 0) {
|
|
return apiError("Invalid pageId");
|
|
}
|
|
const data = await loadCatalogItemsData(pageId);
|
|
return apiOk(jsonSafe(data) as unknown as Record<string, unknown>);
|
|
},
|
|
);
|