@hyurl/utils
TypeScript icon, indicating that this package has built-in type declarations

0.3.15 • Public • Published

HyURL Utilities

Utility functions of HyURL collection.

This package currently contains the following functions, more functions may be included in the future. Each function is stored in a separated file.

Deprecated

Since v0.3.0, the following functions have been merged to @ayonli/jsext. The two packages serve different purposes, while @ayonli/jsext provides basic and semantic APIs for the JavaScript language, @hyurl/utils provides higher level functions that deal with objects.

This package still keeps a link to these functions, but they have been marked deprecated and will be removed in v0.4.0.

  • isFloat use isFloat from @ayonli/jsext/number instead.
  • isInteger use Number.isInteger instead.
  • isNumeric use isNumeric from @ayonli/jsext/number instead.
  • isBetween use isBetween from @ayonli/jsext/number instead.
  • isOwnKey use hasOwn from @ayonli/jsext/object instead.
  • isOwnMethod use hasOwnMethod from @ayonli/jsext/object instead.
  • isSubClassOf use jsext.isSubclassOf from @ayonli/jsext instead.
  • isVoid use !isValid from @ayonli/jsext/object instead.
  • omit use omit from @ayonli/jsext/object instead.
  • pick use pick from @ayonli/jsext/object instead.
  • omitVoid use omitInvalid instead.
  • rand use random from @ayonli/jsext/number instead.
  • randStr use random from @ayonli/jsext/string instead.
  • sleep use sleep from @ayonli/jsext/promise instead.
  • typeAs use as from @ayonli/jsext/object instead.
  • until use until from @ayonli/jsext/promise instead.
  • useThrottle use jsext.throttle from @ayonli/jsext instead.
  • wrap use jsext.wrap from @ayonli/jsext instead.

Import

There are many ways to import these functions.

All At Once

This method will load all functions into memory, even if you don't need some of them.

// Node.js
import * as utils from "@hyurl/utils";

// Deno
import * as utils from "https://lib.deno.dev/x/hyurl_utils@latest/index.ts";

// Browser
import * as utils from "https://lib.deno.dev/x/hyurl_utils@latest/esm/index.js";

Only Needed

This method will only load needed functions, which is recommended.

// Node.js
import count from "@hyurl/utils/count";
import ensureType from "@hyurl/utils/ensureType";

// Deno
import count from "https://lib.deno.dev/x/hyurl_utils@latest/count.ts";
import ensureType from "https://lib.deno.dev/x/hyurl_utils@latest/ensureType.ts";

// Browser
import count from "https://lib.deno.dev/x/hyurl_utils@latest/esm/count.js";
import ensureType from "https://lib.deno.dev/x/hyurl_utils@latest/esm/ensureType.js";

NOTE: Configure tsconfig.json to set compilerOptions.module as NodeNext or ESNext instead of CommonJS for this to work with Node.js+TypeScript.

Load Bundle (browser only)

<script src="https://lib.deno.dev/x/hyurl_utils@latest/bundle/index.js"></script>
<script>
    const utils = window["@hyurl/utils"];
<script>

Utilities Types

Other than utility functions, this package also provides some utility types for TypeScript, they are located in the following file and exposed to the global namespace.

import "@hyurl/utils/types";

Package Sidebar

Install

npm i @hyurl/utils

Weekly Downloads

3,413

Version

0.3.15

License

MIT

Unpacked Size

290 kB

Total Files

215

Last publish

Collaborators

  • ayonli