Search packages, repositories and app categories

GitHub repositorypacifio/byte_flow

byte_flow

Byte flow is a pure dart , dependency less library that provides common utility functions for lists and strings .

byte_flow project cover
Stars
17
Forks
3
Last push (UTC)
Aug 5, 2021
Project status
Active

Original README

English project snapshot. Visit GitHub for the latest content.

Byte flow

Build Status

Byte flow is a pure dart , dependency less library that provides common utility functions for lists and strings .

Contents

Install

dependencies:
  byte_flow: ^1.0.0

After this run flutter pub get Then import the library

import 'package:byte_flow/byte_flow.dart';

Functions

Byte flow contains helpful utility functions for lists and strings but it's main target is to provide developers rich set of list utilites .

Array

First import the library like this

import 'package:byte_flow/byte_flow.dart' as _;

_.chunk(List list, [int size = 1])

Creates an list of elements split into groups the length of size. If list can't be split evenly, the final chunk will be the remaining elements.

Example

_.chunk(['a', 'b', 'c', 'd'], 2);
// Returns ['a', 'b'],['c', 'd']

_.chunk(['a', 'b', 'c', 'd'], 3)
// Returns ['a', 'b', 'c'],['d']

_.slice(List list, [int start = 0, int end])

Creates a slice of list from start up to, but not including, end.

Example

_.slice([1, 2, 3, 4], 2);
// Returns [3, 4]

_.compact(List list)

Creates an list with all falsey values removed. The values false, null,0, "", and NaN are falsey.

Example

_.compact([0, 1, false, 2, '', 3]);
// Returns [1, 2, 3]

_.compact([1, 2, 'some data', 2, '', 3, false, null]);
// Returns [1, 2, 'some data', 2, 3]

_.drop(List list, [int n = 1])

Creates a slice of list with n elements dropped from the beginning.

Example

_.drop([1, 2, 3]);
// Returns [2,3]

_.drop([1, 2, 3], 2);
// Returns [3]

_.drop([1, 2, 3], 5);
// Returns []

_.drop([1, 2, 3], 0);
// Returns [1, 2, 3]

_.dropRight(List list, [int n = 1])

Creates a slice of list with n elements dropRightped from the beginning.

Example

_.dropRight([1, 2, 3])
// Returns [1,2]
_.dropRight([1, 2, 3], 2)
// Returns [1]
_.dropRight([1, 2, 3], 5)
// Returns []
_.dropRight([1, 2, 3], 0)
// Returns [1, 2, 3]

_.fill(List list, dynamic value, [int start = 0, int end])

Fills elements of list with value from start up to, but not including, end.

Example

_.fill(List(3), 4);
// Returns [4, 4, 4]

_.findIndex(List list, dynamic element)

This method uses dart's default List.indexOf()

Example

_.findIndex(["Jack", "Yash", "Adib", "Alex"], "Adib");
// Returns 2

_.findLastIndex(List list, dynamic element)

This method finds the item in the list from right / last using dart's List.indexOf() method

Example

_.findLastIndex(["Jack", "Yash", "Adib", "Adib"], "Adib");
// Returns 0

_.head(List list)

Finds the first element in the list Uses dart's List.first property

Example

_.head(["Dart", "Javascript", "Swift"]);
// Returns "Dart"

_.flatten(List list)

Flatten a list , Credit goes to Justin Fagnani

Example

_.flatten([
  [1, 2, 3],
  ['a', 'b', 'c'],
  [true, false, true]
]);
// Returns [1, 2, 3, 'a', 'b', 'c', true, false, true]

_.pairs(List pairs)

This method returns an map composed from key-value pairs.

Example

_.pairs([
  ['a', 1],
  ['b', 2]
]);
// Returns {'a': 1, 'b': 2}

`_.initial(List list)```

Gets all but the last element of list.

Example

_.initial([1, 2, 3]);
// Returns [1, 2]

_.initial([1, 2, 3, 'a', 'b', 'c']);
// Returns [1, 2, 3, 'a', 'b']

