aboutsummaryrefslogtreecommitdiffstats
path: root/apps/web/lib/netscapeBookmarkParser.ts
diff options
context:
space:
mode:
authorMohamedBassem <me@mbassem.com>2024-09-21 17:49:47 +0000
committerMohamedBassem <me@mbassem.com>2024-09-21 17:51:58 +0000
commit9dd6f216ad18c09a28eaad67411d3a0e7f57a04f (patch)
tree708ac6b5f9fa58ec41e80ba6e775b742a78f41bc /apps/web/lib/netscapeBookmarkParser.ts
parentd62c9724b7f4cb728cd5b5496fdcc0eba8330772 (diff)
downloadkarakeep-9dd6f216ad18c09a28eaad67411d3a0e7f57a04f.tar.zst
feature(web): Add support for importing bookmarks from Pocket
Diffstat (limited to 'apps/web/lib/netscapeBookmarkParser.ts')
-rw-r--r--apps/web/lib/netscapeBookmarkParser.ts31
1 files changed, 0 insertions, 31 deletions
diff --git a/apps/web/lib/netscapeBookmarkParser.ts b/apps/web/lib/netscapeBookmarkParser.ts
deleted file mode 100644
index 196c0525..00000000
--- a/apps/web/lib/netscapeBookmarkParser.ts
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copied from https://gist.github.com/devster31/4e8c6548fd16ffb75c02e6f24e27f9b9
-import * as cheerio from "cheerio";
-
-export async function parseNetscapeBookmarkFile(file: File) {
- const textContent = await file.text();
-
- if (!textContent.startsWith("<!DOCTYPE NETSCAPE-Bookmark-file-1>")) {
- throw Error("The uploaded html file does not seem to be a bookmark file");
- }
-
- const $ = cheerio.load(textContent);
-
- return $("a")
- .map(function (_index, a) {
- const $a = $(a);
- const addDate = $a.attr("add_date");
- let tags: string[] = [];
- try {
- tags = $a.attr("tags")?.split(",") ?? [];
- } catch (e) {
- /* empty */
- }
- return {
- title: $a.text(),
- url: $a.attr("href"),
- tags: tags,
- addDate: typeof addDate === "undefined" ? undefined : parseInt(addDate),
- };
- })
- .get();
-}