diff --git a/apps/client/src/translations/en/translation.json b/apps/client/src/translations/en/translation.json
index d78f7de1fc..62dc7fac4e 100644
--- a/apps/client/src/translations/en/translation.json
+++ b/apps/client/src/translations/en/translation.json
@@ -2295,6 +2295,8 @@
"notes_count_other": "{{count}} notes",
"attributes_count_one": "{{count}} attribute",
"attributes_count_other": "{{count}} attributes",
+ "attachments_count_one": "{{count}} attachment",
+ "attachments_count_other": "{{count}} attachments",
"cancel": "Cancel",
"import": "Import",
"import_with_timeout": "Import ({{timeout}})",
diff --git a/apps/client/src/widgets/dialogs/import_preview.tsx b/apps/client/src/widgets/dialogs/import_preview.tsx
index 27ebab35d6..945b5af7bc 100644
--- a/apps/client/src/widgets/dialogs/import_preview.tsx
+++ b/apps/client/src/widgets/dialogs/import_preview.tsx
@@ -156,6 +156,7 @@ function SinglePreview({ preview }: { preview: ImportPreviewResponse }) {
{t("import_preview.notes_count", { count: preview.numNotes })}
{t("import_preview.attributes_count", { count: preview.numAttributes })}
+ {t("import_preview.attachments_count", { count: preview.numAttachments })}
diff --git a/apps/server/src/services/import/zip_preview.spec.ts b/apps/server/src/services/import/zip_preview.spec.ts
index 5e47fb52b0..ccbb1813bd 100644
--- a/apps/server/src/services/import/zip_preview.spec.ts
+++ b/apps/server/src/services/import/zip_preview.spec.ts
@@ -33,11 +33,28 @@ describe("Preview meta", () => {
type: "label",
name: "customRequestHandler",
value: ""
+ },
+ {
+ type: "label",
+ name: "safe",
+ value: ""
+ }
+ ],
+ attachments: [
+ {
+ attachmentId: "YRAEUXCDKNtn",
+ title: "icon-color.svg",
+ role: "image",
+ mime: "image/svg+xml",
+ position: 10,
+ dataFileName: "Trilium Demo_icon-color.svg"
}
]
});
const result = previewMeta(meta);
expect(result.numNotes).toBe(3);
+ expect(result.numAttributes).toBe(4);
+ expect(result.numAttachments).toBe(1);
expect(result.isDangerous).toBe(true);
expect(result.dangerousAttributes).toContain("widget");
expect(result.dangerousAttributes).toContain("customRequestHandler");
diff --git a/apps/server/src/services/import/zip_preview.ts b/apps/server/src/services/import/zip_preview.ts
index de06fcb4bf..29ddb42d05 100644
--- a/apps/server/src/services/import/zip_preview.ts
+++ b/apps/server/src/services/import/zip_preview.ts
@@ -33,6 +33,7 @@ interface PreviewContext {
dangerousAttributeCategories: Set;
numNotes: number;
numAttributes: number;
+ numAttachments: number;
}
export function previewMeta(meta: NoteMetaFile): Omit {
@@ -40,7 +41,8 @@ export function previewMeta(meta: NoteMetaFile): Omit(),
dangerousAttributeCategories: new Set(),
numNotes: 0,
- numAttributes: 0
+ numAttributes: 0,
+ numAttachments: 0
};
previewMetaInternal(meta.files, context);
@@ -49,7 +51,8 @@ export function previewMeta(meta: NoteMetaFile): Omit