17 lines
566 B
TypeScript
17 lines
566 B
TypeScript
import { writable } from "svelte/store";
|
|
import { commands, events, type SceneFriendNeko } from "$lib/bindings";
|
|
import { createEventSource } from "./listener-utils";
|
|
|
|
export const sceneFriends = writable<SceneFriendNeko[]>([]);
|
|
|
|
export const { start: startFriendCursorTracking, stop: stopFriendCursorTracking } =
|
|
createEventSource(async (addEventListener) => {
|
|
sceneFriends.set(await commands.getSceneFriends());
|
|
|
|
addEventListener(
|
|
await events.sceneFriendsUpdated.listen((event) => {
|
|
sceneFriends.set(event.payload);
|
|
}),
|
|
);
|
|
});
|