Skip to content

Commit

Permalink
fix(vue): check for undefined in useRemember(), fixes multiple ts…
Browse files Browse the repository at this point in the history
…(2722)
  • Loading branch information
jrson83 committed Apr 25, 2024
1 parent 37025d9 commit ed15c23
Showing 1 changed file with 2 additions and 3 deletions.
5 changes: 2 additions & 3 deletions packages/vue/src/useRemember.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
// @ts-nocheck
import { router } from '@inertiajs-revamped/core'
import cloneDeep from 'lodash.clonedeep'
import { type Ref, isReactive, reactive, ref, watch } from 'vue'
Expand All @@ -14,12 +13,12 @@ export default function useRemember<T extends object>(
const restored = router.restore(key)
const type = isReactive(data) ? reactive : ref
const hasCallbacks = typeof data.__remember === 'function' && typeof data.__restore === 'function'
const remembered = type(restored === undefined ? data : hasCallbacks ? data.__restore(restored) : restored)
const remembered = type(restored === undefined ? data : hasCallbacks ? data.__restore?.(restored) : restored)

watch(
remembered,
(newValue) => {
router.remember(cloneDeep(hasCallbacks ? data.__remember() : newValue), key)
router.remember(cloneDeep(hasCallbacks ? data.__remember?.() : newValue), key)
},
{ immediate: true, deep: true },
)
Expand Down

0 comments on commit ed15c23

Please sign in to comment.