10.0.5 • Published 2 months ago

@anmiles/prototypes v10.0.5

Weekly downloads
-
License
MIT
Repository
github
Last release
2 months ago

@anmiles/prototypes

Provides prototype extensions for native JS modules


Installation

npm install @anmiles/prototypes

Usage

Number

  • Number.prototype.case - select russian case of countable entity by count
  • Number.prototype.pad - add leading or trailing zeros to number to fit specified number of digits

String

  • String.prototype.toUpperFirstLetter - make first letter uppercase
  • String.prototype.toLowerFirstLetter - make first letter lowercase
  • String.prototype.htmlEscape - escape HTML-sensitive string
  • String.prototype.urlEscape - escape string to make it URL-safe
  • String.prototype.regexEscape - escape regular expression
  • String.prototype.beautify - unify similar special symbols
  • String.prototype.toFilename - convert string into a valid filename

Array

  • Array.prototype.unique - remove duplicates from array
  • Array.prototype.equals - compare two arrays item-by-item
  • Array.prototype.indexFieldOf - indexOf by value of nested key
  • Array.prototype.sum - sum all values in array
  • Array.prototype.sort - sort array by values of nested keys in various directions

Object

  • Object.fill - fill object with default values generated by keys
  • Object.typedKeys - get typed keys of an object
  • Object.typedEntries - get typed entries of an object

Error

  • Error.parse - return an Error object with a message parsed from input of any supported type (or serialized input if not supported)

fs and fs/promises

  • fs.ensureDir - check and if dir exists and is a directory; optionally create if not exists
  • fs.ensureFile - check if file exists and is a file; optionally create if not exists
  • fs.readJSON - read and parse JSON from file
  • fs.writeJSON - write JSON to file
  • fs.getJSON - get JSON from file with falling back and validation
  • fs.getJSONAsync - asynchronously get JSON from file with asynchronous falling back and asynchronous validation
  • fs.readTSV - read and parse TSV from file
  • fs.writeTSV - write TSV to file
  • fs.joinPath - join two portions of file path using specified or default separator and return the path as typed as possible
  • fs.recurse - recursively traverse directory for specified depth and apply callbacks for files (with optionally specified extension), directories and links
  • fs.size - recursively calculates get directory size

Also joinPath and recurse functions are introduced in fs.posix and fs.win32 namespaces. Path separator is explicitly specified and cannot be directly passed there.

  • fs.posix.joinPath and fs.posix.recurse use '/' separator regardless of path.sep in runtime
  • fs.win32.joinPath and fs.win32.recurse use '\' separator regardless of path.sep in runtime Inspired by path.posix and path.win32.

process

  • process.start - run process in Windows environment and optionally output stdout/stderr or process them with custom functions

Useful strings for testing purposes:

  • string value
    • begin  .-'``"~!@#$%^&*?:;,_=+/\|[]{}()<>&nbsp;&lt;&gt;²½áßÈіíž©§€₤∑א雨https://A-_/?b[c]&(1)end
  • query string value
    • begin .-'``"~!@$%^*:;,_=+\|()[]{}<>²½áßÈіíž©§€₤∑א雨https://A-_/b[c](1)end
  • url
    • https://example.com/begin.-'``"~!@#$%^&*?:;,_=+/\|()[]{}<>&nbsp;&lt;&gt;²½áßÈіíž©§€₤∑א雨end
  • email
    • test.-'``~!#$%^&*?_=+/|{}&nbsp&lt&gtіž€₤∑א雨@example.com
10.0.5

2 months ago

10.0.4

2 months ago

10.0.0

2 months ago

10.0.1

2 months ago

10.0.2

2 months ago

10.0.3

2 months ago

9.0.2

4 months ago

9.0.1

4 months ago

8.1.0

4 months ago

8.0.0

4 months ago

9.0.0

4 months ago

7.0.0

4 months ago

6.0.3

5 months ago

6.0.2

5 months ago

6.0.1

5 months ago

6.0.0

5 months ago

5.4.0

5 months ago

5.3.2

5 months ago

5.3.1

5 months ago

5.3.0

5 months ago

5.2.2

5 months ago

5.2.1

5 months ago

5.1.1

6 months ago

5.1.0

7 months ago

5.0.0

7 months ago

2.3.0

9 months ago

2.2.1

9 months ago

2.1.2

10 months ago

2.2.0

9 months ago

2.1.1

10 months ago

2.1.4

10 months ago

2.1.3

10 months ago

2.1.6

10 months ago

2.1.5

10 months ago

2.1.8

9 months ago

2.1.0

10 months ago

3.0.0

8 months ago

2.0.2

1 year ago

2.0.1

1 year ago

2.0.0

1 year ago

1.1.0

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago