Switch to different settings event

This commit is contained in:
Jon Staab
2024-10-17 15:48:35 -07:00
parent b4baef215a
commit 53d298752c
2 changed files with 5 additions and 7 deletions

View File

@@ -21,7 +21,6 @@ import {
getIdFilters, getIdFilters,
WRAP, WRAP,
RELAYS, RELAYS,
APP_DATA,
REACTION, REACTION,
ZAP_RESPONSE, ZAP_RESPONSE,
DIRECT_MESSAGE, DIRECT_MESSAGE,
@@ -245,7 +244,7 @@ export const deriveEventsForUrl = (url: string, kinds: number[]) =>
// Settings // Settings
export const SETTINGS = "nostr-engine/User/settings/v1" export const SETTINGS = 38489
export type Settings = { export type Settings = {
event: TrustedEvent, event: TrustedEvent,
@@ -259,7 +258,7 @@ export const defaultSettings = {
} }
export const settings = deriveEventsMapped<Settings>(repository, { export const settings = deriveEventsMapped<Settings>(repository, {
filters: [{kinds: [APP_DATA], '#d': [SETTINGS]}], filters: [{kinds: [SETTINGS]}],
itemToEvent: item => item.event, itemToEvent: item => item.event,
eventToItem: async (event: TrustedEvent) => eventToItem: async (event: TrustedEvent) =>
({event, values: {...defaultSettings, ...parseJson(await ensurePlaintext(event))}}) ({event, values: {...defaultSettings, ...parseJson(await ensurePlaintext(event))}})
@@ -274,7 +273,7 @@ export const {
store: settings, store: settings,
getKey: settings => settings.event.pubkey, getKey: settings => settings.event.pubkey,
load: (pubkey: string, request: Partial<SubscribeRequestWithHandlers> = {}) => load: (pubkey: string, request: Partial<SubscribeRequestWithHandlers> = {}) =>
load({...request, filters: [{kinds: [APP_DATA], '#d': [SETTINGS], authors: [pubkey]}]}), load({...request, filters: [{kinds: [SETTINGS], authors: [pubkey]}]}),
}) })

View File

@@ -1,6 +1,6 @@
<script lang="ts"> <script lang="ts">
import {ctx} from "@welshman/lib" import {ctx} from "@welshman/lib"
import {getListTags, createEvent, getPubkeyTagValues, MUTES, APP_DATA} from "@welshman/util" import {getListTags, createEvent, getPubkeyTagValues, MUTES} from "@welshman/util"
import {pubkey, signer, userMutes, tagPubkey, publishThunk} from "@welshman/app" import {pubkey, signer, userMutes, tagPubkey, publishThunk} from "@welshman/app"
import Field from "@lib/components/Field.svelte" import Field from "@lib/components/Field.svelte"
import FieldInline from "@lib/components/FieldInline.svelte" import FieldInline from "@lib/components/FieldInline.svelte"
@@ -15,9 +15,8 @@
const onSubmit = async () => { const onSubmit = async () => {
publishThunk({ publishThunk({
event: createEvent(APP_DATA, { event: createEvent(SETTINGS, {
content: await $signer!.nip04.encrypt($pubkey!, JSON.stringify(settings)), content: await $signer!.nip04.encrypt($pubkey!, JSON.stringify(settings)),
tags: [["d", SETTINGS]]
}), }),
relays: ctx.app.router.WriteRelays().getUrls(), relays: ctx.app.router.WriteRelays().getUrls(),
}) })