@openneuro/app 4.2.4 → 4.3.0-alpha.1
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/jestsetup.ts +0 -5
- package/package.json +7 -12
- package/src/scripts/common/forms/__tests__/__snapshots__/warn-button.spec.jsx.snap +26 -26
- package/src/scripts/common/forms/__tests__/warn-button.spec.jsx +7 -5
- package/src/scripts/datalad/dataset/dataset-query-fragments.js +6 -0
- package/src/scripts/datalad/subscriptions/__tests__/__snapshots__/files-subscription.spec.jsx.snap +1 -159
- package/src/scripts/datalad/subscriptions/__tests__/files-subscription.spec.jsx +6 -3
- package/src/scripts/errors/errorRoute.jsx +4 -23
- package/src/scripts/faq/__tests__/__snapshots__/faq.spec.jsx.snap +183 -154
- package/src/scripts/faq/__tests__/faq.spec.jsx +3 -3
- package/src/scripts/refactor_2021/admin/admin.jsx +1 -7
- package/src/scripts/refactor_2021/dataset/comments/__tests__/__snapshots__/comments.spec.jsx.snap +12 -110
- package/src/scripts/refactor_2021/dataset/comments/__tests__/comments.spec.jsx +7 -5
- package/src/scripts/refactor_2021/dataset/dataset-query.jsx +2 -4
- package/src/scripts/refactor_2021/dataset/dataset-routes.jsx +6 -11
- package/src/scripts/refactor_2021/dataset/download/__tests__/__snapshots__/download-command-line.spec.jsx.snap +8 -9
- package/src/scripts/refactor_2021/dataset/download/__tests__/__snapshots__/download-link.spec.jsx.snap +46 -1255
- package/src/scripts/refactor_2021/dataset/download/__tests__/__snapshots__/shell-example.spec.jsx.snap +3 -4
- package/src/scripts/refactor_2021/dataset/download/__tests__/download-command-line.spec.jsx +10 -11
- package/src/scripts/refactor_2021/dataset/download/__tests__/download-link.spec.jsx +3 -3
- package/src/scripts/refactor_2021/dataset/download/__tests__/shell-example.spec.jsx +3 -3
- package/src/scripts/refactor_2021/dataset/download/download-command-line.jsx +1 -1
- package/src/scripts/refactor_2021/dataset/draft-container.tsx +6 -23
- package/src/scripts/refactor_2021/dataset/draft-snapshot-routes.tsx +1 -6
- package/src/scripts/refactor_2021/dataset/files/__tests__/__snapshots__/file-tree.spec.jsx.snap +24 -49
- package/src/scripts/refactor_2021/dataset/files/__tests__/__snapshots__/file.spec.jsx.snap +74 -54
- package/src/scripts/refactor_2021/dataset/files/__tests__/file-tree-unloaded-directory.spec.jsx +4 -3
- package/src/scripts/refactor_2021/dataset/files/__tests__/file-tree.spec.jsx +23 -19
- package/src/scripts/refactor_2021/dataset/files/__tests__/file-viewer-type.spec.jsx +5 -3
- package/src/scripts/refactor_2021/dataset/files/__tests__/file.spec.jsx +21 -21
- package/src/scripts/refactor_2021/dataset/files/file.jsx +3 -2
- package/src/scripts/refactor_2021/dataset/files/viewers/__tests__/__snapshots__/file-viewer-json.spec.jsx.snap +85 -60
- package/src/scripts/refactor_2021/dataset/files/viewers/__tests__/file-viewer-json.spec.jsx +5 -5
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/__snapshots__/cancel-button.spec.tsx.snap +14 -6
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/__snapshots__/edit-button.spec.tsx.snap +14 -6
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/__snapshots__/save-button.spec.tsx.snap +14 -6
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/__snapshots__/select-input.spec.tsx.snap +178 -105
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/cancel-button.spec.tsx +3 -3
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/dataset-alert-draft.spec.tsx +72 -0
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/edit-button.spec.tsx +3 -3
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/edit-list.spec.jsx +0 -1
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/save-button.spec.tsx +3 -3
- package/src/scripts/refactor_2021/dataset/fragments/__tests__/select-input.spec.tsx +9 -9
- package/src/scripts/refactor_2021/dataset/fragments/dataset-alert-draft.tsx +79 -0
- package/src/scripts/refactor_2021/dataset/fragments/dataset-alert-version.tsx +24 -0
- package/src/scripts/refactor_2021/dataset/fragments/select-input.tsx +1 -1
- package/src/scripts/refactor_2021/dataset/mutations/__tests__/__snapshots__/deprecate-snapshot.spec.tsx.snap +14 -0
- package/src/scripts/refactor_2021/dataset/mutations/__tests__/__snapshots__/deprecate-version.spec.tsx.snap +14 -0
- package/src/scripts/refactor_2021/dataset/mutations/__tests__/__snapshots__/description.spec.jsx.snap +3 -277
- package/src/scripts/refactor_2021/dataset/mutations/__tests__/deprecate-snapshot.spec.tsx +71 -0
- package/src/scripts/refactor_2021/dataset/mutations/__tests__/deprecate-version.spec.tsx +71 -0
- package/src/scripts/refactor_2021/dataset/mutations/__tests__/description.spec.jsx +22 -9
- package/src/scripts/refactor_2021/dataset/mutations/deprecate-version.tsx +46 -0
- package/src/scripts/refactor_2021/dataset/mutations/description.jsx +1 -1
- package/src/scripts/refactor_2021/dataset/mutations/readme.jsx +1 -1
- package/src/scripts/refactor_2021/dataset/mutations/submit-metadata.jsx +1 -1
- package/src/scripts/refactor_2021/dataset/mutations/undo-deprecate-version.tsx +43 -0
- package/src/scripts/refactor_2021/dataset/mutations/update-file.jsx +15 -19
- package/src/scripts/refactor_2021/dataset/routes/__tests__/__snapshots__/publish.spec.jsx.snap +3 -0
- package/src/scripts/refactor_2021/dataset/routes/__tests__/publish.spec.jsx +13 -0
- package/src/scripts/refactor_2021/dataset/routes/add-metadata.jsx +0 -1
- package/src/scripts/refactor_2021/dataset/routes/deprecate-snapshot-page.tsx +46 -0
- package/src/scripts/refactor_2021/dataset/snapshot-container.tsx +19 -23
- package/src/scripts/refactor_2021/routes.tsx +9 -9
- package/src/scripts/refactor_2021/uploader/uploader-setup-routes.jsx +4 -24
- package/src/scripts/refactor_2021/uploader/uploader-status-routes.jsx +1 -6
- package/src/scripts/common/forms/__tests__/__snapshots__/input.spec.jsx.snap +0 -13
- package/src/scripts/common/forms/__tests__/input.spec.jsx +0 -25
- package/src/scripts/common/forms/input.jsx +0 -98
- package/src/scripts/datalad/routes/__tests__/__snapshots__/publish.spec.jsx.snap +0 -14
- package/src/scripts/datalad/routes/__tests__/publish.spec.jsx +0 -10
- package/src/scripts/datalad/routes/mobile-class.tsx +0 -16
- package/src/scripts/datalad/routes/publish.jsx +0 -50
- package/src/scripts/refactor_2021/dataset/dataset-query-fragments.js +0 -220
- package/src/scripts/refactor_2021/dataset/queries/dataset-query-fragments.js +0 -220
|
@@ -1,256 +1,285 @@
|
|
|
1
1
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
2
|
|
|
3
3
|
exports[`faq/faq/Faq renders successfully 1`] = `
|
|
4
|
-
<
|
|
5
|
-
<HelmetWrapper
|
|
6
|
-
defer={true}
|
|
7
|
-
encodeSpecialCharacters={true}
|
|
8
|
-
>
|
|
9
|
-
<title>
|
|
10
|
-
Frequently Asked Questions -
|
|
11
|
-
OpenNeuro
|
|
12
|
-
</title>
|
|
13
|
-
</HelmetWrapper>
|
|
4
|
+
<DocumentFragment>
|
|
14
5
|
<div
|
|
15
|
-
|
|
6
|
+
class="container faqs"
|
|
16
7
|
>
|
|
17
8
|
<h1>
|
|
18
9
|
FAQ's
|
|
19
10
|
</h1>
|
|
20
11
|
<div
|
|
21
|
-
|
|
22
|
-
key="0"
|
|
12
|
+
class="panel"
|
|
23
13
|
>
|
|
24
|
-
<
|
|
25
|
-
|
|
26
|
-
options={
|
|
27
|
-
Object {
|
|
28
|
-
"forceBlock": true,
|
|
29
|
-
}
|
|
30
|
-
}
|
|
14
|
+
<p
|
|
15
|
+
class="panel-heading"
|
|
31
16
|
>
|
|
32
17
|
How do I get started?
|
|
33
|
-
</
|
|
18
|
+
</p>
|
|
34
19
|
<div
|
|
35
|
-
|
|
20
|
+
class="panel-body"
|
|
36
21
|
>
|
|
37
22
|
<span>
|
|
38
|
-
<
|
|
39
|
-
Check out our
|
|
40
|
-
|
|
23
|
+
<span>
|
|
24
|
+
Check out our
|
|
25
|
+
<a
|
|
26
|
+
href="https://www.youtube.com/watch?v=FK_c1x1Pilk"
|
|
27
|
+
>
|
|
28
|
+
video tutorial
|
|
29
|
+
</a>
|
|
30
|
+
.
|
|
31
|
+
</span>
|
|
41
32
|
</span>
|
|
42
33
|
</div>
|
|
43
34
|
</div>
|
|
44
35
|
<div
|
|
45
|
-
|
|
46
|
-
key="1"
|
|
36
|
+
class="panel"
|
|
47
37
|
>
|
|
48
|
-
<
|
|
49
|
-
|
|
50
|
-
options={
|
|
51
|
-
Object {
|
|
52
|
-
"forceBlock": true,
|
|
53
|
-
}
|
|
54
|
-
}
|
|
38
|
+
<p
|
|
39
|
+
class="panel-heading"
|
|
55
40
|
>
|
|
56
41
|
Is this service free to use?
|
|
57
|
-
</
|
|
42
|
+
</p>
|
|
58
43
|
<div
|
|
59
|
-
|
|
44
|
+
class="panel-body"
|
|
60
45
|
>
|
|
61
46
|
<span>
|
|
62
|
-
<
|
|
47
|
+
<span>
|
|
63
48
|
Yes!
|
|
64
|
-
</
|
|
49
|
+
</span>
|
|
65
50
|
</span>
|
|
66
51
|
</div>
|
|
67
52
|
</div>
|
|
68
53
|
<div
|
|
69
|
-
|
|
70
|
-
key="2"
|
|
54
|
+
class="panel"
|
|
71
55
|
>
|
|
72
|
-
<
|
|
73
|
-
|
|
74
|
-
options={
|
|
75
|
-
Object {
|
|
76
|
-
"forceBlock": true,
|
|
77
|
-
}
|
|
78
|
-
}
|
|
56
|
+
<p
|
|
57
|
+
class="panel-heading"
|
|
79
58
|
>
|
|
80
59
|
Are there any restrictions on the uploaded data?
|
|
81
|
-
</
|
|
60
|
+
</p>
|
|
82
61
|
<div
|
|
83
|
-
|
|
62
|
+
class="panel-body"
|
|
84
63
|
>
|
|
85
64
|
<span>
|
|
86
|
-
<
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
65
|
+
<div>
|
|
66
|
+
<p>
|
|
67
|
+
Yes. By uploading this dataset to OpenNeuro you have to agree to the following conditions:
|
|
68
|
+
</p>
|
|
69
|
+
<ul>
|
|
70
|
+
<li>
|
|
71
|
+
You are the owner of this dataset and have any necessary ethics permissions to share the data publicly.
|
|
72
|
+
</li>
|
|
73
|
+
<li>
|
|
74
|
+
This dataset does not include any identifiable personal health information as defined by the Health Insurance Portability and Accountability Act of 1996 (including names, zip codes, dates of birth, acquisition dates, facial features on structural scans, etc.).
|
|
75
|
+
</li>
|
|
76
|
+
<li>
|
|
77
|
+
You agree that this dataset will become publicly available under a Creative Commons CC0 license after a grace period of 36 months counted from the first successful snapshot of the dataset.
|
|
78
|
+
</li>
|
|
79
|
+
<li>
|
|
80
|
+
This dataset is not subject to GDPR protections.
|
|
81
|
+
</li>
|
|
82
|
+
</ul>
|
|
83
|
+
</div>
|
|
94
84
|
</span>
|
|
95
85
|
</div>
|
|
96
86
|
</div>
|
|
97
87
|
<div
|
|
98
|
-
|
|
99
|
-
key="3"
|
|
88
|
+
class="panel"
|
|
100
89
|
>
|
|
101
|
-
<
|
|
102
|
-
|
|
103
|
-
options={
|
|
104
|
-
Object {
|
|
105
|
-
"forceBlock": true,
|
|
106
|
-
}
|
|
107
|
-
}
|
|
90
|
+
<p
|
|
91
|
+
class="panel-heading"
|
|
108
92
|
>
|
|
109
93
|
What if I will not be able to publish my paper in 36 months?
|
|
110
|
-
</
|
|
94
|
+
</p>
|
|
111
95
|
<div
|
|
112
|
-
|
|
96
|
+
class="panel-body"
|
|
113
97
|
>
|
|
114
98
|
<span>
|
|
115
|
-
<
|
|
99
|
+
<span>
|
|
116
100
|
You can apply for up to two 6-month long extensions of the grace period. To apply please contact support. We encourage you to publish a preprint of your work to reduce the uncertainty of the publishing pipeline.
|
|
117
|
-
</
|
|
101
|
+
</span>
|
|
118
102
|
</span>
|
|
119
103
|
</div>
|
|
120
104
|
</div>
|
|
121
105
|
<div
|
|
122
|
-
|
|
123
|
-
key="4"
|
|
106
|
+
class="panel"
|
|
124
107
|
>
|
|
125
|
-
<
|
|
126
|
-
|
|
127
|
-
options={
|
|
128
|
-
Object {
|
|
129
|
-
"forceBlock": true,
|
|
130
|
-
}
|
|
131
|
-
}
|
|
108
|
+
<p
|
|
109
|
+
class="panel-heading"
|
|
132
110
|
>
|
|
133
111
|
Are there consent form templates we can use in our study?
|
|
134
|
-
</
|
|
112
|
+
</p>
|
|
135
113
|
<div
|
|
136
|
-
|
|
114
|
+
class="panel-body"
|
|
137
115
|
>
|
|
138
116
|
<span>
|
|
139
|
-
<
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
117
|
+
<div>
|
|
118
|
+
<p>
|
|
119
|
+
Yes! We recommend using the Open Brain Consent -
|
|
120
|
+
<a
|
|
121
|
+
href="https://open-brain-consent.readthedocs.io/en/stable/ultimate.html"
|
|
122
|
+
>
|
|
123
|
+
Ultimate consent form
|
|
124
|
+
</a>
|
|
125
|
+
.
|
|
126
|
+
</p>
|
|
127
|
+
<ul>
|
|
128
|
+
<li>
|
|
129
|
+
For GDPR protected studies, they have a
|
|
130
|
+
<a
|
|
131
|
+
href="https://open-brain-consent.readthedocs.io/en/stable/gdpr/ultimate_gdpr.html"
|
|
132
|
+
>
|
|
133
|
+
Ultimate consent form GDPR edition
|
|
134
|
+
</a>
|
|
135
|
+
.
|
|
136
|
+
</li>
|
|
137
|
+
</ul>
|
|
138
|
+
</div>
|
|
144
139
|
</span>
|
|
145
140
|
</div>
|
|
146
141
|
</div>
|
|
147
142
|
<div
|
|
148
|
-
|
|
149
|
-
key="5"
|
|
143
|
+
class="panel"
|
|
150
144
|
>
|
|
151
|
-
<
|
|
152
|
-
|
|
153
|
-
options={
|
|
154
|
-
Object {
|
|
155
|
-
"forceBlock": true,
|
|
156
|
-
}
|
|
157
|
-
}
|
|
145
|
+
<p
|
|
146
|
+
class="panel-heading"
|
|
158
147
|
>
|
|
159
148
|
Do I need to format my data in some special way before uploading it to OpenNeuro?
|
|
160
|
-
</
|
|
149
|
+
</p>
|
|
161
150
|
<div
|
|
162
|
-
|
|
151
|
+
class="panel-body"
|
|
163
152
|
>
|
|
164
153
|
<span>
|
|
165
|
-
<
|
|
166
|
-
Yes! OpenNeuro only accepts data in the Brain Imaging Data Structure (BIDS) format. You can read about it more at
|
|
167
|
-
|
|
154
|
+
<span>
|
|
155
|
+
Yes! OpenNeuro only accepts data in the Brain Imaging Data Structure (BIDS) format. You can read about it more at
|
|
156
|
+
<a
|
|
157
|
+
href="http://bids.neuroimaging.io/"
|
|
158
|
+
>
|
|
159
|
+
bids.neuroimaging.io
|
|
160
|
+
</a>
|
|
161
|
+
. If you have any questions about organizing your data please post them at
|
|
162
|
+
<a
|
|
163
|
+
href="https://neurostars.org/tags/bids"
|
|
164
|
+
>
|
|
165
|
+
neurostars.org
|
|
166
|
+
</a>
|
|
167
|
+
.
|
|
168
|
+
</span>
|
|
168
169
|
</span>
|
|
169
170
|
</div>
|
|
170
171
|
</div>
|
|
171
172
|
<div
|
|
172
|
-
|
|
173
|
-
key="6"
|
|
173
|
+
class="panel"
|
|
174
174
|
>
|
|
175
|
-
<
|
|
176
|
-
|
|
177
|
-
options={
|
|
178
|
-
Object {
|
|
179
|
-
"forceBlock": true,
|
|
180
|
-
}
|
|
181
|
-
}
|
|
175
|
+
<p
|
|
176
|
+
class="panel-heading"
|
|
182
177
|
>
|
|
183
178
|
Do I need to remove facial features from structural images before uploading the data?
|
|
184
|
-
</
|
|
179
|
+
</p>
|
|
185
180
|
<div
|
|
186
|
-
|
|
181
|
+
class="panel-body"
|
|
187
182
|
>
|
|
188
183
|
<span>
|
|
189
|
-
<
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
184
|
+
<div>
|
|
185
|
+
<p>
|
|
186
|
+
OpenNeuro does not accept datasets that have not been defaced for privacy considerations. Datasets found to not have been defaced will be deleted and the dataset owner is invited to reupload their dataset with the defaced images. The dataset owner will be notified by the OpenNeuro team if an infringement has been detected. The only exception is explicit approval from the study participant(s).
|
|
187
|
+
</p>
|
|
188
|
+
<p>
|
|
189
|
+
We recommend using
|
|
190
|
+
<a
|
|
191
|
+
href="https://pypi.python.org/pypi/pydeface"
|
|
192
|
+
>
|
|
193
|
+
pydeface
|
|
194
|
+
</a>
|
|
195
|
+
to deface your images. In the case that the dataset(s) is cited in publications, please notify the OpenNeuro team and we will direct the DOI and dataset links from the previous dataset to the new dataset. We suggest adding a note to the README of the reuploaded dataset to specify this change.
|
|
196
|
+
</p>
|
|
197
|
+
<p>
|
|
198
|
+
For any questions or concerns please email Franklin:
|
|
199
|
+
<a
|
|
200
|
+
href="mailto:ffein@stanford.edu"
|
|
201
|
+
>
|
|
202
|
+
ffein@stanford.edu
|
|
203
|
+
</a>
|
|
204
|
+
</p>
|
|
205
|
+
</div>
|
|
196
206
|
</span>
|
|
197
207
|
</div>
|
|
198
208
|
</div>
|
|
199
209
|
<div
|
|
200
|
-
|
|
201
|
-
key="7"
|
|
210
|
+
class="panel"
|
|
202
211
|
>
|
|
203
|
-
<
|
|
204
|
-
|
|
205
|
-
options={
|
|
206
|
-
Object {
|
|
207
|
-
"forceBlock": true,
|
|
208
|
-
}
|
|
209
|
-
}
|
|
212
|
+
<p
|
|
213
|
+
class="panel-heading"
|
|
210
214
|
>
|
|
211
215
|
How can I upload data onto OpenNeuro?
|
|
212
|
-
</
|
|
216
|
+
</p>
|
|
213
217
|
<div
|
|
214
|
-
|
|
218
|
+
class="panel-body"
|
|
215
219
|
>
|
|
216
220
|
<span>
|
|
217
|
-
<
|
|
218
|
-
We offer two options for uploading data onto OpenNeuro. The first is to upload via the web interface. The second is to upload via our
|
|
219
|
-
|
|
221
|
+
<span>
|
|
222
|
+
We offer two options for uploading data onto OpenNeuro. The first is to upload via the web interface. The second is to upload via our
|
|
223
|
+
<a
|
|
224
|
+
href="https://docs.openneuro.org/packages-openneuro-cli-readme"
|
|
225
|
+
>
|
|
226
|
+
command-line utility tool
|
|
227
|
+
</a>
|
|
228
|
+
</span>
|
|
220
229
|
</span>
|
|
221
230
|
</div>
|
|
222
231
|
</div>
|
|
223
232
|
<div
|
|
224
|
-
|
|
225
|
-
key="8"
|
|
233
|
+
class="panel"
|
|
226
234
|
>
|
|
227
|
-
<
|
|
228
|
-
|
|
229
|
-
options={
|
|
230
|
-
Object {
|
|
231
|
-
"forceBlock": true,
|
|
232
|
-
}
|
|
233
|
-
}
|
|
235
|
+
<p
|
|
236
|
+
class="panel-heading"
|
|
234
237
|
>
|
|
235
238
|
Why can I not use CC-BY (or other CC license)?
|
|
236
|
-
</
|
|
239
|
+
</p>
|
|
237
240
|
<div
|
|
238
|
-
|
|
241
|
+
class="panel-body"
|
|
239
242
|
>
|
|
240
243
|
<span>
|
|
241
|
-
<
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
244
|
+
<div>
|
|
245
|
+
<p>
|
|
246
|
+
When OpenNeuro first began accepting data, we hosted datasets that were dedicated to the public domain (CC0 or PDDL) or released under the CC-BY license. The idea of accepting CC-BY licenses was to reflect the academic norm of citing sources, but it fails to achieve that goal. In
|
|
247
|
+
<a
|
|
248
|
+
href="https://osc.universityofcalifornia.edu/2016/09/cc-by-and-data-not-always-a-good-fit/"
|
|
249
|
+
>
|
|
250
|
+
CC BY and data: Not always a good fit
|
|
251
|
+
</a>
|
|
252
|
+
, it is argued:
|
|
253
|
+
</p>
|
|
254
|
+
<blockquote>
|
|
255
|
+
<p>
|
|
256
|
+
|
|
257
|
+
<strong>
|
|
258
|
+
CC licenses are not sufficient for ensuring proper attribution in many cases because their restrictions — including attribution — do not apply to facts.
|
|
259
|
+
</strong>
|
|
260
|
+
|
|
261
|
+
...
|
|
262
|
+
</p>
|
|
263
|
+
<p>
|
|
264
|
+
<strong>
|
|
265
|
+
CC licenses' attribution requirements aren't necessary because scholars have very good reasons to provide attribution that has nothing to do with copyright
|
|
266
|
+
</strong>
|
|
267
|
+
[...] Data that comes from nowhere has little credibility. If someone wants to use data as persuasive evidence, they need to refer readers and reviewers back to its source: who it came from and how it was produced.
|
|
268
|
+
</p>
|
|
269
|
+
</blockquote>
|
|
270
|
+
<p>
|
|
271
|
+
CC-BY places an ambiguous legal hurdle between researchers and data they are considering using, even if only intended to enforce standard academic practice. To reduce uncertainty for data consumers, all newly published datasets are released under CC0, as are new versions of previously released datasets. We do nonetheless want to encourage proper attribution of datasets hosted on OpenNeuro. Each version of a dataset is assigned a unique DOI, enabling researchers to cite the version of a dataset they analyzed. Additionally, all OpenNeuro datasets may include a
|
|
272
|
+
<a
|
|
273
|
+
href="https://bids-specification.readthedocs.io/en/stable/03-modality-agnostic-files.html#dataset_descriptionjson"
|
|
274
|
+
>
|
|
275
|
+
"HowToAcknowledge" field
|
|
276
|
+
</a>
|
|
277
|
+
, in which dataset providers may provide specific instructions for users for what they consider an appropriate citation.
|
|
278
|
+
</p>
|
|
279
|
+
</div>
|
|
251
280
|
</span>
|
|
252
281
|
</div>
|
|
253
282
|
</div>
|
|
254
283
|
</div>
|
|
255
|
-
</
|
|
284
|
+
</DocumentFragment>
|
|
256
285
|
`;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
|
-
import {
|
|
2
|
+
import { render } from '@testing-library/react'
|
|
3
3
|
import Faq from '../faq'
|
|
4
4
|
|
|
5
5
|
describe('faq/faq/Faq', () => {
|
|
6
6
|
it('renders successfully', () => {
|
|
7
|
-
const
|
|
8
|
-
expect(
|
|
7
|
+
const { asFragment } = render(<Faq />)
|
|
8
|
+
expect(asFragment()).toMatchSnapshot()
|
|
9
9
|
})
|
|
10
10
|
})
|
|
@@ -29,14 +29,8 @@ class Dashboard extends React.Component {
|
|
|
29
29
|
</ul>
|
|
30
30
|
<Switch>
|
|
31
31
|
<Redirect path="/admin" to="/admin/users" exact />
|
|
32
|
+
<Route path="/admin/users" exact component={Users} />
|
|
32
33
|
<Route
|
|
33
|
-
name="users"
|
|
34
|
-
path="/admin/users"
|
|
35
|
-
exact
|
|
36
|
-
component={Users}
|
|
37
|
-
/>
|
|
38
|
-
<Route
|
|
39
|
-
name="flaggedFiles"
|
|
40
34
|
path="/admin/flagged-files"
|
|
41
35
|
exact
|
|
42
36
|
component={FlaggedFiles}
|
package/src/scripts/refactor_2021/dataset/comments/__tests__/__snapshots__/comments.spec.jsx.snap
CHANGED
|
@@ -1,129 +1,31 @@
|
|
|
1
1
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
2
|
|
|
3
3
|
exports[`Comments component recursively renders a tree of comments 1`] = `
|
|
4
|
-
<
|
|
5
|
-
comments={
|
|
6
|
-
Array [
|
|
7
|
-
Object {
|
|
8
|
-
"id": "xyz",
|
|
9
|
-
"replies": Array [
|
|
10
|
-
Object {
|
|
11
|
-
"id": "xyz",
|
|
12
|
-
"replies": Array [],
|
|
13
|
-
"text": "{\\"blocks\\":[{\\"key\\":\\"3sm42\\",\\"text\\":\\"\\",\\"type\\":\\"unstyled\\",\\"depth\\":0,\\"inlineStyleRanges\\":[],\\"entityRanges\\":[],\\"data\\":{}}],\\"entityMap\\":{}}",
|
|
14
|
-
"user": Object {
|
|
15
|
-
"email": "example@example.com",
|
|
16
|
-
"id": "1234",
|
|
17
|
-
},
|
|
18
|
-
},
|
|
19
|
-
],
|
|
20
|
-
"text": "{\\"blocks\\":[{\\"key\\":\\"3sm42\\",\\"text\\":\\"\\",\\"type\\":\\"unstyled\\",\\"depth\\":0,\\"inlineStyleRanges\\":[],\\"entityRanges\\":[],\\"data\\":{}}],\\"entityMap\\":{}}",
|
|
21
|
-
"user": Object {
|
|
22
|
-
"email": "example@example.com",
|
|
23
|
-
"id": "1234",
|
|
24
|
-
},
|
|
25
|
-
},
|
|
26
|
-
]
|
|
27
|
-
}
|
|
28
|
-
datasetId="ds000001"
|
|
29
|
-
>
|
|
4
|
+
<DocumentFragment>
|
|
30
5
|
<div
|
|
31
|
-
|
|
6
|
+
class="dataset-comments"
|
|
32
7
|
>
|
|
33
8
|
<h2>
|
|
34
9
|
Comments
|
|
35
10
|
</h2>
|
|
36
|
-
<
|
|
37
|
-
|
|
38
|
-
>
|
|
39
|
-
<LoggedIn />
|
|
40
|
-
<LoggedOut>
|
|
41
|
-
<div>
|
|
42
|
-
Please sign in to contribute to the discussion.
|
|
43
|
-
</div>
|
|
44
|
-
</LoggedOut>
|
|
45
|
-
<CommentTree
|
|
46
|
-
commentMap={
|
|
47
|
-
Object {
|
|
48
|
-
"xyz": Object {
|
|
49
|
-
"id": "xyz",
|
|
50
|
-
"replies": Array [
|
|
51
|
-
Object {
|
|
52
|
-
"id": "xyz",
|
|
53
|
-
"replies": Array [],
|
|
54
|
-
"text": "{\\"blocks\\":[{\\"key\\":\\"3sm42\\",\\"text\\":\\"\\",\\"type\\":\\"unstyled\\",\\"depth\\":0,\\"inlineStyleRanges\\":[],\\"entityRanges\\":[],\\"data\\":{}}],\\"entityMap\\":{}}",
|
|
55
|
-
"user": Object {
|
|
56
|
-
"email": "example@example.com",
|
|
57
|
-
"id": "1234",
|
|
58
|
-
},
|
|
59
|
-
},
|
|
60
|
-
],
|
|
61
|
-
"text": "{\\"blocks\\":[{\\"key\\":\\"3sm42\\",\\"text\\":\\"\\",\\"type\\":\\"unstyled\\",\\"depth\\":0,\\"inlineStyleRanges\\":[],\\"entityRanges\\":[],\\"data\\":{}}],\\"entityMap\\":{}}",
|
|
62
|
-
"user": Object {
|
|
63
|
-
"email": "example@example.com",
|
|
64
|
-
"id": "1234",
|
|
65
|
-
},
|
|
66
|
-
},
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
comments={Array []}
|
|
70
|
-
datasetId="ds000001"
|
|
71
|
-
/>
|
|
72
|
-
</ErrorBoundary>
|
|
11
|
+
<div>
|
|
12
|
+
Please sign in to contribute to the discussion.
|
|
13
|
+
</div>
|
|
73
14
|
</div>
|
|
74
|
-
</
|
|
15
|
+
</DocumentFragment>
|
|
75
16
|
`;
|
|
76
17
|
|
|
77
18
|
exports[`Comments component renders one top level comment 1`] = `
|
|
78
|
-
<
|
|
79
|
-
comments={
|
|
80
|
-
Array [
|
|
81
|
-
Object {
|
|
82
|
-
"id": "xyz",
|
|
83
|
-
"replies": Array [],
|
|
84
|
-
"text": "{\\"blocks\\":[{\\"key\\":\\"3sm42\\",\\"text\\":\\"\\",\\"type\\":\\"unstyled\\",\\"depth\\":0,\\"inlineStyleRanges\\":[],\\"entityRanges\\":[],\\"data\\":{}}],\\"entityMap\\":{}}",
|
|
85
|
-
"user": Object {
|
|
86
|
-
"email": "example@example.com",
|
|
87
|
-
"id": "1234",
|
|
88
|
-
},
|
|
89
|
-
},
|
|
90
|
-
]
|
|
91
|
-
}
|
|
92
|
-
datasetId="ds000001"
|
|
93
|
-
>
|
|
19
|
+
<DocumentFragment>
|
|
94
20
|
<div
|
|
95
|
-
|
|
21
|
+
class="dataset-comments"
|
|
96
22
|
>
|
|
97
23
|
<h2>
|
|
98
24
|
Comments
|
|
99
25
|
</h2>
|
|
100
|
-
<
|
|
101
|
-
|
|
102
|
-
>
|
|
103
|
-
<LoggedIn />
|
|
104
|
-
<LoggedOut>
|
|
105
|
-
<div>
|
|
106
|
-
Please sign in to contribute to the discussion.
|
|
107
|
-
</div>
|
|
108
|
-
</LoggedOut>
|
|
109
|
-
<CommentTree
|
|
110
|
-
commentMap={
|
|
111
|
-
Object {
|
|
112
|
-
"xyz": Object {
|
|
113
|
-
"id": "xyz",
|
|
114
|
-
"replies": Array [],
|
|
115
|
-
"text": "{\\"blocks\\":[{\\"key\\":\\"3sm42\\",\\"text\\":\\"\\",\\"type\\":\\"unstyled\\",\\"depth\\":0,\\"inlineStyleRanges\\":[],\\"entityRanges\\":[],\\"data\\":{}}],\\"entityMap\\":{}}",
|
|
116
|
-
"user": Object {
|
|
117
|
-
"email": "example@example.com",
|
|
118
|
-
"id": "1234",
|
|
119
|
-
},
|
|
120
|
-
},
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
comments={Array []}
|
|
124
|
-
datasetId="ds000001"
|
|
125
|
-
/>
|
|
126
|
-
</ErrorBoundary>
|
|
26
|
+
<div>
|
|
27
|
+
Please sign in to contribute to the discussion.
|
|
28
|
+
</div>
|
|
127
29
|
</div>
|
|
128
|
-
</
|
|
30
|
+
</DocumentFragment>
|
|
129
31
|
`;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
|
-
import {
|
|
2
|
+
import { render } from '@testing-library/react'
|
|
3
3
|
import Comments from '../comments.jsx'
|
|
4
4
|
|
|
5
5
|
const emptyState =
|
|
@@ -13,14 +13,16 @@ const exampleComment = {
|
|
|
13
13
|
|
|
14
14
|
describe('Comments component', () => {
|
|
15
15
|
it('renders one top level comment', () => {
|
|
16
|
-
const
|
|
16
|
+
const { asFragment } = render(
|
|
17
17
|
<Comments datasetId="ds000001" comments={[exampleComment]} />,
|
|
18
18
|
)
|
|
19
|
-
expect(
|
|
19
|
+
expect(asFragment()).toMatchSnapshot()
|
|
20
20
|
})
|
|
21
21
|
it('recursively renders a tree of comments', () => {
|
|
22
22
|
const comments = [{ ...exampleComment, replies: [exampleComment] }]
|
|
23
|
-
const
|
|
24
|
-
|
|
23
|
+
const { asFragment } = render(
|
|
24
|
+
<Comments datasetId="ds000001" comments={comments} />,
|
|
25
|
+
)
|
|
26
|
+
expect(asFragment()).toMatchSnapshot()
|
|
25
27
|
})
|
|
26
28
|
})
|
|
@@ -172,8 +172,7 @@ export const DatasetQueryHook = ({ datasetId, draft, history }) => {
|
|
|
172
172
|
datasetId,
|
|
173
173
|
fetchMore,
|
|
174
174
|
error,
|
|
175
|
-
}}
|
|
176
|
-
>
|
|
175
|
+
}}>
|
|
177
176
|
<DatasetRoutes dataset={data.dataset} />
|
|
178
177
|
<FilesSubscription datasetId={datasetId} />
|
|
179
178
|
</DatasetQueryContext.Provider>
|
|
@@ -208,8 +207,7 @@ const DatasetQuery = ({ match, history }) => {
|
|
|
208
207
|
<>
|
|
209
208
|
<DatasetRedirect />
|
|
210
209
|
<ErrorBoundaryAssertionFailureException
|
|
211
|
-
subject={'error in dataset query'}
|
|
212
|
-
>
|
|
210
|
+
subject={'error in dataset query'}>
|
|
213
211
|
<DatasetQueryHook
|
|
214
212
|
datasetId={datasetId}
|
|
215
213
|
draft={!snapshotId}
|