@openneuro/app 4.19.0 → 4.19.1-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openneuro/app",
|
|
3
|
-
"version": "4.19.0",
|
|
3
|
+
"version": "4.19.1-alpha.0",
|
|
4
4
|
"description": "React JS web frontend for the OpenNeuro platform.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "public/client.js",
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
"@emotion/react": "11.6.0",
|
|
21
21
|
"@emotion/styled": "11.6.0",
|
|
22
22
|
"@niivue/niivue": "0.34.0",
|
|
23
|
-
"@openneuro/client": "^4.19.0",
|
|
24
|
-
"@openneuro/components": "^4.19.0",
|
|
23
|
+
"@openneuro/client": "^4.19.1-alpha.0",
|
|
24
|
+
"@openneuro/components": "^4.19.1-alpha.0",
|
|
25
25
|
"bids-validator": "1.10.0",
|
|
26
26
|
"bytes": "^3.0.0",
|
|
27
27
|
"comlink": "^4.0.5",
|
|
@@ -81,5 +81,5 @@
|
|
|
81
81
|
"publishConfig": {
|
|
82
82
|
"access": "public"
|
|
83
83
|
},
|
|
84
|
-
"gitHead": "
|
|
84
|
+
"gitHead": "dc95d37d3b698a2593ada42a6461dc027bc47dae"
|
|
85
85
|
}
|
|
@@ -7,73 +7,9 @@ import { DatasetRelations } from '../mutations/dataset-relations'
|
|
|
7
7
|
import SubmitMetadata from '../mutations/submit-metadata.jsx'
|
|
8
8
|
import LoggedIn from '../../authentication/logged-in.jsx'
|
|
9
9
|
import { hasEditPermissions, getProfile } from '../../authentication/profile.js'
|
|
10
|
-
import { getDatasetUrl } from '../../utils/dataset-url'
|
|
11
10
|
import { DatasetPageBorder } from './styles/dataset-page-border'
|
|
12
11
|
import { HeaderRow3, HeaderRow4 } from './styles/header-row'
|
|
13
12
|
|
|
14
|
-
export const compileMetadata = dataset => {
|
|
15
|
-
const getFromMetadata = key => dataset.metadata && dataset.metadata[key]
|
|
16
|
-
const getFromSummary = key =>
|
|
17
|
-
dataset.draft && dataset.draft.summary && dataset.draft.summary[key]
|
|
18
|
-
const getFromDescription = key =>
|
|
19
|
-
dataset.draft && dataset.draft.description && dataset.draft.description[key]
|
|
20
|
-
const getSeniorAuthor = () => {
|
|
21
|
-
const authors = dataset.draft.description.Authors
|
|
22
|
-
if (authors.length) {
|
|
23
|
-
return authors[authors.length - 1]
|
|
24
|
-
} else {
|
|
25
|
-
return 'authors not listed in description.json'
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
const getAgesFromSummary = () => {
|
|
29
|
-
const subjectMetadata = getFromSummary('subjectMetadata')
|
|
30
|
-
return subjectMetadata && subjectMetadata.map(({ age }) => age)
|
|
31
|
-
}
|
|
32
|
-
return {
|
|
33
|
-
// get from form
|
|
34
|
-
associatedPaperDOI: getFromMetadata('associatedPaperDOI') || '',
|
|
35
|
-
species: getFromMetadata('species') || '',
|
|
36
|
-
studyLongitudinal: getFromMetadata('studyLongitudinal') || '',
|
|
37
|
-
studyDomain: getFromMetadata('studyDomain') || '',
|
|
38
|
-
trialCount: getFromMetadata('trialCount') || undefined,
|
|
39
|
-
studyDesign: getFromMetadata('studyDesign') || '',
|
|
40
|
-
openneuroPaperDOI: getFromMetadata('openneuroPaperDOI') || '',
|
|
41
|
-
dxStatus: getFromMetadata('dxStatus') || '',
|
|
42
|
-
grantFunderName: getFromMetadata('grantFunderName') || '',
|
|
43
|
-
grantIdentifier: getFromMetadata('grantIdentifier') || '',
|
|
44
|
-
affirmedDefaced: getFromMetadata('affirmedDefaced') || false,
|
|
45
|
-
affirmedConsent: getFromMetadata('affirmedConsent') || false,
|
|
46
|
-
|
|
47
|
-
// get from openneuro
|
|
48
|
-
datasetId: dataset.id || '',
|
|
49
|
-
datasetUrl: getDatasetUrl(dataset) || '',
|
|
50
|
-
firstSnapshotCreatedAt:
|
|
51
|
-
(Array.isArray(dataset.snapshots) &&
|
|
52
|
-
dataset.snapshots.length &&
|
|
53
|
-
dataset.snapshots[0].created) ||
|
|
54
|
-
null,
|
|
55
|
-
latestSnapshotCreatedAt:
|
|
56
|
-
(Array.isArray(dataset.snapshots) &&
|
|
57
|
-
dataset.snapshots.length &&
|
|
58
|
-
dataset.snapshots[dataset.snapshots.length - 1].created) ||
|
|
59
|
-
null,
|
|
60
|
-
adminUsers: (dataset.permissions &&
|
|
61
|
-
Array.isArray(dataset.permissions.userPermissions) &&
|
|
62
|
-
dataset.permissions.userPermissions
|
|
63
|
-
.filter(permission => permission.level === 'admin')
|
|
64
|
-
.map(({ user }) => user && user.email)) || ['dataset has no admins'],
|
|
65
|
-
|
|
66
|
-
// get from validator or description.json
|
|
67
|
-
datasetName:
|
|
68
|
-
getFromDescription('Name') || 'dataset unnamed in description.json',
|
|
69
|
-
seniorAuthor: getSeniorAuthor(),
|
|
70
|
-
dataProcessed: getFromSummary('dataProcessed') || false,
|
|
71
|
-
ages: getAgesFromSummary() || [],
|
|
72
|
-
modalities: getFromSummary('modalities') || [],
|
|
73
|
-
tasksCompleted: getFromSummary('tasks') || [],
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
13
|
const validations = [
|
|
78
14
|
{
|
|
79
15
|
fields: ['affirmedConsent', 'affirmedDefaced'],
|
|
@@ -102,7 +38,9 @@ const AddMetadata = ({ dataset }) => {
|
|
|
102
38
|
const navigate = useNavigate()
|
|
103
39
|
const location = useLocation()
|
|
104
40
|
const [cookies] = useCookies()
|
|
105
|
-
const
|
|
41
|
+
const loadedMetadata = { ...dataset.metadata }
|
|
42
|
+
delete loadedMetadata.__typename
|
|
43
|
+
const [values, setValues] = useState(loadedMetadata)
|
|
106
44
|
const [validationErrors, setValidationErrors] = useState([])
|
|
107
45
|
const handleInputChange = (name, value) => {
|
|
108
46
|
const newValues = {
|