Giter VIP home page Giter VIP logo

Comments (3)

StefanTerdell avatar StefanTerdell commented on June 24, 2024

Thanks for opening an issue!

I could certainly be open to having an option to try and correct it. Something like 'patternStrategy': 'escape' | 'preserve' | 'transform' where 'preserve' would still be the default behavior and 'transform' would do "its best" to handle compatibility issues be it from flags or whatever.

I'm a bit worried about how deep this rabbit hole goes though. I don't want to start introducing dependencies, and that includes adding enough code for a specific issue to warrant one.

You could certainly take a stab at it if you want, but just FYI, v4 is around the corner (late summer maybe) and will introduce a more granular lifecycle hook system specifically to let "edgy cases" like this be easier to handle in user land.

from zod-to-json-schema.

Spappz avatar Spappz commented on June 24, 2024

Thanks you the quick response!

I'm a bit worried about how deep this rabbit hole goes though. I don't want to start introducing dependencies, and that includes adding enough code for a specific issue to warrant one.

Completely reasonable.

Out of all the flags, s seems trivial to implement. m might be more involved, though i expect i to be the worst. That said, unless I'm severely underestimating the number of special cases hidden in the specification, handling i shouldn't take more than a couple dozen lines? Overall I don't think it'd require a new package dependency or monolithic amount of code to make a simple best-attempt, though I fully understand the wariness of maintenance debt.

v4 is around the corner

If something Big™ is coming soon, I'm happy leaving it be for now (I can fix my regexes to be case-insensitive without needing flags, in situ). Could a point about this be added to the Known Issues section of the README in the meantime? Happy to PR that too if it makes anything easier 😏

from zod-to-json-schema.

StefanTerdell avatar StefanTerdell commented on June 24, 2024

If something Big™ is coming soon, I'm happy leaving it be for now (I can fix my regexes to be case-insensitive without needing flags, in situ).

Actually @Spappz this might be a good time to play around with something more involved than a known issue warning. If it gets unwieldy we can just purge it in the next major.

A PR would be welcome :)

from zod-to-json-schema.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.