1.1.10 • Published 5 years ago

absurdum v1.1.10

Weekly downloads
8
License
MIT
Repository
github
Last release
5 years ago

Absurdum is a Javascript utility library built with a focus on providing idempotent side-effect free functions and clear/readable modular source for tree shaking.

GitHub Releases NPM Release Bundlephobia MIT License Latest Status Release Status

Features

  • Explores the flexibility of Reduce
  • Abstraction Free -> tree-shake friendly
  • Functional -> all operators are side-effect free
  • Polyfills -> includes operator polyfills for older browsers
  • Modern -> works transparently with ESM and CJS
  • Typescript -> typings are provided for all operators
  • Intellisense -> supports code completions + inline documentation
  • Well Tested -> includes 600+ tests covering every aspect

Imports

This package provides a variety of entry-points for all JS platforms

Browsers

All top-level operator namespaces (ie [arrays, objects, strings]) can be imported from the index

import { arrays, objects, strings } from 'path/to/absurdum/index.js';

The minified version can be imported from

import { arrays, objects, strings } from 'path/to/absurdum/index.min.js';

Node/Bundlers (ESM)

Top-level ES module namespaces are provided for Node/Bundlers

import { arrays, objects, strings } from 'absurdum';

Individual operators can be imported from their parent namespaces

import { chunk, find } from 'absurdum/arrays';
import { assign, invert } from 'absurdum/objects';
import { camelCase, repeat } from 'absurdum/strings';

Note: Webpack's tree-shaking algorithm doesn't handle multi-layered exports. To optimize bundle size, prefer individual operator imports.

Node/Legacy (CJS)

For Node users who rely on CommonJS, top-level namespaces are provided

const arrays = require('absurdum').arrays;
const objects = require('absurdum').objects;
const strings = require('absurdum').strings;

Note: CJS entry-points are backward-compatible with all non-EOL versions of Node

Usage

Import an operator and feed it some inputs

import { reverse } from 'absurdum/arrays';

const input = ['a', 'b', 'c', 'd'];
const output = reverse(input);
console.log(output);
// > ['d', 'c', 'b', 'a']

Tip: For VSCode users. Input type-checking, intellisense, and inline documentation are all supported.

API Documentation

Arrays

OperatorLodashPolyfills
chunk_.chunk
compact_.compact
difference_.difference
drop_.drop
dropRight_.dropRight
fill_.fillArray.prototype.fill
filter_.filter
find_.findArray.prototype.find
findIndex_.findIndexArray.prototype.findIndex
findLastIndex_.findLastIndex
flat_.flattenArray.prototype.flat
frequency
intersection_.intersection
map_.map
pull_.pull
take_.take
takeRight_.takeRight
union_.union
unique_.uniq
unzip_.unzip
without_.without
xor_.xor
zip_.zip

Objects

OperatorLodashPolyfills
assign_.assignObject.assign
at_.at
defaults_.defaults
defaultsDeep_.defaultsDeep
entries_.toPairsObject.entries
filter_.filter
findKey_.findKey
findLastKey_.findLastKey
forIn_.forIn
fromEntries_.fromPairsObject.fromEntries
get_.get
has_.has
invert_.invert
mapKeys_.mapKeys
mapValues_.mapValues
merge_.merge
pick_.pick
result_.result
transform_.transform
values_.valuesObject.values

Strings

OperatorLodashPolyfills
camelCase_.camelCase
chomp
deburr_.deburr
endsWith_.endsWithString.prototype.endsWith
includesString.prototype.includes
kebabCase_.kebabCase
pad_.pad
padEnd_.padEndString.prototype.padEnd
padStart_.padStartString.prototype.padStart
pascalCase_.startCase
repeat_.repeatString.prototype.repeat
reverse
snakeCase_.snakeCase
startsWith_.startsWithString.prototype.startsWith
trimEnd_.trimEndString.prototype.trimEnd
trimStart_.trimStartString.prototype.trimStart
truncate_.truncate
words_.words
1.1.10

5 years ago

1.1.9

5 years ago

1.1.8

5 years ago

1.1.7

5 years ago

1.1.6

5 years ago

1.1.5

5 years ago

1.1.4

5 years ago

1.1.3

5 years ago

1.1.2

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago

0.81.20

5 years ago

0.82.0

5 years ago

1.0.0

5 years ago

0.81.13

5 years ago

0.81.12

5 years ago

0.81.15

5 years ago

0.81.14

5 years ago

0.81.17

5 years ago

0.81.16

5 years ago

0.81.19

5 years ago

0.81.18

5 years ago

0.81.11

