longshotlabs / simpl-schema

A JavaScript schema validation package that supports direct validation of MongoDB update modifier objects
https://www.npmjs.com/package/simpl-schema
MIT License
560 stars 115 forks source link

Extend with options #488

Open sylido opened 1 year ago

sylido commented 1 year ago

Is there a way to extend a schema and provide a json object that includes the "getErrorMessage" and/or other options? Looking through the documentation and source code it seems like they would be ignored.

If that's not possible in the same command - is there a way to pass the custom "getErrorMessage" function after the schema has been extended - I can see how using the resulting _schema and making a new SimpleSchema() with it and passing in the options can work, but it seems like a lot.

github-actions[bot] commented 1 year ago

Thank you for submitting an issue!

If this is a bug report, please be sure to include, at minimum, example code showing a small schema and any necessary calls with all their arguments, which will reproduce the issue. Even better, you can link to a saved online code editor example, where anyone can immediately run the code and see the issue.

If you are requesting a feature, include a code example of how you imagine it working if it were implemented.

If you need to edit your issue description, click the [...] and choose Edit.

Be patient. This is a free and freely licensed package that I maintain in my spare time. You may get a response in a day, but it could also take a month. If you benefit from this package and would like to see more of my time devoted to it, you can help by sponsoring.

kolyasya commented 3 months ago

+1

For now I've made it with extendedSchema._constructorOptions.getErrorMessage = ...

but TS is unhappy because:

Property '_constructorOptions' is private and only accessible within class 'SimpleSchema'