mirror of
https://github.com/pmndrs/zustand.git
synced 2025-12-08 19:45:52 +00:00
fix(shallow): restrict types (#1070)
* fix(shallow): restrict types * fix tsc tests
This commit is contained in:
parent
81d7c4fa13
commit
7e5b72ba63
@ -1,4 +1,24 @@
|
||||
export default function shallow<T, U>(objA: T, objB: U) {
|
||||
function shallow<
|
||||
T extends (...args: unknown[]) => unknown,
|
||||
U extends (...args: unknown[]) => unknown
|
||||
>(objA: T, objB: U): boolean
|
||||
|
||||
function shallow<
|
||||
T extends string | number | boolean,
|
||||
U extends string | number | boolean
|
||||
>(objA: T, objB: U): boolean
|
||||
|
||||
function shallow<T extends unknown[], U extends unknown[]>(
|
||||
objA: T,
|
||||
objB: U
|
||||
): boolean
|
||||
|
||||
function shallow<
|
||||
T extends Record<string, unknown>,
|
||||
U extends Record<string, unknown>
|
||||
>(objA: T, objB: U): boolean
|
||||
|
||||
function shallow<T, U>(objA: T, objB: U) {
|
||||
if (Object.is(objA, objB)) {
|
||||
return true
|
||||
}
|
||||
@ -24,3 +44,5 @@ export default function shallow<T, U>(objA: T, objB: U) {
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
export default shallow
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user