21 lines
493 B
TypeScript
21 lines
493 B
TypeScript
/* Shared open state for the profile popup (ProfileModal.vue), shaped like
|
|
useSettings and useSignInPopup. The account row in the sidebar flips this
|
|
flag; the popup itself owns the account form. */
|
|
export function useProfileMenu() {
|
|
const open = useState<boolean>('profile:open', () => false)
|
|
|
|
function show() {
|
|
open.value = true
|
|
}
|
|
|
|
function hide() {
|
|
open.value = false
|
|
}
|
|
|
|
function toggle() {
|
|
open.value = !open.value
|
|
}
|
|
|
|
return { open, show, hide, toggle }
|
|
}
|