@openneuro/app 4.7.0-alpha.0 → 4.7.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.7.0-alpha.0",
3
+ "version": "4.7.1-alpha.0",
4
4
  "description": "React JS web frontend for the OpenNeuro platform.",
5
5
  "license": "MIT",
6
6
  "main": "public/client.js",
@@ -16,12 +16,12 @@
16
16
  "dependencies": {
17
17
  "@apollo/client": "3.4.17",
18
18
  "@artsy/fresnel": "^1.3.1",
19
- "@elastic/apm-rum": "5.9.1",
19
+ "@elastic/apm-rum": "5.11.0",
20
20
  "@emotion/react": "11.6.0",
21
21
  "@emotion/styled": "11.6.0",
22
- "@niivue/niivue": "^0.23.0",
23
- "@openneuro/client": "^4.7.0-alpha.0",
24
- "@openneuro/components": "^4.7.0-alpha.0",
22
+ "@niivue/niivue": "0.23.1",
23
+ "@openneuro/client": "^4.7.1-alpha.0",
24
+ "@openneuro/components": "^4.7.1-alpha.0",
25
25
  "babel-runtime": "^6.26.0",
26
26
  "bids-validator": "1.9.3",
27
27
  "bytes": "^3.0.0",
@@ -57,7 +57,6 @@
57
57
  "subscriptions-transport-ws": "^0.9.9",
58
58
  "universal-cookie": "^4.0.4",
59
59
  "universal-cookie-express": "^4.0.3",
60
- "url-search-params-polyfill": "^2.0.1",
61
60
  "uuid": "^8.3.2",
62
61
  "xmldoc": "^1.1.0"
63
62
  },
@@ -88,7 +87,7 @@
88
87
  "babel-core": "^7.0.0-bridge.0",
89
88
  "babel-jest": "^24.9.0",
90
89
  "esbuild-plugin-globals": "^0.1.1",
91
- "jest": "^26.6.3",
90
+ "jest": "27.5.1",
92
91
  "jest-fetch-mock": "^1.4.1",
93
92
  "jsdom": "^16.5.3",
94
93
  "object.fromentries": "^2.0.0",
@@ -96,9 +95,10 @@
96
95
  "sass": "^1.32.8",
97
96
  "stream-browserify": "^3.0.0",
98
97
  "typescript": "4.5.4",
99
- "vite": "2.9.6"
98
+ "vite": "2.9.7"
100
99
  },
101
100
  "jest": {
101
+ "testEnvironment": "jsdom",
102
102
  "setupFilesAfterEnv": [
103
103
  "./jestsetup.ts"
104
104
  ],
@@ -120,5 +120,5 @@
120
120
  "publishConfig": {
121
121
  "access": "public"
122
122
  },
123
- "gitHead": "09897a808576cb5902d7005238890797d0df3643"
123
+ "gitHead": "f6f24dab2727d20d5d5bcbd36d30a9e7b5ab0ff7"
124
124
  }
package/src/index.html CHANGED
@@ -12,401 +12,9 @@
12
12
  <meta name="viewport" content="width=device-width, initial-scale=1" />
13
13
  <title>OpenNeuro</title>
14
14
  <link id="favicon" rel="icon" type="image/png" href="/favicon.ico" />
