You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					154 lines
				
				3.1 KiB
			
		
		
			
		
	
	
					154 lines
				
				3.1 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								// Generated by LiveScript 1.4.0
							 | 
						||
| 
								 | 
							
								var values, keys, pairsToObj, objToPairs, listsToObj, objToLists, empty, each, map, compact, filter, reject, partition, find;
							 | 
						||
| 
								 | 
							
								values = function(object){
							 | 
						||
| 
								 | 
							
								  var i$, x, results$ = [];
							 | 
						||
| 
								 | 
							
								  for (i$ in object) {
							 | 
						||
| 
								 | 
							
								    x = object[i$];
							 | 
						||
| 
								 | 
							
								    results$.push(x);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return results$;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								keys = function(object){
							 | 
						||
| 
								 | 
							
								  var x, results$ = [];
							 | 
						||
| 
								 | 
							
								  for (x in object) {
							 | 
						||
| 
								 | 
							
								    results$.push(x);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return results$;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								pairsToObj = function(object){
							 | 
						||
| 
								 | 
							
								  var i$, len$, x, resultObj$ = {};
							 | 
						||
| 
								 | 
							
								  for (i$ = 0, len$ = object.length; i$ < len$; ++i$) {
							 | 
						||
| 
								 | 
							
								    x = object[i$];
							 | 
						||
| 
								 | 
							
								    resultObj$[x[0]] = x[1];
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return resultObj$;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								objToPairs = function(object){
							 | 
						||
| 
								 | 
							
								  var key, value, results$ = [];
							 | 
						||
| 
								 | 
							
								  for (key in object) {
							 | 
						||
| 
								 | 
							
								    value = object[key];
							 | 
						||
| 
								 | 
							
								    results$.push([key, value]);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return results$;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								listsToObj = curry$(function(keys, values){
							 | 
						||
| 
								 | 
							
								  var i$, len$, i, key, resultObj$ = {};
							 | 
						||
| 
								 | 
							
								  for (i$ = 0, len$ = keys.length; i$ < len$; ++i$) {
							 | 
						||
| 
								 | 
							
								    i = i$;
							 | 
						||
| 
								 | 
							
								    key = keys[i$];
							 | 
						||
| 
								 | 
							
								    resultObj$[key] = values[i];
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return resultObj$;
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								objToLists = function(object){
							 | 
						||
| 
								 | 
							
								  var keys, values, key, value;
							 | 
						||
| 
								 | 
							
								  keys = [];
							 | 
						||
| 
								 | 
							
								  values = [];
							 | 
						||
| 
								 | 
							
								  for (key in object) {
							 | 
						||
| 
								 | 
							
								    value = object[key];
							 | 
						||
| 
								 | 
							
								    keys.push(key);
							 | 
						||
| 
								 | 
							
								    values.push(value);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return [keys, values];
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								empty = function(object){
							 | 
						||
| 
								 | 
							
								  var x;
							 | 
						||
| 
								 | 
							
								  for (x in object) {
							 | 
						||
| 
								 | 
							
								    return false;
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return true;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								each = curry$(function(f, object){
							 | 
						||
| 
								 | 
							
								  var i$, x;
							 | 
						||
| 
								 | 
							
								  for (i$ in object) {
							 | 
						||
| 
								 | 
							
								    x = object[i$];
							 | 
						||
| 
								 | 
							
								    f(x);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return object;
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								map = curry$(function(f, object){
							 | 
						||
| 
								 | 
							
								  var k, x, resultObj$ = {};
							 | 
						||
| 
								 | 
							
								  for (k in object) {
							 | 
						||
| 
								 | 
							
								    x = object[k];
							 | 
						||
| 
								 | 
							
								    resultObj$[k] = f(x);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return resultObj$;
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								compact = function(object){
							 | 
						||
| 
								 | 
							
								  var k, x, resultObj$ = {};
							 | 
						||
| 
								 | 
							
								  for (k in object) {
							 | 
						||
| 
								 | 
							
								    x = object[k];
							 | 
						||
| 
								 | 
							
								    if (x) {
							 | 
						||
| 
								 | 
							
								      resultObj$[k] = x;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return resultObj$;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								filter = curry$(function(f, object){
							 | 
						||
| 
								 | 
							
								  var k, x, resultObj$ = {};
							 | 
						||
| 
								 | 
							
								  for (k in object) {
							 | 
						||
| 
								 | 
							
								    x = object[k];
							 | 
						||
| 
								 | 
							
								    if (f(x)) {
							 | 
						||
| 
								 | 
							
								      resultObj$[k] = x;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return resultObj$;
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								reject = curry$(function(f, object){
							 | 
						||
| 
								 | 
							
								  var k, x, resultObj$ = {};
							 | 
						||
| 
								 | 
							
								  for (k in object) {
							 | 
						||
| 
								 | 
							
								    x = object[k];
							 | 
						||
| 
								 | 
							
								    if (!f(x)) {
							 | 
						||
| 
								 | 
							
								      resultObj$[k] = x;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return resultObj$;
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								partition = curry$(function(f, object){
							 | 
						||
| 
								 | 
							
								  var passed, failed, k, x;
							 | 
						||
| 
								 | 
							
								  passed = {};
							 | 
						||
| 
								 | 
							
								  failed = {};
							 | 
						||
| 
								 | 
							
								  for (k in object) {
							 | 
						||
| 
								 | 
							
								    x = object[k];
							 | 
						||
| 
								 | 
							
								    (f(x) ? passed : failed)[k] = x;
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return [passed, failed];
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								find = curry$(function(f, object){
							 | 
						||
| 
								 | 
							
								  var i$, x;
							 | 
						||
| 
								 | 
							
								  for (i$ in object) {
							 | 
						||
| 
								 | 
							
								    x = object[i$];
							 | 
						||
| 
								 | 
							
								    if (f(x)) {
							 | 
						||
| 
								 | 
							
								      return x;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								});
							 | 
						||
| 
								 | 
							
								module.exports = {
							 | 
						||
| 
								 | 
							
								  values: values,
							 | 
						||
| 
								 | 
							
								  keys: keys,
							 | 
						||
| 
								 | 
							
								  pairsToObj: pairsToObj,
							 | 
						||
| 
								 | 
							
								  objToPairs: objToPairs,
							 | 
						||
| 
								 | 
							
								  listsToObj: listsToObj,
							 | 
						||
| 
								 | 
							
								  objToLists: objToLists,
							 | 
						||
| 
								 | 
							
								  empty: empty,
							 | 
						||
| 
								 | 
							
								  each: each,
							 | 
						||
| 
								 | 
							
								  map: map,
							 | 
						||
| 
								 | 
							
								  filter: filter,
							 | 
						||
| 
								 | 
							
								  compact: compact,
							 | 
						||
| 
								 | 
							
								  reject: reject,
							 | 
						||
| 
								 | 
							
								  partition: partition,
							 | 
						||
| 
								 | 
							
								  find: find
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								function curry$(f, bound){
							 | 
						||
| 
								 | 
							
								  var context,
							 | 
						||
| 
								 | 
							
								  _curry = function(args) {
							 | 
						||
| 
								 | 
							
								    return f.length > 1 ? function(){
							 | 
						||
| 
								 | 
							
								      var params = args ? args.concat() : [];
							 | 
						||
| 
								 | 
							
								      context = bound ? context || this : this;
							 | 
						||
| 
								 | 
							
								      return params.push.apply(params, arguments) <
							 | 
						||
| 
								 | 
							
								          f.length && arguments.length ?
							 | 
						||
| 
								 | 
							
								        _curry.call(context, params) : f.apply(context, params);
							 | 
						||
| 
								 | 
							
								    } : f;
							 | 
						||
| 
								 | 
							
								  };
							 | 
						||
| 
								 | 
							
								  return _curry();
							 | 
						||
| 
								 | 
							
								}
							 |