@raydium-io/raydium-sdk-v2
Version:
An SDK for building applications on top of Raydium.
23 lines (18 loc) • 612 B
text/typescript
/**
* https://youmightnotneed.com/lodash/
*/
export function chunkArray<T>(arr: T[], chunkSize = 1, cache: T[][] = []): T[][] {
const tmp = [...arr];
if (chunkSize <= 0) return cache;
while (tmp.length) cache.push(tmp.splice(0, chunkSize));
return cache;
}
export function intersection<T>(arr: T[], ...args: T[][]): T[] {
return arr.filter((item) => args.every((arr) => arr.includes(item)));
}
export function xor<T>(arr: T[], ...args: T[][]): T[] {
return arr.filter((item) => args.every((arr) => !arr.includes(item)));
}
export function uniq<T>(arr: T[]): T[] {
return [...new Set(arr)];
}