Files
BewlyBewly/src/composables/useAppProvider.ts

21 lines
581 B
TypeScript

import type { Ref } from 'vue'
import type { AppPage } from '~/enums/appEnums'
export interface BewlyAppProvider {
activatedPage: Ref<AppPage>
scrollbarRef: Ref<any>
mainAppRef: Ref<HTMLElement>
handleReachBottom: Ref<(() => void) | undefined>
handlePageRefresh: Ref<(() => void) | undefined>
handleBackToTop: (targetScrollTop: number) => void
}
export function useBewlyApp(): BewlyAppProvider {
const provider = inject<BewlyAppProvider>('BEWLY_APP')
if (import.meta.env.DEV && !provider)
throw new Error('AppProvider is not injected')
return provider!
}