diff --git a/packages/lib/src/Tools.ts b/packages/lib/src/Tools.ts index bb14fa5..2cd4d84 100644 --- a/packages/lib/src/Tools.ts +++ b/packages/lib/src/Tools.ts @@ -77,14 +77,14 @@ export const mapKeys = >(f: (v: string) => string, return r as T } -export const mapVals = >(f: (v: any) => any, x: T) => { - const r: Record = {} +export const mapVals = (f: (v: V) => U, x: Record) => { + const r: Record = {} for (const [k, v] of Object.entries(x)) { r[k] = f(v) } - return r as T + return r } export const mergeLeft = >(a: T, b: T) => ({...b, ...a}) diff --git a/packages/util/package.json b/packages/util/package.json index 99ac1d5..0d0bcb5 100644 --- a/packages/util/package.json +++ b/packages/util/package.json @@ -1,6 +1,6 @@ { "name": "@welshman/util", - "version": "0.0.32", + "version": "0.0.33", "author": "hodlbod", "license": "MIT", "description": "A collection of nostr-related utilities.", diff --git a/packages/util/src/Filters.ts b/packages/util/src/Filters.ts index ef68004..bd6cd43 100644 --- a/packages/util/src/Filters.ts +++ b/packages/util/src/Filters.ts @@ -214,7 +214,7 @@ export const getFilterResultCardinality = (filter: Filter) => { return null } -export const trimFilter = (filter: Filter) => - mapVals(v => Array.isArray(v) && v.length > 1000 ? shuffle(v).slice(0, 1000) : v, filter) +export const trimFilter = (filter: Filter): Filter => + mapVals(v => Array.isArray(v) && v.length > 1000 ? shuffle(v as string[]).slice(0, 1000) : v, filter) as Filter export const trimFilters = (filters: Filter[]) => filters.map(trimFilter)