48 lines
1.1 KiB
JavaScript
48 lines
1.1 KiB
JavaScript
// Module ID: 1600
|
|
// Function ID: 1601
|
|
// Name: useMemoArray
|
|
// Dependencies: [19]
|
|
// Exports: useMemoArray
|
|
|
|
// Module 1600 (useMemoArray)
|
|
import noop from "noop";
|
|
|
|
|
|
export const useMemoArray = function useMemoArray(arr) {
|
|
const ref = current.useRef(undefined);
|
|
current = ref.current;
|
|
const mapped = arr.map((arg0, arg1) => {
|
|
let arr;
|
|
let tmp;
|
|
[tmp, arr] = arg0;
|
|
let tmp3;
|
|
if (current != null) {
|
|
tmp3 = tmp2.entries[arg1];
|
|
}
|
|
let everyResult = tmp3;
|
|
if (tmp3) {
|
|
everyResult = tmp3.deps.length === arr.length;
|
|
}
|
|
if (everyResult) {
|
|
const deps = tmp3.deps;
|
|
everyResult = deps.every((arg0, arg1) => Object.is(arg0, table[arg1]));
|
|
}
|
|
if (!everyResult) {
|
|
const obj = { item: null, deps: null };
|
|
obj[0] = tmp;
|
|
obj[1] = arr;
|
|
tmp3 = obj;
|
|
}
|
|
return tmp3;
|
|
});
|
|
if (current) {
|
|
if (current.entries.length === mapped.length) {
|
|
if (mapped.every((arg0, arg1) => arg0 === current.entries[arg1])) {
|
|
return current.items;
|
|
}
|
|
}
|
|
}
|
|
const mapped1 = mapped.map((item) => item.item);
|
|
ref.current = { entries: mapped, items: mapped1 };
|
|
return mapped1;
|
|
};
|