swimlane / ngx-ui

🚀 Style and Component Library for Angular
https://swimlane.github.io/ngx-ui/
MIT License
706 stars 112 forks source link

JsonEditor Validation Broken in 47.1.0 #1037

Open crimson-cata1yst opened 6 months ago

crimson-cata1yst commented 6 months ago

Due to the upgrade to Ajv 8.x.x with the Angular 17 upgrades, some breaking changes to how Ajv classes and error validation works was not accounted for and has left the JsonEditor component validation in a broken state

Ajv 8.0.0 Changelog with breaking changes Ajv Migration from 6.x to 8.x

I've narrowed down the main culprit to dataPath now called 'instancePath' in Ajv. Though after fixing it locally, there now there are errors about $meta not existing for the strict schema when working through the bug; so there are some other underlying things that must also need fixed.

Meta issue error:

image

Steps to Reproduce: Build and run the latest ngx-ui demo, navigate to the JsonEditor and try to trigger validation errors. Validation never fires and the inputs never highlight. Open web debugger and see underlying Ajv errors.

crimson-cata1yst commented 6 months ago

Resolved in linked PR

crimson-cata1yst commented 5 months ago

@marjan-georgiev @Hypercubed @haeminn How can I get this attached PR reviewed? I would rather not publish a forked version of this repo for my team to use but I'm going to soon have to. :(