Comments (4)
Could you not do this by simply using refineType
with a more custom format
?
from enjoi.
You are right. It can be done using refineType
and a custom type. The only downside I see to this is that you need to recreate the same joi
validation schema as what enjoi
already provides and then add the extra needed validation on top of it. Which is not a deal breaker, just a note.
So, we will probably go with refineType
. But as the PR was almost ready if you still think an addition like the suggested one would add value to enjoi
I will be happy to finish the code.
from enjoi.
You can also use the extensions feature. That might behave more like you are wanting because you can fully extend joi that way.
Iβm happy to look at a PR still. Depending on how it fits in with the theme of enjoi I donβt see an issue with accepting such a change.
from enjoi.
The PR is ready.
This functionality would be more viable than refineType
in the cases where you want to change the default validation per instance, not globally for a specified type. Also e.g. for objects you can add boolean logic rules between the keys/properties of the object.
from enjoi.
Related Issues (20)
- doesn't handle schemas that use more than one of `type`, `anyOf`, `allOf` HOT 1
- allow additionalProperties by default
- handle cases where `type` keyword is undefined or `type` is an array HOT 1
- Infinite loop when schema contains a self-reference
- [Bug] Using a $ref in a anyOf or allOf triggers a RangeError
- useDefaults should assume `null` & empty string are empty
- Convert "description" to description()
- Proposal for refactor HOT 19
- Allowing empty strings by default for string types HOT 6
- joi and hoek deprecated, moved to @hapi/joi @hapi/hoek HOT 1
- Joi dependency in wrong section HOT 2
- Update needed to support new version of Hapi and Joi HOT 7
- Source code of version 6.0.0 HOT 3
- Version 6.0.2 is not publish to npm HOT 1
- Joi.extend no longer accepts array arguments
- [Feature] Yup support HOT 2
- Other way around: Joi to JSON
- Basic example is not working
- Resolving of `not` is incorrect
- Version 7.0.0 from npm still uses `@hapi/joi` instead `joi` library HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from enjoi.