1.1.0 • Published 2 years ago

collects v1.1.0

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

Collects

Laravel-like Javascript collection Library written in Typescript.

This is a tiny implementation of the Laravel collection. If you looking for more, you should use Lodash or similar libraries.

Installation

npm install collects --save-dev
yarn install collects
pnpm i collects -D

Usage

You can use the functions with fluently or standalone.

Fluent Usage

There are 2 different ways to use it fluently. You can create an instance of the Collection class or use the built-in function called collects. Actually there is no big difference in these 2 ways, only the collects method creates an instance of the Collection behind the scene.

Example with collects methods

import collects from 'collects';

const sumOfFirstChunk collects([1, 2, 3]).chunk(2).first()?.sum();
// It return 3 which is sum of the first chunk, which is 1,2

Example with Collection class

import { Collection } from 'collects';

const collection = new Collection([1, 2, 3]);

const sumOfFirstChunk = collection.chunk(2).first()?.sum();
// It return 3 which is sum of the first chunk, which is 1,2

Standalone Usage

You can use any of available methods importing standalone.

Example with standalone

import { chunk, first, sum } from 'collects';

const arr = [1, 2, 3];

const sumOfFirstChunk = sum(first(chunk(arr, 2)));

// It return 3 which is sum of the first chunk, which is 1,2

Available Methods

  • ✅ all
  • ✅ average
  • ✅ avg
  • ✅ chunk
  • ✅ chunkWhile
  • ✅ first
  • ✅ sum
  • ✅ collapse
  • ✅ count
  • ✅ firstOrFail
  • ✅ at // This is not Laravel thing!
  • ✅ get
  • 🧑‍💻 isEmpty
  • 🧑‍💻 isNotEmpty
  • 🧑‍💻 max
  • 🧑‍💻 min
  • 🧑‍💻 push
  • 🧑‍💻 put
  • 🧑‍💻 reverse
  • 🧑‍💻 toArray
  • 🧑‍💻 toJson
  • 🧑‍💻 collect
  • ⌛ combine
  • ⌛ concat
  • ⌛ contains
  • ⌛ containsStrict
  • ⌛ countBy
  • ⌛ crossJoin
  • ⌛ dd
  • ⌛ diff
  • ⌛ diffAssoc
  • ⌛ diffKeys
  • ⌛ doesntContain
  • ⌛ dump
  • ⌛ duplicates
  • ⌛ duplicatesStrict
  • ⌛ each
  • ⌛ eachSpread
  • ⌛ every
  • ⌛ except
  • ⌛ filter
  • ⌛ firstWhere
  • ⌛ flatMap
  • ⌛ flatten
  • ⌛ flip
  • ⌛ forget
  • ⌛ forPage
  • ⌛ groupBy
  • ⌛ has
  • ⌛ implode
  • ⌛ intersect
  • ⌛ intersectByKeys
  • ⌛ join
  • ⌛ keyBy
  • ⌛ keys
  • ⌛ last
  • ⌛ lazy
  • ⌛ macro
  • ⌛ make
  • ⌛ map
  • ⌛ mapInto
  • ⌛ mapSpread
  • ⌛ mapToGroups
  • ⌛ mapWithKeys
  • ⌛ median
  • ⌛ merge
  • ⌛ mergeRecursive
  • ⌛ mode
  • ⌛ nth
  • ⌛ only
  • ⌛ pad
  • ⌛ partition
  • ⌛ pipe
  • ⌛ pipeInto
  • ⌛ pipeThrough
  • ⌛ pluck
  • ⌛ pop
  • ⌛ prepend
  • ⌛ pull
  • ⌛ random
  • ⌛ range
  • ⌛ reduce
  • ⌛ reduceSpread
  • ⌛ reject
  • ⌛ replace
  • ⌛ replaceRecursive
  • ⌛ search
  • ⌛ shift
  • ⌛ shuffle
  • ⌛ sliding
  • ⌛ skip
  • ⌛ skipUntil
  • ⌛ skipWhile
  • ⌛ slice
  • ⌛ sole
  • ⌛ some
  • ⌛ sort
  • ⌛ sortBy
  • ⌛ sortByDesc
  • ⌛ sortDesc
  • ⌛ sortKeys
  • ⌛ sortKeysDesc
  • ⌛ sortKeysUsing
  • ⌛ splice
  • ⌛ split
  • ⌛ splitIn
  • ⌛ take
  • ⌛ takeUntil
  • ⌛ takeWhile
  • ⌛ tap
  • ⌛ times
  • ⌛ transform
  • ⌛ undot
  • ⌛ union
  • ⌛ unique
  • ⌛ uniqueStrict
  • ⌛ unless
  • ⌛ unlessEmpty
  • ⌛ unlessNotEmpty
  • ⌛ unwrap
  • ⌛ values
  • ⌛ when
  • ⌛ whenEmpty
  • ⌛ whenNotEmpty
  • ⌛ where
  • ⌛ whereStrict
  • ⌛ whereBetween
  • ⌛ whereIn
  • ⌛ whereInStrict
  • ⌛ whereInstanceOf
  • ⌛ whereNotBetween
  • ⌛ whereNotIn
  • ⌛ whereNotInStrict
  • ⌛ whereNotNull
  • ⌛ whereNull
  • ⌛ wrap
  • ⌛ zip