@openneuro/app 4.20.4 → 4.20.6-alpha.2

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.
Files changed (358) hide show
  1. package/__mocks__/fileMock.js +1 -1
  2. package/package.json +5 -5
  3. package/pluralize-esm.js +204 -211
  4. package/src/@types/custom.d.ts +3 -3
  5. package/src/@types/react.d.ts +3 -4
  6. package/src/client.jsx +17 -16
  7. package/src/scripts/__mocks__/config.ts +6 -6
  8. package/src/scripts/__utils__/mock-app-shell.tsx +9 -8
  9. package/src/scripts/apm.js +6 -6
  10. package/src/scripts/app.tsx +7 -7
  11. package/src/scripts/authentication/__tests__/profile.spec.js +10 -10
  12. package/src/scripts/authentication/admin-user.jsx +2 -2
  13. package/src/scripts/authentication/logged-in.jsx +2 -2
  14. package/src/scripts/authentication/logged-out.jsx +2 -2
  15. package/src/scripts/authentication/loginCheck.js +2 -2
  16. package/src/scripts/authentication/loginUrls.ts +1 -1
  17. package/src/scripts/authentication/profile.ts +7 -7
  18. package/src/scripts/authentication/regular-user.tsx +3 -3
  19. package/src/scripts/authentication/signOut.ts +2 -2
  20. package/src/scripts/authentication/withProfile.jsx +6 -6
  21. package/src/scripts/common/block-navigation.jsx +3 -4
  22. package/src/scripts/common/containers/__tests__/header.spec.tsx +16 -16
  23. package/src/scripts/common/containers/footer.tsx +3 -3
  24. package/src/scripts/common/containers/header.tsx +30 -30
  25. package/src/scripts/common/forms/__tests__/warn-button.spec.jsx +6 -6
  26. package/src/scripts/common/forms/warn-button.jsx +21 -17
  27. package/src/scripts/common/partials/block-navigation.jsx +3 -4
  28. package/src/scripts/common/partials/freshdesk-widget.jsx +17 -20
  29. package/src/scripts/common/partials/toast-content.jsx +2 -2
  30. package/src/scripts/components/__tests__/data-table.spec.tsx +7 -7
  31. package/src/scripts/components/data-table.tsx +23 -22
  32. package/src/scripts/config.ts +2 -2
  33. package/src/scripts/datalad/dataset/comments-fragments.js +1 -1
  34. package/src/scripts/datalad/dataset/dataset-context.js +1 -1
  35. package/src/scripts/datalad/dataset/dataset-query-context.js +1 -1
  36. package/src/scripts/datalad/dataset/dataset-query-fragments.js +1 -1
  37. package/src/scripts/datalad/mutations/cache-clear.jsx +7 -6
  38. package/src/scripts/datalad/mutations/cache-id.js +2 -2
  39. package/src/scripts/datalad/mutations/delete-comment.jsx +13 -11
  40. package/src/scripts/datalad/mutations/delete.jsx +10 -9
  41. package/src/scripts/datalad/mutations/follow.jsx +12 -11
  42. package/src/scripts/datalad/mutations/publish.jsx +13 -12
  43. package/src/scripts/datalad/mutations/remove-permissions.jsx +8 -8
  44. package/src/scripts/datalad/mutations/revalidate.jsx +7 -6
  45. package/src/scripts/datalad/mutations/snapshot.tsx +7 -7
  46. package/src/scripts/datalad/mutations/star.jsx +12 -11
  47. package/src/scripts/datalad/mutations/submit-metadata.jsx +14 -12
  48. package/src/scripts/datalad/mutations/update-permissions.jsx +14 -13
  49. package/src/scripts/datalad/mutations/update-ref.jsx +7 -6
  50. package/src/scripts/datalad/routes/dataset-redirect.tsx +49 -49
  51. package/src/scripts/datalad/subscriptions/__tests__/files-subscription.spec.jsx +32 -32
  52. package/src/scripts/datalad/subscriptions/files-subscription.jsx +16 -16
  53. package/src/scripts/datalad/subscriptions/useDatasetDeletedSubscription.jsx +4 -4
  54. package/src/scripts/datalad/subscriptions/useDraftSubscription.js +4 -4
  55. package/src/scripts/datalad/subscriptions/usePermissionsSubscription.js +4 -4
  56. package/src/scripts/datalad/subscriptions/useSnapshotsUpdatedSubscriptions.js +3 -3
  57. package/src/scripts/dataset/__tests__/__snapshots__/snapshot-container.spec.tsx.snap +2 -2
  58. package/src/scripts/dataset/__tests__/snapshot-container.spec.tsx +12 -12
  59. package/src/scripts/dataset/comments/__tests__/comment.spec.jsx +21 -21
  60. package/src/scripts/dataset/comments/__tests__/comments.spec.jsx +10 -10
  61. package/src/scripts/dataset/comments/block-style-controls.jsx +15 -15
  62. package/src/scripts/dataset/comments/comment-editor.jsx +31 -31
  63. package/src/scripts/dataset/comments/comment.jsx +50 -50
  64. package/src/scripts/dataset/comments/comments.jsx +24 -22
  65. package/src/scripts/dataset/comments/inline-style-controls.jsx +9 -9
  66. package/src/scripts/dataset/comments/style-button.jsx +8 -9
  67. package/src/scripts/dataset/common/follow-toggles.tsx +3 -3
  68. package/src/scripts/dataset/dataset-query-context.js +1 -1
  69. package/src/scripts/dataset/dataset-query.jsx +34 -31
  70. package/src/scripts/dataset/dataset-routes.jsx +5 -5
  71. package/src/scripts/dataset/download/__tests__/download-command-line.spec.jsx +13 -13
  72. package/src/scripts/dataset/download/__tests__/download-link.spec.jsx +10 -10
  73. package/src/scripts/dataset/download/__tests__/download-native.spec.js +7 -7
  74. package/src/scripts/dataset/download/__tests__/shell-example.spec.jsx +5 -5
  75. package/src/scripts/dataset/download/download-command-line.jsx +9 -7
  76. package/src/scripts/dataset/download/download-datalad.jsx +22 -20
  77. package/src/scripts/dataset/download/download-derivative-datalad.tsx +2 -2
  78. package/src/scripts/dataset/download/download-derivative-s3.tsx +2 -2
  79. package/src/scripts/dataset/download/download-link.jsx +6 -6
  80. package/src/scripts/dataset/download/download-native.js +20 -19
  81. package/src/scripts/dataset/download/download-query.js +2 -3
  82. package/src/scripts/dataset/download/download-s3.jsx +8 -8
  83. package/src/scripts/dataset/download/download-script.tsx +23 -20
  84. package/src/scripts/dataset/download/native-file-toast.jsx +13 -11
  85. package/src/scripts/dataset/download/shell-example.jsx +1 -1
  86. package/src/scripts/dataset/download/track-download.js +5 -5
  87. package/src/scripts/dataset/draft-container.tsx +104 -102
  88. package/src/scripts/dataset/draft-snapshot-routes.tsx +3 -3
  89. package/src/scripts/dataset/files/__tests__/file-tree-unloaded-directory.spec.jsx +23 -23
  90. package/src/scripts/dataset/files/__tests__/file-tree.spec.jsx +57 -58
  91. package/src/scripts/dataset/files/__tests__/file-viewer-type.spec.jsx +6 -6
  92. package/src/scripts/dataset/files/__tests__/file.spec.jsx +15 -15
  93. package/src/scripts/dataset/files/file-display.jsx +11 -11
  94. package/src/scripts/dataset/files/file-tree-unloaded-directory.jsx +10 -10
  95. package/src/scripts/dataset/files/file-tree.tsx +27 -27
  96. package/src/scripts/dataset/files/file-view.jsx +4 -4
  97. package/src/scripts/dataset/files/file-viewer-type.jsx +21 -21
  98. package/src/scripts/dataset/files/file.tsx +85 -80
  99. package/src/scripts/dataset/files/files.tsx +41 -40
  100. package/src/scripts/dataset/files/index.tsx +2 -2
  101. package/src/scripts/dataset/files/viewers/__tests__/__snapshots__/file-viewer-json.spec.jsx.snap +0 -24
  102. package/src/scripts/dataset/files/viewers/__tests__/file-viewer-json.spec.jsx +9 -9
  103. package/src/scripts/dataset/files/viewers/__tests__/parse-tabular.spec.js +8 -8
  104. package/src/scripts/dataset/files/viewers/file-viewer-csv.jsx +5 -5
  105. package/src/scripts/dataset/files/viewers/file-viewer-html.jsx +3 -3
  106. package/src/scripts/dataset/files/viewers/file-viewer-json.jsx +4 -4
  107. package/src/scripts/dataset/files/viewers/file-viewer-nifti.tsx +4 -4
  108. package/src/scripts/dataset/files/viewers/file-viewer-table.tsx +3 -3
  109. package/src/scripts/dataset/files/viewers/file-viewer-text.jsx +3 -3
  110. package/src/scripts/dataset/files/viewers/file-viewer-tsv.jsx +5 -5
  111. package/src/scripts/dataset/files/viewers/parse-tabular.js +4 -4
  112. package/src/scripts/dataset/fragments/__tests__/cancel-button.spec.tsx +5 -5
  113. package/src/scripts/dataset/fragments/__tests__/dataset-alert-draft.spec.tsx +9 -9
  114. package/src/scripts/dataset/fragments/__tests__/dataset-citation.spec.jsx +10 -10
  115. package/src/scripts/dataset/fragments/__tests__/doi-link.spec.tsx +29 -29
  116. package/src/scripts/dataset/fragments/__tests__/edit-button.spec.tsx +5 -5
  117. package/src/scripts/dataset/fragments/__tests__/edit-list.spec.jsx +13 -13
  118. package/src/scripts/dataset/fragments/__tests__/save-button.spec.tsx +5 -5
  119. package/src/scripts/dataset/fragments/__tests__/select-input.spec.tsx +26 -26
  120. package/src/scripts/dataset/fragments/cancel-button.tsx +2 -2
  121. package/src/scripts/dataset/fragments/comments-fragments.js +1 -1
  122. package/src/scripts/dataset/fragments/copyable-tooltip.jsx +14 -13
  123. package/src/scripts/dataset/fragments/dataset-alert-draft.tsx +17 -13
  124. package/src/scripts/dataset/fragments/dataset-alert-version.tsx +5 -4
  125. package/src/scripts/dataset/fragments/dataset-citation.jsx +23 -21
  126. package/src/scripts/dataset/fragments/dataset-history.jsx +12 -12
  127. package/src/scripts/dataset/fragments/dataset-reviewers.ts +1 -1
  128. package/src/scripts/dataset/fragments/doi-link.tsx +6 -6
  129. package/src/scripts/dataset/fragments/edit-button.tsx +2 -2
  130. package/src/scripts/dataset/fragments/edit-description-field.jsx +23 -21
  131. package/src/scripts/dataset/fragments/edit-description-list.jsx +8 -8
  132. package/src/scripts/dataset/fragments/edit-list.jsx +8 -8
  133. package/src/scripts/dataset/fragments/number-input.tsx +36 -35
  134. package/src/scripts/dataset/fragments/save-button.tsx +2 -2
  135. package/src/scripts/dataset/fragments/select-input.tsx +87 -86
  136. package/src/scripts/dataset/fragments/text-array-input.tsx +38 -37
  137. package/src/scripts/dataset/fragments/text-input.tsx +79 -78
  138. package/src/scripts/dataset/mutations/__tests__/cache-id.spec.js +5 -5
  139. package/src/scripts/dataset/mutations/__tests__/delete-file.spec.jsx +85 -83
  140. package/src/scripts/dataset/mutations/__tests__/delete.spec.jsx +8 -8
  141. package/src/scripts/dataset/mutations/__tests__/deprecate-snapshot.spec.tsx +17 -17
  142. package/src/scripts/dataset/mutations/__tests__/deprecate-version.spec.tsx +19 -19
  143. package/src/scripts/dataset/mutations/__tests__/description.spec.jsx +51 -51
  144. package/src/scripts/dataset/mutations/__tests__/remove-permissions.spec.tsx +9 -9
  145. package/src/scripts/dataset/mutations/__tests__/update-permissions.spec.jsx +7 -7
  146. package/src/scripts/dataset/mutations/admin-exports.jsx +13 -12
  147. package/src/scripts/dataset/mutations/cache-clear.jsx +6 -6
  148. package/src/scripts/dataset/mutations/cache-id.js +2 -2
  149. package/src/scripts/dataset/mutations/comment.jsx +25 -23
  150. package/src/scripts/dataset/mutations/create-anonymous-reviewer.tsx +36 -30
  151. package/src/scripts/dataset/mutations/dataset-relations.tsx +28 -29
  152. package/src/scripts/dataset/mutations/delete-anonymous-reviewer.tsx +7 -8
  153. package/src/scripts/dataset/mutations/delete-comment.jsx +14 -12
  154. package/src/scripts/dataset/mutations/delete-dataset-form.jsx +20 -22
  155. package/src/scripts/dataset/mutations/delete-file.jsx +8 -8
  156. package/src/scripts/dataset/mutations/delete.jsx +10 -9
  157. package/src/scripts/dataset/mutations/deprecate-version.tsx +5 -6
  158. package/src/scripts/dataset/mutations/description.jsx +21 -20
  159. package/src/scripts/dataset/mutations/flag-annex-object.jsx +10 -9
  160. package/src/scripts/dataset/mutations/follow.tsx +15 -14
  161. package/src/scripts/dataset/mutations/import-dataset.tsx +5 -5
  162. package/src/scripts/dataset/mutations/metadata-form.jsx +94 -97
  163. package/src/scripts/dataset/mutations/publish.jsx +13 -13
  164. package/src/scripts/dataset/mutations/readme.jsx +12 -11
  165. package/src/scripts/dataset/mutations/remove-annex-object.jsx +10 -9
  166. package/src/scripts/dataset/mutations/remove-permissions.tsx +5 -6
  167. package/src/scripts/dataset/mutations/revalidate.jsx +7 -7
  168. package/src/scripts/dataset/mutations/snapshot.tsx +8 -8
  169. package/src/scripts/dataset/mutations/star.tsx +14 -13
  170. package/src/scripts/dataset/mutations/submit-metadata.jsx +12 -11
  171. package/src/scripts/dataset/mutations/undo-deprecate-version.tsx +5 -6
  172. package/src/scripts/dataset/mutations/update-file.jsx +6 -6
  173. package/src/scripts/dataset/mutations/update-permissions.tsx +9 -9
  174. package/src/scripts/dataset/mutations/update-ref.jsx +7 -7
  175. package/src/scripts/dataset/routes/__tests__/deprecate-snapshot-page.spec.tsx +5 -5
  176. package/src/scripts/dataset/routes/add-metadata.jsx +19 -20
  177. package/src/scripts/dataset/routes/admin-datalad.jsx +7 -7
  178. package/src/scripts/dataset/routes/dataset-default.tsx +12 -10
  179. package/src/scripts/dataset/routes/delete-page.tsx +12 -12
  180. package/src/scripts/dataset/routes/deprecate-snapshot-page.tsx +8 -8
  181. package/src/scripts/dataset/routes/derivatives.tsx +10 -10
  182. package/src/scripts/dataset/routes/download-dataset.tsx +20 -20
  183. package/src/scripts/dataset/routes/manage-anonymous-reviewers.tsx +37 -35
  184. package/src/scripts/dataset/routes/manage-permissions.jsx +22 -22
  185. package/src/scripts/dataset/routes/publish.jsx +32 -30
  186. package/src/scripts/dataset/routes/snapshot-default.tsx +7 -7
  187. package/src/scripts/dataset/routes/snapshot.tsx +44 -43
  188. package/src/scripts/dataset/routes/styles/dataset-page-border.tsx +3 -3
  189. package/src/scripts/dataset/routes/styles/dataset-page-tab-container.tsx +3 -3
  190. package/src/scripts/dataset/routes/styles/header-row.tsx +3 -3
  191. package/src/scripts/dataset/routes/tab-routes-draft.tsx +12 -12
  192. package/src/scripts/dataset/routes/tab-routes-snapshot.tsx +8 -8
  193. package/src/scripts/dataset/snapshot-container.tsx +78 -86
  194. package/src/scripts/errors/403page.tsx +11 -11
  195. package/src/scripts/errors/404page.tsx +12 -12
  196. package/src/scripts/errors/errorBoundary.jsx +13 -12
  197. package/src/scripts/errors/errorRoute.jsx +6 -6
  198. package/src/scripts/errors/freshdesk-widget.jsx +17 -20
  199. package/src/scripts/errors/freshdeskInterface.jsx +9 -9
  200. package/src/scripts/errors/orcid/email.jsx +3 -3
  201. package/src/scripts/errors/orcid/family.jsx +4 -4
  202. package/src/scripts/errors/orcid/general.jsx +1 -1
  203. package/src/scripts/errors/orcid/given.jsx +4 -4
  204. package/src/scripts/fixtures/dataset-query.ts +119 -119
  205. package/src/scripts/fixtures/mock-app-wrapper.tsx +4 -4
  206. package/src/scripts/index.tsx +9 -9
  207. package/src/scripts/pages/admin/admin.jsx +5 -5
  208. package/src/scripts/pages/admin/flagged-files.jsx +33 -31
  209. package/src/scripts/pages/admin/user-fragment.ts +1 -1
  210. package/src/scripts/pages/admin/user-tools.tsx +13 -11
  211. package/src/scripts/pages/admin/users.jsx +38 -39
  212. package/src/scripts/pages/api.jsx +20 -19
  213. package/src/scripts/pages/citation-page.tsx +4 -4
  214. package/src/scripts/pages/faq/faq.tsx +2 -2
  215. package/src/scripts/pages/front-page/aggregate-queries/aggregate-counts-container.tsx +6 -5
  216. package/src/scripts/pages/front-page/aggregate-queries/use-participant-count.ts +2 -2
  217. package/src/scripts/pages/front-page/aggregate-queries/use-publicDatasets-count.ts +2 -2
  218. package/src/scripts/pages/front-page/front-page-content.ts +42 -42
  219. package/src/scripts/pages/front-page/front-page.tsx +18 -14
  220. package/src/scripts/pages/front-page-comp.tsx +3 -3
  221. package/src/scripts/pages/import-dataset.tsx +10 -10
  222. package/src/scripts/pages/metadata/dataset-metadata.tsx +15 -14
  223. package/src/scripts/pages/pet-redirect.tsx +2 -2
  224. package/src/scripts/queries/dataset.ts +3 -3
  225. package/src/scripts/resources/__tests__/kibana.spec.js +9 -9
  226. package/src/scripts/resources/kibana.js +3 -3
  227. package/src/scripts/resources/strings.js +2 -2
  228. package/src/scripts/routes.tsx +14 -14
  229. package/src/scripts/search/__helpers__/search-render.tsx +3 -3
  230. package/src/scripts/search/__tests__/search-container.spec.tsx +22 -22
  231. package/src/scripts/search/__tests__/search-params-ctx.spec.tsx +20 -20
  232. package/src/scripts/search/es-query-builders.ts +21 -5
  233. package/src/scripts/search/filters-block-container.tsx +14 -16
  234. package/src/scripts/search/initial-search-params.tsx +45 -45
  235. package/src/scripts/search/inputs/__tests__/sort-by-select.spec.tsx +23 -23
  236. package/src/scripts/search/inputs/admin-allDatasets-toggle.tsx +12 -12
  237. package/src/scripts/search/inputs/age-range-input.tsx +9 -8
  238. package/src/scripts/search/inputs/author-input.tsx +14 -11
  239. package/src/scripts/search/inputs/date-radios.tsx +8 -7
  240. package/src/scripts/search/inputs/diagnosis-select.tsx +6 -6
  241. package/src/scripts/search/inputs/index.ts +33 -33
  242. package/src/scripts/search/inputs/keyword-input.tsx +13 -13
  243. package/src/scripts/search/inputs/modality-select.tsx +33 -30
  244. package/src/scripts/search/inputs/pet/bodyParts_input.tsx +18 -16
  245. package/src/scripts/search/inputs/pet/scannerManufacturersModelNames_input.tsx +18 -16
  246. package/src/scripts/search/inputs/pet/scannerManufacturers_input.tsx +18 -16
  247. package/src/scripts/search/inputs/pet/tracerNames_input.tsx +16 -15
  248. package/src/scripts/search/inputs/pet/tracerRadionuclides_input.tsx +18 -16
  249. package/src/scripts/search/inputs/section-select.tsx +6 -6
  250. package/src/scripts/search/inputs/sex-radios.tsx +6 -6
  251. package/src/scripts/search/inputs/show-datasets-radios.tsx +31 -29
  252. package/src/scripts/search/inputs/sort-by-select.tsx +10 -11
  253. package/src/scripts/search/inputs/species-select.tsx +6 -6
  254. package/src/scripts/search/inputs/study-domain-input.tsx +18 -16
  255. package/src/scripts/search/inputs/subject-count-range-input.tsx +8 -7
  256. package/src/scripts/search/inputs/task-input.tsx +18 -16
  257. package/src/scripts/search/search-container.tsx +83 -85
  258. package/src/scripts/search/search-params-ctx.tsx +40 -38
  259. package/src/scripts/search/search-routes.tsx +4 -4
  260. package/src/scripts/search/use-search-results.tsx +125 -99
  261. package/src/scripts/styles/media.tsx +3 -3
  262. package/src/scripts/styles/support-modal.jsx +2 -2
  263. package/src/scripts/sw.ts +12 -11
  264. package/src/scripts/test-utils.js +4 -4
  265. package/src/scripts/uploader/add-path-to-files.js +7 -7
  266. package/src/scripts/uploader/file-select.tsx +3 -3
  267. package/src/scripts/uploader/file-upload.js +13 -12
  268. package/src/scripts/uploader/input.jsx +8 -7
  269. package/src/scripts/uploader/upload-button.jsx +3 -3
  270. package/src/scripts/uploader/upload-disclaimer-input.tsx +66 -66
  271. package/src/scripts/uploader/upload-disclaimer.jsx +6 -5
  272. package/src/scripts/uploader/upload-file-status.jsx +4 -4
  273. package/src/scripts/uploader/upload-issues.jsx +32 -29
  274. package/src/scripts/uploader/upload-metadata.jsx +18 -17
  275. package/src/scripts/uploader/upload-mutation.js +17 -20
  276. package/src/scripts/uploader/upload-progress-button.jsx +5 -4
  277. package/src/scripts/uploader/upload-progress.jsx +3 -3
  278. package/src/scripts/uploader/upload-rename.jsx +6 -5
  279. package/src/scripts/uploader/upload-resume.jsx +26 -24
  280. package/src/scripts/uploader/upload-select.jsx +10 -9
  281. package/src/scripts/uploader/upload-status.jsx +5 -5
  282. package/src/scripts/uploader/upload-step.jsx +9 -9
  283. package/src/scripts/uploader/uploader-context.js +1 -1
  284. package/src/scripts/uploader/uploader-location.js +1 -1
  285. package/src/scripts/uploader/uploader-modal.jsx +8 -7
  286. package/src/scripts/uploader/uploader-setup-routes.jsx +10 -10
  287. package/src/scripts/uploader/uploader-status-routes.jsx +6 -6
  288. package/src/scripts/uploader/uploader-view.jsx +4 -4
  289. package/src/scripts/uploader/uploader.jsx +50 -48
  290. package/src/scripts/users/username.tsx +3 -3
  291. package/src/scripts/utils/__tests__/csv.spec.ts +16 -16
  292. package/src/scripts/utils/__tests__/date.spec.js +4 -4
  293. package/src/scripts/utils/__tests__/json-ld.spec.js +12 -12
  294. package/src/scripts/utils/__tests__/newid.spec.js +9 -9
  295. package/src/scripts/utils/__tests__/userNotify.spec.js +10 -10
  296. package/src/scripts/utils/analytics.tsx +3 -3
  297. package/src/scripts/utils/cookies.js +1 -1
  298. package/src/scripts/utils/csv.ts +13 -15
  299. package/src/scripts/utils/datalad.js +1 -1
  300. package/src/scripts/utils/dataset-url.js +2 -2
  301. package/src/scripts/utils/date.js +2 -2
  302. package/src/scripts/utils/global-polyfill.ts +2 -2
  303. package/src/scripts/utils/gtag.js +6 -6
  304. package/src/scripts/utils/json-ld.js +13 -13
  305. package/src/scripts/utils/newid.js +1 -1
  306. package/src/scripts/utils/user-login-modal-ctx.tsx +4 -4
  307. package/src/scripts/utils/userNotify.js +2 -2
  308. package/src/scripts/validation/validation-panel.jsx +3 -3
  309. package/src/scripts/validation/validation-results.issues.issue.jsx +9 -9
  310. package/src/scripts/validation/validation-results.issues.jsx +19 -17
  311. package/src/scripts/validation/validation-results.jsx +10 -10
  312. package/src/scripts/validation/validation-status.jsx +19 -17
  313. package/src/scripts/validation/validation.jsx +5 -5
  314. package/src/scripts/workers/schema.ts +2 -2
  315. package/src/scripts/workers/schema.worker.ts +4 -4
  316. package/src/scripts/workers/validate.ts +2 -2
  317. package/src/scripts/workers/validate.worker.ts +7 -5
  318. package/vite.config.js +17 -17
  319. package/src/dist/assets/activity-icon.9ab0c828.png +0 -0
  320. package/src/dist/assets/bids.da8810b3.jpg +0 -0
  321. package/src/dist/assets/brand_mark.28e7645d.png +0 -0
  322. package/src/dist/assets/close-button.21e700a6.png +0 -0
  323. package/src/dist/assets/cube-get.39ed5636.png +0 -0
  324. package/src/dist/assets/cube-share.9b558c29.png +0 -0
  325. package/src/dist/assets/cube-use.ccf2ddc5.png +0 -0
  326. package/src/dist/assets/datalad.a35b15b8.jpg +0 -0
  327. package/src/dist/assets/eeg.1dc1dc54.jpg +0 -0
  328. package/src/dist/assets/email-header.1cb8bf76.png +0 -0
  329. package/src/dist/assets/ieeg.f91deb0a.jpg +0 -0
  330. package/src/dist/assets/index.3db805fb.js +0 -23127
  331. package/src/dist/assets/index.3db805fb.js.map +0 -1
  332. package/src/dist/assets/index.5eb79d2c.css +0 -1
  333. package/src/dist/assets/ljaf.567e9566.png +0 -0
  334. package/src/dist/assets/logo_app.8c986cf9.png +0 -0
  335. package/src/dist/assets/logo_cube.5224b745.png +0 -0
  336. package/src/dist/assets/logo_data.3e1d5743.png +0 -0
  337. package/src/dist/assets/logo_users.a84a265a.png +0 -0
  338. package/src/dist/assets/meg.1e1928f8.jpg +0 -0
  339. package/src/dist/assets/mri.b01e4f42.jpg +0 -0
  340. package/src/dist/assets/nih-bi-logo.80d76e1d.png +0 -0
  341. package/src/dist/assets/nih-stanford.2a7c496e.jpg +0 -0
  342. package/src/dist/assets/nih.78a64d38.png +0 -0
  343. package/src/dist/assets/nimh.0ec775d8.png +0 -0
  344. package/src/dist/assets/nru-logo.f3097dc5.png +0 -0
  345. package/src/dist/assets/nsf.eee1d3f7.png +0 -0
  346. package/src/dist/assets/nsf.f87e96e7.png +0 -0
  347. package/src/dist/assets/on-dark-horz.e1f213d0.svg +0 -1
  348. package/src/dist/assets/on-dark.12f4e2ce.svg +0 -1
  349. package/src/dist/assets/on-light-horz.23ff22c3.svg +0 -1
  350. package/src/dist/assets/on-light.50592f7f.svg +0 -1
  351. package/src/dist/assets/pet-scan.21d98a3d.jpg +0 -0
  352. package/src/dist/assets/revicons.4ca02b8a.ttf +0 -0
  353. package/src/dist/assets/revicons.9e4d4c68.eot +0 -0
  354. package/src/dist/assets/revicons.f7b9c306.woff +0 -0
  355. package/src/dist/assets/sqm-logo.9cd0cca5.png +0 -0
  356. package/src/dist/assets/squishymedia.fa3c5919.png +0 -0
  357. package/src/dist/assets/stanford.5f245936.png +0 -0
  358. package/src/dist/index.html +0 -25
@@ -1,22 +1,22 @@
1
- import React, { FC, useContext } from 'react'
2
- import useState from 'react-usestateref'
3
- import { SearchParamsCtx, removeFilterItem } from '../../search-params-ctx'
4
- import { FacetSearch } from '@openneuro/components/facets'
5
- import { Icon } from '@openneuro/components/icon'
6
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import useState from "react-usestateref"
3
+ import { removeFilterItem, SearchParamsCtx } from "../../search-params-ctx"
4
+ import { FacetSearch } from "@openneuro/components/facets"
5
+ import { Icon } from "@openneuro/components/icon"
6
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
7
7
 
8
8
  const ScannerManufacturersInput: FC = () => {
9
9
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
10
10
  const scannerManufacturers = searchParams.scannerManufacturers
11
11
 
12
- const [newInput, setNewInput, newInputRef] = useState('')
12
+ const [newInput, setNewInput, newInputRef] = useState("")
13
13
 
14
14
  const addScannerManufacturer = () => {
15
- setSearchParams(prevState => ({
15
+ setSearchParams((prevState) => ({
16
16
  ...prevState,
17
17
  scannerManufacturers: [...scannerManufacturers, newInputRef.current],
18
18
  }))
19
- setNewInput('')
19
+ setNewInput("")
20
20
  }
21
21
 
22
22
  return (
@@ -25,7 +25,8 @@ const ScannerManufacturersInput: FC = () => {
25
25
  accordionStyle="plain"
26
26
  label="Scanner Manufacturer"
27
27
  className="search-facet"
28
- startOpen={false}>
28
+ startOpen={false}
29
+ >
29
30
  <FacetSearch
30
31
  type="text"
31
32
  placeholder="Enter Scanner Manufacturer(s) to Search"
@@ -43,18 +44,19 @@ const ScannerManufacturersInput: FC = () => {
43
44
  removeFilterItem={removeFilterItem(setSearchParams)}
44
45
  helpText={
45
46
  <span>
46
- Each time the{' '}
47
- <Icon icon="fas fa-plus" label="plus" iconOnly={true} /> button is
48
- clicked, it will add a search filter. Multiple words in a filter
49
- will return results containing any or all words. For advanced
50
- filters use the{' '}
47
+ Each time the{" "}
48
+ <Icon icon="fas fa-plus" label="plus" iconOnly={true} />{" "}
49
+ button is clicked, it will add a search filter. Multiple words in
50
+ a filter will return results containing any or all words. For
51
+ advanced filters use the{" "}
51
52
  <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-simple-query-string-query.html#simple-query-string-syntax">
52
53
  simple query string syntax
53
54
  </a>
54
55
  .
55
56
  </span>
56
57
  }
57
- />{' '}
58
+ />
59
+ {" "}
58
60
  </AccordionTab>
59
61
  </AccordionWrap>
60
62
  )
@@ -1,22 +1,22 @@
1
- import React, { FC, useContext } from 'react'
2
- import useState from 'react-usestateref'
3
- import { SearchParamsCtx, removeFilterItem } from '../../search-params-ctx'
4
- import { FacetSearch } from '@openneuro/components/facets'
5
- import { Icon } from '@openneuro/components/icon'
6
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import useState from "react-usestateref"
3
+ import { removeFilterItem, SearchParamsCtx } from "../../search-params-ctx"
4
+ import { FacetSearch } from "@openneuro/components/facets"
5
+ import { Icon } from "@openneuro/components/icon"
6
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
7
7
 
8
8
  const TracerNamesInput: FC = () => {
9
9
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
10
10
  const tracerNames = searchParams.tracerNames
11
11
 
12
- const [newInput, setNewInput, newInputRef] = useState('')
12
+ const [newInput, setNewInput, newInputRef] = useState("")
13
13
 
14
14
  const addtracerName = () => {
15
- setSearchParams(prevState => ({
15
+ setSearchParams((prevState) => ({
16
16
  ...prevState,
17
17
  tracerNames: [...tracerNames, newInputRef.current],
18
18
  }))
19
- setNewInput('')
19
+ setNewInput("")
20
20
  }
21
21
 
22
22
  return (
@@ -25,7 +25,8 @@ const TracerNamesInput: FC = () => {
25
25
  accordionStyle="plain"
26
26
  label="Radiotracers"
27
27
  className="search-facet"
28
- startOpen={false}>
28
+ startOpen={false}
29
+ >
29
30
  <FacetSearch
30
31
  type="text"
31
32
  placeholder="Enter Tracer(s) to Search"
@@ -43,11 +44,11 @@ const TracerNamesInput: FC = () => {
43
44
  removeFilterItem={removeFilterItem(setSearchParams)}
44
45
  helpText={
45
46
  <span>
46
- Each time the{' '}
47
- <Icon icon="fas fa-plus" label="plus" iconOnly={true} /> button is
48
- clicked, it will add a search filter. Multiple words in a filter
49
- will return results containing any or all words. For advanced
50
- filters use the{' '}
47
+ Each time the{" "}
48
+ <Icon icon="fas fa-plus" label="plus" iconOnly={true} />{" "}
49
+ button is clicked, it will add a search filter. Multiple words in
50
+ a filter will return results containing any or all words. For
51
+ advanced filters use the{" "}
51
52
  <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-simple-query-string-query.html#simple-query-string-syntax">
52
53
  simple query string syntax
53
54
  </a>
@@ -1,22 +1,22 @@
1
- import React, { FC, useContext } from 'react'
2
- import useState from 'react-usestateref'
3
- import { SearchParamsCtx, removeFilterItem } from '../../search-params-ctx'
4
- import { FacetSearch } from '@openneuro/components/facets'
5
- import { Icon } from '@openneuro/components/icon'
6
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import useState from "react-usestateref"
3
+ import { removeFilterItem, SearchParamsCtx } from "../../search-params-ctx"
4
+ import { FacetSearch } from "@openneuro/components/facets"
5
+ import { Icon } from "@openneuro/components/icon"
6
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
7
7
 
8
8
  const TracerRadionuclidesInput: FC = () => {
9
9
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
10
10
  const tracerRadionuclides = searchParams.tracerRadionuclides
11
11
 
12
- const [newInput, setNewInput, newInputRef] = useState('')
12
+ const [newInput, setNewInput, newInputRef] = useState("")
13
13
 
14
14
  const addTracerRadionuclide = () => {
15
- setSearchParams(prevState => ({
15
+ setSearchParams((prevState) => ({
16
16
  ...prevState,
17
17
  tracerRadionuclides: [...tracerRadionuclides, newInputRef.current],
18
18
  }))
19
- setNewInput('')
19
+ setNewInput("")
20
20
  }
21
21
 
22
22
  return (
@@ -25,7 +25,8 @@ const TracerRadionuclidesInput: FC = () => {
25
25
  accordionStyle="plain"
26
26
  label="Radionuclide"
27
27
  className="search-facet"
28
- startOpen={false}>
28
+ startOpen={false}
29
+ >
29
30
  <FacetSearch
30
31
  type="text"
31
32
  placeholder="Enter Radionuclide(s) to Search"
@@ -43,18 +44,19 @@ const TracerRadionuclidesInput: FC = () => {
43
44
  removeFilterItem={removeFilterItem(setSearchParams)}
44
45
  helpText={
45
46
  <span>
46
- Each time the{' '}
47
- <Icon icon="fas fa-plus" label="plus" iconOnly={true} /> button is
48
- clicked, it will add a search filter. Multiple words in a filter
49
- will return results containing any or all words. For advanced
50
- filters use the{' '}
47
+ Each time the{" "}
48
+ <Icon icon="fas fa-plus" label="plus" iconOnly={true} />{" "}
49
+ button is clicked, it will add a search filter. Multiple words in
50
+ a filter will return results containing any or all words. For
51
+ advanced filters use the{" "}
51
52
  <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-simple-query-string-query.html#simple-query-string-syntax">
52
53
  simple query string syntax
53
54
  </a>
54
55
  .
55
56
  </span>
56
57
  }
57
- />{' '}
58
+ />
59
+ {" "}
58
60
  </AccordionTab>
59
61
  </AccordionWrap>
60
62
  )
@@ -1,14 +1,14 @@
1
- import React, { FC, useContext } from 'react'
2
- import { SearchParamsCtx } from '../search-params-ctx'
3
- import { FacetSelect } from '@openneuro/components/facets'
4
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import { SearchParamsCtx } from "../search-params-ctx"
3
+ import { FacetSelect } from "@openneuro/components/facets"
4
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
5
5
 
6
6
  const SectionSelect: FC = () => {
7
7
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
8
8
 
9
9
  const { section_available, section_selected } = searchParams
10
- const setSection = section_selected =>
11
- setSearchParams(prevState => ({
10
+ const setSection = (section_selected) =>
11
+ setSearchParams((prevState) => ({
12
12
  ...prevState,
13
13
  section_selected,
14
14
  }))
@@ -1,14 +1,14 @@
1
- import React, { FC, useContext } from 'react'
2
- import { SearchParamsCtx } from '../search-params-ctx'
3
- import { FacetRadio } from '@openneuro/components/facets'
4
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import { SearchParamsCtx } from "../search-params-ctx"
3
+ import { FacetRadio } from "@openneuro/components/facets"
4
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
5
5
 
6
6
  const SexRadios: FC = () => {
7
7
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
8
8
 
9
9
  const { sex_available, sex_selected } = searchParams
10
- const setSex = sex_selected =>
11
- setSearchParams(prevState => ({
10
+ const setSex = (sex_selected) =>
11
+ setSearchParams((prevState) => ({
12
12
  ...prevState,
13
13
  sex_selected,
14
14
  }))
@@ -1,10 +1,10 @@
1
- import React, { FC, useContext } from 'react'
2
- import { SearchParamsCtx } from '../search-params-ctx'
3
- import { RadioGroup } from '@openneuro/components/radio'
4
- import { FacetSelect } from '@openneuro/components/facets'
5
- import { useCookies } from 'react-cookie'
6
- import { getUnexpiredProfile } from '../../authentication/profile'
7
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import { SearchParamsCtx } from "../search-params-ctx"
3
+ import { RadioGroup } from "@openneuro/components/radio"
4
+ import { FacetSelect } from "@openneuro/components/facets"
5
+ import { useCookies } from "react-cookie"
6
+ import { getUnexpiredProfile } from "../../authentication/profile"
7
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
8
8
 
9
9
  const ShowDatasetsRadios: FC = () => {
10
10
  const [cookies] = useCookies()
@@ -18,13 +18,13 @@ const ShowDatasetsRadios: FC = () => {
18
18
  datasetStatus_available,
19
19
  datasetStatus_selected,
20
20
  } = searchParams
21
- const setShowSelected = datasetType_selected =>
22
- setSearchParams(prevState => ({
21
+ const setShowSelected = (datasetType_selected) =>
22
+ setSearchParams((prevState) => ({
23
23
  ...prevState,
24
24
  datasetType_selected,
25
25
  }))
26
- const setShowMyUploadsSelected = datasetStatus_selected =>
27
- setSearchParams(prevState => ({
26
+ const setShowMyUploadsSelected = (datasetStatus_selected) =>
27
+ setSearchParams((prevState) => ({
28
28
  ...prevState,
29
29
  datasetStatus_selected,
30
30
  }))
@@ -32,10 +32,9 @@ const ShowDatasetsRadios: FC = () => {
32
32
  return loggedOut ? null : (
33
33
  <>
34
34
  <div
35
- className={
36
- datasetType_selected.replace(/\s/g, '') +
37
- ' btn-group-wrapper facet-radio'
38
- }>
35
+ className={datasetType_selected.replace(/\s/g, "") +
36
+ " btn-group-wrapper facet-radio"}
37
+ >
39
38
  <RadioGroup
40
39
  radioArr={datasetType_available}
41
40
  layout="btn-group"
@@ -44,20 +43,23 @@ const ShowDatasetsRadios: FC = () => {
44
43
  setSelected={setShowSelected}
45
44
  />
46
45
  </div>
47
- {datasetType_selected == 'My Datasets' ? (
48
- <AccordionWrap className="facet-accordion">
49
- <AccordionTab
50
- accordionStyle="plain"
51
- label="My Datasets Status"
52
- startOpen={true}>
53
- <FacetSelect
54
- selected={datasetStatus_selected}
55
- setSelected={setShowMyUploadsSelected}
56
- items={datasetStatus_available}
57
- />
58
- </AccordionTab>
59
- </AccordionWrap>
60
- ) : null}
46
+ {datasetType_selected == "My Datasets"
47
+ ? (
48
+ <AccordionWrap className="facet-accordion">
49
+ <AccordionTab
50
+ accordionStyle="plain"
51
+ label="My Datasets Status"
52
+ startOpen={true}
53
+ >
54
+ <FacetSelect
55
+ selected={datasetStatus_selected}
56
+ setSelected={setShowMyUploadsSelected}
57
+ items={datasetStatus_available}
58
+ />
59
+ </AccordionTab>
60
+ </AccordionWrap>
61
+ )
62
+ : null}
61
63
  </>
62
64
  )
63
65
  }
@@ -1,6 +1,6 @@
1
- import React, { FC, useContext } from 'react'
2
- import { SearchParamsCtx } from '../search-params-ctx'
3
- import { SearchSort } from '@openneuro/components/search-page'
1
+ import React, { FC, useContext } from "react"
2
+ import { SearchParamsCtx } from "../search-params-ctx"
3
+ import { SearchSort } from "@openneuro/components/search-page"
4
4
 
5
5
  interface SortBySelectProps {
6
6
  variables: any
@@ -12,8 +12,8 @@ const SortBySelect: FC<SortBySelectProps> = ({
12
12
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
13
13
 
14
14
  const { sortBy_available, sortBy_selected } = searchParams
15
- const setSortBy = sortBy_selected =>
16
- setSearchParams(prevState => ({
15
+ const setSortBy = (sortBy_selected) =>
16
+ setSearchParams((prevState) => ({
17
17
  ...prevState,
18
18
  sortBy_selected,
19
19
  }))
@@ -23,16 +23,15 @@ const SortBySelect: FC<SortBySelectProps> = ({
23
23
  Object.keys(variables.query.bool).length === 0 ||
24
24
  (Object.keys(variables.query.bool).length === 1 &&
25
25
  variables.query.bool?.filter?.every(
26
- f => f?.match?.['latestSnapshot.summary.modalities'],
26
+ (f) => f?.match?.["latestSnapshot.summary.modalities"],
27
27
  ))
28
28
  ) {
29
29
  const available = sortBy_available.filter(
30
- item => item.value !== 'relevance',
30
+ (item) => item.value !== "relevance",
31
31
  )
32
- const selected =
33
- sortBy_selected.value === 'relevance'
34
- ? { label: 'Newest', value: 'newest' }
35
- : sortBy_selected
32
+ const selected = sortBy_selected.value === "relevance"
33
+ ? { label: "Newest", value: "newest" }
34
+ : sortBy_selected
36
35
  return (
37
36
  <SearchSort
38
37
  items={available}
@@ -1,14 +1,14 @@
1
- import React, { FC, useContext } from 'react'
2
- import { SearchParamsCtx } from '../search-params-ctx'
3
- import { FacetSelect } from '@openneuro/components/facets'
4
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import { SearchParamsCtx } from "../search-params-ctx"
3
+ import { FacetSelect } from "@openneuro/components/facets"
4
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
5
5
 
6
6
  const SpeciesSelect: FC = () => {
7
7
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
8
8
 
9
9
  const { species_available, species_selected } = searchParams
10
- const setSection = species_selected =>
11
- setSearchParams(prevState => ({
10
+ const setSection = (species_selected) =>
11
+ setSearchParams((prevState) => ({
12
12
  ...prevState,
13
13
  species_selected,
14
14
  }))
@@ -1,22 +1,22 @@
1
- import React, { FC, useContext } from 'react'
2
- import useState from 'react-usestateref'
3
- import { SearchParamsCtx, removeFilterItem } from '../search-params-ctx'
4
- import { FacetSearch } from '@openneuro/components/facets'
5
- import { Icon } from '@openneuro/components/icon'
6
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import useState from "react-usestateref"
3
+ import { removeFilterItem, SearchParamsCtx } from "../search-params-ctx"
4
+ import { FacetSearch } from "@openneuro/components/facets"
5
+ import { Icon } from "@openneuro/components/icon"
6
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
7
7
 
8
8
  const StudyDomainInput: FC = () => {
9
9
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
10
10
  const studyDomains = searchParams.studyDomains
11
11
 
12
- const [newStudyDomain, setNewStudyDomain, newStudyDomainRef] = useState('')
12
+ const [newStudyDomain, setNewStudyDomain, newStudyDomainRef] = useState("")
13
13
 
14
14
  const addStudyDomain = () => {
15
- setSearchParams(prevState => ({
15
+ setSearchParams((prevState) => ({
16
16
  ...prevState,
17
17
  studyDomains: [...studyDomains, newStudyDomainRef.current],
18
18
  }))
19
- setNewStudyDomain('')
19
+ setNewStudyDomain("")
20
20
  }
21
21
 
22
22
  return (
@@ -25,7 +25,8 @@ const StudyDomainInput: FC = () => {
25
25
  accordionStyle="plain"
26
26
  label="Study Domain"
27
27
  className="search-facet"
28
- startOpen={false}>
28
+ startOpen={false}
29
+ >
29
30
  <FacetSearch
30
31
  type="text"
31
32
  placeholder="Enter Study Domain(s) to Search"
@@ -43,18 +44,19 @@ const StudyDomainInput: FC = () => {
43
44
  removeFilterItem={removeFilterItem(setSearchParams)}
44
45
  helpText={
45
46
  <span>
46
- Each time the{' '}
47
- <Icon icon="fas fa-plus" label="plus" iconOnly={true} /> button is
48
- clicked, it will add a search filter. Multiple words in a filter
49
- will return results containing any or all words. For advanced
50
- filters use the{' '}
47
+ Each time the{" "}
48
+ <Icon icon="fas fa-plus" label="plus" iconOnly={true} />{" "}
49
+ button is clicked, it will add a search filter. Multiple words in
50
+ a filter will return results containing any or all words. For
51
+ advanced filters use the{" "}
51
52
  <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-simple-query-string-query.html#simple-query-string-syntax">
52
53
  simple query string syntax
53
54
  </a>
54
55
  .
55
56
  </span>
56
57
  }
57
- />{' '}
58
+ />
59
+ {" "}
58
60
  </AccordionTab>
59
61
  </AccordionWrap>
60
62
  )
@@ -1,14 +1,14 @@
1
- import React, { FC, useContext } from 'react'
2
- import { SearchParamsCtx } from '../search-params-ctx'
3
- import { FacetRange } from '@openneuro/components/facets'
4
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import { SearchParamsCtx } from "../search-params-ctx"
3
+ import { FacetRange } from "@openneuro/components/facets"
4
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
5
5
 
6
6
  const SubjectCountRangeInput: FC = () => {
7
7
  const min = 0
8
8
  const max = 200
9
9
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
10
- const setSubjectRange = subjectCountRange => {
11
- setSearchParams(prevState => ({
10
+ const setSubjectRange = (subjectCountRange) => {
11
+ setSearchParams((prevState) => ({
12
12
  ...prevState,
13
13
  subjectCountRange: [
14
14
  (subjectCountRange[0] !== min && subjectCountRange[0]) || null,
@@ -28,7 +28,8 @@ const SubjectCountRangeInput: FC = () => {
28
28
  <AccordionTab
29
29
  accordionStyle="plain"
30
30
  label="Number of Participants"
31
- startOpen={false}>
31
+ startOpen={false}
32
+ >
32
33
  <FacetRange
33
34
  min={min}
34
35
  max={max}
@@ -1,22 +1,22 @@
1
- import React, { FC, useContext } from 'react'
2
- import useState from 'react-usestateref'
3
- import { SearchParamsCtx, removeFilterItem } from '../search-params-ctx'
4
- import { FacetSearch } from '@openneuro/components/facets'
5
- import { Icon } from '@openneuro/components/icon'
6
- import { AccordionTab, AccordionWrap } from '@openneuro/components/accordion'
1
+ import React, { FC, useContext } from "react"
2
+ import useState from "react-usestateref"
3
+ import { removeFilterItem, SearchParamsCtx } from "../search-params-ctx"
4
+ import { FacetSearch } from "@openneuro/components/facets"
5
+ import { Icon } from "@openneuro/components/icon"
6
+ import { AccordionTab, AccordionWrap } from "@openneuro/components/accordion"
7
7
 
8
8
  const TaskInput: FC = () => {
9
9
  const { searchParams, setSearchParams } = useContext(SearchParamsCtx)
10
10
  const tasks = searchParams.tasks
11
11
 
12
- const [newTask, setNewTask, newTaskRef] = useState('')
12
+ const [newTask, setNewTask, newTaskRef] = useState("")
13
13
 
14
14
  const addTask = () => {
15
- setSearchParams(prevState => ({
15
+ setSearchParams((prevState) => ({
16
16
  ...prevState,
17
17
  tasks: [...tasks, newTaskRef.current],
18
18
  }))
19
- setNewTask('')
19
+ setNewTask("")
20
20
  }
21
21
 
22
22
  return (
@@ -25,7 +25,8 @@ const TaskInput: FC = () => {
25
25
  accordionStyle="plain"
26
26
  label="Task"
27
27
  className="search-facet"
28
- startOpen={false}>
28
+ startOpen={false}
29
+ >
29
30
  <FacetSearch
30
31
  type="text"
31
32
  placeholder="Enter Task(s) to Search"
@@ -43,18 +44,19 @@ const TaskInput: FC = () => {
43
44
  removeFilterItem={removeFilterItem(setSearchParams)}
44
45
  helpText={
45
46
  <span>
46
- Each time the{' '}
47
- <Icon icon="fas fa-plus" label="plus" iconOnly={true} /> button is
48
- clicked, it will add a search filter. Multiple words in a filter
49
- will return results containing any or all words. For advanced
50
- filters use the{' '}
47
+ Each time the{" "}
48
+ <Icon icon="fas fa-plus" label="plus" iconOnly={true} />{" "}
49
+ button is clicked, it will add a search filter. Multiple words in
50
+ a filter will return results containing any or all words. For
51
+ advanced filters use the{" "}
51
52
  <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-simple-query-string-query.html#simple-query-string-syntax">
52
53
  simple query string syntax
53
54
  </a>
54
55
  .
55
56
  </span>
56
57
  }
57
- />{' '}
58
+ />
59
+ {" "}
58
60
  </AccordionTab>
59
61
  </AccordionWrap>
60
62
  )