{"version":3,"file":"partialCall.cjs","sources":["../../src/main/partialCall.ts"],"sourcesContent":["type Arr = readonly unknown[];\n\n/**\n *  * Reducer for function with ***one object*** parameter which\n\n *\n * @param f The function to reduce\n * @param headArgs First arguments for reducing\n * @returns A new function without the ***headArgs*** provided\n */\nexport function partialCall<T extends Arr, U extends Arr, R>(\n  f: (...args: [...T, ...U]) => R,\n  ...headArgs: T\n) {\n  return (...tailArgs: U) => f(...headArgs, ...tailArgs);\n}\n\n/**\n * Reducer for function with ***one object*** parameter which\n *\n * @param f The function to test\n * @param headArgs First arguments for reducing\n * @returns A new function without the ***headArgs*** provided\n */\nexport function partialCallO<T extends object, U extends T, R>(\n  f: (arg: U) => R,\n  headArgs?: T,\n) {\n  return (remainArgs: Omit<U, keyof T>) =>\n    f({ ...remainArgs, ...headArgs } as U);\n}\n"],"names":[],"mappings":";;AAEA;;;;;;;AAOG;SACa,WAAW,CACzB,CAA+B,EAC/B,GAAG,QAAW,EAAA;AAEd,IAAA,OAAO,CAAC,GAAG,QAAW,KAAK,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;AAMG;AACa,SAAA,YAAY,CAC1B,CAAgB,EAChB,QAAY,EAAA;AAEZ,IAAA,OAAO,CAAC,UAA4B,KAClC,CAAC,CAAC,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,UAAU,CAAA,EAAK,QAAQ,CAAO,CAAC,CAAC;AAC3C;;;;;"}