1.0.2 • Published 1 year ago

@sekiju/utilities v1.0.2

Weekly downloads
-
License
-
Repository
github
Last release
1 year ago

Table of Contents

Description

This is a library with common functions to help with programming. I got tired of moving utilities from one project to another, so I made this library.


Utilities

isClass

Verifies if the input is a class constructor.

class A {}

isClass(A) // true
isClass(function () {}) // false

isFunction

Verifies if the input is a function.

isFunction(function () {}) // true
isFunction('foo') // false

isUrl

Verifies if the input string is a valid url

isUrl('https://example.com') // true
isUrl('100PercentNotUrl') // false

isNumber

Verifies if a number is a finite number.

isNumber(10) // true
isNumber('10') // false

isObject

Verify if the input is an object literal (or class).

isObject({}) // true
isObject([]) // true
isObject('foo') // false

isNullOrUndefined

Checks whether a value is null or undefined.

isNullOrUndefined(null) // true
isNullOrUndefined(undefined) // true
isNullOrUndefined(1) // false

isNullOrUndefinedOrEmpty

Checks whether or not a value is null, undefined or '', []

isNullOrUndefinedOrEmpty('') // true
isNullishOrEmpty('') // true

isNullOrUndefinedOrZero

Checks whether or not a value is null, undefined or 0

isNullOrUndefinedOrZero(0) // true
isNullishOrZero(0) // true

fetchFiles

Fetches file paths from a directory

.
└── root/
    └── images/
        ├── jpeg/
        │   └── 01.jpeg
        └── 01.png
/**
 * @param dir Directory with files
 * @param includeSubdirectories Include subdirectories
 */

fetchFiles('/root/images') // ['/root/images/01.png']
isNullOrUndefined('/root/images', true) // ['/root/images/01.png', '/root/images/jpeg/01.jpeg']

clamp

Limiting number by min and max values

clamp(15, 1, 13) // 13
clamp(3, 5, 10) // 5
clamp(7, 0, 100) // 7

pickRandom

Picks a random element from an array

pickRandom([0, 1, 2, 3, 4, 5]) // 3
pickRandom([0, 1, 2, 3, 4, 5], 2) // [3, 0]

chunk

Splits an array into smaller arrays of a specified size

chunk([1000, 7, 993, 7], 2) // [[1000, 7], [993, 7]]

flatten

Flattens a nested array (i.e., an array of arrays) into a single-level array

flatten([[1, 2, 3], [9, 9, 3]]) // [1, 2, 3, 9, 9, 3]

generateString

Generates string from latin chars with numbers

generateString(8) // BbLzLcN3

cleanObject

Clean undefined and null values from object

cleanObject({ foo: 'bar', nullish: null }) // { foo: 'bar' }

sleep

await sleep(1000) // Sleep 1 second

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago