Skip to content

miraclx/pad-ratio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pad-ratio

Pad or trim an array to sum up to a maximum value

NPM Version NPM Downloads

NPM

Installing

Via NPM:

npm install pad-ratio

Usage

// Node CommonJS
const padRatio = require('pad-ratio');
// Or Node ES6
import padRatio from 'pad-ratio';
<!-- Or in the Browser -->
<script src="pad-ratio/dist/index.js"></script>

Examples

padRatio([20, 30]); // [ 20, 30, 50 ]
padRatio([20, 30], 100); // [ 20, 30, 50 ]
padRatio([45.642, 15.027], 120); // [ 45.642, 15.027, 59.330999999999996 ]
padRatio([45.642, 15.027], 120, false); // [ 45.642, 74.35799999999999 ]
padRatio('5:2:8', 20); // [ 5, 2, 8, 5 ]
padRatio('5:2:8', 20, false); // [ 5, 2, 13 ]

API

padRatio(array[, maximum[, append])

Parse and pad array appending or trimming it till it's contents sum up to maximum. The append argument determined whether to push the remnant to the array or to increment the final value with it.

HybridInput: string|number|number[]

If HybridInput is a string, the value separators can be any of ,, :, ;, |.

padRatio([20, 30, 40], 100)
// [ 20, 30, 40, 10 ]

padRatio([20, 30, 40], 100, false)
// [ 20, 30, 50 ]

Development

Building

Feel free to clone, use in adherance to the license and perhaps send pull requests

git clone https://github.com/miraclx/pad-ratio.git
cd pad-ratio
npm install
# hack on code
npm test
npm run build

Testing

Tests are executed with Jest. To use it, simple run npm install, it will install Jest and its dependencies in your project's node_modules directory followed by npm run build and finally npm test.

To run the tests:

npm install
npm run build
npm test

License

Apache 2.0 © Miraculous Owonubi (@miraclx) <omiraculous@gmail.com>

About

Pad or trim an array to sum up to a maximum value

Resources

License

Stars

Watchers

Forks

Packages

No packages published