From b1dd93f8b5872ed27878cdc4fe0fda018e33f953 Mon Sep 17 00:00:00 2001 From: Harris Miller Date: Tue, 3 Mar 2026 21:31:57 -0700 Subject: [PATCH] Revert "fix (merge funcs) optimize when both sides are same type (#129)" This reverts commit 13d36d597c51793627a7b0dc0d83c62f1236029b. --- test/mergeDeepLeft.test.ts | 25 ------------------------- test/mergeDeepRight.test.ts | 25 ------------------------- test/mergeLeft.test.ts | 14 -------------- test/mergeRight.test.ts | 14 -------------- types/mergeDeepLeft.d.ts | 2 -- types/mergeDeepRight.d.ts | 2 -- types/mergeLeft.d.ts | 2 -- types/mergeRight.d.ts | 2 -- 8 files changed, 86 deletions(-) delete mode 100644 test/mergeDeepLeft.test.ts delete mode 100644 test/mergeDeepRight.test.ts diff --git a/test/mergeDeepLeft.test.ts b/test/mergeDeepLeft.test.ts deleted file mode 100644 index 2793f13..0000000 --- a/test/mergeDeepLeft.test.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { expectType } from 'tsd'; -import { mergeDeepLeft } from '../es'; - -const foo = { foo: 'foo', inner: { a: 1 } }; -const bar = { bar: 'bar', inner: { b: 5 } }; -const foo2 = { foo: 2 }; - -expectType<{ foo: string; bar: string; inner: { a: number; b: number } }>(mergeDeepLeft(foo, bar)); -expectType<{ foo: string; inner: { a: number } }>(mergeDeepLeft(foo, foo2)); -expectType<{ foo: number; inner: { a: number } }>(mergeDeepLeft(foo2, foo)); - -type TestType = { - foo: string; - bar: string; - inner: { a: number; b: number } -}; - -const obj1 = {} as TestType; -const obj2 = {} as TestType; - -expectType(mergeDeepLeft(obj1, obj2)); -expectType(mergeDeepLeft(obj2, obj1)); - -expectType(mergeDeepLeft(obj1, { foo: '', bar: '', inner: { a: 1, b: 2 } })); -expectType(mergeDeepLeft({ foo: '', bar: '', inner: { a: 1, b: 2 } }, obj2)); diff --git a/test/mergeDeepRight.test.ts b/test/mergeDeepRight.test.ts deleted file mode 100644 index 836b4dc..0000000 --- a/test/mergeDeepRight.test.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { expectType } from 'tsd'; -import { mergeDeepRight } from '../es'; - -const foo = { foo: 'foo', inner: { a: 1 } }; -const bar = { bar: 'bar', inner: { b: 5 } }; -const foo2 = { foo: 2 }; - -expectType<{ foo: string; bar: string; inner: { a: number; b: number } }>(mergeDeepRight(foo, bar)); -expectType<{ foo: string; inner: { a: number } }>(mergeDeepRight(foo2, foo)); -expectType<{ foo: number; inner: { a: number } }>(mergeDeepRight(foo, foo2)); - -type TestType = { - foo: string; - bar: string; - inner: { a: number; b: number } -}; - -const obj1 = {} as TestType; -const obj2 = {} as TestType; - -expectType(mergeDeepRight(obj1, obj2)); -expectType(mergeDeepRight(obj2, obj1)); - -expectType(mergeDeepRight(obj1, { foo: '', bar: '', inner: { a: 1, b: 2 } })); -expectType(mergeDeepRight({ foo: '', bar: '', inner: { a: 1, b: 2 } }, obj2)); diff --git a/test/mergeLeft.test.ts b/test/mergeLeft.test.ts index 42a82bf..6f8882a 100644 --- a/test/mergeLeft.test.ts +++ b/test/mergeLeft.test.ts @@ -7,17 +7,3 @@ const foo2 = { foo: 2 }; expectType<{ foo: string; bar: string; }>(mergeLeft(foo, bar)); expectType<{ foo: string; }>(mergeLeft(foo, foo2)); - -type TestType = { - foo: string; - bar: string; -}; - -const obj1 = {} as TestType; -const obj2 = {} as TestType; - -expectType(mergeLeft(obj1, obj2)); -expectType(mergeLeft(obj2, obj1)); - -expectType(mergeLeft(obj1, { foo: '', bar: ''})); -expectType(mergeLeft({ foo: '', bar: ''}, obj2)); diff --git a/test/mergeRight.test.ts b/test/mergeRight.test.ts index a4d6746..b704177 100644 --- a/test/mergeRight.test.ts +++ b/test/mergeRight.test.ts @@ -7,17 +7,3 @@ const foo2 = { foo: 2 }; expectType<{ foo: string; bar: string; }>(mergeRight(foo, bar)); expectType<{ foo: number; }>(mergeRight(foo, foo2)); - -type TestType = { - foo: string; - bar: string; -}; - -const obj1 = {} as TestType; -const obj2 = {} as TestType; - -expectType(mergeRight(obj1, obj2)); -expectType(mergeRight(obj2, obj1)); - -expectType(mergeRight(obj1, { foo: '', bar: ''})); -expectType(mergeRight({ foo: '', bar: ''}, obj2)); diff --git a/types/mergeDeepLeft.d.ts b/types/mergeDeepLeft.d.ts index dd048dc..3162108 100644 --- a/types/mergeDeepLeft.d.ts +++ b/types/mergeDeepLeft.d.ts @@ -1,6 +1,4 @@ import * as _ from 'ts-toolbelt'; -export function mergeDeepLeft(l: U): (r: U) => U; export function mergeDeepLeft(l: L): (r: R) => _.O.Assign; -export function mergeDeepLeft(l: U, r: U): U; export function mergeDeepLeft(l: L, r: R): _.O.Assign; diff --git a/types/mergeDeepRight.d.ts b/types/mergeDeepRight.d.ts index 336b744..8824416 100644 --- a/types/mergeDeepRight.d.ts +++ b/types/mergeDeepRight.d.ts @@ -1,6 +1,4 @@ import * as _ from 'ts-toolbelt'; -export function mergeDeepRight(l: U): (r: U) => U; export function mergeDeepRight(l: L): (r: R) => _.O.Assign; -export function mergeDeepRight(l: U, r: U): U; export function mergeDeepRight(l: L, r: R): _.O.Assign; diff --git a/types/mergeLeft.d.ts b/types/mergeLeft.d.ts index 1208df1..a9b2b1f 100644 --- a/types/mergeLeft.d.ts +++ b/types/mergeLeft.d.ts @@ -1,7 +1,5 @@ import * as _ from 'ts-toolbelt'; // Note: ramda `mergeLeft` uses `Object.assign` in code, so we need to use `O.Assign` here, and not `O.Merge` -export function mergeLeft(l: U): (r: U) => U; export function mergeLeft(l: L): (r: R) => _.O.Assign; -export function mergeLeft(l: U, r: U): U; export function mergeLeft(l: L, r: R): _.O.Assign; diff --git a/types/mergeRight.d.ts b/types/mergeRight.d.ts index 4b6bdfc..075e08a 100644 --- a/types/mergeRight.d.ts +++ b/types/mergeRight.d.ts @@ -1,7 +1,5 @@ import * as _ from 'ts-toolbelt'; // Note: ramda `mergeLeft` uses `Object.assign` in code, so we need to use `O.Assign` here, and not `O.Merge` -export function mergeRight(l: U): (r: U) => U; export function mergeRight(l: L): (r: R) => _.O.Assign; -export function mergeRight(l: U, r: U): U; export function mergeRight(l: L, r: R): _.O.Assign;