mirror of
https://github.com/Portabase/portabase.git
synced 2026-07-14 11:16:13 +02:00
Compare commits
3
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
98e40466a0 | ||
|
|
324d80a735 | ||
|
|
6770be63b6 |
@@ -7,7 +7,7 @@ import {Page, PageActions, PageContent, PageHeader, PageTitle} from "@/features/
|
|||||||
import {notFound} from "next/navigation";
|
import {notFound} from "next/navigation";
|
||||||
import {db} from "@/db";
|
import {db} from "@/db";
|
||||||
import * as drizzleDb from "@/db";
|
import * as drizzleDb from "@/db";
|
||||||
import {eq, not} from "drizzle-orm";
|
import {desc, eq, not} from "drizzle-orm";
|
||||||
import {EmptyStatePlaceholder} from "@/components/wrappers/common/empty-state-placeholder";
|
import {EmptyStatePlaceholder} from "@/components/wrappers/common/empty-state-placeholder";
|
||||||
import {Metadata} from "next";
|
import {Metadata} from "next";
|
||||||
|
|
||||||
@@ -21,7 +21,8 @@ export default async function RoutePage(props: PageParams<{}>) {
|
|||||||
where: not(eq(drizzleDb.schemas.agent.isArchived, true)),
|
where: not(eq(drizzleDb.schemas.agent.isArchived, true)),
|
||||||
with: {
|
with: {
|
||||||
databases: true
|
databases: true
|
||||||
}
|
},
|
||||||
|
orderBy: (fields) => desc(fields.createdAt),
|
||||||
});
|
});
|
||||||
|
|
||||||
console.log(agents);
|
console.log(agents);
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ export async function POST(
|
|||||||
|
|
||||||
if (status === "success") {
|
if (status === "success") {
|
||||||
const file = formData.get("file") as File | null;
|
const file = formData.get("file") as File | null;
|
||||||
|
const extension = formData.get("extension") as string | null;
|
||||||
if (!aesKeyHex || !ivHex) {
|
if (!aesKeyHex || !ivHex) {
|
||||||
return NextResponse.json({error: "Missing fields"}, {status: 400});
|
return NextResponse.json({error: "Missing fields"}, {status: 400});
|
||||||
}
|
}
|
||||||
@@ -119,7 +119,8 @@ export async function POST(
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
const fileSizeBytes = file.size;
|
const fileSizeBytes = file.size;
|
||||||
const fileExtension = getFileExtension(database.dbms)
|
// const fileExtension = '.' + (file.name.split('.').pop()?.toLowerCase() || '');
|
||||||
|
const fileExtension = extension ? extension : getFileExtension(database.dbms)
|
||||||
const decryptedFile = await decryptedDump(file, aesKeyHex, ivHex, fileExtension);
|
const decryptedFile = await decryptedDump(file, aesKeyHex, ivHex, fileExtension);
|
||||||
const uuid = uuidv4();
|
const uuid = uuidv4();
|
||||||
const fileName = `${uuid}${fileExtension}`;
|
const fileName = `${uuid}${fileExtension}`;
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ export const uploadBackupAction = userAction
|
|||||||
|
|
||||||
const arrayBuffer = await file.arrayBuffer();
|
const arrayBuffer = await file.arrayBuffer();
|
||||||
|
|
||||||
|
const fileSize = file.size;
|
||||||
const uuid = uuidv4();
|
const uuid = uuidv4();
|
||||||
const fileName = `imported_${uuid}${fileExtension}`;
|
const fileName = `imported_${uuid}${fileExtension}`;
|
||||||
const buffer = Buffer.from(arrayBuffer);
|
const buffer = Buffer.from(arrayBuffer);
|
||||||
@@ -85,6 +86,7 @@ export const uploadBackupAction = userAction
|
|||||||
status: 'success',
|
status: 'success',
|
||||||
databaseId: database.id,
|
databaseId: database.id,
|
||||||
file: fileName,
|
file: fileName,
|
||||||
|
fileSize: fileSize,
|
||||||
})
|
})
|
||||||
.returning();
|
.returning();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user