diff --git a/apiserver/plane/settings/common.py b/apiserver/plane/settings/common.py
index 67f51f7bf..15d7a21b3 100644
--- a/apiserver/plane/settings/common.py
+++ b/apiserver/plane/settings/common.py
@@ -376,10 +376,21 @@ ATTACHMENT_MIME_TYPES = [
"video/x-ms-wmv",
# Archives
"application/zip",
+ "application/x-rar",
"application/x-rar-compressed",
- "application/x-zip-compressed",
"application/x-tar",
"application/gzip",
+ "application/x-zip",
+ "application/x-zip-compressed",
+ "application/x-7z-compressed",
+ "application/x-compressed",
+ "application/x-compressed-tar",
+ "application/x-compressed-tar-gz",
+ "application/x-compressed-tar-bz2",
+ "application/x-compressed-tar-zip",
+ "application/x-compressed-tar-7z",
+ "application/x-compressed-tar-rar",
+ "application/x-compressed-tar-zip",
# 3D Models
"model/gltf-binary",
"model/gltf+json",
diff --git a/web/core/components/icons/attachment/attachment-icon.tsx b/web/core/components/icons/attachment/attachment-icon.tsx
index 61835abab..e21ae8893 100644
--- a/web/core/components/icons/attachment/attachment-icon.tsx
+++ b/web/core/components/icons/attachment/attachment-icon.tsx
@@ -10,10 +10,12 @@ import {
JpgIcon,
PdfIcon,
PngIcon,
+ RarIcon,
SheetIcon,
SvgIcon,
TxtIcon,
VideoIcon,
+ ZipIcon,
} from "@/components/icons/attachment";
export const getFileIcon = (fileType: string, size: number = 28) => {
@@ -52,6 +54,10 @@ export const getFileIcon = (fileType: string, size: number = 28) => {
return ;
case "mkv":
return ;
+ case "zip":
+ return ;
+ case "rar":
+ return ;
default:
return ;
diff --git a/web/core/components/icons/attachment/index.ts b/web/core/components/icons/attachment/index.ts
index f7f1e6ed3..a2c65ceef 100644
--- a/web/core/components/icons/attachment/index.ts
+++ b/web/core/components/icons/attachment/index.ts
@@ -18,3 +18,5 @@ export * from "./svg-file-icon";
export * from "./tune-icon";
export * from "./txt-file-icon";
export * from "./video-file-icon";
+export * from "./zip-file-icon";
+export * from "./rar-file-icon";
diff --git a/web/core/components/icons/attachment/rar-file-icon.tsx b/web/core/components/icons/attachment/rar-file-icon.tsx
new file mode 100644
index 000000000..0c3dd88e1
--- /dev/null
+++ b/web/core/components/icons/attachment/rar-file-icon.tsx
@@ -0,0 +1,10 @@
+import React from "react";
+import Image from "next/image";
+// image
+import RarFileIcon from "@/public/attachment/rar-icon.png";
+// type
+import type { ImageIconPros } from "../types";
+
+export const RarIcon: React.FC = ({ width, height }) => (
+
+);
diff --git a/web/core/components/icons/attachment/zip-file-icon.tsx b/web/core/components/icons/attachment/zip-file-icon.tsx
new file mode 100644
index 000000000..8f5d0388b
--- /dev/null
+++ b/web/core/components/icons/attachment/zip-file-icon.tsx
@@ -0,0 +1,10 @@
+import React from "react";
+import Image from "next/image";
+// image
+import ZipFileIcon from "@/public/attachment/zip-icon.png";
+// type
+import type { ImageIconPros } from "../types";
+
+export const ZipIcon: React.FC = ({ width, height }) => (
+
+);
diff --git a/web/core/components/issues/attachment/attachment-list-item.tsx b/web/core/components/issues/attachment/attachment-list-item.tsx
index 027369405..0458f4485 100644
--- a/web/core/components/issues/attachment/attachment-list-item.tsx
+++ b/web/core/components/issues/attachment/attachment-list-item.tsx
@@ -38,7 +38,7 @@ export const IssueAttachmentsListItem: FC = observer(
// derived values
const attachment = attachmentId ? getAttachmentById(attachmentId) : undefined;
const fileName = getFileName(attachment?.attributes.name ?? "");
- const fileExtension = getFileExtension(attachment?.asset_url ?? "");
+ const fileExtension = getFileExtension(attachment?.attributes.name ?? "");
const fileIcon = getFileIcon(fileExtension, 18);
const fileURL = getFileURL(attachment?.asset_url ?? "");
// hooks
diff --git a/web/public/attachment/rar-icon.png b/web/public/attachment/rar-icon.png
new file mode 100644
index 000000000..7305455bd
Binary files /dev/null and b/web/public/attachment/rar-icon.png differ
diff --git a/web/public/attachment/zip-icon.png b/web/public/attachment/zip-icon.png
new file mode 100644
index 000000000..0db1da136
Binary files /dev/null and b/web/public/attachment/zip-icon.png differ