Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
if (source.props[a].required && source.props[b].required) {
return 0;
} else if (source.props[a].required && !source.props[b].required) {
return -1;
}
return 1;
};
return props.sort(sort);
}
/**
* Memoize expensive sort/traverse to speed to re-renders.
*/
const memoizedToMap = moize.deep(function toMap(source: Docs, ...sort: Array<(Array) => Array>) {
const map = new Map();
let keys = Object.keys(source.props);
if (sort.length && keys.length > 1) {
for (let i = 0; i < sort.length; i++) {
keys = sort[i](keys, source);
}
}
keys.forEach(key => {
map.set(key, source.props[key]);
});
return map;
});