_.map(List list, Function(dynamic element, int index, List list) iteratee)

Creates an list of values by running each element of list thru iteratee. The iteratee is invoked with three arguments: (value, index, list).

Example

square(n, index, list) {
  return n*n;
}
_.map([4, 8], square);
// Returns [16, 64]

_.map([4, 8], (n, index, list) {
  return n * 0;
});
// Returns [0, 0]

_.intersect(List<List> arrays)

Creates an list of unique values that are included in all given arrays

Example

final lists = [
  [1, 2, 3],
  [2, 4, 5],
  [2, 8, 9]
];
_.intersect(lists);
// Returns [2]

_.join(List list, [String separator = ','])

Converts all elements in list into a string separated by separator. Uses dart's List.join()

Example

_.join(['a', 'b', 'c'], '~');
// Returns 'a~b~c'

_.last(List list)

Gets the last element of list. Uses dart's List.last property

Example

_.last(["Dart", "Javascript", "Swift"]);
// Returns "Swift"

_.nth(List list, int n)

Gets the element at index n of list. If n is negative, the nth element from the end is returned.

Example

_.nth(['a', 'b', 'c', 'd'], 2);
// Returns 'c'

_.nth(['a', 'b', 'c', 'd'], -1);
// Returns 'd'

_.sortedIndex(List list, dynamic value)

Uses a binary search to determine the lowest index at which value should be inserted into list in order to maintain its sort order. Returns the index at which value should be inserted into list.

Example

_.sortedIndex([30, 50], 60);
// Returns 2

_.sortedIndex([30, 50], 40);
// Returns 1

_.sortedIndex([30, 50], 30);
// Returns 0

_.tail(List list)

Gets all but the first element of list.

Example

_.tail([1, 2, 3]);
// Returns [2, 3]

_.take(List list, [int n = 1])

Creates a slice of list with n elements taken from the beginning. Uses dart's native List.take(n) method

Example

_.take([1, 2, 3], 2);
// Returns [1, 2]

_.takeRight(List list, [int n = 1])

Creates a slice of list with n elements taken from the end.

Example

takeRight([1, 2, 3])
// => [3]
takeRight([1, 2, 3], 2)
// => [2, 3]
takeRight([1, 2, 3], 5)
// => [1, 2, 3]
takeRight([1, 2, 3], 0)
// => []

_.union(List<List> arrays)

Creates an list of unique values, in order

Example

_.union([
  [2],
  [1, 2]
]);

// Returns [2, 1]

_.unzip(List list)

This method Returns the new list of regrouped elements

Example

_.unzip([['a', 1, true], ['b', 2, false]]);
// Returns [['a', 'b'], [1, 2], [true, false]]

_.zip(List a, List b)

Zips two arrays , Credit

Example

_.zip(['a', 'b', 'c'], [1, 2, 3]);
// Returns [['a', 1],['b', 2],['c', 3]]

_.duplicate(List list)

Find duplicate items in an list .

Example

_.duplicate([10, 12, 9, 21, 1, 2, 10]);
// Returns [10]

String

Byte flow libraries string utility collection is poor but still under development . The following functions are stable

_.capitalize(String text)

Capitalizes the given string

Example

_.capitalize("hello world !");
// Returns "Hello world !"

TODO

  • [x] Null safety
  • [ ] Extension support
Adib Mohsin GitHub avatar
GitHub author

Adib Mohsin ↗

high on vector spaces

@antarys-ai Dhaka , Bangladesh Official website ↗
LanguagesDartShell

Categories

Packages published by this repository

Dependencies used

Dependency list 1 items

  • testDevelopment^1.17.10

How do I choose a repository?

Start with your use case, compare repository activity, and check the original project before adopting it.

  1. Search by repository name, owner or description, then narrow the results by topic.
  2. Compare stars, forks and recent pushes. Stars show community interest, not a guarantee of quality.
  3. Read the README, license and issues on GitHub before using a project.

Sources and maintenance

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