mirror of
https://github.com/coracle-social/flotilla.git
synced 2025-12-10 10:57:04 +00:00
Switch to kind 309 for threads
This commit is contained in:
@@ -3,13 +3,14 @@
|
|||||||
import type {Readable} from "svelte/store"
|
import type {Readable} from "svelte/store"
|
||||||
import {writable} from "svelte/store"
|
import {writable} from "svelte/store"
|
||||||
import {createEditor, type Editor, EditorContent} from "svelte-tiptap"
|
import {createEditor, type Editor, EditorContent} from "svelte-tiptap"
|
||||||
import {createEvent, NOTE} from "@welshman/util"
|
import {createEvent} from "@welshman/util"
|
||||||
import {publishThunk} from "@welshman/app"
|
import {publishThunk} from "@welshman/app"
|
||||||
import Icon from "@lib/components/Icon.svelte"
|
import Icon from "@lib/components/Icon.svelte"
|
||||||
import Button from "@lib/components/Button.svelte"
|
import Button from "@lib/components/Button.svelte"
|
||||||
import ModalHeader from "@lib/components/ModalHeader.svelte"
|
import ModalHeader from "@lib/components/ModalHeader.svelte"
|
||||||
import ModalFooter from "@lib/components/ModalFooter.svelte"
|
import ModalFooter from "@lib/components/ModalFooter.svelte"
|
||||||
import {pushToast} from '@app/toast'
|
import {pushToast} from '@app/toast'
|
||||||
|
import {THREAD} from "@app/state"
|
||||||
import {getPubkeyHints} from "@app/commands"
|
import {getPubkeyHints} from "@app/commands"
|
||||||
import {getEditorOptions, addFile, uploadFiles, getEditorTags} from "@lib/editor"
|
import {getEditorOptions, addFile, uploadFiles, getEditorTags} from "@lib/editor"
|
||||||
|
|
||||||
@@ -33,7 +34,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
publishThunk({
|
publishThunk({
|
||||||
event: createEvent(NOTE, {content, tags}),
|
event: createEvent(THREAD, {content, tags}),
|
||||||
relays: [url],
|
relays: [url],
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
@@ -66,6 +66,8 @@ export const GENERAL = "general"
|
|||||||
|
|
||||||
export const MESSAGE = 209
|
export const MESSAGE = 209
|
||||||
|
|
||||||
|
export const THREAD = 309
|
||||||
|
|
||||||
export const COMMENT = 1111
|
export const COMMENT = 1111
|
||||||
|
|
||||||
export const MEMBERSHIPS = 10209
|
export const MEMBERSHIPS = 10209
|
||||||
|
|||||||
@@ -2,19 +2,19 @@
|
|||||||
import {onMount} from "svelte"
|
import {onMount} from "svelte"
|
||||||
import {page} from "$app/stores"
|
import {page} from "$app/stores"
|
||||||
import {subscribe} from "@welshman/app"
|
import {subscribe} from "@welshman/app"
|
||||||
import {DELETE, NOTE} from "@welshman/util"
|
import {DELETE} from "@welshman/util"
|
||||||
import Page from "@lib/components/Page.svelte"
|
import Page from "@lib/components/Page.svelte"
|
||||||
import Delay from "@lib/components/Delay.svelte"
|
import Delay from "@lib/components/Delay.svelte"
|
||||||
import SecondaryNav from "@lib/components/SecondaryNav.svelte"
|
import SecondaryNav from "@lib/components/SecondaryNav.svelte"
|
||||||
import MenuSpace from "@app/components/MenuSpace.svelte"
|
import MenuSpace from "@app/components/MenuSpace.svelte"
|
||||||
import {decodeRelay, MEMBERSHIPS, MESSAGE, COMMENT} from "@app/state"
|
import {decodeRelay, MEMBERSHIPS, THREAD, MESSAGE, COMMENT} from "@app/state"
|
||||||
|
|
||||||
$: url = decodeRelay($page.params.relay)
|
$: url = decodeRelay($page.params.relay)
|
||||||
|
|
||||||
onMount(() => {
|
onMount(() => {
|
||||||
const sub = subscribe({
|
const sub = subscribe({
|
||||||
filters: [
|
filters: [
|
||||||
{kinds: [DELETE], "#k": [NOTE, COMMENT, MESSAGE].map(String)},
|
{kinds: [DELETE], "#k": [THREAD, COMMENT, MESSAGE].map(String)},
|
||||||
{kinds: [MEMBERSHIPS], "#r": [url]},
|
{kinds: [MEMBERSHIPS], "#r": [url]},
|
||||||
],
|
],
|
||||||
relays: [url],
|
relays: [url],
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {onMount} from "svelte"
|
import {onMount} from "svelte"
|
||||||
import {page} from "$app/stores"
|
import {page} from "$app/stores"
|
||||||
import {NOTE, getListTags, getPubkeyTagValues} from "@welshman/util"
|
import {getListTags, getPubkeyTagValues} from "@welshman/util"
|
||||||
import {feedFromFilter, makeIntersectionFeed, makeRelayFeed} from "@welshman/feeds"
|
import type {Filter} from "@welshman/util"
|
||||||
|
import {feedsFromFilters, makeIntersectionFeed, makeRelayFeed} from "@welshman/feeds"
|
||||||
import {nthEq} from "@welshman/lib"
|
import {nthEq} from "@welshman/lib"
|
||||||
import {feedLoader, userMutes} from "@welshman/app"
|
import {feedLoader, userMutes} from "@welshman/app"
|
||||||
import {createScroller} from "@lib/html"
|
import {createScroller} from "@lib/html"
|
||||||
@@ -13,13 +14,14 @@
|
|||||||
import MenuSpace from "@app/components/MenuSpace.svelte"
|
import MenuSpace from "@app/components/MenuSpace.svelte"
|
||||||
import ThreadItem from "@app/components/ThreadItem.svelte"
|
import ThreadItem from "@app/components/ThreadItem.svelte"
|
||||||
import ThreadCreate from "@app/components/ThreadCreate.svelte"
|
import ThreadCreate from "@app/components/ThreadCreate.svelte"
|
||||||
import {COMMENT, deriveEventsForUrl, decodeRelay} from "@app/state"
|
import {THREAD, COMMENT, deriveEventsForUrl, decodeRelay} from "@app/state"
|
||||||
import {pushModal, pushDrawer} from "@app/modal"
|
import {pushModal, pushDrawer} from "@app/modal"
|
||||||
|
|
||||||
const url = decodeRelay($page.params.relay)
|
const url = decodeRelay($page.params.relay)
|
||||||
const events = deriveEventsForUrl(url, [NOTE])
|
const events = deriveEventsForUrl(url, [THREAD])
|
||||||
const mutedPubkeys = getPubkeyTagValues(getListTags($userMutes))
|
const mutedPubkeys = getPubkeyTagValues(getListTags($userMutes))
|
||||||
const feed = makeIntersectionFeed(makeRelayFeed(url), feedFromFilter({kinds: [NOTE, COMMENT]}))
|
const filters: Filter[] = [{kinds: [THREAD]}, {kinds: [COMMENT], '#k': [String(THREAD)]}]
|
||||||
|
const feed = makeIntersectionFeed(makeRelayFeed(url), feedsFromFilters(filters))
|
||||||
const loader = feedLoader.getLoader(feed, {
|
const loader = feedLoader.getLoader(feed, {
|
||||||
onExhausted: () => {
|
onExhausted: () => {
|
||||||
loading = false
|
loading = false
|
||||||
|
|||||||
Reference in New Issue
Block a user