hu
Version:
Functional utility helper library
83 lines • 2.3 kB
JavaScript
{
var _ns_ = {
id: 'hu.lib.macros',
doc: void 0
};
var hu_lib_function = require('./function');
var curry = hu_lib_function.curry;
var compose = hu_lib_function.compose;
var hu_lib_type = require('./type');
var isString = hu_lib_type.isString;
var isArray = hu_lib_type.isArray;
var isNumber = hu_lib_type.isNumber;
var isUndef = hu_lib_type.isUndef;
var isObject = hu_lib_type.isObject;
}
void 0;
void 0;
void 0;
void 0;
void 0;
void 0;
void 0;
void 0;
void 0;
void 0;
void 0;
{
var _ns_ = {
id: 'hu.lib.string',
doc: void 0
};
var hu_lib_type = require('./type');
var isString = hu_lib_type.isString;
var isArray = hu_lib_type.isArray;
var isNumber = hu_lib_type.isNumber;
var hu_lib_object = require('./object');
var keys = hu_lib_object.keys;
}
var EOL = /[\n|\r]/;
var subs = exports.subs = function subs(x, start, end) {
return isString(x) ? x.substring(start, end) : x;
};
var lines = exports.lines = function lines(x) {
return isString(x) ? x.split(EOL) : x;
};
var unlines = exports.unlines = function unlines(x) {
return isArray(x) ? x.join('\n') : x;
};
var words = exports.words = function words(x) {
return isString(x) ? x.split(/[ ]+/) : x;
};
var unwords = exports.unwords = function unwords(x) {
return isArray(x) ? x.join(' ') : x;
};
var chars = exports.chars = function chars(x) {
return isString(x) ? x.split('') : x;
};
var unchars = exports.unchars = function unchars(x) {
return isArray(x) ? x.join('') : x;
};
var char = exports.char = function char(x) {
return isNumber(x) ? String.fromCharCode(x) : x;
};
var reverse = exports.reverse = function reverse(x) {
return isString(x) ? x.split('').reverse().join('') : x;
};
var repeat = exports.repeat = function repeat(n, x) {
return isString(x) ? n > 0 ? x + repeat(n - 1, x) : '' : x;
};
var htmlEscapes = {
'&': '&',
'<': '<',
'>': '>',
'"': '"',
'\'': '''
};
var unescapedHtml = new RegExp('[' + keys(htmlEscapes).join() + ']', 'g');
var escapeChar = function escapeChar(x) {
return htmlEscapes[x];
};
var escape = exports.escape = function escape(x) {
return isString(x) ? String(x).replace(unescapedHtml, escapeChar) : x;
};