Create the next immutable state by mutating the current one
30 matches across 7 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | src/plugins/patches.ts | 51 | // Step 1: Check if state has a stored key |
| LOW | src/plugins/patches.ts | 53 | // Step 2: Validate the key is still valid in parent |
| LOW | src/plugins/patches.ts | 76 | // Step 3: Handle Set case specially |
| LOW | src/plugins/patches.ts | 88 | // Step 4: Validate key still exists in parent |
| LOW | src/plugins/patches.ts | 93 | // Step 5: Add key to path |
| LOW | src/plugins/patches.ts | 97 | // Step 6: Recurse to parent if exists |
| LOW | src/plugins/patches.ts | 102 | // Step 7: At root - reverse path and validate |
| Severity | File | Line | Snippet |
|---|---|---|---|
| CRITICAL | __tests__/patch.js | 1593 | draft.queries.queryKey.data.items.push({name: "item2"}) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | __performance_tests__/data.json | 5777 | "about": "Laboris aliqua labore esse officia Lorem. Ad occaecat ullamco est quis cillum Lorem ipsum eu laboris velit |
| LOW | __performance_tests__/data.json | 7577 | "about": "Ut labore consequat occaecat deserunt qui in. Lorem ipsum commodo culpa minim proident amet voluptate eius |
| LOW | __performance_tests__/data.json | 8657 | "about": "Eu est esse Lorem ipsum aute non labore qui id ad exercitation deserunt. Velit nulla nostrud laboris velit |
| LOW | __performance_tests__/data.json | 11537 | "about": "Enim Lorem ipsum Lorem culpa officia ad et esse ullamco fugiat. Eiusmod non tempor quis ad eu elit magna a |
| LOW | __performance_tests__/data.json | 12977 | "about": "Commodo consectetur occaecat non nostrud est sunt sunt incididunt mollit qui eiusmod laboris do esse. Et e |
| LOW | __performance_tests__/data.json | 16442 | "about": "Commodo elit eu irure ex eu eiusmod ipsum et laboris enim dolore nulla fugiat enim. Excepteur non dolor an |
| LOW | __performance_tests__/data.json | 17342 | "about": "Est veniam irure dolore aliquip ex. Dolore minim sunt eu voluptate aliqua. Enim elit cupidatat cupidatat l |
| LOW | __performance_tests__/data.json | 21707 | "about": "Et ea veniam amet nisi labore enim elit. Mollit eu laborum nulla fugiat qui mollit dolor. Reprehenderit no |
| LOW | __performance_tests__/data.json | 23057 | "about": "Fugiat ad eu eu dolor nisi occaecat velit proident velit nostrud enim. Adipisicing aute dolore aute exerci |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | src/core/finalize.ts | 169 | export function registerChildFinalizationCallback( |
| LOW | src/core/finalize.ts | 194 | function generatePatchesAndFinalize(state: ImmerState, rootScope: ImmerScope) { |
| LOW | src/plugins/patches.ts | 238 | function generatePatchesFromAssigned( |
| LOW | src/plugins/arrayMethods.ts | 267 | function handleReorderingOperation( |
| LOW | src/plugins/arrayMethods.ts | 372 | function handleNonMutatingOperation( |
| LOW | src/utils/common.ts | 274 | function dontMutateFrozenCollections() { |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | perf-testing/read-cpuprofile.js | 441 | // .map(([category, funcMap]) => { |
| LOW | perf-testing/read-cpuprofile.js | 461 | // .sort((a, b) => b[1] - a[1]) |
| LOW | perf-testing/read-cpuprofile.js | 481 | // if (funcKey.includes("[unknown]")) { |
| LOW | perf-testing/read-cpuprofile.js | 501 | // uncategorizedStats.forEach(([func, samples]) => { |
| LOW | perf-testing/read-cpuprofile.js | 521 |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | __tests__/regressions.js | 152 | // That's roughly what seamless-immutable does |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | _site/readme/index.html | 241 | Here is a simple example of the difference that Immer could make in practice. |