react-generate-unique-key-for-map
Version:
Create unique keys for map elements that don't have unique property
38 lines (26 loc) • 1.31 kB
JavaScript
import {useRef as $hgUW1$useRef} from "react";
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
var $be9ce7abeb390bae$exports = {};
$parcel$export($be9ce7abeb390bae$exports, "useGetUniqueKey", () => $be9ce7abeb390bae$export$e3ae60773e14b60f);
var $414dea32c6debce2$exports = {};
$parcel$export($414dea32c6debce2$exports, "generateUniqueKey", () => $414dea32c6debce2$export$a2159b42596d12b9);
function $414dea32c6debce2$export$a2159b42596d12b9() {
function s4() {
return Math.floor((1 + Math.random()) * 65536).toString(16).substring(1);
}
return s4() + s4() + "-" + s4() + "-" + s4() + "-" + s4() + "-" + s4() + s4() + s4();
}
function $be9ce7abeb390bae$export$e3ae60773e14b60f() {
const uniqueKeysRef = $hgUW1$useRef(new Map());
function getUniqueKey(item) {
if (uniqueKeysRef.current.has(item)) return uniqueKeysRef.current.get(item);
const uniqueKey = $414dea32c6debce2$export$a2159b42596d12b9();
uniqueKeysRef.current.set(item, uniqueKey);
return uniqueKey;
}
return getUniqueKey;
}
export {$be9ce7abeb390bae$export$e3ae60773e14b60f as useGetUniqueKey, $414dea32c6debce2$export$a2159b42596d12b9 as generateUniqueKey};
//# sourceMappingURL=module.js.map