export default function unique(arr){ return Array.from(new Set(arr.sort())); }
import unique from './js-debug-mutating-input'; describe('unique', () => { test('returns unique values in first-seen order', () => { expect(unique([2,2,1,3,1])).toEqual([2,1,3]); }); test('does not mutate the caller array', () => { const ids = [2,2,1,3,1]; unique(ids); expect(ids).toEqual([2,2,1,3,1]); }); test('does not mutate a shared array reference inside another object', () => { const state = { selectedIds: [3,3,2,1] }; unique(state.selectedIds); expect(state.selectedIds).toEqual([3,3,2,1]); }); });