| 123456789101112131415161718192021222324252627 |
- import type { UnwrapRef } from 'vue'
- import { ref, isRef } from 'vue'
- export default class RefUtils {
- /**
- * Convertit la valeur du filtre 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
- */
- static castToRef<T>(
- value: T | Ref<T>,
- maintainReactivity: boolean = true,
- ): Ref<T> | Ref<UnwrapRef<T>> {
- if (isRef(value)) {
- if (maintainReactivity) {
- return value
- } else {
- return ref(value.value as T)
- }
- } else {
- return ref(value as T)
- }
- }
- }
|