Commit 1f1b2953 authored by Boris Kocherov's avatar Boris Kocherov

add README.md

parent a1c5935c
# JSON Schema form generator RenderJS gadget
## Structure
**Gadget for recursive load schema**
[gadget_demo_json_schema_form.html](gadget_demo_json_schema_form.html)
* **done** remove jquery dependence
**Gadget for recursive form generation**
[gadget_json_generated_form.html](gadget_json_generated_form.html)
* **done** remove slapos specific code
* **partly done** remove jquery dependence
* **partly done** full support of json schema
* using changeState and mutex
* separate form design from code for form generation
* add general using documention
**Gadget for generate slapos parameter form**
[gadget_erp5_page_slap_parameter_form.html](gadget_erp5_page_slap_parameter_form.html)
It is the previous version of gadget used for form generation.
It should be changed for it uses the above gadget as children
for form generation.
In this gadget the below listed specific slapos code should be saved:
* gui for selection of `software type` and `serialized format output`
* JsonDocument serialization to xml
* JsonDocument converting to xml
* downloading schema for user software type choice
* text representation of form if intialJsonData is not valid for current schema
* gui for switch to text mode custom JsonDocument input
## JSON schema supported
Below is the list of JSON Schema validation properties and current supported status:
**array**
*rendering is not supported*
* `additionalItems`
* `items`
* `maxItems`
* `minItems`
* `uniqueItems`
**integer** *(Number uses the same properties so if you need `number`, set your `type` explicitly)*
*online input limitation should be improved*
* `exclusiveMaximum`
* `exclusiveMinimum`
* `maximum`
* `minimum`
* `multipleOf`
**object**
* `additionalProperties`
* `dependencies`
* `maxProperties`
* `minProperties`
* `patternProperties`
- **fixed** values can be only `object` types
- add buttons for remove existed `patternProperties`
- can not be mixed with `properties`
- only regex .* in keys is supported
* `properties`
* `required`
**string**
*online input limitation should be improved*
* `maxLength`
* `minLength`
* `pattern`
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment