From 4d1a953ea93061865064a37bc0c6ff55304f2c5e Mon Sep 17 00:00:00 2001 From: Justin Beckwith Date: Mon, 7 May 2018 10:42:21 -0700 Subject: [PATCH] fix: add `defined` method on `is` npm module (#25467) --- types/is/index.d.ts | 15 +++++++++++++++ types/is/is-tests.ts | 6 ++++++ 2 files changed, 21 insertions(+) diff --git a/types/is/index.d.ts b/types/is/index.d.ts index 3b70472d65..37b485e0a0 100644 --- a/types/is/index.d.ts +++ b/types/is/index.d.ts @@ -87,6 +87,11 @@ interface IsStatic { */ undefined(value: any): boolean; + /** + * Checks if the given value type is defined. + */ + defined(value: any): boolean; + /** * Checks if the given value types are same type. */ @@ -748,6 +753,16 @@ interface IsStaticApi { */ undefined(value: any[]): boolean; + /** + * Checks if the given value type is defined. + */ + defined(...value: any[]): boolean; + + /** + * Checks if the given value type is defined. + */ + defined(value: any[]): boolean; + //#endregion //#region Presence checks diff --git a/types/is/is-tests.ts b/types/is/is-tests.ts index 0084de8990..77a88a81b3 100644 --- a/types/is/is-tests.ts +++ b/types/is/is-tests.ts @@ -104,6 +104,12 @@ is.all.undefined(undefined, 1); is.any.undefined(undefined, 2); is.all.undefined([{}, undefined]); +is.defined(undefined); +is.not.defined(null); +is.all.defined(undefined, 1); +is.any.defined(undefined, 2); +is.all.defined([{}, undefined]); + is.sameType(42, 7); is.sameType(42, '7'); is.not.sameType(42, 7);