import { ref, shallowRef } from 'vue'
const visible = ref(false)
const message = shallowRef('')
let _resolve = null
export function useConfirmState() {
return { visible, message }
}
/**
* Show a confirm dialog. Returns a Promise<boolean>.
* true → user confirmed (YES)
* false → user cancelled (NO / backdrop)
*/
export function useConfirm() {
return function confirm(msg) {
message.value = msg
visible.value = true
return new Promise(resolve => {
_resolve = resolve
})
}
}
export function _confirmResolve(result) {
visible.value = false
_resolve?.(result)
_resolve = null
}