From 6bf6dc713da396cd342b7d0871a1e34b58b95947 Mon Sep 17 00:00:00 2001 From: Hazelnoot <acomputerdog@gmail.com> Date: Sat, 2 Nov 2024 11:08:16 -0400 Subject: [PATCH] add functions to access deck column state --- packages/frontend/src/ui/deck/deck-store.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/frontend/src/ui/deck/deck-store.ts b/packages/frontend/src/ui/deck/deck-store.ts index 70545238f..5f33b7512 100644 --- a/packages/frontend/src/ui/deck/deck-store.ts +++ b/packages/frontend/src/ui/deck/deck-store.ts @@ -4,7 +4,7 @@ */ import { throttle } from 'throttle-debounce'; -import { markRaw } from 'vue'; +import { computed, markRaw, Ref } from 'vue'; import { notificationTypes } from 'misskey-js'; import type { BasicTimelineType } from '@/timelines.js'; import { Storage } from '@/pizzax.js'; @@ -328,3 +328,13 @@ export async function updateColumn<TColumn>(id: Column['id'], column: Partial<TC saveDeck(), ]); } + +export function getColumn<TColumn extends Column>(id: Column['id']): TColumn { + return deckStore.state.columns.find(c => c.id === id) as TColumn; +} + +export function getReactiveColumn<TColumn extends Column>(id: Column['id']): Ref<TColumn> { + return computed(() => { + return deckStore.reactiveState.columns.value.find(c => c.id === id) as TColumn; + }); +}