es-toolkit
Advanced tools
Comparing version 1.21.0-dev.680 to 1.21.0-dev.681
/** | ||
* Creates a function that invokes `func` with arguments reversed. | ||
* Reverses the order of arguments for a given function. | ||
* | ||
* @param {F} func The function to flip arguments for. | ||
* @returns {(...args: ReverseParameters<Parameters<F>>) => ReturnType<F>} Returns the new flipped function. | ||
* @template F - The type of the function being flipped. | ||
* @param {F} func - The function whose arguments will be reversed. | ||
* @returns {(...args: Reversed<Parameters<F>>) => ReturnType<F>} A new function that takes the | ||
* reversed arguments and returns the result of calling `func`. | ||
* | ||
* @example | ||
* function fn(a: any, b: any, c: any, d: any) { | ||
* function fn(a: string, b: string, c: string, d: string) { | ||
* return [a, b, c, d]; | ||
@@ -15,5 +17,5 @@ * } | ||
*/ | ||
declare function flip<F extends (...args: any[]) => any>(func: F): (...args: ReverseParameters<Parameters<F>>) => ReturnType<F>; | ||
type ReverseParameters<T extends any[]> = T extends [infer First, ...infer Rest] ? [...ReverseParameters<Rest>, First] : []; | ||
declare function flip<F extends (...args: any[]) => any>(func: F): (...args: Reversed<Parameters<F>>) => ReturnType<F>; | ||
type Reversed<T extends any[]> = T extends [infer First, ...infer Rest] ? [...Reversed<Rest>, First] : []; | ||
export { flip }; |
{ | ||
"name": "es-toolkit", | ||
"description": "A state-of-the-art, high-performance JavaScript utility library with a small bundle size and strong type annotations.", | ||
"version": "1.21.0-dev.680+4e926752", | ||
"version": "1.21.0-dev.681+7eed956e", | ||
"homepage": "https://es-toolkit.slash.page", | ||
@@ -6,0 +6,0 @@ "bugs": "https://github.com/toss/es-toolkit/issues", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Manifest confusion
Supply chain riskThis package has inconsistent metadata. This could be malicious or caused by an error when publishing the package.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Manifest confusion
Supply chain riskThis package has inconsistent metadata. This could be malicious or caused by an error when publishing the package.
Found 1 instance in 1 package
1480184
15821