mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-10-30 17:32:26 +00:00
- Implements `createNip07SigningAdapter` in `js/auth/signingAdapter.js`. - Adds unit tests in `tests/auth/signingAdapter.test.mjs` verifying explicit extension handling and window fallback. Co-authored-by: PR0M3TH3AN <[email protected]>
25 lines
595 B
JavaScript
25 lines
595 B
JavaScript
export function createNip07SigningAdapter({ extension } = {}) {
|
|
const resolvedExtension =
|
|
extension ||
|
|
(typeof window !== "undefined" && window?.nostr ? window.nostr : null);
|
|
|
|
const getPubkey = async () => {
|
|
if (!resolvedExtension) {
|
|
throw new Error("NIP-07 extension unavailable.");
|
|
}
|
|
return resolvedExtension.getPublicKey();
|
|
};
|
|
|
|
const signEvent = async (event) => {
|
|
if (!resolvedExtension) {
|
|
throw new Error("NIP-07 extension unavailable.");
|
|
}
|
|
return resolvedExtension.signEvent(event);
|
|
};
|
|
|
|
return {
|
|
getPubkey,
|
|
signEvent,
|
|
};
|
|
}
|