}>
{zoom}%
}>
diff --git a/packages/frontend/component/src/components/attachment-viewer/viewer.tsx b/packages/frontend/component/src/components/attachment-viewer/viewer.tsx
new file mode 100644
index 0000000000000..bffc3ae0884c1
--- /dev/null
+++ b/packages/frontend/component/src/components/attachment-viewer/viewer.tsx
@@ -0,0 +1,101 @@
+import clsx from 'clsx';
+import type { ReactElement } from 'react';
+
+import { Scrollable } from '../../ui/scrollbar';
+import * as styles from './styles.css';
+import { Thumbnails } from './thumbnails';
+
+interface ViewerProps {}
+
+export const Viewer = (_: ViewerProps): ReactElement => {
+ return (
+ <>
+
+
+
+ 1
+
+
+ 2
+
+
+ 3
+
+
+ 4
+
+
+ 5
+
+
+ 6
+
+
+ 7
+
+
+ 8
+
+
+ 9
+
+
+ 10
+
+
+ 11
+
+
+ 12
+
+
+
+
+
+ >
+ );
+};
diff --git a/packages/frontend/component/src/components/pdf-viewer/index.tsx b/packages/frontend/component/src/components/pdf-viewer/index.tsx
deleted file mode 100644
index a8f5177575d8a..0000000000000
--- a/packages/frontend/component/src/components/pdf-viewer/index.tsx
+++ /dev/null
@@ -1,13 +0,0 @@
-import type { ReactElement } from 'react';
-
-import { Titlebar } from './titlebar';
-
-export const PDFViewer = (): ReactElement => {
- return (
- <>
-
-
{'PDF Viewer'}
-
{'PDF ...'}
- >
- );
-};
diff --git a/packages/frontend/component/src/components/pdf-viewer/styles.css.ts b/packages/frontend/component/src/components/pdf-viewer/styles.css.ts
deleted file mode 100644
index 6228cc21a09ee..0000000000000
--- a/packages/frontend/component/src/components/pdf-viewer/styles.css.ts
+++ /dev/null
@@ -1,33 +0,0 @@
-import { cssVarV2 } from '@toeverything/theme/v2';
-import { style } from '@vanilla-extract/css';
-
-export const titlebar = style({
- display: 'flex',
- justifyContent: 'space-between',
- width: '100%',
- height: '52px',
- padding: '10px 0 10px 8px',
- background: cssVarV2('layer/background/primary'),
- fontSize: '12px',
- fontWeight: 400,
- color: cssVarV2('text/secondary'),
- borderTopWidth: '0.5px',
- borderTopStyle: 'solid',
- borderTopColor: cssVarV2('layer/insideBorder/border'),
-});
-
-export const titlebarChild = style({
- selectors: {
- [`${titlebar} > &`]: {
- display: 'flex',
- gap: '12px',
- alignItems: 'center',
- paddingLeft: '12px',
- paddingRight: '12px',
- },
- },
-});
-
-export const titlebarName = style({
- display: 'flex',
-});
diff --git a/packages/frontend/core/src/desktop/pages/workspace/attachment/index.tsx b/packages/frontend/core/src/desktop/pages/workspace/attachment/index.tsx
index ebf87001d8a8f..91ebbb2c15221 100644
--- a/packages/frontend/core/src/desktop/pages/workspace/attachment/index.tsx
+++ b/packages/frontend/core/src/desktop/pages/workspace/attachment/index.tsx
@@ -1,11 +1,23 @@
-import { PDFViewer } from '@affine/component/pdf-viewer';
+import { AttachmentViewer } from '@affine/component/attachment-viewer';
import type { ReactElement } from 'react';
+import {
+ // useIsActiveView,
+ ViewBody,
+ ViewHeader,
+ ViewIcon,
+ ViewTitle,
+} from '../../../../modules/workbench';
+
export const AttachmentPage = (): ReactElement => {
return (
<>
-
-
{'Attachment Viewer'}
+
+
+
+
+
+
>
);
};
diff --git a/packages/frontend/core/src/modules/workbench/constants.tsx b/packages/frontend/core/src/modules/workbench/constants.tsx
index 719d816fd4701..7439354f5e8a8 100644
--- a/packages/frontend/core/src/modules/workbench/constants.tsx
+++ b/packages/frontend/core/src/modules/workbench/constants.tsx
@@ -1,7 +1,9 @@
import {
AllDocsIcon,
+ AttachmentIcon,
DeleteIcon,
EdgelessIcon,
+ ExportToPdfIcon,
PageIcon,
TagIcon,
TodayIcon,
@@ -18,6 +20,8 @@ export const iconNameToIcon = {
journal:
,
tag:
,
trash:
,
+ attachment:
,
+ pdf:
,
} satisfies Record
;
export type ViewIconName = keyof typeof iconNameToIcon;