Socket
Socket
Sign inDemoInstall

@antfu/utils

Package Overview
Dependencies
Maintainers
1
Versions
38
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@antfu/utils - npm Package Compare versions

Comparing version 0.0.4 to 0.0.5

53

dist/index.d.ts

@@ -8,4 +8,12 @@ /**

*/
declare type Nullable<T> = T | null | undefined;
declare type Nilable<T> = T | null | undefined;
/**
* Null or whatever
*/
declare type Nullable<T> = T | null;
/**
* Undefined or whatever
*/
declare type Undefineable<T> = T | undefined;
/**
* Array, or not yet

@@ -22,2 +30,10 @@ */

declare type ElementOf<T> = T extends (infer E)[] ? E : never;
/**
* Defines an intersection type of all union items.
*
* @param U Union of any types that will be intersected.
* @returns U items intersected
* @see https://stackoverflow.com/a/50375286/9259330
*/
declare type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never;

@@ -50,6 +66,18 @@ /**

*
* @example array.filter(isNotNull)
* @example array.filter(notNullish)
*/
declare function isNotNull<T>(v: Nullable<T>): v is T;
declare function notNullish<T>(v: T | null | undefined): v is NonNullable<T>;
/**
* Type guard to filter out null values
*
* @example array.filter(noNull)
*/
declare function noNull<T>(v: T | null): v is Exclude<T, null>;
/**
* Type guard to filter out null-ish values
*
* @example array.filter(notUndefined)
*/
declare function notUndefined<T>(v: T): v is Exclude<T, undefined>;
/**
* Type guard to filter out falsy values

@@ -59,3 +87,3 @@ *

*/
declare function isTruthy<T>(v: Nullable<T>): v is T;
declare function isTruthy<T>(v: T): v is NonNullable<T>;

@@ -115,3 +143,18 @@ declare const isBrowser: boolean;

declare function objectMap<K extends string, V, NK = K, NV = V>(obj: Record<K, V>, fn: (key: K, value: V) => [NK, NV] | undefined): Record<K, V>;
/**
* Type guard for any key, `k`.
* Marks `k` as a key of `T` if `k` is in `obj`.
* @param obj object to query for key `k`
* @param k key to check existence in `obj`
*/
declare function isKeyOf<T extends object>(obj: T, k: keyof any): k is keyof T;
/**
* Strict typed `Object.keys`
*/
declare function objectKeys<T extends object>(obj: T): (keyof T)[];
/**
* Strict typed `Object.entries`
*/
declare function objectEntries<T extends object>(obj: T): [keyof T, T[keyof T]][];
export { Arrayable, Awaitable, ElementOf, Fn, Nullable, assert, batchInvoke, clamp, flattenArrayable, invoke, isBoolean, isBrowser, isDef, isFunction, isNotNull, isNumber, isObject, isString, isTruthy, isWindow, mergeArrayable, noop, objectMap, partition, slash, sum, timestamp, toArray, toString };
export { Arrayable, Awaitable, ElementOf, Fn, Nilable, Nullable, Undefineable, UnionToIntersection, assert, batchInvoke, clamp, flattenArrayable, invoke, isBoolean, isBrowser, isDef, isFunction, isKeyOf, isNumber, isObject, isString, isTruthy, isWindow, mergeArrayable, noNull, noop, notNullish, notUndefined, objectEntries, objectKeys, objectMap, partition, slash, sum, timestamp, toArray, toString };

@@ -31,5 +31,11 @@ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/array.ts

// src/guards.ts
function isNotNull(v) {
function notNullish(v) {
return v != null;
}
function noNull(v) {
return v !== null;
}
function notUndefined(v) {
return v !== void 0;
}
function isTruthy(v) {

@@ -75,4 +81,13 @@ return Boolean(v);

function objectMap(obj, fn) {
return Object.fromEntries(Object.entries(obj).map(([k, v]) => fn(k, v)).filter(isNotNull));
return Object.fromEntries(Object.entries(obj).map(([k, v]) => fn(k, v)).filter(notNullish));
}
function isKeyOf(obj, k) {
return k in obj;
}
function objectKeys(obj) {
return Object.keys(obj);
}
function objectEntries(obj) {
return Object.entries(obj);
}

@@ -103,2 +118,7 @@

exports.assert = assert; exports.batchInvoke = batchInvoke; exports.clamp = clamp; exports.flattenArrayable = flattenArrayable; exports.invoke = invoke; exports.isBoolean = isBoolean; exports.isBrowser = isBrowser; exports.isDef = isDef; exports.isFunction = isFunction; exports.isNotNull = isNotNull; exports.isNumber = isNumber; exports.isObject = isObject; exports.isString = isString; exports.isTruthy = isTruthy; exports.isWindow = isWindow; exports.mergeArrayable = mergeArrayable; exports.noop = noop; exports.objectMap = objectMap; exports.partition = partition; exports.slash = slash; exports.sum = sum; exports.timestamp = timestamp; exports.toArray = toArray; exports.toString = toString2;
exports.assert = assert; exports.batchInvoke = batchInvoke; exports.clamp = clamp; exports.flattenArrayable = flattenArrayable; exports.invoke = invoke; exports.isBoolean = isBoolean; exports.isBrowser = isBrowser; exports.isDef = isDef; exports.isFunction = isFunction; exports.isKeyOf = isKeyOf; exports.isNumber = isNumber; exports.isObject = isObject; exports.isString = isString; exports.isTruthy = isTruthy; exports.isWindow = isWindow; exports.mergeArrayable = mergeArrayable; exports.noNull = noNull; exports.noop = noop; exports.notNullish = notNullish; exports.notUndefined = notUndefined; exports.objectEntries = objectEntries; exports.objectKeys = objectKeys; exports.objectMap = objectMap; exports.partition = partition; exports.slash = slash; exports.sum = sum; exports.timestamp = timestamp; exports.toArray = toArray; exports.toString = toString2;

2

package.json
{
"name": "@antfu/utils",
"version": "0.0.4",
"version": "0.0.5",
"description": "Opinionated collection of common JavaScript / TypeScript utils by @antfu",

@@ -5,0 +5,0 @@ "main": "dist/index.js",

Sorry, the diff of this file is not supported yet

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