diff --git a/.changeset/chatty-onions-decide.md b/.changeset/chatty-onions-decide.md new file mode 100644 index 00000000..b1aec215 --- /dev/null +++ b/.changeset/chatty-onions-decide.md @@ -0,0 +1,5 @@ +--- +"@hiogawa/utils": patch +--- + +Fix `objectMapValues` mapped type diff --git a/packages/utils/src/lodash.test.ts b/packages/utils/src/lodash.test.ts index 8d97c2ed..d28ed984 100644 --- a/packages/utils/src/lodash.test.ts +++ b/packages/utils/src/lodash.test.ts @@ -1,4 +1,12 @@ -import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; +import { + afterEach, + beforeEach, + describe, + expect, + expectTypeOf, + it, + vi, +} from "vitest"; import { LruCache } from "./cache"; import { capitalize, @@ -458,11 +466,11 @@ describe(`${objectMapValues.name}/${objectMapKeys.name}`, () => { }; { const result = objectMapValues(o, (v, k) => (v ? k.repeat(v) : "bad-v")); - result satisfies { + expectTypeOf(result).toEqualTypeOf<{ x: string; y?: string; z?: string; - }; + }>(); expect(result).toMatchInlineSnapshot(` { "x": "xxx",