fix(build): make oRPC/tRPC dist runnable under node ESM (deploy crashloop)
flake.nix only rewrote @/ aliases but left extensionless relative imports (./router) in compiled dist/. node dist/index.js (how prod runs) cannot resolve extensionless ESM specifiers -> ERR_MODULE_NOT_FOUND -> backend crashlooped (444 restarts, port 4001 dead). Extract the fixer into a shared scripts/fix-imports.mjs that appends .js to extensionless relative imports and rewrites @/ aliases, and wire it into backend + discord-gateway build phases. Verified: fresh tsc + fixer -> node dist/index.js boots; oRPC over /trpc serves both HTTP POST and WebSocket (config/dashboard/voice/moderation/ media/chatbot/analysis) end-to-end against Postgres + Redis. next build passes with the oRPC client + partysocket.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { trpc } from "@/lib/trpc/client";
|
||||
import { orpc } from "@/lib/orpc/client";
|
||||
import type { PaginatedRecordings } from "@/lib/types";
|
||||
|
||||
export const recordingsApi = {
|
||||
@@ -8,7 +8,7 @@ export const recordingsApi = {
|
||||
userId?: string,
|
||||
cursor?: string,
|
||||
) =>
|
||||
trpc.recordings.list.query({
|
||||
orpc.recordings.list({
|
||||
limit,
|
||||
channelId,
|
||||
userId,
|
||||
@@ -16,7 +16,5 @@ export const recordingsApi = {
|
||||
}) as unknown as Promise<PaginatedRecordings>,
|
||||
|
||||
delete: (id: string) =>
|
||||
trpc.recordings.delete.mutate({ id }) as unknown as Promise<{
|
||||
ok: boolean;
|
||||
}>,
|
||||
orpc.recordings.delete({ id }) as unknown as Promise<{ ok: boolean }>,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user