diff options
Diffstat (limited to 'packages/client/src/scripts/page-metadata.ts')
| -rw-r--r-- | packages/client/src/scripts/page-metadata.ts | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/packages/client/src/scripts/page-metadata.ts b/packages/client/src/scripts/page-metadata.ts deleted file mode 100644 index 0db8369f9d..0000000000 --- a/packages/client/src/scripts/page-metadata.ts +++ /dev/null @@ -1,41 +0,0 @@ -import * as misskey from 'misskey-js'; -import { ComputedRef, inject, isRef, onActivated, onMounted, provide, ref, Ref } from 'vue'; - -export const setPageMetadata = Symbol('setPageMetadata'); -export const pageMetadataProvider = Symbol('pageMetadataProvider'); - -export type PageMetadata = { - title: string; - subtitle?: string; - icon?: string | null; - avatar?: misskey.entities.User | null; - userName?: misskey.entities.User | null; - bg?: string; -}; - -export function definePageMetadata(metadata: PageMetadata | null | Ref<PageMetadata | null> | ComputedRef<PageMetadata | null>): void { - const _metadata = isRef(metadata) ? metadata : ref(metadata); - - provide(pageMetadataProvider, _metadata); - - const set = inject(setPageMetadata) as any; - if (set) { - set(_metadata); - - onMounted(() => { - set(_metadata); - }); - - onActivated(() => { - set(_metadata); - }); - } -} - -export function provideMetadataReceiver(callback: (info: ComputedRef<PageMetadata>) => void): void { - provide(setPageMetadata, callback); -} - -export function injectPageMetadata(): PageMetadata | undefined { - return inject(pageMetadataProvider); -} |