import type { UnwrapRef } from 'vue' import { ref, isRef } from 'vue' const RefUtils = { /** * Convertit la valeur passée en référence. * S'il s'agit déjà d'une ref, selon que `maintainReactivity` est vrai ou faux, on conserve la référence existante * ou bien on la recréé pour briser la réactivité. * * @param value * @param maintainReactivity */ castToRef( value: T | Ref, maintainReactivity: boolean = true, ): Ref | Ref> { if (isRef(value)) { if (maintainReactivity) { return value } else { return ref(value.value as T) } } else { return ref(value as T) } } } export default RefUtils