UNPKG

rhodash

Version:

A deadly simple alternative to lodash

2 lines (1 loc) 3.28 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});function l(n,e){return n.filter(t=>!e.includes(t))}function m(n,e){if(e<=0)return[[]];const t=[];for(let o=0;o<n.length;o++)o%e===0?t.push([n[o]]):t[t.length-1].push(n[o]);return t}function f(n){if(!n)return n;if(Array.isArray(n))return n.map(f);if(n instanceof Date)return new Date(n);if(n instanceof Map){const e=new Map;for(const[t,o]of n.entries())e.set(t,f(o));return e}if(n instanceof Set){const e=new Set;for(const t of n.values())e.add(f(t));return e}if(n instanceof Buffer)return Buffer.from(n);if(typeof n=="object"){const e={};for(const t in n)e[t]=f(n[t]);return e}return n}function p(n,e){let t=0;for(const o of n)e(o)&&(t+=1);return t}function y(n){return new Promise(e=>setTimeout(e,n))}function b(n,e){const t={};for(const o of n){const r=e(o);t[r]===void 0?t[r]=[o]:t[r].push(o)}return t}function h(n){return n[n.length-1]}function d(n,e){const t={};for(const o in n)n[o]!==e[o]&&(t[o]=n[o]);return t}function g(n,e,t){const o=e.split(/\[|\]|\./).filter(Boolean);let r=n;for(let u=0;u<o.length-1;u++){const c=s(o[u]);(r[c]===void 0||!w(r[c]))&&(r[c]=k(o[u+1])?[]:{}),r=r[c]}const i=s(o[o.length-1]);return i!==void 0&&(r[i]=t),n}function k(n){return/^\d+$/.test(n)}function s(n){return n==='""'||n==="''"?"":n}function w(n){return n!==null&&typeof n=="object"}function B(n,e){const t={};for(const o in n)e.includes(o)||(t[o]=n[o]);return t}function a(n,e){const t=[],o=[];for(const r of n)e(r)?t.push(r):o.push(r);return[t,o]}function S(n,e){const t={};for(const o of e)t[o]=n[o];return t}function D(n,e=Boolean){const t={};for(const o in n)e(n[o])&&(t[o]=n[o]);return t}function E(n,e,t){if(typeof n!="number")throw Error("start must be a number");if(typeof e<"u"&&typeof e!="number")throw Error("end must be a number");if(typeof t<"u"&&typeof t!="number")throw Error("step must be a number");if(t===0)throw Error("step cannot be zero");e===void 0&&(e=n,n=0),t===void 0&&(t=n<e?1:-1);const o=[];for(let r=n;n<e?r<e:r>e;r+=t)o.push(r);return o}function z(n){let e=0;for(const t of n)e+=t;return e}function j(n,e){let t=0;const o=typeof e=="function"?e:r=>r[e];for(const r of n)t+=o(r)||0;return t}function O(n,e,t){if(typeof n!="number")throw Error("start must be a number");if(typeof e<"u"&&typeof e!="number")throw Error("end must be a number");if(typeof t<"u"&&typeof t!="number")throw Error("step must be a number");if(t===0)throw Error("step cannot be zero");e===void 0&&(e=n,n=0),t===void 0&&(t=n<e?1:-1);const o=[];for(let r=n;n<e?r<=e:r>=e;r+=t)o.push(r);return o}function q(n){return[...new Set(n)]}function M(n,e){const t=new Set,o=[];for(const r of n){const i=e(r);t.has(i)||(o.push(r),t.add(i))}return o}function A(...n){const e=[];for(let t=0;t<n[0].length;t++)e.push(n.map(o=>o[t]));return e}function K(n,e){const t={};for(let o=0;o<n.length;o++)t[n[o]]=e[o];return t}exports.arrayDifference=l;exports.chunk=m;exports.cloneDeep=f;exports.countBy=p;exports.delay=y;exports.groupBy=b;exports.last=h;exports.objectDifference=d;exports.objectSet=g;exports.omit=B;exports.partition=a;exports.pick=S;exports.pickBy=D;exports.range=E;exports.sum=z;exports.sumBy=j;exports.toRange=O;exports.uniq=q;exports.uniqBy=M;exports.zip=A;exports.zipObject=K;