aboutsummaryrefslogtreecommitdiffstats
path: root/apps/web/components/settings/ImportExport.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'apps/web/components/settings/ImportExport.tsx')
-rw-r--r--apps/web/components/settings/ImportExport.tsx30
1 files changed, 29 insertions, 1 deletions
diff --git a/apps/web/components/settings/ImportExport.tsx b/apps/web/components/settings/ImportExport.tsx
index d6086c97..ab4fb640 100644
--- a/apps/web/components/settings/ImportExport.tsx
+++ b/apps/web/components/settings/ImportExport.tsx
@@ -16,6 +16,7 @@ import {
parseNetscapeBookmarkFile,
parseOmnivoreBookmarkFile,
parsePocketBookmarkFile,
+ parseTabSessionManagerStateFile,
} from "@/lib/importBookmarkParser";
import { cn } from "@/lib/utils";
import { useMutation } from "@tanstack/react-query";
@@ -161,7 +162,13 @@ export function ImportExportRow() {
source,
}: {
file: File;
- source: "html" | "pocket" | "omnivore" | "hoarder" | "linkwarden";
+ source:
+ | "html"
+ | "pocket"
+ | "omnivore"
+ | "hoarder"
+ | "linkwarden"
+ | "tab-session-manager";
}) => {
if (source === "html") {
return await parseNetscapeBookmarkFile(file);
@@ -173,6 +180,8 @@ export function ImportExportRow() {
return await parseOmnivoreBookmarkFile(file);
} else if (source === "linkwarden") {
return await parseLinkwardenBookmarkFile(file);
+ } else if (source === "tab-session-manager") {
+ return await parseTabSessionManagerStateFile(file);
} else {
throw new Error("Unknown source");
}
@@ -346,6 +355,25 @@ export function ImportExportRow() {
</FilePickerButton>
</ImportCard>
<ImportCard
+ text="Tab Session Manager"
+ description={t(
+ "settings.import.import_bookmarks_from_tab_session_manager_export",
+ )}
+ >
+ <FilePickerButton
+ size={"sm"}
+ loading={false}
+ accept=".json"
+ multiple={false}
+ className="flex items-center gap-2"
+ onFileSelect={(file) =>
+ runUploadBookmarkFile({ file, source: "tab-session-manager" })
+ }
+ >
+ <p>Import</p>
+ </FilePickerButton>
+ </ImportCard>
+ <ImportCard
text="Hoarder"
description={t(
"settings.import.import_bookmarks_from_hoarder_export",