Files
peardata/client/bookmarks.js
T
Raven Scott a7648dc090
CI / test (push) Successful in 1m1s
Release rolling / release (push) Successful in 6m59s
Updates
2026-07-18 20:32:05 -04:00

74 lines
1.5 KiB
JavaScript

/**
* Compatibility shim — bookmarks are now the peer roster in peerCache.js.
*/
import {
listPeersAsBookmarks,
upsertPeer,
setPeerAlias,
removePeer,
loadPeers,
} from './peerCache.js'
/**
* @typedef {{
* id: string,
* publicKeyHex: string,
* alias?: string,
* invite?: string|null,
* lastConnectedAt?: number|null,
* createdAt: number,
* }} Bookmark
*/
/** @returns {Bookmark[]} */
export function loadBookmarks() {
return listPeersAsBookmarks()
}
/** @param {Bookmark[]} _bookmarks */
export function saveBookmarks(_bookmarks) {
// Roster writes go through upsertPeer / removePeer
return true
}
/**
* @param {{ publicKeyHex: string, alias?: string, invite?: string|null, capability?: string|null, adminSeed?: string|null }} peer
*/
export function upsertBookmark(peer) {
upsertPeer(
{
publicKeyHex: peer.publicKeyHex,
alias: peer.alias,
invite: peer.invite,
capability: peer.capability,
adminSeed: peer.adminSeed,
lastConnectedAt: Date.now(),
},
{ makeActive: true }
)
return loadBookmarks()
}
/**
* @param {string} publicKeyHex
* @param {string} alias
*/
export function setBookmarkAlias(publicKeyHex, alias) {
setPeerAlias(publicKeyHex, alias)
return loadBookmarks()
}
/**
* @param {string} publicKeyHex
*/
export function removeBookmark(publicKeyHex) {
removePeer(publicKeyHex)
return loadBookmarks()
}
export function bookmarksPath() {
return ''
}
export { loadPeers }