UNPKG

@clerk/shared

Version:

Internal package utils used by the Clerk SDKs

1 lines 1.69 kB
{"version":3,"file":"object.mjs","names":[],"sources":["../src/object.ts"],"sourcesContent":["export const without = <T extends object, P extends keyof T>(obj: T, ...props: P[]): Omit<T, P> => {\n const copy = { ...obj };\n for (const prop of props) {\n delete copy[prop];\n }\n return copy;\n};\n\nexport const removeUndefined = <T extends object>(obj: T): Partial<T> => {\n return Object.entries(obj).reduce((acc, [key, value]) => {\n if (value !== undefined && value !== null) {\n acc[key as keyof T] = value;\n }\n return acc;\n }, {} as Partial<T>);\n};\n\nexport const applyFunctionToObj = <T extends Record<string, any>, R>(\n obj: T,\n fn: (val: any, key: string) => R,\n): Record<string, R> => {\n const result = {} as Record<string, R>;\n for (const key in obj) {\n result[key] = fn(obj[key], key);\n }\n return result;\n};\n\nexport const filterProps = <T extends Record<string, any>>(obj: T, filter: (a: any) => boolean): T => {\n const result = {} as T;\n for (const key in obj) {\n if (obj[key] && filter(obj[key])) {\n result[key] = obj[key];\n }\n }\n return result;\n};\n"],"mappings":";AAAA,MAAa,WAAgD,KAAQ,GAAG,UAA2B;CACjG,MAAM,OAAO,EAAE,GAAG,IAAI;CACtB,KAAK,MAAM,QAAQ,OACjB,OAAO,KAAK;CAEd,OAAO;AACT;AAEA,MAAa,mBAAqC,QAAuB;CACvE,OAAO,OAAO,QAAQ,GAAG,CAAC,CAAC,QAAQ,KAAK,CAAC,KAAK,WAAW;EACvD,IAAI,UAAU,UAAa,UAAU,MACnC,IAAI,OAAkB;EAExB,OAAO;CACT,GAAG,CAAC,CAAe;AACrB;AAEA,MAAa,sBACX,KACA,OACsB;CACtB,MAAM,SAAS,CAAC;CAChB,KAAK,MAAM,OAAO,KAChB,OAAO,OAAO,GAAG,IAAI,MAAM,GAAG;CAEhC,OAAO;AACT;AAEA,MAAa,eAA8C,KAAQ,WAAmC;CACpG,MAAM,SAAS,CAAC;CAChB,KAAK,MAAM,OAAO,KAChB,IAAI,IAAI,QAAQ,OAAO,IAAI,IAAI,GAC7B,OAAO,OAAO,IAAI;CAGtB,OAAO;AACT"}