From d13039dc111809ef2de6abad45fb93bd279086f9 Mon Sep 17 00:00:00 2001 From: fiatjaf Date: Thu, 16 Feb 2023 11:58:13 -0300 Subject: [PATCH] finishEvent() takes an EventTemplate and returns an Event. --- event.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/event.ts b/event.ts index 8dc35ef..60db754 100644 --- a/event.ts +++ b/event.ts @@ -2,6 +2,7 @@ import * as secp256k1 from '@noble/secp256k1' import {sha256} from '@noble/hashes/sha256' import {utf8Encoder} from './utils' +import {getPublicKey} from './keys' /* eslint-disable no-unused-vars */ export enum Kind { @@ -47,6 +48,14 @@ export function getBlankEvent(): EventTemplate { } } +export function finishEvent(t: EventTemplate, privateKey: string): Event { + let event = t as Event + event.pubkey = getPublicKey(privateKey) + event.id = getEventHash(event) + event.sig = signEvent(event, privateKey) + return event +} + export function serializeEvent(evt: Event): string { if (!validateEvent(evt)) throw new Error("can't serialize event with wrong or missing properties")