Skip to content

Commit 7105d65

Browse files
committed
feat: add DIRECTORY_NAME enum and update file upload hook to utilize it
1 parent d0ad423 commit 7105d65

File tree

2 files changed

+18
-10
lines changed

2 files changed

+18
-10
lines changed

src/backend/models/domain-models.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,14 @@ export type REACTION_TYPE =
161161
| "CRY"
162162
| "HAHA";
163163

164+
export enum DIRECTORY_NAME {
165+
ARTICLE_COVER = "article-cover",
166+
ARTICLE_CONTENT = "article-content",
167+
USER_PROFILE = "user-profile",
168+
USER_PROFILE_README_CONTENT = "user-profile-readme-content",
169+
COMMENT_ATTACHMENT = "comment-attachment",
170+
}
171+
164172
export interface Reaction {
165173
resource_id: string;
166174
resource_type: "ARTICLE" | "COMMENT";

src/hooks/use-file-upload.tsx

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
// import { DIRECTORY_NAME } from "@/backend/domain-models";
2+
import { DIRECTORY_NAME } from "@/backend/models/domain-models";
3+
import { generateRandomString } from "@/lib/utils";
24
import { useState } from "react";
35

46
export const useServerFile = () => {
@@ -8,24 +10,22 @@ export const useServerFile = () => {
810

911
const uploadFile = async (param: {
1012
files: FileList | File[];
11-
// directory: DIRECTORY_NAME;
13+
directory: DIRECTORY_NAME;
1214
generateUniqueFileName?: boolean;
1315
}) => {
1416
// loader
1517
setUploading(true);
1618

1719
// post files to server
18-
// const keys = Array.from(param.files).map((file) => {
19-
// return param.generateUniqueFileName
20-
// ? `${param.directory}/${generateRandomString(30, "counterbd-")}-${
21-
// file.name
22-
// }`
23-
// : `${param.directory}/${file.name}`;
24-
// });
20+
const keys = Array.from(param.files).map((file) => {
21+
return param.generateUniqueFileName
22+
? `${param.directory}/${generateRandomString(30)}-${file.name}`
23+
: `${param.directory}/${file.name}`;
24+
});
2525

2626
const signApi = await fetch(`/api/storage/sign`, {
2727
method: "POST",
28-
// body: JSON.stringify({ keys }),
28+
body: JSON.stringify({ keys }),
2929
});
3030
const signResponse = await signApi.json();
3131

@@ -54,7 +54,7 @@ export const useServerFile = () => {
5454
return {
5555
success: true,
5656
error: null,
57-
// data: { keys },
57+
data: { keys },
5858
};
5959
};
6060

0 commit comments

Comments
 (0)