@solid-data-modules/bookmarks-rdflib
Version:
A library to manage bookmarks in Solid Pods based on rdflib.js
21 lines • 937 B
JavaScript
import { lit, st, sym } from "rdflib";
import { bookm, dct, xsd } from "../namespaces.js";
export function updateBookmark(store, bookmarkNode, newTitle, newUrl) {
const insertions = [
st(bookmarkNode, dct("modified"), lit(new Date().toISOString(), undefined, xsd("dateTime")), bookmarkNode.doc()),
];
const titleDeletions = store.statementsMatching(bookmarkNode, dct("title"), null, bookmarkNode.doc());
const urlDeletions = store.statementsMatching(bookmarkNode, bookm("recalls"), null, bookmarkNode.doc());
if (newTitle) {
insertions.push(st(bookmarkNode, dct("title"), lit(newTitle), bookmarkNode.doc()));
}
if (newUrl) {
insertions.push(st(bookmarkNode, bookm("recalls"), sym(newUrl), bookmarkNode.doc()));
}
return {
insertions,
deletions: [...titleDeletions, ...urlDeletions],
filesToCreate: [],
};
}
//# sourceMappingURL=updateBookmark.js.map