mirror of
https://github.com/supabase/supabase.git
synced 2026-10-05 17:35:10 +03:00
- Most changes are related to either types or `useRef` usages (it now requires an initial value). - also updated `vaul` to its latest version and haven't noticed any change ([design-system demo](https://design-system-git-react-19-supabase.vercel.app/design-system/docs/components/drawer)) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Upgraded workspace to React 19. * **Bug Fixes** * Improved null-safety and ref handling across editors, UI components, shortcuts, and markdown/image rendering to reduce runtime errors. * Safer event/timeout/interval cleanup and more robust command/context handling. * **Chores** * Bumped vaul dependency versions. * **Documentation** * Type and TypeScript accuracy improvements for clearer developer feedback. <!-- review_stack_entry_start --> [](https://app.coderabbit.ai/change-stack/supabase/supabase/pull/45886) <!-- review_stack_entry_end --> <!-- end of auto-generated comment: release notes by coderabbit.ai -->
21 lines
408 B
TypeScript
21 lines
408 B
TypeScript
import { useEffect, useRef } from 'react'
|
|
|
|
export function useChanged<T>(value: T): boolean {
|
|
const prev = useRef<T>(null)
|
|
const changed = prev.current !== value
|
|
|
|
useEffect(() => {
|
|
prev.current = value
|
|
})
|
|
|
|
return changed
|
|
}
|
|
|
|
export function useChangedSync<T>(value: T): boolean {
|
|
const prev = useRef<T>(null)
|
|
const changed = prev.current !== value
|
|
prev.current = value
|
|
|
|
return changed
|
|
}
|