15
- <link rel="preconnect" href="https://fonts.gstatic.com/" crossorigin>
16
- <link rel="preconnect" href="https://netdna.bootstrapcdn.com/" crossorigin>
17
- <link rel="preload" href="https://fonts.gstatic.com/s/cabin/v12/u-4x0qWljRw-Pd8w__0.woff2" as="font" crossorigin>
18
- <link rel="preload" href="https://fonts.gstatic.com/s/cabin/v12/u-4x0qWljRw-Pd8___1amg.woff2" as="font" crossorigin>
19
- <link rel="preload" href="https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFVZ0b.woff2" as="font" crossorigin>
20
- <link rel="preload" href="https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN_r8OUuhp.woff2" as="font" crossorigin>
21
- <link rel="preload" href="https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFWJ0bbck.woff2" as="font" crossorigin>
22
- <style>
23
- /* vietnamese */
24
- @font-face {
25
- font-family: 'Cabin';
26
- font-style: italic;
27
- font-weight: 400;
28
- src: local('Cabin Italic'), local('Cabin-Italic'), url(https://fonts.gstatic.com/s/cabin/v12/u-4_0qWljRw-Pd81z_BCnhRv.woff2) format('woff2');
29
- unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
30
- }
31
- /* latin-ext */
32
- @font-face {
33
- font-family: 'Cabin';
34
- font-style: italic;
35
- font-weight: 400;
36
- src: local('Cabin Italic'), local('Cabin-Italic'), url(https://fonts.gstatic.com/s/cabin/v12/u-4_0qWljRw-Pd81z_FCnhRv.woff2) format('woff2');
37
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
38
- }
39
- /* latin */
40
- @font-face {
41
- font-family: 'Cabin';
42
- font-style: italic;
43
- font-weight: 400;
44
- src: local('Cabin Italic'), local('Cabin-Italic'), url(https://fonts.gstatic.com/s/cabin/v12/u-4_0qWljRw-Pd81z_9Cng.woff2) format('woff2');
45
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
46
- }
47
- /* vietnamese */
48
- @font-face {
49
- font-family: 'Cabin';
50
- font-style: normal;
51
- font-weight: 400;
52
- src: local('Cabin'), local('Cabin-Regular'), url(https://fonts.gstatic.com/s/cabin/v12/u-4x0qWljRw-Pd8___1amg.woff2) format('woff2');
53
- unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
54
- }
55
- /* latin-ext */
56
- @font-face {
57
- font-family: 'Cabin';
58
- font-style: normal;
59
- font-weight: 400;
60
- src: local('Cabin'), local('Cabin-Regular'), url(https://fonts.gstatic.com/s/cabin/v12/u-4x0qWljRw-Pd8-__1amg.woff2) format('woff2');
61
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
62
- }
63
- /* latin */
64
- @font-face {
65
- font-family: 'Cabin';
66
- font-style: normal;
67
- font-weight: 400;
68
- src: local('Cabin'), local('Cabin-Regular'), url(https://fonts.gstatic.com/s/cabin/v12/u-4x0qWljRw-Pd8w__0.woff2) format('woff2');
69
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
70
- }
71
- /* cyrillic-ext */
72
- @font-face {
73
- font-family: 'Open Sans';
74
- font-style: italic;
75
- font-weight: 300;
76
- src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWyV9hmIqOjjg.woff2) format('woff2');
77
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
78
- }
79
- /* cyrillic */
80
- @font-face {
81
- font-family: 'Open Sans';
82
- font-style: italic;
83
- font-weight: 300;
84
- src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWyV9hvIqOjjg.woff2) format('woff2');
85
- unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
86
- }
87
- /* greek-ext */
88
- @font-face {
89
- font-family: 'Open Sans';
90
- font-style: italic;
91
- font-weight: 300;
92
- src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWyV9hnIqOjjg.woff2) format('woff2');
93
- unicode-range: U+1F00-1FFF;
94
- }
95
- /* greek */
96
- @font-face {
97
- font-family: 'Open Sans';
98
- font-style: italic;
99
- font-weight: 300;
100
- src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWyV9hoIqOjjg.woff2) format('woff2');
101
- unicode-range: U+0370-03FF;
102
- }
103
- /* vietnamese */
104
- @font-face {
105
- font-family: 'Open Sans';
106
- font-style: italic;
107
- font-weight: 300;
108
- src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWyV9hkIqOjjg.woff2) format('woff2');
109
- unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
110
- }
111
- /* latin-ext */
112
- @font-face {
113
- font-family: 'Open Sans';
114
- font-style: italic;
115
- font-weight: 300;
116
- src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWyV9hlIqOjjg.woff2) format('woff2');
117
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
118
- }
119
- /* latin */
120
- @font-face {
121
- font-family: 'Open Sans';
122
- font-style: italic;
123
- font-weight: 300;
124
- src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWyV9hrIqM.woff2) format('woff2');
125
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
126
- }
127
- /* cyrillic-ext */
128
- @font-face {
129
- font-family: 'Open Sans';
130
- font-style: italic;
131
- font-weight: 400;
132
- src: local('Open Sans Italic'), local('OpenSans-Italic'), url(https://fonts.gstatic.com/s/opensans/v15/mem6YaGs126MiZpBA-UFUK0Udc1UAw.woff2) format('woff2');
133
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
134
- }
135
- /* cyrillic */
136
- @font-face {
137
- font-family: 'Open Sans';
138
- font-style: italic;
139
- font-weight: 400;
140
- src: local('Open Sans Italic'), local('OpenSans-Italic'), url(https://fonts.gstatic.com/s/opensans/v15/mem6YaGs126MiZpBA-UFUK0ddc1UAw.woff2) format('woff2');
141
- unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
142
- }
143
- /* greek-ext */
144
- @font-face {
145
- font-family: 'Open Sans';
146
- font-style: italic;
147
- font-weight: 400;
148
- src: local('Open Sans Italic'), local('OpenSans-Italic'), url(https://fonts.gstatic.com/s/opensans/v15/mem6YaGs126MiZpBA-UFUK0Vdc1UAw.woff2) format('woff2');
149
- unicode-range: U+1F00-1FFF;
150
- }
151
- /* greek */
152
- @font-face {
153
- font-family: 'Open Sans';
154
- font-style: italic;
155
- font-weight: 400;
156
- src: local('Open Sans Italic'), local('OpenSans-Italic'), url(https://fonts.gstatic.com/s/opensans/v15/mem6YaGs126MiZpBA-UFUK0adc1UAw.woff2) format('woff2');
157
- unicode-range: U+0370-03FF;
158
- }
159
- /* vietnamese */
160
- @font-face {
161
- font-family: 'Open Sans';
162
- font-style: italic;
163
- font-weight: 400;
164
- src: local('Open Sans Italic'), local('OpenSans-Italic'), url(https://fonts.gstatic.com/s/opensans/v15/mem6YaGs126MiZpBA-UFUK0Wdc1UAw.woff2) format('woff2');
165
- unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
166
- }
167
- /* latin-ext */
168
- @font-face {
169
- font-family: 'Open Sans';
170
- font-style: italic;
171
- font-weight: 400;
172
- src: local('Open Sans Italic'), local('OpenSans-Italic'), url(https://fonts.gstatic.com/s/opensans/v15/mem6YaGs126MiZpBA-UFUK0Xdc1UAw.woff2) format('woff2');
173
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
174
- }
175
- /* latin */
176
- @font-face {
177
- font-family: 'Open Sans';
178
- font-style: italic;
179
- font-weight: 400;
180
- src: local('Open Sans Italic'), local('OpenSans-Italic'), url(https://fonts.gstatic.com/s/opensans/v15/mem6YaGs126MiZpBA-UFUK0Zdc0.woff2) format('woff2');
181
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
182
- }
183
- /* cyrillic-ext */
184
- @font-face {
185
- font-family: 'Open Sans';
186
- font-style: italic;
187
- font-weight: 700;
188
- src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWiUNhmIqOjjg.woff2) format('woff2');
189
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
190
- }
191
- /* cyrillic */
192
- @font-face {
193
- font-family: 'Open Sans';
194
- font-style: italic;
195
- font-weight: 700;
196
- src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWiUNhvIqOjjg.woff2) format('woff2');
197
- unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
198
- }
199
- /* greek-ext */
200
- @font-face {
201
- font-family: 'Open Sans';
202
- font-style: italic;
203
- font-weight: 700;
204
- src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWiUNhnIqOjjg.woff2) format('woff2');
205
- unicode-range: U+1F00-1FFF;
206
- }
207
- /* greek */
208
- @font-face {
209
- font-family: 'Open Sans';
210
- font-style: italic;
211
- font-weight: 700;
212
- src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWiUNhoIqOjjg.woff2) format('woff2');
213
- unicode-range: U+0370-03FF;
214
- }
215
- /* vietnamese */
216
- @font-face {
217
- font-family: 'Open Sans';
218
- font-style: italic;
219
- font-weight: 700;
220
- src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWiUNhkIqOjjg.woff2) format('woff2');
221
- unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
222
- }
223
- /* latin-ext */
224
- @font-face {
225
- font-family: 'Open Sans';
226
- font-style: italic;
227
- font-weight: 700;
228
- src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWiUNhlIqOjjg.woff2) format('woff2');
229
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
230
- }
231
- /* latin */
232
- @font-face {
233
- font-family: 'Open Sans';
234
- font-style: italic;
235
- font-weight: 700;
236
- src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(https://fonts.gstatic.com/s/opensans/v15/memnYaGs126MiZpBA-UFUKWiUNhrIqM.woff2) format('woff2');
237
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
238
- }
239
- /* cyrillic-ext */
240
- @font-face {
241
- font-family: 'Open Sans';
242
- font-style: normal;
243
- font-weight: 300;
244
- src: local('Open Sans Light'), local('OpenSans-Light'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN_r8OX-hpOqc.woff2) format('woff2');
245
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
246
- }
247
- /* cyrillic */
248
- @font-face {
249
- font-family: 'Open Sans';
250
- font-style: normal;
251
- font-weight: 300;
252
- src: local('Open Sans Light'), local('OpenSans-Light'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN_r8OVuhpOqc.woff2) format('woff2');
253
- unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
254
- }
255
- /* greek-ext */
256
- @font-face {
257
- font-family: 'Open Sans';
258
- font-style: normal;
259
- font-weight: 300;
260
- src: local('Open Sans Light'), local('OpenSans-Light'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN_r8OXuhpOqc.woff2) format('woff2');
261
- unicode-range: U+1F00-1FFF;
262
- }
263
- /* greek */
264
- @font-face {
265
- font-family: 'Open Sans';
266
- font-style: normal;
267
- font-weight: 300;
268
- src: local('Open Sans Light'), local('OpenSans-Light'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN_r8OUehpOqc.woff2) format('woff2');
269
- unicode-range: U+0370-03FF;
270
- }
271
- /* vietnamese */
272
- @font-face {
273
- font-family: 'Open Sans';
274
- font-style: normal;
275
- font-weight: 300;
276
- src: local('Open Sans Light'), local('OpenSans-Light'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN_r8OXehpOqc.woff2) format('woff2');
277
- unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
278
- }
279
- /* latin-ext */
280
- @font-face {
281
- font-family: 'Open Sans';
282
- font-style: normal;
283
- font-weight: 300;
284
- src: local('Open Sans Light'), local('OpenSans-Light'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN_r8OXOhpOqc.woff2) format('woff2');
285
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
286
- }
287
- /* latin */
288
- @font-face {
289
- font-family: 'Open Sans';
290
- font-style: normal;
291
- font-weight: 300;
292
- src: local('Open Sans Light'), local('OpenSans-Light'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN_r8OUuhp.woff2) format('woff2');
293
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
294
- }
295
- /* cyrillic-ext */
296
- @font-face {
297
- font-family: 'Open Sans';
298
- font-style: normal;
299
- font-weight: 400;
300
- src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFWJ0bbck.woff2) format('woff2');
301
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
302
- }
303
- /* cyrillic */
304
- @font-face {
305
- font-family: 'Open Sans';
306
- font-style: normal;
307
- font-weight: 400;
308
- src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFUZ0bbck.woff2) format('woff2');
309
- unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
310
- }
311
- /* greek-ext */
312
- @font-face {
313
- font-family: 'Open Sans';
314
- font-style: normal;
315
- font-weight: 400;
316
- src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFWZ0bbck.woff2) format('woff2');
317
- unicode-range: U+1F00-1FFF;
318
- }
319
- /* greek */
320
- @font-face {
321
- font-family: 'Open Sans';
322
- font-style: normal;
323
- font-weight: 400;
324
- src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFVp0bbck.woff2) format('woff2');
325
- unicode-range: U+0370-03FF;
326
- }
327
- /* vietnamese */
328
- @font-face {
329
- font-family: 'Open Sans';
330
- font-style: normal;
331
- font-weight: 400;
332
- src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFWp0bbck.woff2) format('woff2');
333
- unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
334
- }
335
- /* latin-ext */
336
- @font-face {
337
- font-family: 'Open Sans';
338
- font-style: normal;
339
- font-weight: 400;
340
- src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFW50bbck.woff2) format('woff2');
341
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
342
- }
343
- /* latin */
344
- @font-face {
345
- font-family: 'Open Sans';
346
- font-style: normal;
347
- font-weight: 400;
348
- src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFVZ0b.woff2) format('woff2');
349
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
350
- }
351
- /* cyrillic-ext */
352
- @font-face {
353
- font-family: 'Open Sans';
354
- font-style: normal;
355
- font-weight: 700;
356
- src: local('Open Sans Bold'), local('OpenSans-Bold'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN7rgOX-hpOqc.woff2) format('woff2');
357
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
358
- }
359
- /* cyrillic */
360
- @font-face {
361
- font-family: 'Open Sans';
362
- font-style: normal;
363
- font-weight: 700;
364
- src: local('Open Sans Bold'), local('OpenSans-Bold'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN7rgOVuhpOqc.woff2) format('woff2');
365
- unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
366
- }
367
- /* greek-ext */
368
- @font-face {
369
- font-family: 'Open Sans';
370
- font-style: normal;
371
- font-weight: 700;
372
- src: local('Open Sans Bold'), local('OpenSans-Bold'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN7rgOXuhpOqc.woff2) format('woff2');
373
- unicode-range: U+1F00-1FFF;
374
- }
375
- /* greek */
376
- @font-face {
377
- font-family: 'Open Sans';
378
- font-style: normal;
379
- font-weight: 700;
380
- src: local('Open Sans Bold'), local('OpenSans-Bold'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN7rgOUehpOqc.woff2) format('woff2');
381
- unicode-range: U+0370-03FF;
382
- }
383
- /* vietnamese */
384
- @font-face {
385
- font-family: 'Open Sans';
386
- font-style: normal;
387
- font-weight: 700;
388
- src: local('Open Sans Bold'), local('OpenSans-Bold'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN7rgOXehpOqc.woff2) format('woff2');
389
- unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
390
- }
391
- /* latin-ext */
392
- @font-face {
393
- font-family: 'Open Sans';
394
- font-style: normal;
395
- font-weight: 700;
396
- src: local('Open Sans Bold'), local('OpenSans-Bold'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN7rgOXOhpOqc.woff2) format('woff2');
397
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
398
- }
399
- /* latin */
400
- @font-face {
401
- font-family: 'Open Sans';
402
- font-style: normal;
403
- font-weight: 700;
404
- src: local('Open Sans Bold'), local('OpenSans-Bold'), url(https://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UN7rgOUuhp.woff2) format('woff2');
405
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
406
- }
407
-
408
- @import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400;1,600');
409
- </style>
15
+ <link rel="preconnect" href="https://fonts.googleapis.com">
16
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
17
+ <link href="https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap" rel="stylesheet">
410
18
  ${head}
411
19
  </head>
412
20
 
@@ -10,14 +10,14 @@ export function setupApm() {
10
10
  config.sentry.environment === 'staging'
11
11
  ) {
12
12
  apm = initApm({
13
- serverUrl: config.url,
13
+ serverUrl: config.ELASTIC_APM_SERVER_URL,
14
14
  serviceName: 'openneuro-app',
15
15
  serviceVersion: version,
16
16
  environment: config.sentry.environment,
17
17
  })
18
18
  } else {
19
19
  apm = initApm({
20
- serverUrl: config.url,
20
+ serverUrl: config.ELASTIC_APM_SERVER_URL,
21
21
  serviceName: 'openneuro-app',
22
22
  serviceVersion: version,
23
23
  environment: config.sentry.environment,
@@ -27,6 +27,7 @@ export interface OpenNeuroConfig {
27
27
  }
28
28
  github?: string
29
29
  publicBucket?: string
30
+ ELASTIC_APM_SERVER_URL?: string
30
31
  }
31
32
 
32
33
  export const config: OpenNeuroConfig = {
@@ -59,6 +60,7 @@ export const config: OpenNeuroConfig = {
59
60
  support: { url: globalThis.OpenNeuroConfig.SUPPORT_URL },
60
61
  github: globalThis.OpenNeuroConfig.DATALAD_GITHUB_ORG,
61
62
  publicBucket: globalThis.OpenNeuroConfig.AWS_S3_PUBLIC_BUCKET,
63
+ ELASTIC_APM_SERVER_URL: globalThis.OpenNeuroConfig.ELASTIC_APM_SERVER_URL,
62
64
  }
63
65
 
64
66
  export const getConfig = (): OpenNeuroConfig => config
@@ -60,7 +60,7 @@ describe('DeleteDir mutation', () => {
60
60
  )
61
61
  expect(asFragment()).toMatchSnapshot()
62
62
  })
63
- it('fires the correct mutation', async done => {
63
+ it('fires the correct mutation', done => {
64
64
  render(
65
65
  <MockedProvider mocks={[deleteDirMock]} addTypename={false}>
66
66
  <DeleteDir {...{ datasetId, path }} />
@@ -24,7 +24,7 @@ const UpdateFile = ({
24
24
  false,
25
25
  )({ files: e.target.files })
26
26
  }}
27
- webkitdirectory={directory && 'true'}
27
+ webkitdirectory={directory ? 'true' : undefined}
28
28
  multiple={multiple && true}
29
29
  />
30
30
  {children}
package/src/ssr.ts CHANGED
@@ -33,6 +33,7 @@ globalThis.OpenNeuroConfig = {
33
33
  SUPPORT_URL: process.env.FRESH_DESK_URL,
34
34
  DATALAD_GITHUB_ORG: process.env.DATALAD_GITHUB_ORG,
35
35
  AWS_S3_PUBLIC_BUCKET: process.env.AWS_S3_PUBLIC_BUCKET,
36
+ ELASTIC_APM_SERVER_URL: process.env.ELASTIC_APM_SERVER_URL,
36
37
  }
37
38
 
38
39
  const configScript = `window.OpenNeuroConfig = ${JSON.stringify(
@@ -47,7 +48,13 @@ async function createServer(): Promise<void> {
47
48
  // serving logic and let the parent server take control.
48
49
  vite = await createViteServer({
49
50
  root: path.resolve(__dirname, '../src'),
50
- server: { middlewareMode: true, hmr: { port: 9992 } },
51
+ server: {
52
+ middlewareMode: true,
53
+ hmr: { port: 9992 },
54
+ watch: {
55
+ ignored: ['/proc/**'],
56
+ },
57
+ },
51
58
  resolve: {
52
59
  alias: [
53
60
  // Workaround UMD -> ESM issues in pluralize
@@ -58,7 +65,7 @@ async function createServer(): Promise<void> {
58
65
  ],
59
66
  },
60
67
  optimizeDeps: {
61
- include: ['react-multi-carousel'],
68
+ include: ['react-multi-carousel', '@elastic/apm-rum', '@niivue/niivue'],
62
69
  },
63
70
  })
64
71
  // use vite's connect instance as middleware