Skip to content

Commit

Permalink
Merge branch 'master' of github.com:dleitee/strman
Browse files Browse the repository at this point in the history
  • Loading branch information
dleitee committed Jul 2, 2016
2 parents 695cfea + a5f26d9 commit b8d70d6
Show file tree
Hide file tree
Showing 9 changed files with 56 additions and 298 deletions.
6 changes: 3 additions & 3 deletions dist/strman.js

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions src/lib/array.js
@@ -1,7 +1,7 @@
export const _pop = array => {
let newarray = [];
for(let i = 0; i < array.length-1; i++){
newarray[i] = array[i];
export const _pop = array => array.reduce((previous, current, index) => {
if(index < array.length-1) {
previous.push(current);
return previous;
}
return newarray;
};
return previous;
}, []);
1 change: 0 additions & 1 deletion src/lib/number.js

This file was deleted.

3 changes: 0 additions & 3 deletions src/lib/throw.js

This file was deleted.

47 changes: 0 additions & 47 deletions src/lib/validate.js

This file was deleted.

92 changes: 18 additions & 74 deletions src/string.utils.js
@@ -1,6 +1,5 @@
import {ascii} from './lib/ascii';
import {_pop} from './lib/array';
import {validString, validArrayString, validNumber, validCharLength} from './lib/validate';
import {toCaseSensitive} from './lib/case';
/**
* Checks whether a string.
Expand Down Expand Up @@ -105,14 +104,11 @@ export {replace};
* @param {String} value - The String!.
* @return {String} - String without non valid characters.
*/
const transliterate = (value) => {
let result = value;
const transliterate = value => {
for(let key in ascii){
for(let char in ascii[key]){
result = replace(result, ascii[key][char], key);
}
ascii[key].map((char) => value = replace(value, char, key));
}
return result;
return value;
};

export {transliterate};
Expand Down Expand Up @@ -145,9 +141,6 @@ export {append};
*/
const appendArray = (value, appends = []) => {

validString(value);
validArrayString(appends);

if(length(appends) === 0){
return value;
}
Expand All @@ -169,12 +162,7 @@ export {appendArray};
* let title = 'abc'
* strman.at(title, 1) // returns 'b'
*/
const at = (value, index) => {
validString(value);
validNumber(index);

return substr(value, index, 1);
};
const at = (value, index) => substr(value, index, 1);

export {at};

Expand All @@ -190,22 +178,8 @@ export {at};
* let title = '[abc][def]'
* strman.between(title, '[', ']') // returns ['abc', 'def']
*/
const between = (value, start, end) => {

let result = null;

validArrayString([value, start, end]);

result = split(value, end);

result = result.map((text) => {
return substr(text, indexOf(text, start)+length(start));
});

result = _pop(result);

return result;
};
const between = (value, start, end) =>
_pop(split(value, end).map((text) => substr(text, indexOf(text, start)+length(start))));

export {between};

Expand All @@ -219,10 +193,7 @@ export {between};
* let title = 'abc'
* strman.chars(title) // returns ['a', 'b', 'c']
*/
const chars = value => {
validString(value);
return value.split('');
};
const chars = value => value.split('');

export {chars};

Expand All @@ -236,7 +207,7 @@ export {chars};
* let title = ' a b c '
* strman.collapseWhitespace(title) // returns 'a b c'
*/
const collapseWhitespace = (value) => trim(replace(value, '\\s\\s+',' '));
const collapseWhitespace = value => trim(replace(value, '\\s\\s+',' '));

export {collapseWhitespace};

Expand Down Expand Up @@ -268,7 +239,7 @@ export {removeNonWords};
* strman.contains(title, needle, false) // returns true
*/
const contains = (value, needle, caseSensitive = true) =>
indexOf(toCaseSensitive(value, caseSensitive), toCaseSensitive(needle, caseSensitive)) > -1;
indexOf(value, needle, 0, caseSensitive) > -1;

export {contains};

Expand All @@ -285,19 +256,10 @@ export {contains};
* let needles = ['Leite', 'Daniel']
* strman.containsAll(title, needles) // returns true
*/
const containsAll = (value, needles, caseSensitive = true) => {

if(length(needles) === 0){
return false;
}

for(let i = 0; i < length(needles); i++){
if(!contains(value, needles[i], caseSensitive)){
return false;
}
}
return true;
};
const containsAll = (value, needles, caseSensitive = true) =>
length(needles) > 0?needles.reduce((previous, current) =>
!contains(value, current, caseSensitive)?false:previous && true
, true):false;

export {containsAll};

Expand All @@ -314,14 +276,9 @@ export {containsAll};
* let needles = ['Leite', 'Oliveira']
* strman.containsAny(title, needles) // returns true
*/
const containsAny = (value, needles, caseSensitive = true) => {
for(let i = 0; i < length(needles); i++){
if(contains(value, needles[i], caseSensitive)){
return true;
}
}
return false;
};
const containsAny = (value, needles, caseSensitive = true) =>
needles.reduce((previous, current) =>
contains(value, current, caseSensitive)?true:previous, false);

export {containsAny};

Expand Down Expand Up @@ -615,8 +572,6 @@ export {length};
char = substr(char, 0, 1);
}

validCharLength(char);

_length = _length - length(value);

result = append(repeat(char, _length), result);
Expand Down Expand Up @@ -646,8 +601,6 @@ const rightPad = (value, _length, char = ' ') => {
char = substr(char, 0, 1);
}

validCharLength(char);

_length = _length - length(value);

result = append(result, repeat(char, _length));
Expand Down Expand Up @@ -713,9 +666,6 @@ export {prepend};
*/
const prependArray = (value, prepends = []) => {

validString(value);
validArrayString(prepends);

if(length(prepends) === 0){
return value;
}
Expand Down Expand Up @@ -800,14 +750,8 @@ export {repeat};
* @param {String} value - The String!.
* @return {String} - The String reversed!
*/
const reverse = (value) => {
let i = 0;
let reversed = '';
while(length(value) > i++){
reversed = append(reversed, substr(value, -1*i, 1));
}
return reversed;
};
const reverse = value =>
split(value, '').reduceRight((previous, current) => append(previous, current), '');

export {reverse};

Expand Down

0 comments on commit b8d70d6

Please sign in to comment.