New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@augment-vir/common

Package Overview
Dependencies
Maintainers
1
Versions
238
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@augment-vir/common - npm Package Compare versions

Comparing version 26.3.1 to 26.3.2

19

dist/types/augments/object/pick-deep.d.ts

@@ -0,10 +1,12 @@

import { OptionalKeysOf, RequiredKeysOf } from 'type-fest';
import { AnyFunction } from '../function';
import { ArrayElement } from '../type';
import { AnyObject } from './any-object';
import { NestedKeys } from './nested-keys';
export type InnerPickDeep<OriginalObjectGeneric, DeepKeys extends any[]> = DeepKeys extends [
infer CurrentLevelPick,
...infer RemainingKeys
] ? Extract<CurrentLevelPick, keyof OriginalObjectGeneric> extends never ? OriginalObjectGeneric : {
[CurrentProp in Extract<CurrentLevelPick, keyof OriginalObjectGeneric>]: AnyFunction extends Extract<OriginalObjectGeneric[CurrentProp], AnyFunction> ? OriginalObjectGeneric[CurrentProp] | Exclude<OriginalObjectGeneric[CurrentProp], AnyFunction> : Array<any> extends Extract<OriginalObjectGeneric[CurrentProp], Array<any>> ? Array<InnerPickDeep<ArrayElement<Extract<OriginalObjectGeneric[CurrentProp], Array<any>>>, RemainingKeys>> | Exclude<OriginalObjectGeneric[CurrentProp], Array<any>> : ReadonlyArray<any> extends Extract<OriginalObjectGeneric[CurrentProp], ReadonlyArray<any>> ? ReadonlyArray<InnerPickDeep<ArrayElement<Extract<OriginalObjectGeneric[CurrentProp], ReadonlyArray<any>>>, RemainingKeys>> | Exclude<OriginalObjectGeneric[CurrentProp], ReadonlyArray<any>> : Extract<OriginalObjectGeneric[CurrentProp], Record<any, any>> extends never ? OriginalObjectGeneric[CurrentProp] : InnerPickDeep<Extract<OriginalObjectGeneric[CurrentProp], Record<any, any>>, RemainingKeys> | Exclude<OriginalObjectGeneric[CurrentProp], Record<any, any>>;
} : DeepKeys extends [] ? OriginalObjectGeneric : DeepKeys extends [infer CurrentLevelPick] ? CurrentLevelPick extends keyof OriginalObjectGeneric ? Pick<OriginalObjectGeneric, CurrentLevelPick> : never : never;
export type InnerPickDeep<OriginalObject extends AnyObject, DeepKeys extends any[]> = DeepKeys extends [infer CurrentLevelPick, ...infer RemainingKeys] ? Extract<CurrentLevelPick, keyof OriginalObject> extends never ? OriginalObject : {
[CurrentProp in Extract<CurrentLevelPick, RequiredKeysOf<OriginalObject>>]: InnerPickDeepValue<OriginalObject, CurrentProp, RemainingKeys>;
} & {
[CurrentProp in Extract<CurrentLevelPick, OptionalKeysOf<OriginalObject>>]?: InnerPickDeepValue<OriginalObject, CurrentProp, RemainingKeys>;
} : DeepKeys extends [] ? OriginalObject : DeepKeys extends [infer CurrentLevelPick] ? CurrentLevelPick extends keyof OriginalObject ? Pick<OriginalObject, CurrentLevelPick> : never : never;
type InnerPickDeepValue<OriginalObject, CurrentProp extends keyof OriginalObject, RemainingKeys extends any[]> = AnyFunction extends Extract<OriginalObject[CurrentProp], AnyFunction> ? OriginalObject[CurrentProp] | Exclude<OriginalObject[CurrentProp], AnyFunction> : Array<any> extends Extract<OriginalObject[CurrentProp], Array<any>> ? Array<InnerPickDeep<ArrayElement<Extract<OriginalObject[CurrentProp], Array<any>>>, RemainingKeys>> | Exclude<OriginalObject[CurrentProp], Array<any>> : ReadonlyArray<any> extends Extract<OriginalObject[CurrentProp], ReadonlyArray<any>> ? ReadonlyArray<InnerPickDeep<ArrayElement<Extract<OriginalObject[CurrentProp], ReadonlyArray<any>>>, RemainingKeys>> | Exclude<OriginalObject[CurrentProp], ReadonlyArray<any>> : Extract<OriginalObject[CurrentProp], Record<any, any>> extends never ? OriginalObject[CurrentProp] : InnerPickDeep<Extract<OriginalObject[CurrentProp], Record<any, any>>, RemainingKeys> | Exclude<OriginalObject[CurrentProp], Record<any, any>>;
/**

@@ -14,4 +16,5 @@ * Pick nested keys with more strict type parameter requirements. However, these stricter type

*/
export type PickDeepStrict<OriginalObjectGeneric extends object, DeepKeys extends NestedKeys<OriginalObjectGeneric>> = InnerPickDeep<OriginalObjectGeneric, DeepKeys>;
export type PickDeepStrict<OriginalObject extends object, DeepKeys extends NestedKeys<OriginalObject>> = InnerPickDeep<OriginalObject, DeepKeys>;
/** Pick nested keys. */
export type PickDeep<OriginalObjectGeneric extends object, DeepKeys extends PropertyKey[]> = InnerPickDeep<OriginalObjectGeneric, DeepKeys>;
export type PickDeep<OriginalObject extends object, DeepKeys extends PropertyKey[]> = InnerPickDeep<OriginalObject, DeepKeys>;
export {};
{
"name": "@augment-vir/common",
"version": "26.3.1",
"version": "26.3.2",
"homepage": "https://github.com/electrovir/augment-vir/tree/main/packages/common",

@@ -5,0 +5,0 @@ "bugs": {

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