web_lib

Common web application libraries
git clone https://radroots.dev/git/web_lib.git
Log | Files | Refs | LICENSE

stores.ts (1107B)


      1 import type { NostrUser } from "@radroots/nostr";
      2 import type { Session, SignerLogEntry } from "@welshman/app";
      3 import { pubkey, repository, session, sessions, signer, signerLog, tracker } from "@welshman/app";
      4 import type { Repository, Tracker } from "@welshman/net";
      5 import type { ISigner } from "@welshman/signer";
      6 import type { ReadableWithGetter, WritableWithGetter } from "@welshman/store";
      7 import { derived, type Readable } from "svelte/store";
      8 
      9 export const nostr_pubkey: WritableWithGetter<string | undefined> = pubkey;
     10 export const nostr_sessions: WritableWithGetter<Record<string, Session>> = sessions;
     11 export const nostr_session: ReadableWithGetter<Session | undefined> = session;
     12 export const nostr_signer: ReadableWithGetter<ISigner | undefined> = signer;
     13 export const nostr_signer_log: WritableWithGetter<SignerLogEntry[]> = signerLog;
     14 export const nostr_repository: Repository = repository;
     15 export const nostr_tracker: Tracker = tracker;
     16 
     17 export const nostr_user: Readable<NostrUser | undefined> = derived(
     18     pubkey,
     19     pubkey_val => (pubkey_val ? { pubkey: pubkey_val } : undefined),
     20 );