Currently, to override defaults provided by ChameleonForms, it is necessary to override a very large number of classes and methods.
To add a new handler, one needs to use a new extension method to begin your form and create the new Form, FieldGenerator and FieldGeneratorRouter classes.
Setting default values for FieldConfiguration might as well be impossible.
ChameleonForms needs a way to easily inject user code into the decision paths. I think it should internally use factory methods to generate these classes, and let the user pass factory functions to override the defaults (that way it doesn't commit to a particular DI framework).
Currently, to override defaults provided by ChameleonForms, it is necessary to override a very large number of classes and methods.
To add a new handler, one needs to use a new extension method to begin your form and create the new Form, FieldGenerator and FieldGeneratorRouter classes.
Setting default values for FieldConfiguration might as well be impossible.
ChameleonForms needs a way to easily inject user code into the decision paths. I think it should internally use factory methods to generate these classes, and let the user pass factory functions to override the defaults (that way it doesn't commit to a particular DI framework).