Socket
Socket
Sign inDemoInstall

type-fest

Package Overview
Dependencies
Maintainers
1
Versions
154
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

type-fest - npm Package Compare versions

Comparing version 4.18.1 to 4.18.2

2

package.json
{
"name": "type-fest",
"version": "4.18.1",
"version": "4.18.2",
"description": "A collection of essential TypeScript types",

@@ -5,0 +5,0 @@ "license": "(MIT OR CC0-1.0)",

import type {CamelCase, CamelCaseOptions} from './camel-case';
import type {UnknownArray} from './unknown-array';

@@ -47,9 +48,41 @@ /**

*/
export type CamelCasedPropertiesDeep<Value, Options extends CamelCaseOptions = {preserveConsecutiveUppercase: true}> = Value extends Function
export type CamelCasedPropertiesDeep<
Value,
Options extends CamelCaseOptions = {preserveConsecutiveUppercase: true},
> = Value extends Function
? Value
: Value extends Array<infer U>
? Array<CamelCasedPropertiesDeep<U, Options>>
: Value extends UnknownArray
? CamelCasedPropertiesArrayDeep<Value>
: Value extends Set<infer U>
? Set<CamelCasedPropertiesDeep<U, Options>> : {
[K in keyof Value as CamelCase<K, Options>]: CamelCasedPropertiesDeep<Value[K], Options>;
? Set<CamelCasedPropertiesDeep<U, Options>>
: {
[K in keyof Value as CamelCase<K, Options>]: CamelCasedPropertiesDeep<
Value[K],
Options
>;
};
// This is a copy of DelimiterCasedPropertiesArrayDeep (see: delimiter-cased-properties-deep.d.ts).
// These types should be kept in sync.
type CamelCasedPropertiesArrayDeep<Value extends UnknownArray> =
Value extends []
? []
: // Tailing spread array
Value extends [infer U, ...infer V]
? [CamelCasedPropertiesDeep<U>, ...CamelCasedPropertiesDeep<V>]
: Value extends readonly [infer U, ...infer V]
? readonly [CamelCasedPropertiesDeep<U>, ...CamelCasedPropertiesDeep<V>]
: // Leading spread array
Value extends readonly [...infer U, infer V]
? [...CamelCasedPropertiesDeep<U>, CamelCasedPropertiesDeep<V>]
: Value extends readonly [...infer U, infer V]
? readonly [
...CamelCasedPropertiesDeep<U>,
CamelCasedPropertiesDeep<V>,
]
: // Array
Value extends Array<infer U>
? Array<CamelCasedPropertiesDeep<U>>
: Value extends ReadonlyArray<infer U>
? ReadonlyArray<CamelCasedPropertiesDeep<U>>
: never;

@@ -64,2 +64,4 @@ import type {DelimiterCase} from './delimiter-case';

// This is a copy of CamelCasedPropertiesArrayDeep (see: camel-cased-properties-deep.d.ts).
// These types should be kept in sync.
type DelimiterCasedPropertiesArrayDeep<Value extends UnknownArray, Delimiter extends string> =

@@ -66,0 +68,0 @@ Value extends []

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc