diff --git a/.gitignore b/.gitignore index f7bc996a..85abb98e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +notebooks/mapping.json +notebooks/*.bak *.pem *.pem.flattened # Logs diff --git a/notebooks/CSIRO-geochemistry.json b/notebooks/CSIRO-geochemistry.json new file mode 100644 index 00000000..bdf41a5c --- /dev/null +++ b/notebooks/CSIRO-geochemistry.json @@ -0,0 +1,8137 @@ +{ + "metadata": { + "project_status": "New", + "accesses": [ + "admin", + "moderator", + "team" + ], + "forms": { + "FORM1": { + "submitActionFORM1": "Save and Return", + "annotationFORM1": true, + "uncertaintyFORM1": false, + "formaccessinheritFORM1": false, + "visibleFORM1": true + }, + "FORM2": { + "submitActionFORM2": "Save and New", + "annotationFORM2": true, + "uncertaintyFORM2": false, + "formaccessinheritFORM2": false, + "visibleFORM2": false + }, + "FORM3": { + "submitActionFORM3": "Save and New", + "annotationFORM3": true, + "uncertaintyFORM3": false, + "formaccessinheritFORM3": false, + "visibleFORM3": false + }, + "FORM4": { + "submitActionFORM4": "Save and New", + "annotationFORM4": true, + "uncertaintyFORM4": false, + "formaccessinheritFORM4": false, + "visibleFORM4": false + }, + "FORM5": { + "submitActionFORM5": "Save and Return", + "annotationFORM5": true, + "uncertaintyFORM5": false, + "formaccessinheritFORM5": false, + "visibleFORM5": true + }, + "FORM6": { + "submitActionFORM6": "Save and Return", + "annotationFORM6": true, + "uncertaintyFORM6": false, + "formaccessinheritFORM6": false, + "visibleFORM6": true + }, + "FORM7": { + "submitActionFORM7": "Save and Return", + "annotationFORM7": true, + "uncertaintyFORM7": false, + "formaccessinheritFORM7": false, + "visibleFORM7": true + } + }, + "sections": {}, + "meta": {}, + "access": { + "accessFORM1": [ + "admin" + ], + "accessFORM2": [ + "admin" + ], + "accessFORM3": [ + "admin" + ], + "accessFORM4": [ + "admin" + ], + "accessFORM5": [ + "admin" + ], + "accessFORM6": [ + "admin" + ], + "accessFORM7": [ + "admin" + ] + }, + "ispublic": false, + "isrequest": false, + "behavious": {}, + "project_lead": "Nathan Reid", + "lead_institution": "CSIRO Mineral Resources", + "pre_description": "Test notebook for CSIRO Geochemistry (BBS TEST 2)", + "filenames": [], + "notebook_version": "1.0", + "schema_version": "1.0", + "name": "Csirogeochem" + }, + "ui-specification": { + "fields": { + "water-id": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "water-id", + "id": "water-id", + "helperText": "Water ID", + "variant": "outlined", + "required": false, + "template": "{{water-sample-id}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Water ID" + }, + "hrid": true, + "numberfield": 1, + "fieldselect10": "water-sample-id" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "water-sample-id": { + "component-namespace": "faims-custom", + "component-name": "BasicAutoIncrementer", + "type-returned": "faims-core::String", + "component-parameters": { + "name": "water-sample-id", + "id": "water-sample-id", + "variant": "outlined", + "required": false, + "num_digits": 5, + "form_id": "FORM1SECTION1", + "label": "Water Sample ID" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "station": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Station" + }, + "FormHelperTextProps": {}, + "id": "station", + "name": "station" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "project": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "default": "Mundi", + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Project" + }, + "FormHelperTextProps": {}, + "id": "project", + "name": "project" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "area": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Area" + }, + "FormHelperTextProps": {}, + "id": "area", + "name": "area" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "site-name": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Site Name" + }, + "FormHelperTextProps": {}, + "id": "site-name", + "name": "site-name" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "take-gps-location": { + "component-namespace": "faims-custom", + "component-name": "TakePoint", + "type-returned": "faims-pos::Location", + "component-parameters": { + "fullWidth": true, + "name": "take-gps-location", + "id": "take-gps-location", + "helperText": "Click to save current location", + "variant": "outlined", + "label": "Take GPS Location" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "Updated Timestamp", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "water-table-m": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Integer", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Water Table (m)" + }, + "FormHelperTextProps": {}, + "id": "water-table-m", + "name": "water-table-m" + }, + "validationSchema": [ + [ + "yup.number" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "sample-depth-m": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Integer", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Sample Depth (m)" + }, + "FormHelperTextProps": {}, + "id": "sample-depth-m", + "name": "sample-depth-m" + }, + "validationSchema": [ + [ + "yup.number" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "bottom-of-hole-m": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Bottom of Hole (m)" + }, + "FormHelperTextProps": {}, + "id": "bottom-of-hole-m", + "name": "bottom-of-hole-m" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "basic-water-detail-notes": { + "component-namespace": "formik-material-ui", + "component-name": "MultipleTextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "multiline": true, + "InputProps": { + "type": "text", + "rows": 4 + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Basic Water Detail Notes" + }, + "FormHelperTextProps": {}, + "id": "basic-water-detail-notes", + "name": "basic-water-detail-notes" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "bore-photo": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "bore-photo", + "id": "bore-photo", + "helperText": " ", + "variant": "outlined", + "label": "Bore Photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "site-photo": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "site-photo", + "id": "site-photo", + "helperText": " ", + "variant": "outlined", + "label": "Site Photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "other-photo": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "other-photo", + "id": "other-photo", + "helperText": "Take a photo", + "variant": "outlined", + "label": "other photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Chemistry data and relations", + "variant": "outlined", + "label": "Chemistry", + "variant_style": "h3", + "html_tag": "", + "id": "html-text", + "name": "html-text" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text2": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "Site Details", + "variant_style": "h3", + "html_tag": "", + "id": "html-text2", + "name": "html-text2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hridFORM1": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "hridFORM1", + "id": "hridFORM1", + "helperText": "Water Sample ID", + "variant": "filled", + "required": false, + "template": "{{campaign-label}}-W-{{water-sample-id}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Water Sample ID" + }, + "hrid": true, + "numberfield": 1, + "fieldselect10": "water-sample-id", + "linked": "water-id" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "displayParent": true + }, + "timestamp": { + "component-namespace": "faims-custom", + "component-name": "DateTimeNow", + "type-returned": "faims-core::String", + "component-parameters": { + "is_auto_pick": true, + "fullWidth": true, + "helperText": "Date taken", + "variant": "outlined", + "required": false, + "InputLabelProps": { + "label": "Timestamp" + }, + "id": "timestamp", + "name": "timestamp" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": true, + "label": "uncertainty" + } + } + }, + "hole-type": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "Still Bore (Bailed)", + "label": "Still Bore (Bailed)" + }, + { + "value": "Still Well (Bailed)", + "label": "Still Well (Bailed)" + }, + { + "value": "Flowing Bore", + "label": "Flowing Bore" + }, + { + "value": "Flowing Well", + "label": "Flowing Well" + }, + { + "value": "Other", + "label": "Other" + } + ] + }, + "InputLabelProps": { + "label": "Hole Type" + }, + "id": "hole-type", + "name": "hole-type" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hole-lining": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "Metal", + "label": "Metal" + }, + { + "value": "Rusty", + "label": "Rusty" + }, + { + "value": "Poly pipe/plastic", + "label": "Poly pipe/plastic" + }, + { + "value": "Cement", + "label": "Cement" + }, + { + "value": "Wood", + "label": "Wood" + }, + { + "value": "Dirt", + "label": "Dirt" + }, + { + "value": "Other", + "label": "Other" + } + ] + }, + "InputLabelProps": { + "label": "Hole Lining" + }, + "id": "hole-lining", + "name": "hole-lining" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hole-open-closed": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "No Observation", + "label": "No Observation" + }, + { + "value": "Open/uncovered", + "label": "Open/uncovered" + }, + { + "value": "Closed/covered", + "label": "Closed/covered" + } + ] + }, + "InputLabelProps": { + "label": "Hole Open/Closed" + }, + "id": "hole-open-closed", + "name": "hole-open-closed" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "pipes-in-hole": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "Metal Pipes", + "label": "Metal Pipes" + }, + { + "value": "Poly Pipes", + "label": "Poly Pipes" + }, + { + "value": "Fibreglass Pipes", + "label": "Fibreglass Pipes" + }, + { + "value": "No pipes/clear", + "label": "No pipes/clear" + }, + { + "value": "Other", + "label": "Other" + } + ] + }, + "InputLabelProps": { + "label": "Pipes in Hole" + }, + "id": "pipes-in-hole", + "name": "pipes-in-hole" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hole-angle": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "Vertical", + "label": "Vertical" + }, + { + "value": "Angled", + "label": "Angled" + } + ] + }, + "InputLabelProps": { + "label": "Hole Angle" + }, + "id": "hole-angle", + "name": "hole-angle" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "recirculation": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "No Recirculation", + "label": "No Recirculation" + }, + { + "value": "Recirculation by Closed Tank", + "label": "Recirculation by Closed Tank" + }, + { + "value": "Open Recirculation", + "label": "Open Recirculation" + } + ] + }, + "InputLabelProps": { + "label": "Recirculation" + }, + "id": "recirculation", + "name": "recirculation" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "encountered-sampling-issues": { + "component-namespace": "formik-material-ui", + "component-name": "MultipleTextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "multiline": true, + "InputProps": { + "type": "text", + "rows": 4 + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Encountered Sampling Issues" + }, + "FormHelperTextProps": {}, + "id": "encountered-sampling-issues", + "name": "encountered-sampling-issues" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "sampling-notes": { + "component-namespace": "formik-material-ui", + "component-name": "MultipleTextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "multiline": true, + "InputProps": { + "type": "text", + "rows": 4 + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Sampling Notes" + }, + "FormHelperTextProps": {}, + "id": "sampling-notes", + "name": "sampling-notes" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "temperature-c": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Integer", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Temperature (C)" + }, + "FormHelperTextProps": {}, + "id": "temperature-c", + "name": "temperature-c" + }, + "validationSchema": [ + [ + "yup.number" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "conducitivty-s-cm": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Integer", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Conducitivty (\u03bcS/cm)" + }, + "FormHelperTextProps": {}, + "id": "conducitivty-s-cm", + "name": "conducitivty-s-cm" + }, + "validationSchema": [ + [ + "yup.number" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "fe2": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Fe\u00b2\u207a" + }, + "FormHelperTextProps": {}, + "id": "fe2", + "name": "fe2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "s2": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "S\u00b2\u207b" + }, + "FormHelperTextProps": {}, + "id": "s2", + "name": "s2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "ph-eh-do-subsamples": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": "All samples, multiple", + "variant": "outlined", + "required": false, + "related_type": "FORM2", + "relation_type": "faims-core::Child", + "InputProps": { + "type": "text" + }, + "multiple": true, + "SelectProps": {}, + "InputLabelProps": { + "label": "pH Eh DO Subsamples" + }, + "FormHelperTextProps": {}, + "id": "ph-eh-do-subsamples", + "name": "ph-eh-do-subsamples", + "related_type_label": "Subsample", + "current_form": "FORM1", + "current_form_label": "Water Sample" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "preferred-ph": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "related_type": "FORM2", + "relation_type": "faims-core::Child", + "InputProps": { + "type": "text" + }, + "multiple": false, + "SelectProps": {}, + "InputLabelProps": { + "label": "preferred pH" + }, + "FormHelperTextProps": {}, + "id": "preferred-ph", + "name": "preferred-ph" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "eh": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": "multiple Eh for sample", + "variant": "outlined", + "required": false, + "related_type": "FORM3", + "relation_type": "faims-core::Child", + "InputProps": { + "type": "text" + }, + "multiple": true, + "SelectProps": {}, + "InputLabelProps": { + "label": "Eh" + }, + "FormHelperTextProps": {}, + "id": "eh", + "name": "eh" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "preferred-eh": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "related_type": "FORM2", + "relation_type": "faims-core::Child", + "InputProps": { + "type": "text" + }, + "multiple": false, + "SelectProps": {}, + "InputLabelProps": { + "label": "preferred Eh" + }, + "FormHelperTextProps": {}, + "id": "preferred-eh", + "name": "preferred-eh" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "do": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": "multiple DO", + "variant": "outlined", + "required": false, + "related_type": "FORM4", + "relation_type": "faims-core::Child", + "InputProps": { + "type": "text" + }, + "multiple": true, + "SelectProps": {}, + "InputLabelProps": { + "label": "DO" + }, + "FormHelperTextProps": {}, + "id": "do", + "name": "do" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "preferred-do": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "related_type": "FORM2", + "relation_type": "faims-core::Child", + "InputProps": { + "type": "text" + }, + "multiple": false, + "SelectProps": {}, + "InputLabelProps": { + "label": "preferred DO" + }, + "FormHelperTextProps": {}, + "id": "preferred-do", + "name": "preferred-do" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "sample-id": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "sample-id", + "id": "sample-id", + "helperText": "Human Readable ID", + "variant": "outlined", + "required": false, + "template": "pH: {{ph-value}} Eh: {{}} DO: {{timestamp-2}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Sample ID" + }, + "hrid": true, + "numberfield": 3, + "fieldselect10": "sample-id-2", + "fieldselect11": "ph-value", + "fieldselect12": "timestamp-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hridFORM2": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "hridFORM2", + "id": "hridFORM2", + "helperText": "Human Readable ID", + "variant": "filled", + "required": false, + "template": "pH: {{ph-value}}{{#checkbox}}, Preferred{{/checkbox}}; Eh: {{eh-value}}{{#checkbox-2}}, Preferred{{/checkbox-2}}; DO: {{do-value}}{{#checkbox-3}}, Preferred{{/checkbox-3}}; {{timestamp-2}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "water pH ID" + }, + "hrid": false, + "numberfield": 3, + "linked": "sample-id", + "fieldselect10": "sample-id-2", + "fieldselect11": "ph-value", + "fieldselect12": "timestamp-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "sample-id-2": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Please copy from parent, manually", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Sample ID" + }, + "FormHelperTextProps": {}, + "id": "sample-id-2", + "name": "sample-id-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "ph-value": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "pH Value" + }, + "FormHelperTextProps": {}, + "id": "ph-value", + "name": "ph-value" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "timestamp-2": { + "component-namespace": "faims-custom", + "component-name": "DateTimeNow", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputLabelProps": { + "label": "Timestamp" + }, + "is_auto_pick": true, + "id": "timestamp-2", + "name": "timestamp-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hridFORM3": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "hridFORM3", + "id": "hridFORM3", + "helperText": "Eh sample ID", + "variant": "filled", + "required": false, + "template": "Eh ({{eh-value}}) {{sample-id-3}} {{timestamp-3}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Eh sample ID" + }, + "hrid": false, + "linked": "newfieldfd908b0a", + "numberfield": 1, + "fieldselect10": "sample-id-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "sample-id-3": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "manually retype", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Sample ID" + }, + "FormHelperTextProps": {}, + "id": "sample-id-3", + "name": "sample-id-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "eh-value": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Eh value" + }, + "FormHelperTextProps": {}, + "id": "eh-value", + "name": "eh-value" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "timestamp-3": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Datetime", + "component-parameters": { + "fullWidth": true, + "helperText": "Datetime-local picker (may not be supported in all browsers)", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "datetime-local" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Timestamp" + }, + "FormHelperTextProps": {}, + "id": "timestamp-3", + "name": "timestamp-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "human-readable-id": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "human-readable-id", + "id": "human-readable-id", + "helperText": "Human Readable ID", + "variant": "outlined", + "required": false, + "template": "{{sample-id-4}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Human Readable ID" + }, + "hrid": true, + "numberfield": "0", + "fieldselect10": "sample-id-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hridFORM4": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "hridFORM4", + "id": "hridFORM4", + "helperText": "DO Sample ID", + "variant": "filled", + "required": false, + "template": "DO ({{do-value}}) {{sample-id-4}} {{timestamp-4}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "DO Sample ID" + }, + "hrid": false, + "linked": "human-readable-id", + "numberfield": "0", + "fieldselect10": "sample-id-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "sample-id-4": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Sample ID" + }, + "FormHelperTextProps": {}, + "id": "sample-id-4", + "name": "sample-id-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "do-value": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "DO Value" + }, + "FormHelperTextProps": {}, + "id": "do-value", + "name": "do-value" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "timestamp-4": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Datetime", + "component-parameters": { + "fullWidth": true, + "helperText": "Datetime-local picker (may not be supported in all browsers)", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "datetime-local" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Timestamp" + }, + "FormHelperTextProps": {}, + "id": "timestamp-4", + "name": "timestamp-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "human-readable-id-2": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "human-readable-id-2", + "id": "human-readable-id-2", + "helperText": "Human Readable ID", + "variant": "outlined", + "required": false, + "template": "{{soil-autoincrementer}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Human Readable ID" + }, + "hrid": true, + "fieldselect10": "soil-autoincrementer" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hridFORM5": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "hridFORM5", + "id": "hridFORM5", + "helperText": "Soil ID", + "variant": "filled", + "required": false, + "template": "{{campaign-label-2}}-S-{{soil-autoincrementer}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Soil ID" + }, + "hrid": false, + "linked": "human-readable-id-2", + "fieldselect10": "soil-autoincrementer" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "soil-autoincrementer": { + "component-namespace": "faims-custom", + "component-name": "BasicAutoIncrementer", + "type-returned": "faims-core::String", + "component-parameters": { + "name": "soil-autoincrementer", + "id": "soil-autoincrementer", + "variant": "outlined", + "required": false, + "num_digits": 5, + "form_id": "FORM5SECTION1", + "label": "Soil Autoincrementer" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "station-2": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Station" + }, + "FormHelperTextProps": {}, + "id": "station-2", + "name": "station-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "project-2": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "template": "Mundi", + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Project" + }, + "FormHelperTextProps": {}, + "id": "project-2", + "name": "project-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "area-2": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Area" + }, + "FormHelperTextProps": {}, + "id": "area-2", + "name": "area-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "timestamp-5": { + "component-namespace": "faims-custom", + "component-name": "DateTimeNow", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Sample collection date", + "variant": "outlined", + "required": false, + "InputLabelProps": { + "label": "Timestamp" + }, + "is_auto_pick": true, + "id": "timestamp-5", + "name": "timestamp-5" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": true, + "label": "uncertainty" + } + } + }, + "timestamp-6": { + "component-namespace": "faims-custom", + "component-name": "DateTimeNow", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Sample collection date", + "variant": "outlined", + "required": false, + "is_auto_pick": true, + "InputLabelProps": { + "label": "Timestamp" + }, + "id": "timestamp-6", + "name": "timestamp-6" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": true, + "label": "uncertainty" + } + } + }, + "take-gps-location-2": { + "component-namespace": "faims-custom", + "component-name": "TakePoint", + "type-returned": "faims-pos::Location", + "component-parameters": { + "fullWidth": true, + "name": "take-gps-location-2", + "id": "take-gps-location-2", + "helperText": "Click to save current location", + "variant": "outlined", + "label": "Take GPS Location" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "Updated Timestamp", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "sample-depth-m-2": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Sample Depth (m)" + }, + "FormHelperTextProps": {}, + "id": "sample-depth-m-2", + "name": "sample-depth-m-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "colour": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Colour" + }, + "FormHelperTextProps": {}, + "id": "colour", + "name": "colour" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "lag": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "No Obs", + "label": "No Obs" + }, + { + "value": "No", + "label": "No" + }, + { + "value": "Yes", + "label": "Yes" + } + ] + }, + "InputLabelProps": { + "label": "Lag" + }, + "id": "lag", + "name": "lag" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "Notes", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "soil-texture": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Clay loam (CL)", + "children": [ + { + "name": "Sapric clay loam (CL-A)", + "children": [] + }, + { + "name": "Fibric clay loam (CL-I)", + "children": [] + }, + { + "name": "Heavy clay loam (CL-heavy)", + "children": [] + }, + { + "name": "Light clay loam (CL-light)", + "children": [] + } + ] + }, + { + "name": "Clay loam, sandy (CLS)", + "children": [ + { + "name": "Clay loam, fine sandy (CLFS)", + "children": [ + { + "name": "Sapric clay loam, fine sandy (CLFS-A)", + "children": [] + }, + { + "name": "Fibric clay loam, fine sandy (CLFS-I)", + "children": [] + }, + { + "name": "Heavy clay loam, fine sandy (CLFS-heavy)", + "children": [] + }, + { + "name": "Light clay loam, fine sandy (CLFS-light)", + "children": [] + } + ] + }, + { + "name": "Clay loam, coarse sandy (CLKS)", + "children": [ + { + "name": "Sapric clay loam, coarse sandy (CLKS-A)", + "children": [] + }, + { + "name": "Fibric clay loam, coarse sandy (CLKS-I)", + "children": [] + }, + { + "name": "Heavy clay loam, coarse sandy (CLKS-heavy)", + "children": [] + }, + { + "name": "Light clay loam, coarse sandy (CLKS-light)", + "children": [] + } + ] + }, + { + "name": "Sapric clay loam, sandy (CLS-A)", + "children": [] + }, + { + "name": "Fibric clay loam, sandy (CLS-I)", + "children": [] + }, + { + "name": "Heavy clay loam, sandy (CLS-heavy)", + "children": [] + }, + { + "name": "Light clay loam, sandy (CLS-light)", + "children": [] + } + ] + }, + { + "name": "Clayey sand (CS)", + "children": [ + { + "name": "Clayey fine sand (CFS)", + "children": [ + { + "name": "Heavy clayey fine sand (CFS-heavy)", + "children": [] + }, + { + "name": "Light clayey fine sand (CFS-light)", + "children": [] + } + ] + }, + { + "name": "Clayey coarse sand (CKS)", + "children": [ + { + "name": "Heavy clayey coarse sand (CKS-heavy)", + "children": [] + }, + { + "name": "Light clayey coarse sand (CKS-light)", + "children": [] + } + ] + }, + { + "name": "Heavy clayey sand (CS-heavy)", + "children": [] + }, + { + "name": "Light clayey sand (CS-light)", + "children": [] + } + ] + }, + { + "name": "Heavy clay (HC)", + "children": [ + { + "name": "Fine sandy heavy clay (FSHC)", + "children": [ + { + "name": "Sapric fine sandy heavy clay (FSHC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy heavy clay (FSHC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric heavy clay (HC-A)", + "children": [] + }, + { + "name": "Fibric heavy clay (HC-I)", + "children": [] + }, + { + "name": "Coarse sandy heavy clay (KSHC)", + "children": [ + { + "name": "Sapric coarse sandy heavy clay (KSHC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy heavy clay (KSHC-I)", + "children": [] + } + ] + }, + { + "name": "Sandy heavy clay (SHC)", + "children": [ + { + "name": "Sapric sandy heavy clay (SHC-A)", + "children": [] + }, + { + "name": "Fibric sandy heavy clay (SHC-I)", + "children": [] + } + ] + }, + { + "name": "Silty heavy clay (ZHC)", + "children": [ + { + "name": "Sapric silty heavy clay (ZHC-A)", + "children": [] + }, + { + "name": "Fibric silty heavy clay (ZHC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Loam (L)", + "children": [ + { + "name": "Sapric loam (L-A)", + "children": [] + }, + { + "name": "Fibric loam (L-I)", + "children": [] + } + ] + }, + { + "name": "Light clay (LC)", + "children": [ + { + "name": "Fine sandy light clay (FSLC)", + "children": [ + { + "name": "Sapric fine sandy light clay (FSLC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy light clay (FSLC-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy light clay (KSLC)", + "children": [ + { + "name": "Sapric coarse sandy light clay (KSLC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy light clay (KSLC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric light clay (LC-A)", + "children": [] + }, + { + "name": "Fibric light clay (LC-I)", + "children": [] + }, + { + "name": "Sandy light clay (SLC)", + "children": [ + { + "name": "Sapric sandy light clay (SLC-A)", + "children": [] + }, + { + "name": "Fibric sandy light clay (SLC-I)", + "children": [] + } + ] + }, + { + "name": "Silty light clay (ZLC)", + "children": [ + { + "name": "Sapric silty light clay (ZLC-A)", + "children": [] + }, + { + "name": "Fibric silty light clay (ZLC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Light medium clay (LMC)", + "children": [ + { + "name": "Fine sandy light medium clay (FSLMC)", + "children": [ + { + "name": "Sapric fine sandy light medium clay (FSLMC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy light medium clay (FSLMC-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy light medium clay (KSLMC)", + "children": [ + { + "name": "Sapric coarse sandy light medium clay (KSLMC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy light medium clay (KSLMC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric light medium clay (LMC-A)", + "children": [] + }, + { + "name": "Fibric light medium clay (LMC-I)", + "children": [] + }, + { + "name": "Sandy light medium clay (SLMC)", + "children": [ + { + "name": "Sapric sandy light medium clay (SLMC-A)", + "children": [] + }, + { + "name": "Fibric sandy light medium clay (SLMC-I)", + "children": [] + } + ] + }, + { + "name": "Silty light medium clay (ZLMC)", + "children": [ + { + "name": "Sapric silty light medium clay (ZLMC-A)", + "children": [] + }, + { + "name": "Fibric silty light medium clay (ZLMC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Loamy sand (LS)", + "children": [ + { + "name": "Loamy fine sand (LFS)", + "children": [ + { + "name": "Sapric loamy fine sand (LFS-A)", + "children": [] + }, + { + "name": "Fibric loamy fine sand (LFS-I)", + "children": [] + } + ] + }, + { + "name": "Loamy coarse sand (LKS)", + "children": [ + { + "name": "Sapric loamy coarse sand (LKS-A)", + "children": [] + }, + { + "name": "Fibric loamy coarse sand (LKS-I)", + "children": [] + } + ] + }, + { + "name": "Sapric loamy sand (LS-A)", + "children": [] + }, + { + "name": "Fibric loamy sand (LS-I)", + "children": [] + } + ] + }, + { + "name": "Medium clay (MC)", + "children": [ + { + "name": "Fine sandy medium clay (FSMC)", + "children": [ + { + "name": "Sapric fine sandy medium clay (FSMC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy medium clay (FSMC-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy medium clay (KSMC)", + "children": [ + { + "name": "Sapric coarse sandy medium clay (KSMC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy medium clay (KSMC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric medium clay (MC-A)", + "children": [] + }, + { + "name": "Fibric medium clay (MC-I)", + "children": [] + }, + { + "name": "Sandy medium clay (SMC)", + "children": [ + { + "name": "Sapric sandy medium clay (SMC-A)", + "children": [] + }, + { + "name": "Fibric sandy medium clay (SMC-I)", + "children": [] + } + ] + }, + { + "name": "Silty medium clay (ZMC)", + "children": [ + { + "name": "Sapric silty medium clay (ZMC-A)", + "children": [] + }, + { + "name": "Fibric silty medium clay (ZMC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Medium heavy clay (MHC)", + "children": [ + { + "name": "Fine sandy medium heavy clay (FSMHC)", + "children": [ + { + "name": "Sapric fine sandy medium heavy clay (FSMHC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy medium heavy clay (FSMHC-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy medium heavy clay (KSMHC)", + "children": [ + { + "name": "Sapric coarse sandy medium heavy clay (KSMHC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy medium heavy clay (KSMHC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric medium heavy clay (MHC-A)", + "children": [] + }, + { + "name": "Fibric medium heavy clay (MHC-I)", + "children": [] + }, + { + "name": "Sandy medium heavy clay (SMHC)", + "children": [ + { + "name": "Sapric sandy medium heavy clay (SMHC-A)", + "children": [] + }, + { + "name": "Fibric sandy medium heavy clay (SMHC-I)", + "children": [] + } + ] + }, + { + "name": "Silty medium heavy clay (ZMHC)", + "children": [ + { + "name": "Sapric silty medium heavy clay (ZMHC-A)", + "children": [] + }, + { + "name": "Fibric silty medium heavy clay (ZMHC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Sand (S)", + "children": [ + { + "name": "Fine sand (FS)", + "children": [ + { + "name": "Sapric fine sand (FS-A)", + "children": [] + }, + { + "name": "Fibric fine sand (FS-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sand (KS)", + "children": [ + { + "name": "Sapric coarse sand (KS-A)", + "children": [] + }, + { + "name": "Fibric coarse sand (KS-I)", + "children": [] + } + ] + }, + { + "name": "Sapric sand (S-A)", + "children": [] + }, + { + "name": "Fibric sand (S-I)", + "children": [] + } + ] + }, + { + "name": "Sandy clay loam (SCL)", + "children": [ + { + "name": "Fine sandy clay loam (FSCL)", + "children": [ + { + "name": "Sapric fine sandy clay loam (FSCL-A)", + "children": [] + }, + { + "name": "Fibric fine sandy clay loam (FSCL-I)", + "children": [] + }, + { + "name": "Heavy fine sandy clay loam (FSCL-heavy)", + "children": [] + }, + { + "name": "Light fine sandy clay loam (FSCL-light)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy clay loam (KSCL)", + "children": [ + { + "name": "Sapric coarse sandy clay loam (KSCL-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy clay loam (KSCL-I)", + "children": [] + }, + { + "name": "Heavy coarse sandy clay loam (KSCL-heavy)", + "children": [] + }, + { + "name": "Light coarse sandy clay loam (KSCL-light)", + "children": [] + } + ] + }, + { + "name": "Sapric sandy clay loam (SCL-A)", + "children": [] + }, + { + "name": "Fibric sandy clay loam (SCL-I)", + "children": [] + }, + { + "name": "Heavy sandy clay loam (SCL-heavy)", + "children": [] + }, + { + "name": "Light sandy clay loam (SCL-light)", + "children": [] + } + ] + }, + { + "name": "Sandy loam (SL)", + "children": [ + { + "name": "Fine sandy loam (FSL)", + "children": [ + { + "name": "Sapric fine sandy loam (FSL-A)", + "children": [] + }, + { + "name": "Fibric fine sandy loam (FSL-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy loam (KSL)", + "children": [ + { + "name": "Sapric coarse sandy loam (KSL-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy loam (KSL-I)", + "children": [] + } + ] + }, + { + "name": "Sapric sandy loam (SL-A)", + "children": [] + }, + { + "name": "Fibric sandy loam (SL-I)", + "children": [] + } + ] + }, + { + "name": "Silty clay loam (ZCL)", + "children": [ + { + "name": "Sapric silty clay loam (ZCL-A)", + "children": [] + }, + { + "name": "Fibric silty clay loam (ZCL-I)", + "children": [] + }, + { + "name": "Heavy silty clay loam (ZCL-heavy)", + "children": [] + }, + { + "name": "Light silty clay loam (ZCL-light)", + "children": [] + } + ] + }, + { + "name": "Silty loam (ZL)", + "children": [ + { + "name": "Sapric silty loam (ZL-A)", + "children": [] + }, + { + "name": "Fibric silty loam (ZL-I)", + "children": [] + } + ] + } + ] + }, + "InputLabelProps": { + "label": "Soil Texture" + }, + "valuetype": "child", + "id": "soil-texture", + "name": "soil-texture" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "drainage": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": " Yes", + "label": " Yes" + }, + { + "value": "No", + "label": "No" + }, + { + "value": "No Obs", + "label": "No Obs" + } + ] + }, + "InputLabelProps": { + "label": "Drainage" + }, + "id": "drainage", + "name": "drainage" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "anthropogenic-contamination": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "Yes", + "label": "Yes" + }, + { + "value": "No", + "label": "No" + }, + { + "value": "No Obs", + "label": "No Obs" + } + ] + }, + "InputLabelProps": { + "label": "Anthropogenic Contamination" + }, + "id": "anthropogenic-contamination", + "name": "anthropogenic-contamination" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "vegetation": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Vegetation" + }, + "FormHelperTextProps": {}, + "id": "vegetation", + "name": "vegetation" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "notes": { + "component-namespace": "formik-material-ui", + "component-name": "MultipleTextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "multiline": true, + "InputProps": { + "type": "text", + "rows": 4 + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Notes" + }, + "FormHelperTextProps": {}, + "id": "notes", + "name": "notes" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "soil-surface": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "soil-surface", + "id": "soil-surface", + "helperText": "Take Photo", + "variant": "outlined", + "label": "Soil Surface" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "photo-of-hole": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "photo-of-hole", + "id": "photo-of-hole", + "helperText": "Take a photo", + "variant": "outlined", + "label": "Photo of Hole" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "photo-of-sample-bag": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "photo-of-sample-bag", + "id": "photo-of-sample-bag", + "helperText": "Take a photo", + "variant": "outlined", + "label": "Photo of sample bag" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "landscape-photo": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "landscape-photo", + "id": "landscape-photo", + "helperText": " ", + "variant": "outlined", + "label": "Landscape Photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "other-photo-2": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "other-photo-2", + "id": "other-photo-2", + "helperText": "Take a photo", + "variant": "outlined", + "label": "Other Photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "human-readable-id-3": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "human-readable-id-3", + "id": "human-readable-id-3", + "helperText": "Human Readable ID", + "variant": "outlined", + "required": false, + "template": " {{}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Human Readable ID" + }, + "hrid": true + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hridFORM6": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "hridFORM6", + "id": "hridFORM6", + "helperText": "Vegetation ID", + "variant": "filled", + "required": false, + "template": "{{campaign-label-3}}-V-{{vegetation-autoincrementer}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Vegetation ID" + }, + "hrid": false, + "linked": "human-readable-id-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "vegetation-autoincrementer": { + "component-namespace": "faims-custom", + "component-name": "BasicAutoIncrementer", + "type-returned": "faims-core::String", + "component-parameters": { + "name": "vegetation-autoincrementer", + "id": "vegetation-autoincrementer", + "variant": "outlined", + "required": false, + "num_digits": 5, + "form_id": "FORM6SECTION1", + "label": "Vegetation Autoincrementer" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "station-3": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Station" + }, + "FormHelperTextProps": {}, + "id": "station-3", + "name": "station-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "project-3": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "template": "Mundi", + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Project" + }, + "FormHelperTextProps": {}, + "id": "project-3", + "name": "project-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "area-3": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Area" + }, + "FormHelperTextProps": {}, + "id": "area-3", + "name": "area-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "timestamp-7": { + "component-namespace": "faims-custom", + "component-name": "DateTimeNow", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Sample Taken timestamp", + "variant": "outlined", + "required": false, + "is_auto_pick": true, + "InputLabelProps": { + "label": "Timestamp" + }, + "id": "timestamp-7", + "name": "timestamp-7" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": true, + "label": "uncertainty" + } + } + }, + "take-gps-location-3": { + "component-namespace": "faims-custom", + "component-name": "TakePoint", + "type-returned": "faims-pos::Location", + "component-parameters": { + "fullWidth": true, + "name": "take-gps-location-3", + "id": "take-gps-location-3", + "helperText": "Click to save current location", + "variant": "outlined", + "label": "Take GPS Location" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "Updated Timestamp", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "soil": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Clay loam (CL)", + "children": [ + { + "name": "Sapric clay loam (CL-A)", + "children": [] + }, + { + "name": "Fibric clay loam (CL-I)", + "children": [] + }, + { + "name": "Heavy clay loam (CL-heavy)", + "children": [] + }, + { + "name": "Light clay loam (CL-light)", + "children": [] + } + ] + }, + { + "name": "Clay loam, sandy (CLS)", + "children": [ + { + "name": "Clay loam, fine sandy (CLFS)", + "children": [ + { + "name": "Sapric clay loam, fine sandy (CLFS-A)", + "children": [] + }, + { + "name": "Fibric clay loam, fine sandy (CLFS-I)", + "children": [] + }, + { + "name": "Heavy clay loam, fine sandy (CLFS-heavy)", + "children": [] + }, + { + "name": "Light clay loam, fine sandy (CLFS-light)", + "children": [] + } + ] + }, + { + "name": "Clay loam, coarse sandy (CLKS)", + "children": [ + { + "name": "Sapric clay loam, coarse sandy (CLKS-A)", + "children": [] + }, + { + "name": "Fibric clay loam, coarse sandy (CLKS-I)", + "children": [] + }, + { + "name": "Heavy clay loam, coarse sandy (CLKS-heavy)", + "children": [] + }, + { + "name": "Light clay loam, coarse sandy (CLKS-light)", + "children": [] + } + ] + }, + { + "name": "Sapric clay loam, sandy (CLS-A)", + "children": [] + }, + { + "name": "Fibric clay loam, sandy (CLS-I)", + "children": [] + }, + { + "name": "Heavy clay loam, sandy (CLS-heavy)", + "children": [] + }, + { + "name": "Light clay loam, sandy (CLS-light)", + "children": [] + } + ] + }, + { + "name": "Clayey sand (CS)", + "children": [ + { + "name": "Clayey fine sand (CFS)", + "children": [ + { + "name": "Heavy clayey fine sand (CFS-heavy)", + "children": [] + }, + { + "name": "Light clayey fine sand (CFS-light)", + "children": [] + } + ] + }, + { + "name": "Clayey coarse sand (CKS)", + "children": [ + { + "name": "Heavy clayey coarse sand (CKS-heavy)", + "children": [] + }, + { + "name": "Light clayey coarse sand (CKS-light)", + "children": [] + } + ] + }, + { + "name": "Heavy clayey sand (CS-heavy)", + "children": [] + }, + { + "name": "Light clayey sand (CS-light)", + "children": [] + } + ] + }, + { + "name": "Heavy clay (HC)", + "children": [ + { + "name": "Fine sandy heavy clay (FSHC)", + "children": [ + { + "name": "Sapric fine sandy heavy clay (FSHC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy heavy clay (FSHC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric heavy clay (HC-A)", + "children": [] + }, + { + "name": "Fibric heavy clay (HC-I)", + "children": [] + }, + { + "name": "Coarse sandy heavy clay (KSHC)", + "children": [ + { + "name": "Sapric coarse sandy heavy clay (KSHC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy heavy clay (KSHC-I)", + "children": [] + } + ] + }, + { + "name": "Sandy heavy clay (SHC)", + "children": [ + { + "name": "Sapric sandy heavy clay (SHC-A)", + "children": [] + }, + { + "name": "Fibric sandy heavy clay (SHC-I)", + "children": [] + } + ] + }, + { + "name": "Silty heavy clay (ZHC)", + "children": [ + { + "name": "Sapric silty heavy clay (ZHC-A)", + "children": [] + }, + { + "name": "Fibric silty heavy clay (ZHC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Loam (L)", + "children": [ + { + "name": "Sapric loam (L-A)", + "children": [] + }, + { + "name": "Fibric loam (L-I)", + "children": [] + } + ] + }, + { + "name": "Light clay (LC)", + "children": [ + { + "name": "Fine sandy light clay (FSLC)", + "children": [ + { + "name": "Sapric fine sandy light clay (FSLC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy light clay (FSLC-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy light clay (KSLC)", + "children": [ + { + "name": "Sapric coarse sandy light clay (KSLC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy light clay (KSLC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric light clay (LC-A)", + "children": [] + }, + { + "name": "Fibric light clay (LC-I)", + "children": [] + }, + { + "name": "Sandy light clay (SLC)", + "children": [ + { + "name": "Sapric sandy light clay (SLC-A)", + "children": [] + }, + { + "name": "Fibric sandy light clay (SLC-I)", + "children": [] + } + ] + }, + { + "name": "Silty light clay (ZLC)", + "children": [ + { + "name": "Sapric silty light clay (ZLC-A)", + "children": [] + }, + { + "name": "Fibric silty light clay (ZLC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Light medium clay (LMC)", + "children": [ + { + "name": "Fine sandy light medium clay (FSLMC)", + "children": [ + { + "name": "Sapric fine sandy light medium clay (FSLMC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy light medium clay (FSLMC-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy light medium clay (KSLMC)", + "children": [ + { + "name": "Sapric coarse sandy light medium clay (KSLMC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy light medium clay (KSLMC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric light medium clay (LMC-A)", + "children": [] + }, + { + "name": "Fibric light medium clay (LMC-I)", + "children": [] + }, + { + "name": "Sandy light medium clay (SLMC)", + "children": [ + { + "name": "Sapric sandy light medium clay (SLMC-A)", + "children": [] + }, + { + "name": "Fibric sandy light medium clay (SLMC-I)", + "children": [] + } + ] + }, + { + "name": "Silty light medium clay (ZLMC)", + "children": [ + { + "name": "Sapric silty light medium clay (ZLMC-A)", + "children": [] + }, + { + "name": "Fibric silty light medium clay (ZLMC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Loamy sand (LS)", + "children": [ + { + "name": "Loamy fine sand (LFS)", + "children": [ + { + "name": "Sapric loamy fine sand (LFS-A)", + "children": [] + }, + { + "name": "Fibric loamy fine sand (LFS-I)", + "children": [] + } + ] + }, + { + "name": "Loamy coarse sand (LKS)", + "children": [ + { + "name": "Sapric loamy coarse sand (LKS-A)", + "children": [] + }, + { + "name": "Fibric loamy coarse sand (LKS-I)", + "children": [] + } + ] + }, + { + "name": "Sapric loamy sand (LS-A)", + "children": [] + }, + { + "name": "Fibric loamy sand (LS-I)", + "children": [] + } + ] + }, + { + "name": "Medium clay (MC)", + "children": [ + { + "name": "Fine sandy medium clay (FSMC)", + "children": [ + { + "name": "Sapric fine sandy medium clay (FSMC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy medium clay (FSMC-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy medium clay (KSMC)", + "children": [ + { + "name": "Sapric coarse sandy medium clay (KSMC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy medium clay (KSMC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric medium clay (MC-A)", + "children": [] + }, + { + "name": "Fibric medium clay (MC-I)", + "children": [] + }, + { + "name": "Sandy medium clay (SMC)", + "children": [ + { + "name": "Sapric sandy medium clay (SMC-A)", + "children": [] + }, + { + "name": "Fibric sandy medium clay (SMC-I)", + "children": [] + } + ] + }, + { + "name": "Silty medium clay (ZMC)", + "children": [ + { + "name": "Sapric silty medium clay (ZMC-A)", + "children": [] + }, + { + "name": "Fibric silty medium clay (ZMC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Medium heavy clay (MHC)", + "children": [ + { + "name": "Fine sandy medium heavy clay (FSMHC)", + "children": [ + { + "name": "Sapric fine sandy medium heavy clay (FSMHC-A)", + "children": [] + }, + { + "name": "Fibric fine sandy medium heavy clay (FSMHC-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy medium heavy clay (KSMHC)", + "children": [ + { + "name": "Sapric coarse sandy medium heavy clay (KSMHC-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy medium heavy clay (KSMHC-I)", + "children": [] + } + ] + }, + { + "name": "Sapric medium heavy clay (MHC-A)", + "children": [] + }, + { + "name": "Fibric medium heavy clay (MHC-I)", + "children": [] + }, + { + "name": "Sandy medium heavy clay (SMHC)", + "children": [ + { + "name": "Sapric sandy medium heavy clay (SMHC-A)", + "children": [] + }, + { + "name": "Fibric sandy medium heavy clay (SMHC-I)", + "children": [] + } + ] + }, + { + "name": "Silty medium heavy clay (ZMHC)", + "children": [ + { + "name": "Sapric silty medium heavy clay (ZMHC-A)", + "children": [] + }, + { + "name": "Fibric silty medium heavy clay (ZMHC-I)", + "children": [] + } + ] + } + ] + }, + { + "name": "Sand (S)", + "children": [ + { + "name": "Fine sand (FS)", + "children": [ + { + "name": "Sapric fine sand (FS-A)", + "children": [] + }, + { + "name": "Fibric fine sand (FS-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sand (KS)", + "children": [ + { + "name": "Sapric coarse sand (KS-A)", + "children": [] + }, + { + "name": "Fibric coarse sand (KS-I)", + "children": [] + } + ] + }, + { + "name": "Sapric sand (S-A)", + "children": [] + }, + { + "name": "Fibric sand (S-I)", + "children": [] + } + ] + }, + { + "name": "Sandy clay loam (SCL)", + "children": [ + { + "name": "Fine sandy clay loam (FSCL)", + "children": [ + { + "name": "Sapric fine sandy clay loam (FSCL-A)", + "children": [] + }, + { + "name": "Fibric fine sandy clay loam (FSCL-I)", + "children": [] + }, + { + "name": "Heavy fine sandy clay loam (FSCL-heavy)", + "children": [] + }, + { + "name": "Light fine sandy clay loam (FSCL-light)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy clay loam (KSCL)", + "children": [ + { + "name": "Sapric coarse sandy clay loam (KSCL-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy clay loam (KSCL-I)", + "children": [] + }, + { + "name": "Heavy coarse sandy clay loam (KSCL-heavy)", + "children": [] + }, + { + "name": "Light coarse sandy clay loam (KSCL-light)", + "children": [] + } + ] + }, + { + "name": "Sapric sandy clay loam (SCL-A)", + "children": [] + }, + { + "name": "Fibric sandy clay loam (SCL-I)", + "children": [] + }, + { + "name": "Heavy sandy clay loam (SCL-heavy)", + "children": [] + }, + { + "name": "Light sandy clay loam (SCL-light)", + "children": [] + } + ] + }, + { + "name": "Sandy loam (SL)", + "children": [ + { + "name": "Fine sandy loam (FSL)", + "children": [ + { + "name": "Sapric fine sandy loam (FSL-A)", + "children": [] + }, + { + "name": "Fibric fine sandy loam (FSL-I)", + "children": [] + } + ] + }, + { + "name": "Coarse sandy loam (KSL)", + "children": [ + { + "name": "Sapric coarse sandy loam (KSL-A)", + "children": [] + }, + { + "name": "Fibric coarse sandy loam (KSL-I)", + "children": [] + } + ] + }, + { + "name": "Sapric sandy loam (SL-A)", + "children": [] + }, + { + "name": "Fibric sandy loam (SL-I)", + "children": [] + } + ] + }, + { + "name": "Silty clay loam (ZCL)", + "children": [ + { + "name": "Sapric silty clay loam (ZCL-A)", + "children": [] + }, + { + "name": "Fibric silty clay loam (ZCL-I)", + "children": [] + }, + { + "name": "Heavy silty clay loam (ZCL-heavy)", + "children": [] + }, + { + "name": "Light silty clay loam (ZCL-light)", + "children": [] + } + ] + }, + { + "name": "Silty loam (ZL)", + "children": [ + { + "name": "Sapric silty loam (ZL-A)", + "children": [] + }, + { + "name": "Fibric silty loam (ZL-I)", + "children": [] + } + ] + } + ] + }, + "InputLabelProps": { + "label": "Soil" + }, + "valuetype": "child", + "id": "soil", + "name": "soil" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "whole-vegetation-photo": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "whole-vegetation-photo", + "id": "whole-vegetation-photo", + "helperText": "Take a photo", + "variant": "outlined", + "label": "Whole Vegetation photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "closeup-of-leaf": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "closeup-of-leaf", + "id": "closeup-of-leaf", + "helperText": "Take a photo", + "variant": "outlined", + "label": "closeup of leaf" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "closeup-flowers-fruit": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "closeup-flowers-fruit", + "id": "closeup-flowers-fruit", + "helperText": "Take a photo", + "variant": "outlined", + "label": "Closeup flowers/fruit" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "soil-photo": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "soil-photo", + "id": "soil-photo", + "helperText": "Take a photo", + "variant": "outlined", + "label": "soil photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "human-readable-id-4": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "human-readable-id-4", + "id": "human-readable-id-4", + "helperText": "Human Readable ID", + "variant": "outlined", + "required": false, + "template": "{{rock-autoincrementer}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Human Readable ID" + }, + "hrid": true, + "fieldselect10": "rock-autoincrementer" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hridFORM7": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "hridFORM7", + "id": "hridFORM7", + "helperText": "Rock ID", + "variant": "filled", + "required": false, + "template": "{{campaign-label-4}}-R-{{rock-autoincrementer}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "RockID" + }, + "hrid": false, + "linked": "human-readable-id-4", + "fieldselect10": "rock-autoincrementer" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "rock-autoincrementer": { + "component-namespace": "faims-custom", + "component-name": "BasicAutoIncrementer", + "type-returned": "faims-core::String", + "component-parameters": { + "name": "rock-autoincrementer", + "id": "rock-autoincrementer", + "variant": "outlined", + "required": false, + "num_digits": 5, + "form_id": "FORM7SECTION1", + "label": "Rock Autoincrementer" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "station-4": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Station" + }, + "FormHelperTextProps": {}, + "id": "station-4", + "name": "station-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "project-4": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "template": "Mundi", + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Project" + }, + "FormHelperTextProps": {}, + "id": "project-4", + "name": "project-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "area-4": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Area" + }, + "FormHelperTextProps": {}, + "id": "area-4", + "name": "area-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "take-gps-location-4": { + "component-namespace": "faims-custom", + "component-name": "TakePoint", + "type-returned": "faims-pos::Location", + "component-parameters": { + "fullWidth": true, + "name": "take-gps-location-4", + "id": "take-gps-location-4", + "helperText": "Click to save current location", + "variant": "outlined", + "label": "Take GPS Location" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "Updated Timestamp", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "inclusion-size": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "Fine", + "label": "Fine" + }, + { + "value": "Medium", + "label": "Medium" + }, + { + "value": "Coarse", + "label": "Coarse" + }, + { + "value": "Other", + "label": "Other" + } + ] + }, + "InputLabelProps": { + "label": "Inclusion Size" + }, + "id": "inclusion-size", + "name": "inclusion-size" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "grain-size": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "Fine", + "label": "Fine" + }, + { + "value": "Medium", + "label": "Medium" + }, + { + "value": "Coarse", + "label": "Coarse" + }, + { + "value": "Other", + "label": "Other" + } + ] + }, + "InputLabelProps": { + "label": "Grain Size" + }, + "id": "grain-size", + "name": "grain-size" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "sorting": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "Poor", + "label": "Poor" + }, + { + "value": "Moderate", + "label": "Moderate" + }, + { + "value": "Well Sorted", + "label": "Well Sorted" + }, + { + "value": "Other", + "label": "Other" + } + ] + }, + "InputLabelProps": { + "label": "Sorting" + }, + "id": "sorting", + "name": "sorting" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "other-lithological-descriptors": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Other Lithological Descriptors" + }, + "FormHelperTextProps": {}, + "id": "other-lithological-descriptors", + "name": "other-lithological-descriptors" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "stratigraphic-unit": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Stratigraphic Unit" + }, + "FormHelperTextProps": {}, + "id": "stratigraphic-unit", + "name": "stratigraphic-unit" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "large-scale-structure": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Large-Scale Structure" + }, + "FormHelperTextProps": {}, + "id": "large-scale-structure", + "name": "large-scale-structure" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "alteration": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Alteration" + }, + "FormHelperTextProps": {}, + "id": "alteration", + "name": "alteration" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "veining": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Veining" + }, + "FormHelperTextProps": {}, + "id": "veining", + "name": "veining" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "notes-2": { + "component-namespace": "formik-material-ui", + "component-name": "MultipleTextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": " ", + "variant": "outlined", + "required": false, + "multiline": true, + "InputProps": { + "type": "text", + "rows": 4 + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Notes" + }, + "FormHelperTextProps": {}, + "id": "notes-2", + "name": "notes-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "sample-photo": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "sample-photo", + "id": "sample-photo", + "helperText": " ", + "variant": "outlined", + "label": "Sample Photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "surface-photo": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "surface-photo", + "id": "surface-photo", + "helperText": " ", + "variant": "outlined", + "label": "Surface Photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "other-photo-3": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "other-photo-3", + "id": "other-photo-3", + "helperText": " ", + "variant": "outlined", + "label": "Other Photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "campaign-label": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Campaign Label" + }, + "FormHelperTextProps": {}, + "id": "campaign-label", + "name": "campaign-label" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "water-sample-ph-workaround": { + "component-namespace": "formik-material-ui", + "component-name": "MultipleTextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "take manual pH readings here", + "variant": "outlined", + "required": false, + "multiline": true, + "InputProps": { + "type": "text", + "rows": 4 + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Water sample pH workaround" + }, + "FormHelperTextProps": {}, + "id": "water-sample-ph-workaround", + "name": "water-sample-ph-workaround" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "water-sample-eh-workaround": { + "component-namespace": "formik-material-ui", + "component-name": "MultipleTextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Helper Text", + "variant": "outlined", + "required": false, + "multiline": true, + "InputProps": { + "type": "text", + "rows": 4 + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Water sample Eh workaround" + }, + "FormHelperTextProps": {}, + "id": "water-sample-eh-workaround", + "name": "water-sample-eh-workaround" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "water-sample-do-workaround": { + "component-namespace": "formik-material-ui", + "component-name": "MultipleTextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Helper Text", + "variant": "outlined", + "required": false, + "multiline": true, + "InputProps": { + "type": "text", + "rows": 4 + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Water sample DO workaround" + }, + "FormHelperTextProps": {}, + "id": "water-sample-do-workaround", + "name": "water-sample-do-workaround" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "campaign-label-2": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Helper Text", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Campaign Label" + }, + "FormHelperTextProps": {}, + "id": "campaign-label-2", + "name": "campaign-label-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "geology": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Select from list", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Sedimentary", + "children": [ + { + "name": "Agglomerate", + "children": [] + }, + { + "name": "Alluvium", + "children": [] + }, + { + "name": "Arenite", + "children": [] + }, + { + "name": "Argillite", + "children": [] + }, + { + "name": "Arkose", + "children": [] + }, + { + "name": "Calcrete", + "children": [] + }, + { + "name": "Carbonaceous Shale", + "children": [] + }, + { + "name": "Carbonaceous Chert", + "children": [] + }, + { + "name": "Carbonate Rock", + "children": [] + }, + { + "name": "Chert", + "children": [] + }, + { + "name": "Chloritic Shale", + "children": [] + }, + { + "name": "Clay", + "children": [] + }, + { + "name": "Claystone", + "children": [] + }, + { + "name": "Colluvium", + "children": [] + }, + { + "name": "Conglomerate", + "children": [] + }, + { + "name": "Conglomerate, Monomictic", + "children": [] + }, + { + "name": "Conglomerate, Polymictic", + "children": [] + }, + { + "name": "Dolomite, Sandy", + "children": [] + }, + { + "name": "Dolomitic Shale", + "children": [] + }, + { + "name": "Dolomite, Silty", + "children": [] + }, + { + "name": "Duricrust", + "children": [] + }, + { + "name": "Duricrust, Transported Lateritic", + "children": [] + }, + { + "name": "Ferruginous Clays", + "children": [] + }, + { + "name": "Ferricrete", + "children": [] + }, + { + "name": "Grainstone (Mud Free Limestone)", + "children": [] + }, + { + "name": "Gravel", + "children": [] + }, + { + "name": "Gravels, Transported", + "children": [] + }, + { + "name": "Grey Wackestone", + "children": [] + }, + { + "name": "Ironstone, Magnetite/Haematite", + "children": [] + }, + { + "name": "Kaolin", + "children": [] + }, + { + "name": "Laterite: Mottled (Clay) Zone", + "children": [] + }, + { + "name": "Laterite: Pisolitic Zone", + "children": [] + }, + { + "name": "Limestone", + "children": [] + }, + { + "name": "Limestone, Sandy", + "children": [] + }, + { + "name": "Mudstone", + "children": [] + }, + { + "name": "Mudstone, Calcareous(ca 10 50%)", + "children": [] + }, + { + "name": "Packstone", + "children": [] + }, + { + "name": "Sands, Transported", + "children": [] + }, + { + "name": "Sandstone", + "children": [] + }, + { + "name": "Sandstone, Arkosic (fs greater than 50)", + "children": [] + }, + { + "name": "Sandstone, Chloritic", + "children": [] + }, + { + "name": "Sandstone, Clayey", + "children": [] + }, + { + "name": "Sandstone, Dolomitic(sd 10 50%)", + "children": [] + }, + { + "name": "Sandstone, Lithic", + "children": [] + }, + { + "name": "Sandstone, Micaceous", + "children": [] + }, + { + "name": "Sandstone, Quartz", + "children": [] + }, + { + "name": "Sandstone, Tuffaceous", + "children": [] + }, + { + "name": "Saprock", + "children": [] + }, + { + "name": "Saprolite, Lower", + "children": [] + }, + { + "name": "Saprolite, Upper", + "children": [] + }, + { + "name": "Sedimentary Nondescript", + "children": [] + }, + { + "name": "Shale", + "children": [] + }, + { + "name": "Siltstone", + "children": [] + }, + { + "name": "Siltstone - Chloritic", + "children": [] + }, + { + "name": "Siltstone, Dolomitic (sd 10 50%)", + "children": [] + }, + { + "name": "Siltstone Micaceous", + "children": [] + }, + { + "name": "Slate", + "children": [] + }, + { + "name": "Wackestone", + "children": [] + }, + { + "name": "Silcrete", + "children": [] + } + ] + }, + { + "name": "Metamorphic", + "children": [ + { + "name": "Calc Schist", + "children": [] + }, + { + "name": "Gneiss, Gneissic", + "children": [] + }, + { + "name": "Marble", + "children": [] + }, + { + "name": "Metamorphic Nondescript", + "children": [] + }, + { + "name": "Migmatite", + "children": [] + }, + { + "name": "Mylonite", + "children": [] + }, + { + "name": "Schist", + "children": [] + }, + { + "name": "Quartzite", + "children": [] + } + ] + }, + { + "name": "Igneous", + "children": [ + { + "name": "Amphibolite", + "children": [] + }, + { + "name": "Andesite", + "children": [] + }, + { + "name": "Anorthosite", + "children": [] + }, + { + "name": "Basalt", + "children": [] + }, + { + "name": "Breccia, Pyroclastic", + "children": [] + }, + { + "name": "Breccia, Volcanic", + "children": [] + }, + { + "name": "Dacite", + "children": [] + }, + { + "name": "Diorite", + "children": [] + }, + { + "name": "Dolerite", + "children": [] + }, + { + "name": "Gabbro", + "children": [] + }, + { + "name": "Gabbronorite", + "children": [] + }, + { + "name": "Granite", + "children": [] + }, + { + "name": "Granodiorite", + "children": [] + }, + { + "name": "Igneous Nondescript", + "children": [] + }, + { + "name": "Ignimbrite", + "children": [] + }, + { + "name": "Kimberlite", + "children": [] + }, + { + "name": "Monzodiorite", + "children": [] + }, + { + "name": "Monzonite", + "children": [] + }, + { + "name": "Norite", + "children": [] + }, + { + "name": "Olivine Gabbronorite", + "children": [] + }, + { + "name": "Pegmatite", + "children": [] + }, + { + "name": "Porphyry", + "children": [] + }, + { + "name": "Rhyodacite", + "children": [] + }, + { + "name": "Rhyolite", + "children": [] + }, + { + "name": "Syenite", + "children": [] + }, + { + "name": "Tonalite", + "children": [] + }, + { + "name": "Trachyte", + "children": [] + }, + { + "name": "Troctolite", + "children": [] + }, + { + "name": "Tuff", + "children": [] + }, + { + "name": "Tuff, Crystal", + "children": [] + }, + { + "name": "Tuff, Lapilli", + "children": [] + }, + { + "name": "Tuff, Lapilli Crystal", + "children": [] + }, + { + "name": "Tuff, Lithic", + "children": [] + }, + { + "name": "Volcanic Nondescript", + "children": [] + } + ] + }, + { + "name": "Other", + "children": [] + } + ] + }, + "label": "Geology", + "valuetype": "child", + "id": "geology", + "name": "geology" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "regolith-type": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Select from list", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Transported Regolith", + "children": [ + { + "name": "Alluvial sediments", + "children": [ + { + "name": "Channel deposits", + "children": [] + }, + { + "name": "Overbank deposits", + "children": [] + } + ] + }, + { + "name": "Aeolian sediments", + "children": [ + { + "name": "Aeolian sand", + "children": [] + }, + { + "name": "Loess", + "children": [] + }, + { + "name": "Parna", + "children": [] + } + ] + }, + { + "name": "Colluvial sediments", + "children": [ + { + "name": "Mass movement", + "children": [] + }, + { + "name": "Sheet flow deposit", + "children": [] + }, + { + "name": "Fanglomerate", + "children": [] + } + ] + }, + { + "name": "Evaporite", + "children": [ + { + "name": "Halite", + "children": [] + }, + { + "name": "Gypsum", + "children": [] + } + ] + }, + { + "name": "Lacustrine sediments", + "children": [] + }, + { + "name": "Glacial sediments", + "children": [] + }, + { + "name": "Volcanic sediments", + "children": [ + { + "name": "Tephra", + "children": [] + } + ] + }, + { + "name": "Fill", + "children": [] + }, + { + "name": "Coastal sediments", + "children": [ + { + "name": "Beach sediments", + "children": [] + }, + { + "name": "Estuarine sediments", + "children": [] + }, + { + "name": "Coral", + "children": [] + }, + { + "name": "Marine sediments", + "children": [] + } + ] + } + ] + }, + { + "name": "In-Situ Regolith", + "children": [ + { + "name": "Weathered bedrock", + "children": [] + }, + { + "name": "Residual material", + "children": [] + }, + { + "name": "Saprolite", + "children": [ + { + "name": "Completely weathered bedrock", + "children": [] + }, + { + "name": "Very highly weathered bedrock", + "children": [] + }, + { + "name": "Highly weathered bedrock", + "children": [] + }, + { + "name": "Moderately weathered bedrock", + "children": [] + }, + { + "name": "Slightly weathered bedrock", + "children": [] + } + ] + } + ] + }, + { + "name": "Other", + "children": [] + } + ] + }, + "label": "Regolith Type", + "valuetype": "child", + "id": "regolith-type", + "name": "regolith-type" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": false + }, + "regolith-type-2": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Select from list", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Transported Regolith", + "children": [ + { + "name": "Alluvial sediments", + "children": [ + { + "name": "Channel deposits", + "children": [] + }, + { + "name": "Overbank deposits", + "children": [] + } + ] + }, + { + "name": "Aeolian sediments", + "children": [ + { + "name": "Aeolian sand", + "children": [] + }, + { + "name": "Loess", + "children": [] + }, + { + "name": "Parna", + "children": [] + } + ] + }, + { + "name": "Colluvial sediments", + "children": [ + { + "name": "Mass movement", + "children": [] + }, + { + "name": "Sheet flow deposit", + "children": [] + }, + { + "name": "Fanglomerate", + "children": [] + } + ] + }, + { + "name": "Evaporite", + "children": [ + { + "name": "Halite", + "children": [] + }, + { + "name": "Gypsum", + "children": [] + } + ] + }, + { + "name": "Lacustrine sediments", + "children": [] + }, + { + "name": "Glacial sediments", + "children": [] + }, + { + "name": "Volcanic sediments", + "children": [ + { + "name": "Tephra", + "children": [] + } + ] + }, + { + "name": "Fill", + "children": [] + }, + { + "name": "Coastal sediments", + "children": [ + { + "name": "Beach sediments", + "children": [] + }, + { + "name": "Estuarine sediments", + "children": [] + }, + { + "name": "Coral", + "children": [] + }, + { + "name": "Marine sediments", + "children": [] + } + ] + } + ] + }, + { + "name": "In-Situ Regolith", + "children": [ + { + "name": "Weathered bedrock", + "children": [] + }, + { + "name": "Residual material", + "children": [] + }, + { + "name": "Saprolite", + "children": [ + { + "name": "Completely weathered bedrock", + "children": [] + }, + { + "name": "Very highly weathered bedrock", + "children": [] + }, + { + "name": "Highly weathered bedrock", + "children": [] + }, + { + "name": "Moderately weathered bedrock", + "children": [] + }, + { + "name": "Slightly weathered bedrock", + "children": [] + } + ] + } + ] + }, + { + "name": "Other", + "children": [] + } + ] + }, + "label": "Regolith Type", + "valuetype": "child", + "id": "regolith-type-2", + "name": "regolith-type-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": false + }, + "landform": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Select from list", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Alluvial Landforms ", + "children": [ + { + "name": "Alluvial Plain", + "children": [] + }, + { + "name": "Flood Plain", + "children": [] + }, + { + "name": "Anastomatic Plain", + "children": [] + }, + { + "name": "Bar Plain", + "children": [] + }, + { + "name": "Covered Plain", + "children": [] + }, + { + "name": "Meander Plain", + "children": [] + }, + { + "name": "Flood Out", + "children": [] + }, + { + "name": "Alluvial Terrace", + "children": [] + }, + { + "name": "Stagnant Alluvial Plain", + "children": [] + }, + { + "name": "Alluvial Swamp", + "children": [] + }, + { + "name": "Terraced Land", + "children": [] + } + ] + }, + { + "name": "Dune Field ", + "children": [ + { + "name": "Longitudinal Dunefield", + "children": [] + } + ] + }, + { + "name": "Fan ", + "children": [ + { + "name": "Alluvial Fan", + "children": [] + }, + { + "name": "Colluvial Fan", + "children": [] + }, + { + "name": "Sheet Flood Fan", + "children": [] + } + ] + }, + { + "name": "Plain ", + "children": [ + { + "name": "Depositional Plain", + "children": [] + }, + { + "name": "Lacustrine Plain", + "children": [] + }, + { + "name": "Playa Plain", + "children": [] + }, + { + "name": "Sandplain", + "children": [] + } + ] + }, + { + "name": "Glacial Landforms ", + "children": [ + { + "name": "Depositional Glacial Landforms", + "children": [] + }, + { + "name": "Erosional Glacial Land", + "children": [] + } + ] + }, + { + "name": "Delta", + "children": [] + }, + { + "name": "Coastal Lands ", + "children": [ + { + "name": "Beach Ridge Plain", + "children": [] + }, + { + "name": "Chenier Plain", + "children": [] + }, + { + "name": "Coral Reef", + "children": [] + }, + { + "name": "Marine Plain", + "children": [] + }, + { + "name": "Tidal Flat", + "children": [] + }, + { + "name": "Coastal Dunes", + "children": [] + }, + { + "name": "Coastal Plain", + "children": [] + }, + { + "name": "Beach", + "children": [] + } + ] + }, + { + "name": "Erosional Landforms ", + "children": [ + { + "name": "Erosional Plain", + "children": [] + }, + { + "name": "Pediment", + "children": [] + }, + { + "name": "Pediplain", + "children": [] + }, + { + "name": "Peneplain", + "children": [] + }, + { + "name": "Etchplain", + "children": [] + }, + { + "name": "Rises", + "children": [] + }, + { + "name": "Residual Rises", + "children": [] + }, + { + "name": "Low Hills", + "children": [] + }, + { + "name": "Hills", + "children": [] + }, + { + "name": "Mountains", + "children": [] + }, + { + "name": "Escarpment", + "children": [] + }, + { + "name": "Badlands", + "children": [] + }, + { + "name": "Drainage Depression", + "children": [] + } + ] + }, + { + "name": "Karst", + "children": [] + }, + { + "name": "Plateau", + "children": [] + }, + { + "name": "Volcanic Landform ", + "children": [ + { + "name": "Caldera", + "children": [] + }, + { + "name": "Cone", + "children": [] + }, + { + "name": "Lava Plain", + "children": [] + }, + { + "name": "Ash Plain", + "children": [] + }, + { + "name": "Lava Flow", + "children": [] + }, + { + "name": "Lava Plateau", + "children": [] + } + ] + }, + { + "name": "Made Land", + "children": [] + }, + { + "name": "Meteor Crater", + "children": [] + }, + { + "name": "Other", + "children": [] + } + ] + }, + "label": "Landform", + "valuetype": "child", + "id": "landform", + "name": "landform" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "campaign-label-3": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Helper Text", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Campaign Label" + }, + "FormHelperTextProps": {}, + "id": "campaign-label-3", + "name": "campaign-label-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "landform-2": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Select from list", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Alluvial Landforms ", + "children": [ + { + "name": "Alluvial Plain", + "children": [] + }, + { + "name": "Flood Plain", + "children": [] + }, + { + "name": "Anastomatic Plain", + "children": [] + }, + { + "name": "Bar Plain", + "children": [] + }, + { + "name": "Covered Plain", + "children": [] + }, + { + "name": "Meander Plain", + "children": [] + }, + { + "name": "Flood Out", + "children": [] + }, + { + "name": "Alluvial Terrace", + "children": [] + }, + { + "name": "Stagnant Alluvial Plain", + "children": [] + }, + { + "name": "Alluvial Swamp", + "children": [] + }, + { + "name": "Terraced Land", + "children": [] + } + ] + }, + { + "name": "Dune Field ", + "children": [ + { + "name": "Longitudinal Dunefield", + "children": [] + } + ] + }, + { + "name": "Fan ", + "children": [ + { + "name": "Alluvial Fan", + "children": [] + }, + { + "name": "Colluvial Fan", + "children": [] + }, + { + "name": "Sheet Flood Fan", + "children": [] + } + ] + }, + { + "name": "Plain ", + "children": [ + { + "name": "Depositional Plain", + "children": [] + }, + { + "name": "Lacustrine Plain", + "children": [] + }, + { + "name": "Playa Plain", + "children": [] + }, + { + "name": "Sandplain", + "children": [] + } + ] + }, + { + "name": "Glacial Landforms ", + "children": [ + { + "name": "Depositional Glacial Landforms", + "children": [] + }, + { + "name": "Erosional Glacial Land", + "children": [] + } + ] + }, + { + "name": "Delta", + "children": [] + }, + { + "name": "Coastal Lands ", + "children": [ + { + "name": "Beach Ridge Plain", + "children": [] + }, + { + "name": "Chenier Plain", + "children": [] + }, + { + "name": "Coral Reef", + "children": [] + }, + { + "name": "Marine Plain", + "children": [] + }, + { + "name": "Tidal Flat", + "children": [] + }, + { + "name": "Coastal Dunes", + "children": [] + }, + { + "name": "Coastal Plain", + "children": [] + }, + { + "name": "Beach", + "children": [] + } + ] + }, + { + "name": "Erosional Landforms ", + "children": [ + { + "name": "Erosional Plain", + "children": [] + }, + { + "name": "Pediment", + "children": [] + }, + { + "name": "Pediplain", + "children": [] + }, + { + "name": "Peneplain", + "children": [] + }, + { + "name": "Etchplain", + "children": [] + }, + { + "name": "Rises", + "children": [] + }, + { + "name": "Residual Rises", + "children": [] + }, + { + "name": "Low Hills", + "children": [] + }, + { + "name": "Hills", + "children": [] + }, + { + "name": "Mountains", + "children": [] + }, + { + "name": "Escarpment", + "children": [] + }, + { + "name": "Badlands", + "children": [] + }, + { + "name": "Drainage Depression", + "children": [] + } + ] + }, + { + "name": "Karst", + "children": [] + }, + { + "name": "Plateau", + "children": [] + }, + { + "name": "Volcanic Landform ", + "children": [ + { + "name": "Caldera", + "children": [] + }, + { + "name": "Cone", + "children": [] + }, + { + "name": "Lava Plain", + "children": [] + }, + { + "name": "Ash Plain", + "children": [] + }, + { + "name": "Lava Flow", + "children": [] + }, + { + "name": "Lava Plateau", + "children": [] + } + ] + }, + { + "name": "Made Land", + "children": [] + }, + { + "name": "Meteor Crater", + "children": [] + }, + { + "name": "Other", + "children": [] + } + ] + }, + "label": "Landform", + "valuetype": "child", + "id": "landform-2", + "name": "landform-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "campaign-label-4": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Helper Text", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Campaign Label" + }, + "FormHelperTextProps": {}, + "id": "campaign-label-4", + "name": "campaign-label-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "lithology": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Select from list", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Sedimentary", + "children": [ + { + "name": "Agglomerate", + "children": [] + }, + { + "name": "Alluvium", + "children": [] + }, + { + "name": "Arenite", + "children": [] + }, + { + "name": "Argillite", + "children": [] + }, + { + "name": "Arkose", + "children": [] + }, + { + "name": "Calcrete", + "children": [] + }, + { + "name": "Carbonaceous Shale", + "children": [] + }, + { + "name": "Carbonaceous Chert", + "children": [] + }, + { + "name": "Carbonate Rock", + "children": [] + }, + { + "name": "Chert", + "children": [] + }, + { + "name": "Chloritic Shale", + "children": [] + }, + { + "name": "Clay", + "children": [] + }, + { + "name": "Claystone", + "children": [] + }, + { + "name": "Colluvium", + "children": [] + }, + { + "name": "Conglomerate", + "children": [] + }, + { + "name": "Conglomerate, Monomictic", + "children": [] + }, + { + "name": "Conglomerate, Polymictic", + "children": [] + }, + { + "name": "Dolomite, Sandy", + "children": [] + }, + { + "name": "Dolomitic Shale", + "children": [] + }, + { + "name": "Dolomite, Silty", + "children": [] + }, + { + "name": "Duricrust", + "children": [] + }, + { + "name": "Duricrust, Transported Lateritic", + "children": [] + }, + { + "name": "Ferruginous Clays", + "children": [] + }, + { + "name": "Ferricrete", + "children": [] + }, + { + "name": "Grainstone (Mud Free Limestone)", + "children": [] + }, + { + "name": "Gravel", + "children": [] + }, + { + "name": "Gravels, Transported", + "children": [] + }, + { + "name": "Grey Wackestone", + "children": [] + }, + { + "name": "Ironstone, Magnetite/Haematite", + "children": [] + }, + { + "name": "Kaolin", + "children": [] + }, + { + "name": "Laterite: Mottled (Clay) Zone", + "children": [] + }, + { + "name": "Laterite: Pisolitic Zone", + "children": [] + }, + { + "name": "Limestone", + "children": [] + }, + { + "name": "Limestone, Sandy", + "children": [] + }, + { + "name": "Mudstone", + "children": [] + }, + { + "name": "Mudstone, Calcareous(ca 10 50%)", + "children": [] + }, + { + "name": "Packstone", + "children": [] + }, + { + "name": "Sands, Transported", + "children": [] + }, + { + "name": "Sandstone", + "children": [] + }, + { + "name": "Sandstone, Arkosic (fs greater than 50)", + "children": [] + }, + { + "name": "Sandstone, Chloritic", + "children": [] + }, + { + "name": "Sandstone, Clayey", + "children": [] + }, + { + "name": "Sandstone, Dolomitic(sd 10 50%)", + "children": [] + }, + { + "name": "Sandstone, Lithic", + "children": [] + }, + { + "name": "Sandstone, Micaceous", + "children": [] + }, + { + "name": "Sandstone, Quartz", + "children": [] + }, + { + "name": "Sandstone, Tuffaceous", + "children": [] + }, + { + "name": "Saprock", + "children": [] + }, + { + "name": "Saprolite, Lower", + "children": [] + }, + { + "name": "Saprolite, Upper", + "children": [] + }, + { + "name": "Sedimentary Nondescript", + "children": [] + }, + { + "name": "Shale", + "children": [] + }, + { + "name": "Siltstone", + "children": [] + }, + { + "name": "Siltstone - Chloritic", + "children": [] + }, + { + "name": "Siltstone, Dolomitic (sd 10 50%)", + "children": [] + }, + { + "name": "Siltstone Micaceous", + "children": [] + }, + { + "name": "Slate", + "children": [] + }, + { + "name": "Wackestone", + "children": [] + }, + { + "name": "Silcrete", + "children": [] + } + ] + }, + { + "name": "Metamorphic", + "children": [ + { + "name": "Calc Schist", + "children": [] + }, + { + "name": "Gneiss, Gneissic", + "children": [] + }, + { + "name": "Marble", + "children": [] + }, + { + "name": "Metamorphic Nondescript", + "children": [] + }, + { + "name": "Migmatite", + "children": [] + }, + { + "name": "Mylonite", + "children": [] + }, + { + "name": "Schist", + "children": [] + }, + { + "name": "Quartzite", + "children": [] + } + ] + }, + { + "name": "Igneous", + "children": [ + { + "name": "Amphibolite", + "children": [] + }, + { + "name": "Andesite", + "children": [] + }, + { + "name": "Anorthosite", + "children": [] + }, + { + "name": "Basalt", + "children": [] + }, + { + "name": "Breccia, Pyroclastic", + "children": [] + }, + { + "name": "Breccia, Volcanic", + "children": [] + }, + { + "name": "Dacite", + "children": [] + }, + { + "name": "Diorite", + "children": [] + }, + { + "name": "Dolerite", + "children": [] + }, + { + "name": "Gabbro", + "children": [] + }, + { + "name": "Gabbronorite", + "children": [] + }, + { + "name": "Granite", + "children": [] + }, + { + "name": "Granodiorite", + "children": [] + }, + { + "name": "Igneous Nondescript", + "children": [] + }, + { + "name": "Ignimbrite", + "children": [] + }, + { + "name": "Kimberlite", + "children": [] + }, + { + "name": "Monzodiorite", + "children": [] + }, + { + "name": "Monzonite", + "children": [] + }, + { + "name": "Norite", + "children": [] + }, + { + "name": "Olivine Gabbronorite", + "children": [] + }, + { + "name": "Pegmatite", + "children": [] + }, + { + "name": "Porphyry", + "children": [] + }, + { + "name": "Rhyodacite", + "children": [] + }, + { + "name": "Rhyolite", + "children": [] + }, + { + "name": "Syenite", + "children": [] + }, + { + "name": "Tonalite", + "children": [] + }, + { + "name": "Trachyte", + "children": [] + }, + { + "name": "Troctolite", + "children": [] + }, + { + "name": "Tuff", + "children": [] + }, + { + "name": "Tuff, Crystal", + "children": [] + }, + { + "name": "Tuff, Lapilli", + "children": [] + }, + { + "name": "Tuff, Lapilli Crystal", + "children": [] + }, + { + "name": "Tuff, Lithic", + "children": [] + }, + { + "name": "Volcanic Nondescript", + "children": [] + } + ] + }, + { + "name": "Other", + "children": [] + } + ] + }, + "label": "Lithology", + "valuetype": "full", + "id": "lithology", + "name": "lithology" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "persistent": true + }, + "checkbox": { + "component-namespace": "faims-custom", + "component-name": "Checkbox", + "type-returned": "faims-core::Bool", + "component-parameters": { + "name": "checkbox", + "id": "checkbox", + "required": false, + "type": "checkbox", + "FormControlLabelProps": { + "label": "Preferred pH" + }, + "FormHelperTextProps": { + "children": "Check here to mark this as the preferred pH" + } + }, + "validationSchema": [ + [ + "yup.bool" + ] + ], + "initialValue": false, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "checkbox-2": { + "component-namespace": "faims-custom", + "component-name": "Checkbox", + "type-returned": "faims-core::Bool", + "component-parameters": { + "name": "checkbox-2", + "id": "checkbox-2", + "required": false, + "type": "checkbox", + "FormControlLabelProps": { + "label": "Preferred Eh" + }, + "FormHelperTextProps": { + "children": "Check here to mark this as the preferred Eh" + } + }, + "validationSchema": [ + [ + "yup.bool" + ] + ], + "initialValue": false, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "checkbox-3": { + "component-namespace": "faims-custom", + "component-name": "Checkbox", + "type-returned": "faims-core::Bool", + "component-parameters": { + "name": "checkbox-3", + "id": "checkbox-3", + "required": false, + "type": "checkbox", + "FormControlLabelProps": { + "label": "Preferred DO" + }, + "FormHelperTextProps": { + "children": "Check here to mark this as the preferred DO" + } + }, + "validationSchema": [ + [ + "yup.bool" + ] + ], + "initialValue": false, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-3": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Eh sample data", + "variant": "outlined", + "label": "Eh", + "variant_style": "h3", + "html_tag": "", + "id": "html-text-3", + "name": "html-text-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-4": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "pH sample data", + "variant": "outlined", + "label": "pH", + "variant_style": "h3", + "html_tag": "", + "id": "html-text-4", + "name": "html-text-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-5": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "DO sample data", + "variant": "outlined", + "label": "DO", + "variant_style": "h3", + "html_tag": "", + "id": "html-text-5", + "name": "html-text-5" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + } + }, + "fviews": { + "FORM1SECTION1": { + "fields": [ + "hridFORM1", + "water-sample-id", + "campaign-label", + "station", + "area", + "site-name", + "take-gps-location", + "timestamp", + "basic-water-detail-notes", + "html-text2", + "hole-type", + "hole-lining", + "hole-open-closed", + "pipes-in-hole", + "hole-angle", + "recirculation", + "water-table-m", + "sample-depth-m", + "bottom-of-hole-m", + "sampling-notes", + "bore-photo", + "site-photo", + "other-photo", + "html-text", + "temperature-c", + "conducitivty-s-cm", + "ph-eh-do-subsamples", + "fe2", + "s2" + ], + "uidesign": "form", + "label": "Basic Info" + }, + "FORM2SECTION1": { + "fields": [ + "hridFORM2", + "html-text-4", + "checkbox", + "ph-value", + "html-text-3", + "checkbox-2", + "eh-value", + "html-text-5", + "checkbox-3", + "do-value", + "timestamp-2" + ], + "uidesign": "form", + "label": "pH Eh DO Sub-sample" + }, + "FORM3SECTION1": { + "fields": [ + "hridFORM3", + "sample-id-3", + "timestamp-3" + ], + "uidesign": "form", + "label": "Eh Sample" + }, + "FORM4SECTION1": { + "fields": [ + "hridFORM4", + "sample-id-4", + "timestamp-4" + ], + "uidesign": "form", + "label": "EO Sample" + }, + "FORM5SECTION1": { + "fields": [ + "hridFORM5", + "soil-autoincrementer", + "campaign-label-2", + "station-2", + "area-2", + "take-gps-location-2", + "timestamp-5", + "sample-depth-m-2", + "colour", + "lag", + "soil-texture", + "geology", + "landform", + "regolith-type", + "drainage", + "anthropogenic-contamination", + "vegetation", + "notes", + "soil-surface", + "photo-of-hole", + "photo-of-sample-bag", + "landscape-photo", + "other-photo-2" + ], + "uidesign": "form", + "label": "Soil Sample" + }, + "FORM6SECTION1": { + "fields": [ + "hridFORM6", + "vegetation-autoincrementer", + "campaign-label-3", + "station-3", + "area-3", + "take-gps-location-3", + "timestamp-7", + "landform-2", + "regolith-type-2", + "soil", + "whole-vegetation-photo", + "closeup-of-leaf", + "closeup-flowers-fruit", + "soil-photo", + "landscape-photo", + "other-photo" + ], + "uidesign": "form", + "label": "Vegetation Sample" + }, + "FORM7SECTION1": { + "fields": [ + "hridFORM7", + "rock-autoincrementer", + "campaign-label-4", + "station-4", + "area-4", + "take-gps-location-4", + "timestamp-6", + "lithology", + "inclusion-size", + "grain-size", + "sorting", + "other-lithological-descriptors", + "stratigraphic-unit", + "large-scale-structure", + "alteration", + "veining", + "notes-2", + "sample-photo", + "surface-photo", + "landscape-photo", + "other-photo-3" + ], + "uidesign": "form", + "label": "Rock Sample" + } + }, + "viewsets": { + "FORM1": { + "views": [ + "FORM1SECTION1" + ], + "label": "Water Sample", + "submit_label": "Save and Return" + }, + "FORM2": { + "views": [ + "FORM2SECTION1" + ], + "label": "Water pH Eh DO Sample", + "is_visible": false + }, + "FORM3": { + "views": [ + "FORM3SECTION1" + ], + "label": "Water Eh", + "is_visible": false + }, + "FORM4": { + "views": [ + "FORM4SECTION1" + ], + "label": "Water DO", + "is_visible": false + }, + "FORM5": { + "views": [ + "FORM5SECTION1" + ], + "label": "Soil Sample", + "submit_label": "Save and Return" + }, + "FORM6": { + "views": [ + "FORM6SECTION1" + ], + "label": "Vegetation Sample", + "submit_label": "Save and Return" + }, + "FORM7": { + "views": [ + "FORM7SECTION1" + ], + "label": "Rock Sample", + "submit_label": "Save and Return" + } + }, + "visible_types": [ + "FORM1", + "FORM2", + "FORM3", + "FORM4", + "FORM5", + "FORM6", + "FORM7" + ] + } +} \ No newline at end of file diff --git a/notebooks/demo-notebook.json b/notebooks/demo-notebook.json new file mode 100644 index 00000000..a0cc7c73 --- /dev/null +++ b/notebooks/demo-notebook.json @@ -0,0 +1,2399 @@ +{ + "metadata": { + "name": "Demo Very Large Notebook", + "project_status": "New", + "accesses": [ + "admin", + "moderator", + "team" + ], + "forms": { + "FORM1": { + "submitActionFORM1": "Save and New", + "annotationFORM1": true, + "uncertaintyFORM1": false, + "formaccessinheritFORM1": false, + "visibleFORM1": true + }, + "FORM2": { + "submitActionFORM2": "Save and New", + "annotationFORM2": true, + "uncertaintyFORM2": false, + "formaccessinheritFORM2": false, + "visibleFORM2": true + } + }, + "sections": {}, + "meta": { + "Thing2Label": "Demonstration project metadata" + }, + "access": { + "accessFORM1": [ + "admin" + ], + "accessFORM2": [ + "admin" + ] + }, + "ispublic": false, + "isrequest": false, + "behaviours": {}, + "project_lead": "Penny Crook", + "lead_institution": "Macquarie University", + "pre_description": "This is a demonstration notebook walking through the key features of FAIMS3 Beta.", + "filenames": [], + "notebook_version": "1.0", + "schema_version": "1.0", + "name": "Demo Notebook" + }, + "ui-specification": { + "fields": { + "text-field": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "We have Text fields.", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "string" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Text Field" + }, + "FormHelperTextProps": {}, + "id": "text-field", + "name": "text-field" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "text-field-prepop": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "This field's default is 'Default'", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "string" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Prepopulated Field" + }, + "FormHelperTextProps": {}, + "id": "text-field-prepop", + "name": "text-field-prepop" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "Default", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "number-field": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Integer", + "component-parameters": { + "fullWidth": true, + "helperText": "We have fields for storing Numbers which can have validation.", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Number field" + }, + "FormHelperTextProps": {}, + "id": "number-field", + "name": "number-field" + }, + "validationSchema": [ + [ + "yup.number" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "number-field-val": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Integer", + "component-parameters": { + "fullWidth": true, + "helperText": "We have fields for storing Numbers which can have validation min 10 max 20.", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "number" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Number field" + }, + "FormHelperTextProps": {}, + "id": "number-field-val", + "name": "number-field-val" + }, + "validationSchema": [ + [ + "yup.number" + ], + [ + "yup.min", + 10 + ], + [ + "yup.max", + 20 + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "email": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Email", + "component-parameters": { + "fullWidth": true, + "helperText": "We can also store Email addresses.", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "email" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Email" + }, + "FormHelperTextProps": {}, + "id": "email", + "name": "email" + }, + "validationSchema": [ + [ + "yup.string" + ], + [ + "yup.email", + "Enter a valid email" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "multi-line-text": { + "component-namespace": "formik-material-ui", + "component-name": "MultipleTextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "We can also store multi line Text boxes for when you have a lot of data.", + "variant": "outlined", + "required": false, + "multiline": true, + "InputProps": { + "type": "text", + "rows": 4 + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Multi line text" + }, + "FormHelperTextProps": {}, + "id": "multi-line-text", + "name": "multi-line-text" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "select-field": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "You can select your option from the dropdown", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": " Option 1", + "label": " Option 1" + }, + { + "value": " Option 2", + "label": " Option 2" + }, + { + "value": " Option 3", + "label": " Option 3" + } + ] + }, + "InputLabelProps": { + "label": "Select Field" + }, + "id": "select-field", + "name": "select-field" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "multi-select-field": { + "component-namespace": "faims-custom", + "component-name": "MultiSelect", + "type-returned": "faims-core::Array", + "component-parameters": { + "fullWidth": true, + "helperText": "You can also select multiple options from the pick list", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": { + "multiple": true + }, + "ElementProps": { + "options": [ + { + "value": "Option A", + "label": "Option A" + }, + { + "value": " Option B", + "label": " Option B" + }, + { + "value": " Option C", + "label": " Option C" + } + ] + }, + "InputLabelProps": { + "label": "Multi Select Field" + }, + "id": "multi-select-field", + "name": "multi-select-field" + }, + "validationSchema": [ + [ + "yup.array" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "radio-button": { + "component-namespace": "faims-custom", + "component-name": "RadioGroup", + "type-returned": "faims-core::String", + "component-parameters": { + "name": "radio-button", + "id": "radio-button", + "variant": "outlined", + "required": false, + "ElementProps": { + "options": [ + { + "value": " Left", + "label": " Left", + "RadioProps": { + "id": "radio-group-field-0" + } + }, + { + "value": " Right", + "label": " Right", + "RadioProps": { + "id": "radio-group-field-1" + } + } + ] + }, + "FormLabelProps": { + "children": "Radio Button" + }, + "FormHelperTextProps": { + "children": "If you only have a few choices, a Radio button might be the best option" + } + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "1", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "checkbox": { + "component-namespace": "faims-custom", + "component-name": "Checkbox", + "type-returned": "faims-core::Bool", + "component-parameters": { + "name": "checkbox", + "id": "checkbox", + "required": false, + "type": "checkbox", + "FormControlLabelProps": { + "label": "Check box" + }, + "FormHelperTextProps": { + "children": "If you need just one option, you might use a Check box" + } + }, + "validationSchema": [ + [ + "yup.bool" + ] + ], + "initialValue": false, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "uncertain-select-field": { + "component-namespace": "faims-custom", + "component-name": "Select", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "If the options in the dropdown aren't quite right, you can check the NOT SURE box and/or add a MARGINAL NOTE", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "options": [ + { + "value": "Option 1", + "label": "Option 1" + }, + { + "value": " Option 2", + "label": " Option 2" + }, + { + "value": " Option 3", + "label": " Option 3" + } + ] + }, + "InputLabelProps": { + "label": "Uncertain Select Field" + }, + "id": "uncertain-select-field", + "name": "uncertain-select-field" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "Marginal Note", + "annotation": true, + "uncertainty": { + "include": true, + "label": "Not Sure" + } + } + }, + "radio-with-option-for-other": { + "component-namespace": "faims-custom", + "component-name": "RadioGroup", + "type-returned": "faims-core::String", + "component-parameters": { + "name": "radio-with-option-for-other", + "id": "radio-with-option-for-other", + "variant": "outlined", + "required": false, + "ElementProps": { + "options": [ + { + "value": "Up", + "label": "Up", + "RadioProps": { + "id": "radio-group-field-0" + } + }, + { + "value": " Down", + "label": " Down", + "RadioProps": { + "id": "radio-group-field-1" + } + }, + { + "value": " Other", + "label": " Other", + "RadioProps": { + "id": "radio-group-field-2" + } + } + ] + }, + "FormLabelProps": { + "children": "Radio with Option for Other" + }, + "FormHelperTextProps": { + "children": "If you cannot see you option, select OTHER, tap the icon to the right and enter it as OTHER." + } + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "1", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "Other", + "annotation": true, + "uncertainty": { + "include": true, + "label": "uncertainty" + } + } + }, + "hierarchical-picker-full-path": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "You can organise your selections into groups with a Hierarchical picklist. You can choose to store the full path, where that's useful. ", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Level 1", + "children": [ + { + "name": "Level 1.1", + "children": [ + { + "name": "Level 1.1.1", + "children": [ + { + "name": "Level 1.1.1.1", + "children": [] + } + ] + } + ] + }, + { + "name": "Level 1.2", + "children": [] + } + ] + }, + { + "name": "Level 2", + "children": [ + { + "name": "Level 2.1", + "children": [] + }, + { + "name": "Level 2.2", + "children": [] + } + ] + }, + { + "name": "Level 3", + "children": [] + } + ] + }, + "label": "Hierarchical Picker (full path)", + "valuetype": "full", + "id": "hierarchical-picker-full-path", + "name": "hierarchical-picker-full-path" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hierarchical-picker-full-path-only": { + "component-namespace": "faims-custom", + "component-name": "AdvancedSelect", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Or just the end value if that is all you need.", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": {}, + "ElementProps": { + "optiontree": [ + { + "name": "Level 1", + "children": [ + { + "name": "Level 1.1", + "children": [ + { + "name": "Level 1.1.1", + "children": [ + { + "name": "Level 1.1.1.1", + "children": [] + } + ] + } + ] + }, + { + "name": "Level 1.2", + "children": [] + } + ] + }, + { + "name": "Level 2", + "children": [ + { + "name": "Level 2.1", + "children": [] + }, + { + "name": "Level 2.2", + "children": [] + } + ] + }, + { + "name": "Level 3", + "children": [] + } + ] + }, + "label": "Hierarchical Picker (only child)", + "valuetype": "child", + "id": "hierarchical-picker-full-path-only", + "name": "hierarchical-picker-full-path-only" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "take-point": { + "component-namespace": "faims-custom", + "component-name": "TakePoint", + "type-returned": "faims-pos::Location", + "component-parameters": { + "fullWidth": true, + "name": "take-point", + "id": "take-point", + "helperText": "Click to save current location", + "variant": "outlined", + "label": "Take point" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "mapformfield": { + "component-namespace": "mapping-plugin", + "component-name": "MapFormField", + "type-returned": "faims-core::JSON", + "component-parameters": { + "name": "mapformfield", + "id": "mapformfield", + "variant": "outlined", + "required": false, + "featureType": "Polygon", + "zoom": "", + "label": "", + "FormLabelProps": { + "children": "" + } + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "1", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "We can take a point at a click of a button or draw points, lines and polygons on a map.", + "variant": "outlined", + "label": "Maps", + "variant_style": "h1", + "html_tag": "", + "id": "html-text", + "name": "html-text" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-2": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "We can take photos and attach files.", + "variant": "outlined", + "label": "Photos and Files", + "variant_style": "h1", + "html_tag": "", + "id": "html-text-2", + "name": "html-text-2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "take-photo": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "take-photo", + "id": "take-photo", + "helpertext": "Take a photo", + "variant": "outlined", + "label": "Take Photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "fileuploader": { + "component-namespace": "faims-custom", + "component-name": "FileUploader", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "name": "fileuploader", + "id": "fileuploader", + "helperText": "Choose a file" + }, + "validationSchema": [ + [ + "yup.mixed" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-3": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "This is sub Title", + "variant": "outlined", + "label": "Autoincrementer", + "variant_style": "h5", + "html_tag": "", + "id": "html-text-3", + "name": "html-text-3" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "thing-2-name": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Give Thing 2 a name or title", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Thing 2 name" + }, + "FormHelperTextProps": {}, + "id": "thing-2-name", + "name": "thing-2-name" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-4": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "html", + "variant_style": "h3", + "html_tag": "

Here have example kittens from placekitten.com

", + "id": "html-text-4", + "name": "html-text-4" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-5": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Identifiers are useful for related fields", + "variant": "outlined", + "label": "Related Fields", + "html_tag": "", + "id": "html-text-5", + "name": "html-text-5" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "colour-picker": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Colour", + "component-parameters": { + "fullWidth": true, + "helperText": "Tap the colour picker to select an RGB value from the array.", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "color" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Colour picker" + }, + "FormHelperTextProps": {}, + "id": "colour-picker", + "name": "colour-picker" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": true, + "label": "uncertainty" + } + } + }, + "date-picker": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Date", + "component-parameters": { + "fullWidth": true, + "helperText": "We have a date picker with a calendar prompt.", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "date" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Date picker" + }, + "FormHelperTextProps": {}, + "id": "date-picker", + "name": "date-picker" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "date-and-time-picker": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Datetime", + "component-parameters": { + "fullWidth": true, + "helperText": "And a calendar prompt with a timestamp.", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "datetime-local" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Date and Time picker" + }, + "FormHelperTextProps": {}, + "id": "date-and-time-picker", + "name": "date-and-time-picker" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "month-picker": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::Date", + "component-parameters": { + "fullWidth": true, + "helperText": "And one to select just the month if that is all you need.", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "month" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Month picker" + }, + "FormHelperTextProps": {}, + "id": "month-picker", + "name": "month-picker" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "related-thing": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": "Select or Add new related record", + "variant": "outlined", + "required": false, + "related_type": "FORM2", + "relation_type": "faims-core::Child", + "InputProps": { + "type": "text" + }, + "multiple": true, + "SelectProps": {}, + "InputLabelProps": { + "label": "Related Thing" + }, + "FormHelperTextProps": {}, + "id": "related-thing", + "name": "related-thing" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "thing-2-incrementer": { + "component-namespace": "faims-custom", + "component-name": "BasicAutoIncrementer", + "type-returned": "faims-core::String", + "component-parameters": { + "name": "thing-2-incrementer", + "id": "thing-2-incrementer", + "variant": "outlined", + "required": true, + "num_digits": 5, + "form_id": "FORM2SECTION1", + "label": "Thing 2 incrementer" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "thing-2-human-identifier": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "thing-2-human-identifier", + "id": "thing-2-human-identifier", + "helperText": "Demo from project metadata + local count", + "variant": "outlined", + "required": true, + "template": "{{thing-2-incrementer}}-{{thing-2-name}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Thing 2 Human Identifier" + }, + "hrid": true, + "numberfield": 2, + "fieldselect10": "thing-2-incrementer", + "fieldselect11": "thing-2-name" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hridFORM2": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "hridFORM2", + "id": "hridFORM2", + "helperText": "Demo from project metadata + local count", + "variant": "outlined", + "required": true, + "template": "{{thing-2-incrementer}}-{{thing-2-name}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Thing 2 Human Identifier" + }, + "hrid": true, + "linked": "thing-2-human-identifier", + "numberfield": 2, + "fieldselect10": "thing-2-incrementer", + "fieldselect11": "thing-2-name" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "is-related-to": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": "Create zero or more links", + "variant": "outlined", + "required": false, + "related_type": "FORM2", + "relation_type": "faims-core::Linked", + "InputProps": { + "type": "text" + }, + "multiple": true, + "SelectProps": {}, + "InputLabelProps": { + "label": "Is related to" + }, + "FormHelperTextProps": {}, + "id": "is-related-to", + "name": "is-related-to", + "relation_linked_vocabPair": [ + [ + "is_above", + "is below" + ], + [ + "is related", + "is related to" + ] + ], + "related_type_label": "Thing 2", + "current_form": "FORM2", + "current_form_label": "Thing 2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-6": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "Synchronisation", + "variant_style": "h4", + "html_tag": "", + "id": "html-text-6", + "name": "html-text-6" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-7": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "", + "variant_style": "subtitle1", + "html_tag": "By default synchronisation is always on. It can toggled on or off on the home page.", + "id": "html-text-7", + "name": "html-text-7" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-8": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "To break up a view, or guide the user", + "variant": "outlined", + "label": "Custom headers and text ", + "variant_style": "h3", + "html_tag": "", + "id": "html-text-8", + "name": "html-text-8" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-9": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "and can be placed anywhere on the page", + "variant": "outlined", + "label": "Come in different sizes", + "variant_style": "h1", + "html_tag": "", + "id": "html-text-9", + "name": "html-text-9" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-10": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "Validation", + "variant_style": "h4", + "html_tag": "", + "id": "html-text-10", + "name": "html-text-10" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "controlled-text-field": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "If the text does not meet the validation rule you cannot save and sync. This one must be at least 5 characters long.", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "string" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Controlled Text Field" + }, + "FormHelperTextProps": {}, + "id": "controlled-text-field", + "name": "controlled-text-field" + }, + "validationSchema": [ + [ + "yup.string" + ], + [ + "yup.required", + "I do not want to eat these green eggs and ham -- I want a longer string instead!" + ], + [ + "yup.min", + "5", + "At least 5 characters, please. Not just ham..." + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "controlled-number": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "This number must be at least 10 and not more than 20. ", + "variant": "outlined", + "required": false, + "InputProps": {}, + "SelectProps": {}, + "InputLabelProps": { + "label": "Controlled Number" + }, + "FormHelperTextProps": {}, + "id": "controlled-number", + "name": "controlled-number" + }, + "validationSchema": [ + [ + "yup.number" + ], + [ + "yup.min", + 10, + "Must be 10 or more" + ], + [ + "yup.max", + 20, + "Must be 20 or less" + ], + [ + "yup.required", + "You must fill this in!" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-11": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "Saving Records", + "variant_style": "h4", + "html_tag": "", + "id": "html-text-11", + "name": "html-text-11" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-12": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "", + "variant_style": "subtitle1", + "html_tag": "By default records are saved as a Draft on your local device. They can only be synchronised once you have selected Save.", + "id": "html-text-12", + "name": "html-text-12" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-13": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "", + "variant_style": "h5", + "html_tag": "You can't synchronise invalid data. FAIMS3 has two main types of validation: required fields and field-level controls.", + "id": "html-text-13", + "name": "html-text-13" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-14": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "", + "html_tag": "Custom validation messages can be used to guide the user.", + "id": "html-text-14", + "name": "html-text-14" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-15": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "", + "variant": "outlined", + "label": "", + "variant_style": "h5", + "html_tag": "Field-specific validation can be customised in the notebook's json file.", + "id": "html-text-15", + "name": "html-text-15" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "required-text-field": { + "component-namespace": "formik-material-ui", + "component-name": "TextField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "If no value is entered, you can't save and sync the record. ", + "variant": "outlined", + "required": false, + "InputProps": { + "type": "text" + }, + "SelectProps": {}, + "InputLabelProps": { + "label": "Required Text Field" + }, + "FormHelperTextProps": {}, + "id": "required-text-field", + "name": "required-text-field" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "qr-code-demonstration-button-mobile-device-only": { + "component-namespace": "qrcode", + "component-name": "QRCodeFormField", + "type-returned": "faims-core::String", + "component-parameters": { + "name": "qr-code-demonstration-button-mobile-device-only", + "id": "qr-code-demonstration-button-mobile-device-only", + "variant": "outlined", + "required": false, + "label": "", + "FormLabelProps": { + "children": "QR Code demonstration button (mobile device only)" + } + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": false, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "new-select-field": { + "component-namespace": "faims-custom", + "component-name": "MultiSelect", + "type-returned": "faims-core::Array", + "component-parameters": { + "fullWidth": true, + "helperText": "Select your field here", + "variant": "outlined", + "required": false, + "select": true, + "InputProps": {}, + "SelectProps": { + "multiple": true + }, + "ElementProps": { + "options": [ + { + "value": "Option A", + "label": "Option A" + }, + { + "value": "Option B", + "label": "Option B" + }, + { + "value": "Option C", + "label": "Option C" + } + ] + }, + "InputLabelProps": { + "label": "New select field" + }, + "id": "new-select-field", + "name": "new-select-field" + }, + "validationSchema": [ + [ + "yup.array" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "Marginal notes", + "annotation": true, + "uncertainty": { + "include": true, + "label": "" + } + } + }, + "take-photo-2": { + "component-namespace": "faims-custom", + "component-name": "TakePhoto", + "type-returned": "faims-attachment::Files", + "component-parameters": { + "fullWidth": true, + "name": "take-photo-2", + "id": "take-photo-2", + "helpertext": "Take a photo", + "variant": "outlined", + "label": "Take Photo" + }, + "validationSchema": [ + [ + "yup.object" + ], + [ + "yup.nullable" + ] + ], + "initialValue": null, + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "date-and-time-now": { + "component-namespace": "faims-custom", + "component-name": "DateTimeNow", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Click or tap to add the current Date and Time ", + "variant": "outlined", + "required": false, + "InputLabelProps": { + "label": "Date and Time NOW" + }, + "is_auto_pick": false, + "id": "date-and-time-now", + "name": "date-and-time-now" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "html-text-16": { + "component-namespace": "faims-custom", + "component-name": "RandomStyle", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "helperText": "Thing 2 can have a Human Readable Identifier (HRID). It will be given an automatically allocated number based on the count of other Things and will include the Title you enter below. ", + "variant": "outlined", + "label": "Identifying Things ", + "variant_style": "h1", + "html_tag": "", + "id": "html-text-16", + "name": "html-text-16" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "parent-child-relationships": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": "Thing 2 can be the Parent of none or more Thing 1 records", + "variant": "outlined", + "required": true, + "related_type": "FORM1", + "relation_type": "faims-core::Child", + "InputProps": { + "type": "text" + }, + "multiple": true, + "SelectProps": {}, + "InputLabelProps": { + "label": "Parent-Child Relationships" + }, + "FormHelperTextProps": {}, + "id": "parent-child-relationships", + "name": "parent-child-relationships", + "related_type_label": "Thing 1", + "current_form": "FORM2", + "current_form_label": "Thing 2" + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": [], + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + }, + "displayParent": true + }, + "linking-relationships": { + "component-namespace": "faims-custom", + "component-name": "RelatedRecordSelector", + "type-returned": "faims-core::Relationship", + "component-parameters": { + "fullWidth": true, + "helperText": "Thing 2 can be linked to other Thing 2 records", + "variant": "outlined", + "required": true, + "related_type": "FORM2", + "relation_type": "faims-core::Linked", + "InputProps": { + "type": "text" + }, + "multiple": false, + "SelectProps": {}, + "InputLabelProps": { + "label": "Linking Relationships" + }, + "FormHelperTextProps": {}, + "id": "linking-relationships", + "name": "linking-relationships", + "related_type_label": "Thing 2", + "current_form": "FORM2", + "current_form_label": "Thing 2", + "relation_linked_vocabPair": [ + [ + "is_above", + "is below" + ], + [ + "is related", + "is related to" + ] + ] + }, + "validationSchema": [ + [ + "yup.string" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "thing-1-unique-id": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "thing-1-unique-id", + "id": "thing-1-unique-id", + "helperText": "", + "variant": "outlined", + "required": true, + "template": "{{text-field}}-{{number-field}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Thing 1 Unique ID" + }, + "hrid": true, + "numberfield": 2, + "fieldselect10": "text-field", + "fieldselect11": "number-field" + }, + "validationSchema": [ + [ + "yup.string" + ], + [ + "yup.required" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + }, + "hridFORM1": { + "component-namespace": "faims-custom", + "component-name": "TemplatedStringField", + "type-returned": "faims-core::String", + "component-parameters": { + "fullWidth": true, + "name": "hridFORM1", + "id": "hridFORM1", + "helperText": "", + "variant": "outlined", + "required": true, + "template": "{{text-field}}-{{number-field}}", + "InputProps": { + "type": "text", + "readOnly": true + }, + "InputLabelProps": { + "label": "Thing 1 Unique ID" + }, + "hrid": true, + "linked": "thing-1-unique-id", + "numberfield": 2, + "fieldselect10": "text-field", + "fieldselect11": "number-field" + }, + "validationSchema": [ + [ + "yup.string" + ], + [ + "yup.required" + ] + ], + "initialValue": "", + "access": [ + "admin" + ], + "meta": { + "annotation_label": "annotation", + "annotation": true, + "uncertainty": { + "include": false, + "label": "uncertainty" + } + } + } + }, + "fviews": { + "FORM1SECTION1": { + "fields": [ + "hridFORM1", + "text-field", + "number-field", + "email", + "multi-line-text", + "date-picker", + "date-and-time-picker", + "month-picker", + "text-field-prepop", + "new-select-field", + "date-and-time-now" + ], + "uidesign": "form", + "label": "Input Fields", + "description": "We can collect data about more than one thing. You decide what it's called, and what information you need to collect about that thing. " + }, + "FORM1SECTION2": { + "fields": [ + "select-field", + "multi-select-field", + "hierarchical-picker-full-path", + "hierarchical-picker-full-path-only", + "radio-button", + "checkbox" + ], + "uidesign": "form", + "label": "Structured Data", + "description": "We can also store Structured and controlled data." + }, + "FORM1SECTION3": { + "fields": [ + "uncertain-select-field", + "radio-with-option-for-other", + "take-photo-2" + ], + "uidesign": "form", + "label": "Metadata", + "description": "FAIMS3 offers input options for annotation and certain when the options are structured, but the data are fuzzy." + }, + "FORM1SECTION5": { + "fields": [ + "html-text", + "mapformfield", + "take-point", + "html-text-2", + "take-photo", + "fileuploader", + "colour-picker", + "qr-code-demonstration-button-mobile-device-only" + ], + "uidesign": "form", + "label": "Special Fields" + }, + "FORM2SECTION1": { + "fields": [ + "html-text-16", + "hridFORM2", + "thing-2-name", + "thing-2-incrementer", + "is-related-to" + ], + "uidesign": "form", + "label": "Identifiers" + }, + "FORM1SECTION7": { + "fields": [ + "html-text-8", + "html-text-9", + "html-text-4" + ], + "uidesign": "form", + "label": "Views" + }, + "FORM1SECTION8": { + "fields": [ + "html-text-11", + "html-text-12", + "html-text-6", + "html-text-7", + "html-text-10", + "html-text-13", + "required-text-field", + "html-text-15", + "controlled-text-field", + "html-text-14", + "controlled-number" + ], + "uidesign": "form", + "label": "Sync" + }, + "FORM2SECTION2": { + "fields": [ + "parent-child-relationships", + "linking-relationships" + ], + "uidesign": "form", + "label": "Relationships" + } + }, + "viewsets": { + "FORM1": { + "views": [ + "FORM1SECTION1", + "FORM1SECTION2", + "FORM1SECTION3", + "FORM1SECTION5", + "FORM1SECTION7", + "FORM1SECTION8" + ], + "label": "Thing 1", + "submit_label": "Save and New" + }, + "FORM2": { + "views": [ + "FORM2SECTION1", + "FORM2SECTION2" + ], + "label": "Thing 2" + } + }, + "visible_types": [ + "FORM1", + "FORM2" + ] + } +} \ No newline at end of file diff --git a/notebooks/migrate-notebook.py b/notebooks/migrate-notebook.py new file mode 100644 index 00000000..fa94e9b9 --- /dev/null +++ b/notebooks/migrate-notebook.py @@ -0,0 +1,135 @@ + +# Copyright 2021, 2022 Macquarie University +# +# Licensed under the Apache License Version 2.0 (the, "License"); +# you may not use, this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing software +# distributed under the License is distributed on an "AS IS" BASIS +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND either express or implied. +# See, the License, for the specific language governing permissions and +# limitations under the License. +# +# Filename: migrate-notebook.py +# Description: +# Migrate a notebook from the initial coudbdb dump format to the new +# format supported by the Conductor API. Make some changes for future +# proofing. Rewrite field names to be more informative rather than +# just 'newfield1233445'. + +# Usage: python3 migrate-notebook.py + + +import json +import sys +import unicodedata +import re +import shutil + +jsonfile = sys.argv[1] + +def slugify(value): + slug = unicodedata.normalize('NFKD', value) + + slug = slug.lower() + slug = re.sub(r'[^a-z0-9]+', '-', slug).strip('-') + slug = re.sub(r'[-]+', '-', slug) + + return slug + +def field_mapping(ui_spec): + + counters = {} + mapping = {} + for field in ui_spec['fields']: + params = ui_spec['fields'][field]['component-parameters'] + component_name = ui_spec['fields'][field]['component-name'] + type_name = '' + if field.startswith('hrid'): + type_name = field + elif 'InputLabelProps' in params and params['InputLabelProps']['label'] != '': + type_name = params['InputLabelProps']['label'] + elif 'label' in params and params['label'] != '' and not component_name == 'RandomStyle': + type_name = params['label'] + elif 'FormLabelProps' in params: + type_name = params['FormLabelProps']['children'] + elif component_name == 'RandomStyle': + # randomstyle is just a stupid name + type_name = 'html-text' + + # final fallback + if type_name == '': + type_name = component_name + + if type_name not in counters: + counters[type_name] = 1 + else: + counters[type_name] += 1 + + if type_name.startswith('hrid'): + new_name = type_name # don't slugify hrid field names + elif counters[type_name] == 1: + new_name = slugify(type_name) + else: + new_name = slugify(type_name + ' ' + str(counters[type_name])) + mapping[field] = new_name + + # save the mapping for later reference, eg. updating data records + with open('mapping.json', 'w') as f: + json.dump(mapping, f, indent=2) + + return mapping + + +def process_ui_spec(ui_spec): + + ui_spec.pop('_id', None) + ui_spec.pop('_rev', None) + + mapping = field_mapping(ui_spec) + + jsontext = json.dumps(ui_spec) + for field in mapping: + jsontext = jsontext.replace(field, mapping[field]) + ui_spec = json.loads(jsontext) + + return ui_spec + +legacy = {} + +for record in json.load(open(jsonfile)): + legacy[record['_id']] = record + +metadata = legacy['project-metadata-projectvalue']['metadata'] +# update metadata to insert a version number for this notebook +# and a schema version number in case we upgrade the schema in future +metadata['notebook_version'] = '1.0' +metadata['schema_version'] = '1.0' + +# move the section description from the metadata into the ui-spec +for section in metadata['sections']: + description = metadata['sections'][section]['sectiondescription' + section] + if section in legacy['ui-specification']['fviews']: + legacy['ui-specification']['fviews'][section]['description'] = description + +metadata['sections'] = {} + +result = { + 'metadata': metadata, + 'ui-specification': process_ui_spec(legacy['ui-specification']), +} + +name = jsonfile.split('.')[0].replace('-', ' ').title() +result['metadata']['name'] = name + +shutil.move(jsonfile, jsonfile + '.bak') + +json.dump(result, open(jsonfile, 'w'), indent=2) + +print("To update the old style git repo, run:") +print("git rm createNotebook.sh replaceNotebook.sh faims3-temp-notebook-migrator") +print("git add " + jsonfile) +print("git commit -m 'migrate notebook to new format'") diff --git a/views/layouts/main.handlebars b/views/layouts/main.handlebars index 06650697..5ee0d84c 100644 --- a/views/layouts/main.handlebars +++ b/views/layouts/main.handlebars @@ -61,6 +61,12 @@ {{{body}}}
+

Access to the Fieldmarkā„¢ Demonstration App is provided for the purpose of creating and testing trial notebooks only. For + field trials, users are responsible for testing all aspects of notebook functionality including notebook set up, data + collection, saving and exporting data. No warranty is provided for data loss. Do not store sensitive or highly sensitive + data according to the Australian Privacy Act on this server, as we cannot guarantee access controls on this server. The + server may be reset without notice. Access to the Fieldmarkā„¢ Demonstration App may be revoked at short notice. Records + created in shared notebooks will be visible to other users.

The FAIMS 3.0 Electronic Field Notebooks project received investment ( doi: 10.47486/PL110) from the Australian Research Data Commons (ARDC), Macquarie University, CSIRO, UNSW Sydney, La Trobe University, and Aarhus University. We are proud to collaborate with more than a dozen other partners. Contribute to this project on GitHub!