5 years ago

0.81.10

5 years ago

0.81.9

5 years ago

0.81.8

6 years ago

0.81.6

6 years ago

0.81.7

6 years ago

0.81.4

6 years ago

0.81.5

6 years ago

0.81.3

6 years ago

0.81.2

6 years ago

0.81.1

6 years ago

0.81.0

6 years ago

0.80.0

6 years ago

0.79.2

6 years ago

0.79.1

6 years ago

0.78.0

6 years ago

0.79.0

6 years ago

0.75.0

6 years ago

0.76.0

6 years ago

0.77.0

6 years ago

0.74.10

6 years ago

0.74.11

6 years ago

0.74.9

6 years ago

0.74.8

6 years ago

0.74.7

6 years ago

0.74.6

6 years ago

0.74.5

6 years ago

0.74.4

6 years ago

0.74.3

6 years ago

0.74.2

6 years ago

0.74.1

6 years ago

0.74.0

6 years ago

0.72.0

6 years ago

0.73.0

6 years ago

0.71.2

6 years ago

0.71.1

6 years ago

0.71.0

6 years ago

0.70.0

6 years ago

0.68.0

6 years ago

0.69.0

6 years ago

0.67.2

6 years ago

0.67.1

6 years ago

0.67.0

6 years ago

0.66.0

6 years ago

0.65.2

6 years ago

0.64.1

6 years ago

0.64.0

6 years ago

0.65.1

6 years ago

0.65.0

6 years ago

0.63.0

6 years ago

0.62.1

6 years ago

0.62.0

6 years ago

0.61.0

6 years ago

0.60.0

6 years ago

0.59.0

6 years ago

0.58.0

6 years ago

0.56.2

6 years ago

0.57.0

6 years ago

0.56.1

6 years ago

0.56.0

6 years ago

0.55.2

6 years ago

0.55.1

6 years ago

0.55.0

6 years ago

0.53.1

6 years ago

0.54.0

6 years ago

0.53.0

6 years ago

0.52.0

6 years ago

0.51.0

6 years ago

0.50.1

6 years ago

0.50.0

6 years ago

0.49.0

6 years ago

0.48.0

6 years ago

0.47.0

6 years ago

0.46.0

6 years ago

0.45.1

6 years ago

0.45.0

6 years ago

0.44.3

6 years ago

0.44.2

6 years ago

0.44.1

6 years ago

0.44.0

6 years ago

0.43.0

6 years ago

0.42.0

6 years ago

0.41.1

6 years ago

0.41.0

6 years ago

0.40.2

6 years ago

0.40.1

6 years ago

0.40.0

6 years ago

0.39.0

6 years ago

0.38.0

6 years ago

0.37.1

6 years ago

0.37.0

6 years ago

0.36.0

6 years ago

0.35.0

6 years ago

0.34.0

6 years ago

0.33.0

6 years ago

0.32.2

6 years ago

0.32.1

6 years ago

0.32.0

6 years ago

0.31.0

6 years ago

0.30.0

6 years ago

0.29.0

6 years ago

0.28.0

6 years ago

0.27.0

6 years ago

0.26.0

6 years ago

0.25.0

6 years ago

0.24.0

6 years ago

0.23.1

6 years ago

0.23.0

6 years ago

0.22.1

6 years ago

0.22.0

6 years ago

0.21.0

6 years ago

0.20.3

6 years ago

0.20.2

6 years ago

0.20.1

6 years ago

0.20.0

6 years ago

0.19.10

6 years ago

0.19.6

6 years ago

0.19.5

6 years ago

0.19.4

6 years ago

0.19.3

6 years ago

0.19.2

6 years ago

0.19.0

6 years ago

0.18.0

6 years ago

0.17.0

6 years ago

0.16.0

6 years ago

0.15.1

6 years ago

0.15.0

6 years ago

0.14.0

6 years ago

0.13.0

6 years ago

0.12.0

6 years ago

0.11.0

6 years ago

0.10.0

6 years ago

0.9.2

6 years ago

0.9.1

6 years ago

0.9.0

6 years ago

0.8.0

6 years ago

0.7.1

6 years ago

0.7.0

6 years ago

0.6.11

6 years ago

0.6.10

6 years ago

0.6.6

6 years ago

0.6.0

7 years ago

0.5.0

7 years ago

0.4.3

7 years ago

0.4.2

7 years ago

0.4.1

7 years ago

0.4.0

7 years ago

0.3.1

7 years ago

0.3.0

7 years ago

0.2.4

7 years ago

0.2.2

7 years ago

0.2.1

7 years ago

0.2.0

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago