UNPKG

@base-ui-components/react

Version:

Base UI is a library of headless ('unstyled') React components and low-level hooks. You gain complete control over your app's CSS and accessibility features.

32 lines 960 B
export const defaultItemEquality = (item, value) => Object.is(item, value); export function compareItemEquality(item, value, comparer) { if (item == null || value == null) { return Object.is(item, value); } return comparer(item, value); } export function itemIncludes(collection, value, comparer) { if (!collection || collection.length === 0) { return false; } return collection.some(item => { if (item === undefined) { return false; } return compareItemEquality(item, value, comparer); }); } export function findItemIndex(collection, value, comparer) { if (!collection || collection.length === 0) { return -1; } return collection.findIndex(item => { if (item === undefined) { return false; } return compareItemEquality(item, value, comparer); }); } export function removeItem(collection, value, comparer) { return collection.filter(item => !compareItemEquality(item, value, comparer)); }