1- < div id ="app "> </ div >
1+ < div id ="app "> </ div >
22
3- < script src ="https://cdnjs.cloudflare.com/ajax/libs/react/16.4.2/umd/react.production.min.js "> </ script >
4- < script src ="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.4.2/umd/react-dom.production.min.js "> </ script >
5- < script src ="https://unpkg.com/react-jsonschema-form/dist/react-jsonschema-form.js "> </ script >
6- < script type ="text/javascript " src ="/schema.json "> </ script >
7- < script type ="text/javascript " src ="/uiSchema.json "> </ script >
3+ < script src ="https://cdnjs.cloudflare.com/ajax/libs/react/16.4.2/umd/react.production.min.js "> </ script >
4+ < script src ="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.4.2/umd/react-dom.production.min.js "> </ script >
5+ < script src ="https://unpkg.com/react-jsonschema-form/dist/react-jsonschema-form.js "> </ script >
6+ < script type ="text/javascript " src ="/schema.json "> </ script >
7+ < script type ="text/javascript " src ="/uiSchema.json "> </ script >
88
9- < script >
10- const Form = JSONSchemaForm . default ;
9+ < script >
10+ const Form = JSONSchemaForm . default ;
11+
1112
1213
1314 const formData = {
14-
15+ "@context" : "https://doi.org/10.5063/schema/codemeta-2.0" ,
16+ "@type" : "SoftwareSouceCode"
1517 }
1618
17- const log = ( type ) => console . log . bind ( console , type ) ;
19+ const log = ( type ) => console . log . bind ( console , type ) ;
1820
19- ReactDOM . render ( React . createElement ( Form , {
21+ function saveData ( data , fileName ) {
22+ log ( "submitted" )
23+ var content = JSON . stringify ( data , null , 2 ) ;
24+ var a = document . createElement ( "a" ) ;
25+ var file = new Blob ( [ content ] , { type : "application/json" } ) ;
26+ a . href = URL . createObjectURL ( file ) ;
27+ a . download = fileName ;
28+ a . click ( ) ;
29+ } ;
30+ const onSubmit = ( { formData} ) => saveData ( formData , "codemeta.json" ) ;
31+
32+
33+ var fileName = "codemeta.json" ;
34+ ReactDOM . render ( React . createElement ( Form , {
2035 schema : schema ,
2136 uiSchema : uiSchema ,
2237 formData : formData ,
2338 onChange : log ( "changed" ) ,
24- onSubmit : log ( "submitted" ) ,
39+ onSubmit : onSubmit ,
2540 onError : log ( "errors" )
2641 } ) , document . getElementById ( "app" ) ) ;
27- </ script >
42+
43+
44+
45+
46+
47+ </ script >
0 commit comments