├── .vs
├── ProjectSettings.json
├── VSWorkspaceState.json
├── json-editor
│ ├── FileContentIndex
│ │ ├── 2e70db0a-29d3-47c5-ad41-dd99f92ce9a3.vsidx
│ │ ├── b336fc0d-243f-471c-83e4-6c023098c3e8.vsidx
│ │ ├── ead74eeb-d7c0-4b45-bfc2-a0c2ae1c02e4.vsidx
│ │ └── read.lock
│ └── v17
│ │ └── .wsuo
├── jsonToForm
│ ├── FileContentIndex
│ │ ├── 26dc5dcb-725b-4124-99b3-b2357159418c.vsidx
│ │ └── read.lock
│ └── v17
│ │ └── .wsuo
└── slnx.sqlite
├── LICENSE
├── README.md
├── demo.html
├── jquery
└── jquery.min.js
├── jsonToForm
├── jsonToForm.css
└── jsonToForm.js
└── package-lock.json
/.vs/ProjectSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "CurrentProjectSetting": null
3 | }
--------------------------------------------------------------------------------
/.vs/VSWorkspaceState.json:
--------------------------------------------------------------------------------
1 | {
2 | "ExpandedNodes": [
3 | ""
4 | ],
5 | "SelectedNode": "\\C:\\Workspace\\ToDoProjects\\jsonToForm",
6 | "PreviewInSolutionExplorer": false
7 | }
--------------------------------------------------------------------------------
/.vs/json-editor/FileContentIndex/2e70db0a-29d3-47c5-ad41-dd99f92ce9a3.vsidx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mirshahreza/jsonToForm/f82a331c90d40470cc3717b3c3faacc35a8932af/.vs/json-editor/FileContentIndex/2e70db0a-29d3-47c5-ad41-dd99f92ce9a3.vsidx
--------------------------------------------------------------------------------
/.vs/json-editor/FileContentIndex/b336fc0d-243f-471c-83e4-6c023098c3e8.vsidx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mirshahreza/jsonToForm/f82a331c90d40470cc3717b3c3faacc35a8932af/.vs/json-editor/FileContentIndex/b336fc0d-243f-471c-83e4-6c023098c3e8.vsidx
--------------------------------------------------------------------------------
/.vs/json-editor/FileContentIndex/ead74eeb-d7c0-4b45-bfc2-a0c2ae1c02e4.vsidx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mirshahreza/jsonToForm/f82a331c90d40470cc3717b3c3faacc35a8932af/.vs/json-editor/FileContentIndex/ead74eeb-d7c0-4b45-bfc2-a0c2ae1c02e4.vsidx
--------------------------------------------------------------------------------
/.vs/json-editor/FileContentIndex/read.lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mirshahreza/jsonToForm/f82a331c90d40470cc3717b3c3faacc35a8932af/.vs/json-editor/FileContentIndex/read.lock
--------------------------------------------------------------------------------
/.vs/json-editor/v17/.wsuo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mirshahreza/jsonToForm/f82a331c90d40470cc3717b3c3faacc35a8932af/.vs/json-editor/v17/.wsuo
--------------------------------------------------------------------------------
/.vs/jsonToForm/FileContentIndex/26dc5dcb-725b-4124-99b3-b2357159418c.vsidx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mirshahreza/jsonToForm/f82a331c90d40470cc3717b3c3faacc35a8932af/.vs/jsonToForm/FileContentIndex/26dc5dcb-725b-4124-99b3-b2357159418c.vsidx
--------------------------------------------------------------------------------
/.vs/jsonToForm/FileContentIndex/read.lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mirshahreza/jsonToForm/f82a331c90d40470cc3717b3c3faacc35a8932af/.vs/jsonToForm/FileContentIndex/read.lock
--------------------------------------------------------------------------------
/.vs/jsonToForm/v17/.wsuo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mirshahreza/jsonToForm/f82a331c90d40470cc3717b3c3faacc35a8932af/.vs/jsonToForm/v17/.wsuo
--------------------------------------------------------------------------------
/.vs/slnx.sqlite:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mirshahreza/jsonToForm/f82a331c90d40470cc3717b3c3faacc35a8932af/.vs/slnx.sqlite
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 Mohsen Mirshahreza
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | **Why jsonToForm**
2 | - Fast and easy to use.
3 | - RTL support : just add style (direction:rtl) to the place holder element.
4 | - It just depends on jQuery.
5 | - It can be use in tow mode : property grid(currently implemented) / normal form(road map).
6 | - Easy to customize css.
7 | - Supported inputs : text/checkbox/textarea/html/color/date/number/radio/select.
8 | - Validation support.
9 | - Additional text option for describing inputs.
10 | - Based on schema standard.
11 |
12 | **How to use**
13 | - A demo.html is included that describe the usage.
14 |
15 | **Options**
16 | - schema / default : {} / a json schema
17 | - value / default : {} / a json object
18 | - expandingLevel / default : -1 / tree levels that initially is expanded. by default all levels will be expanded
19 | - renderFirstLevel / default : false / indicates root element renders as a visual container or no
20 | - autoTrimValues / default : true / trims spaces automatically
21 | - indenting / default : 5 / number of spaces for each level of tree
22 | - treeExpandCollapseButton / default : true / show buttons to expand/collapse tree nodes
23 | - selectNullCaption / default : '' / caption for select elements when is null
24 | - selectNullCaption / default : 'null' / caption for radio elements when is null
25 |
26 | **Events**
27 | - afterValueChanged
28 | - afterWidgetCreated
29 |
30 | **Methods**
31 | - isValid()
32 | - getSchema()
33 | - getValue()
34 | - setValue(value)
35 |
36 | **Next step V1.1.1**
37 | - Defaults for schema / reset to default button
38 | - Validation by regular based on schema standards
39 | - Validation for array items based on schema standards
40 |
41 | **Road map**
42 | - Checkbox list (when node is simple array)
43 | - Including some important schemas like schema(for design another schema) / css
44 | - Including some important regulars like email/website/...
45 | - Layout option for switching between property grid mode and normal form
46 | - Auto complete source for inputs by connecting to other API
47 | - Additional item for object nodes
48 |
49 |
50 | **Similar projects**
51 | - https://github.com/jsonform/jsonform
52 | - https://jsonforms.io/
53 | - https://github.com/jdorn/json-editor
54 | - https://github.com/plantain-00/schema-based-json-editor
55 | - https://github.com/codecombat/treema
56 | - https://json-schema-editor.tangramjs.com/
57 | - https://github.com/yourtion/vue-json-ui-editor
58 |
59 |
60 |
--------------------------------------------------------------------------------
/demo.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |