• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

eclipsesource / jsonforms / 30620536921

31 Jul 2026 09:36AM UTC coverage: 84.286% (+0.5%) from 83.776%
30620536921

push

github

web-flow
fix(core): refactor update data to avoid lodash issues (#2585)

Fixes #2102
Fixes #2397

Replace the lodash/fp/set call in UPDATE_DATA with a dedicated helper.
This fixes issues with numeric segments (e.g. "group-key.15") and
bracket characters in property names (e.g. "test[0]").

Improvements on top of the lodash/fp/set replacement:

- Store "__proto__" segments as own properties via defineProperty and
  traverse own properties only, so such keys neither corrupt the
  container's prototype nor get dropped. Clone containers key-by-key
  because downleveled object spreads assign instead of define.
- Read the updater's old data with resolveData instead of lodash get,
  so reads use the same literal path semantics as writes.
- Fall back to lodash's index heuristic when creating missing
  containers without schema type information.
- Match lodash's isIndex semantics with a strict index regex instead
  of Number() coercion.
- Avoid strict-mode TypeErrors when unsetting non-index array
  properties (e.g. "length") and return the same reference when
  there is nothing to unset.
- Treat an empty path as addressing the root, and replace non-object
  root data instead of spreading it.

Also documents the path semantics change in MIGRATION.md and adds unit
tests for setDataAt/unsetDataAt.

Co-authored-by: Darius Lesch <darius.lesch@proton.me>

12543 of 31932 branches covered (39.28%)

80 of 81 new or added lines in 3 files covered. (98.77%)

40 existing lines in 10 files now uncovered.

20318 of 24106 relevant lines covered (84.29%)

33.65 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

92.39
/packages/angular/node_modules/@jsonforms/core/src/reducers/core.ts


Source Not Available

The file "packages/angular/node_modules/@jsonforms/core/src/reducers/core.ts" isn't available on github. Either it's been removed, or the repo root directory needs to be updated.

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc