UNPKG

@cloudcome/utils-vue

Version:
1 lines 1.23 kB
{"version":3,"file":"page.mjs","sources":["../src/page.ts"],"sourcesContent":["import type { MaybePromise } from '@cloudcome/utils-core/types';\nimport { onBeforeMount as onBeforeMountHook, onBeforeUnmount, onMounted as onMountedHook, onUnmounted } from 'vue';\n\nexport type HookListener = () => MaybePromise<unknown>;\nexport type HookListenerWithDispose = () => MaybePromise<undefined | HookListener>;\n\nexport function usePageMount(onBeforeMount: HookListenerWithDispose) {\n let un: HookListener | undefined;\n\n onBeforeMountHook(async () => {\n un = await onBeforeMount();\n });\n\n onBeforeUnmount(() => {\n un?.();\n });\n}\n\nexport function usePageMounted(onMounted: HookListenerWithDispose) {\n let un: HookListener | undefined;\n\n onMountedHook(async () => {\n un = await onMounted();\n });\n\n onUnmounted(() => {\n un?.();\n });\n}\n"],"names":["onBeforeMount","onBeforeMountHook","onMounted","onMountedHook"],"mappings":";AAMO,SAAS,aAAaA,iBAAwC;AAC/D,MAAA;AAEJC,gBAAkB,YAAY;AAC5B,SAAK,MAAMD,gBAAc;AAAA,EAAA,CAC1B;AAED,kBAAgB,MAAM;AACf,SAAA;AAAA,EAAA,CACN;AACH;AAEO,SAAS,eAAeE,aAAoC;AAC7D,MAAA;AAEJC,YAAc,YAAY;AACxB,SAAK,MAAMD,YAAU;AAAA,EAAA,CACtB;AAED,cAAY,MAAM;AACX,SAAA;AAAA,EAAA,CACN;AACH;"}