npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@dbetka/utils

v0.1.3

Published

Utils for JS

Downloads

332

Readme

Utils

Sets of utils for JS.

How to install

npm install -D @dbetka/utils

Base usage

You can import below sets of utils:

  • check,
  • object,
  • array,
  • promise,
  • request,
  • validate

in two different ways:

import u from '@dbetka/utils';

u.check.isUndefined(someValue);
import { uCheck } from '@dbetka/utils';

uCheck.isUndefined(someValue);

I will show you examples only in first way.

List of utils

Object u.check

Example method usage

import u from '@dbetka/utils';

if (u.check.isUndefined(someValue)) {
  // do something
}

List of methods

  • isUndefined
  • isString
  • isNumber
  • isNull
  • isObject
  • isArray
  • isFunction
  • isBoolean
  • isDefined
  • isNotString
  • isNotNumber
  • isNotNull
  • isNotObject
  • isNotArray
  • isNotFunction
  • isNotBoolean

Object u.object

Methods list

  • mergeDeep

Example method usage for u.object.mergeDeep

import u from '@dbetka/utils';

const firstObject = { a: 'a', b: { a: 'a', b: { a: 'a' }}}
const secondObject = { a: 'b', b: { a: 'b', b: { b: 'a' }}}
console.log(u.object.mergeDeep(firstObject, secondObject));
// returns { a: 'b', b: { a: 'b', b: { a: 'a', b: 'a' }}}

Object u.array

Methods list

  • removeItem
  • removeItemByIndex

Example method usage for u.array.removeItem

import u from '@dbetka/utils';

const array = [1, 2, 3];
console.log(u.array.removeItem(array, 1)); // return [2, 3]

Example method usage for u.array.removeItemByIndex

import u from '@dbetka/utils';

console.log(u.array.removeItem([1, 2, 3], 1)); // return [1, 3]

Object u.promise

Methods list

  • timeout

Example method usage for u.promise.timeout

import u from '@dbetka/utils';

const milliseconds = 2000;
u.promise.timeout(milliseconds)
  .then(() => {
    console.log('2000 milliseconds after timeout');
  })

Object u.request

Fields list

  • host.

Methods list

  • setHost
  • getHost
  • dataToPathVariables
  • get
  • post
  • put
  • delete

u.request.setHost

It set host for each next request by this util.

Example method usage

import u from '@dbetka/utils';
u.request.setHost('https://domain.com:5050');

u.request.getHost

It return host set earlier by setHost method.

Example method usage

import u from '@dbetka/utils';
u.request.setHost('https://domain.com:5050');
u.request.getHost(); // return 'https://domain.com:5050'

u.request.dataToPathVariables

It transform flat objects to path variables for get requests.

Example method usage

import u from '@dbetka/utils';

const data= {
  field1: 'some1',
  field2: 'some2',
};
u.request.dataToPathVariables(data); // return '?field1=some1&field2=some2'

u.request.get

It makes get request based on fetch. It has 'Content-Type': 'application/json' as a default.

Example method usage

import u from '@dbetka/utils';

u.request.get({
  url: '/some',
  data: {
    field1: 'some1',
    field2: 'some2',
  },
  config: {
    // you can put here configurations for fetch
  },
});

u.request.post

It makes post request based on fetch. It has 'Content-Type': 'application/json' as a default.

Example method usage

import u from '@dbetka/utils';

u.request.post({
  url: '/some',
  data: {
    field1: 'some1',
    field2: 'some2',
  },
  config: {
    // you can put here configurations for fetch
  },
});

u.request.put

It makes put request based on fetch. It has 'Content-Type': 'application/json' as a default.

Example method usage

import u from '@dbetka/utils';

u.request.put({
  url: '/some',
  data: {
    field1: 'some1',
    field2: 'some2',
  },
  config: {
    // you can put here configurations for fetch
  },
});

u.request.delete

It makes delete request based on fetch. It has 'Content-Type': 'application/json' as a default.

Example method usage

import u from '@dbetka/utils';

u.request.delete({
  url: '/some',
  data: {
    field1: 'some1',
    field2: 'some2',
  },
  config: {
    // you can put here configurations for fetch
  },
});

Object u.validate

Example method usage

import u from '@dbetka/utils';

if (u.check.isUndefined(someValue)) {
  // do something
}

Methods list

  • hasNumber
  • hasNotNumber
  • isEmail
  • isNotEmail
  • isLonger
  • isShorter
  • isNullOrEmpty
  • isUndefined
  • inRange
  • inNotRange
  • contain
  • notContain
  • isBoolean
  • isNotBoolean