@openneuro/app 4.5.0 → 4.5.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.
Files changed (243) hide show
  1. package/package.json +5 -5
  2. package/src/scripts/{refactor_2021/authentication → authentication}/__tests__/profile.spec.js +0 -0
  3. package/src/scripts/{refactor_2021/authentication → authentication}/admin-user.jsx +0 -0
  4. package/src/scripts/{refactor_2021/authentication → authentication}/logged-in.jsx +0 -0
  5. package/src/scripts/{refactor_2021/authentication → authentication}/logged-out.jsx +0 -0
  6. package/src/scripts/{refactor_2021/authentication → authentication}/loginCheck.js +0 -0
  7. package/src/scripts/{refactor_2021/authentication → authentication}/loginUrls.ts +1 -1
  8. package/src/scripts/{refactor_2021/authentication → authentication}/profile.js +0 -0
  9. package/src/scripts/{refactor_2021/authentication → authentication}/signOut.ts +0 -0
  10. package/src/scripts/{refactor_2021/authentication → authentication}/withProfile.jsx +0 -0
  11. package/src/scripts/{refactor_2021/common → common}/block-navigation.jsx +0 -0
  12. package/src/scripts/{refactor_2021 → common}/containers/footer.tsx +0 -0
  13. package/src/scripts/{refactor_2021 → common}/containers/header.tsx +17 -15
  14. package/src/scripts/{datalad/fragments → common/partials}/freshdesk-widget.jsx +1 -1
  15. package/src/scripts/{refactor_2021/dataset → dataset}/comments/__tests__/__snapshots__/comment.spec.jsx.snap +0 -0
  16. package/src/scripts/{refactor_2021/dataset → dataset}/comments/__tests__/__snapshots__/comments.spec.jsx.snap +0 -0
  17. package/src/scripts/{refactor_2021/dataset → dataset}/comments/__tests__/comment.spec.jsx +0 -0
  18. package/src/scripts/{refactor_2021/dataset → dataset}/comments/__tests__/comments.spec.jsx +0 -0
  19. package/src/scripts/{refactor_2021/dataset → dataset}/comments/block-style-controls.jsx +0 -0
  20. package/src/scripts/{refactor_2021/dataset → dataset}/comments/comment-editor.jsx +0 -0
  21. package/src/scripts/{refactor_2021/dataset → dataset}/comments/comment.jsx +0 -0
  22. package/src/scripts/{refactor_2021/dataset → dataset}/comments/comments.jsx +1 -1
  23. package/src/scripts/{refactor_2021/dataset → dataset}/comments/inline-style-controls.jsx +0 -0
  24. package/src/scripts/{refactor_2021/dataset → dataset}/comments/style-button.jsx +0 -0
  25. package/src/scripts/{refactor_2021/dataset → dataset}/dataset-query-context.js +0 -0
  26. package/src/scripts/{refactor_2021/dataset → dataset}/dataset-query.jsx +15 -15
  27. package/src/scripts/{refactor_2021/dataset → dataset}/dataset-routes.jsx +0 -0
  28. package/src/scripts/{refactor_2021/dataset → dataset}/download/__tests__/__snapshots__/download-command-line.spec.jsx.snap +0 -0
  29. package/src/scripts/{refactor_2021/dataset → dataset}/download/__tests__/__snapshots__/download-link.spec.jsx.snap +0 -0
  30. package/src/scripts/{refactor_2021/dataset → dataset}/download/__tests__/__snapshots__/shell-example.spec.jsx.snap +0 -0
  31. package/src/scripts/{refactor_2021/dataset → dataset}/download/__tests__/download-command-line.spec.jsx +0 -0
  32. package/src/scripts/{refactor_2021/dataset → dataset}/download/__tests__/download-link.spec.jsx +0 -0
  33. package/src/scripts/{refactor_2021/dataset → dataset}/download/__tests__/download-native.spec.js +0 -0
  34. package/src/scripts/{refactor_2021/dataset → dataset}/download/__tests__/shell-example.spec.jsx +0 -0
  35. package/src/scripts/{refactor_2021/dataset → dataset}/download/download-command-line.jsx +0 -0
  36. package/src/scripts/{refactor_2021/dataset → dataset}/download/download-datalad.jsx +1 -1
  37. package/src/scripts/{refactor_2021/dataset → dataset}/download/download-link.jsx +0 -0
  38. package/src/scripts/{refactor_2021/dataset → dataset}/download/download-native.js +1 -1
  39. package/src/scripts/{refactor_2021/dataset → dataset}/download/download-query.js +0 -0
  40. package/src/scripts/{refactor_2021/dataset → dataset}/download/download-s3.jsx +1 -1
  41. package/src/scripts/{refactor_2021/dataset → dataset}/download/native-file-toast.jsx +0 -0
  42. package/src/scripts/{refactor_2021/dataset → dataset}/download/shell-example.jsx +0 -0
  43. package/src/scripts/{refactor_2021/dataset → dataset}/download/track-download.js +0 -0
  44. package/src/scripts/{refactor_2021/dataset → dataset}/draft-container.tsx +1 -1
  45. package/src/scripts/{refactor_2021/dataset → dataset}/draft-snapshot-routes.tsx +0 -0
  46. package/src/scripts/{refactor_2021/dataset → dataset}/files/__tests__/__snapshots__/file-tree.spec.jsx.snap +0 -0
  47. package/src/scripts/{refactor_2021/dataset → dataset}/files/__tests__/__snapshots__/file.spec.jsx.snap +2 -2
  48. package/src/scripts/{refactor_2021/dataset → dataset}/files/__tests__/file-tree-loading.spec.jsx +0 -0
  49. package/src/scripts/{refactor_2021/dataset → dataset}/files/__tests__/file-tree-unloaded-directory.spec.jsx +1 -1
  50. package/src/scripts/{refactor_2021/dataset → dataset}/files/__tests__/file-tree.spec.jsx +0 -0
  51. package/src/scripts/{refactor_2021/dataset → dataset}/files/__tests__/file-viewer-type.spec.jsx +0 -0
  52. package/src/scripts/{refactor_2021/dataset → dataset}/files/__tests__/file.spec.jsx +11 -4
  53. package/src/scripts/{refactor_2021/dataset → dataset}/files/__tests__/flat-to-tree.spec.js +0 -0
  54. package/src/scripts/{refactor_2021/dataset → dataset}/files/file-display.jsx +2 -2
  55. package/src/scripts/{refactor_2021/dataset → dataset}/files/file-tree-loading.jsx +0 -0
  56. package/src/scripts/{refactor_2021/dataset → dataset}/files/file-tree-unloaded-directory.jsx +1 -1
  57. package/src/scripts/{refactor_2021/dataset → dataset}/files/file-tree.jsx +3 -2
  58. package/src/scripts/{refactor_2021/dataset → dataset}/files/file-view.jsx +1 -1
  59. package/src/scripts/{refactor_2021/dataset → dataset}/files/file-viewer-type.jsx +0 -0
  60. package/src/scripts/{refactor_2021/dataset/files/file.jsx → dataset/files/file.tsx} +30 -13
  61. package/src/scripts/{refactor_2021/dataset → dataset}/files/files.jsx +1 -1
  62. package/src/scripts/{refactor_2021/dataset → dataset}/files/flat-to-tree.js +0 -0
  63. package/src/scripts/{refactor_2021/dataset → dataset}/files/index.tsx +0 -0
  64. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/__tests__/__snapshots__/file-viewer-json.spec.jsx.snap +0 -0
  65. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/__tests__/file-viewer-json.spec.jsx +0 -0
  66. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/__tests__/parse-tabular.spec.js +0 -0
  67. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/file-viewer-csv.jsx +0 -0
  68. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/file-viewer-html.jsx +0 -0
  69. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/file-viewer-json.jsx +0 -0
  70. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/file-viewer-nifti.jsx +1 -1
  71. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/file-viewer-table.jsx +0 -0
  72. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/file-viewer-text.jsx +0 -0
  73. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/file-viewer-tsv.jsx +0 -0
  74. package/src/scripts/{refactor_2021/dataset → dataset}/files/viewers/parse-tabular.js +0 -0
  75. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/__snapshots__/cancel-button.spec.tsx.snap +0 -0
  76. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/__snapshots__/edit-button.spec.tsx.snap +0 -0
  77. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/__snapshots__/edit-list.spec.jsx.snap +0 -0
  78. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/__snapshots__/save-button.spec.tsx.snap +0 -0
  79. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/__snapshots__/select-input.spec.tsx.snap +0 -0
  80. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/cancel-button.spec.tsx +0 -0
  81. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/dataset-alert-draft.spec.tsx +0 -0
  82. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/dataset-citation.spec.jsx +0 -0
  83. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/doi-link.spec.tsx +0 -0
  84. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/edit-button.spec.tsx +0 -0
  85. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/edit-list.spec.jsx +0 -0
  86. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/save-button.spec.tsx +0 -0
  87. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/__tests__/select-input.spec.tsx +0 -0
  88. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/cancel-button.tsx +0 -0
  89. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/comments-fragments.js +0 -0
  90. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/copyable-tooltip.jsx +0 -0
  91. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/dataset-alert-draft.tsx +0 -0
  92. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/dataset-alert-version.tsx +0 -0
  93. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/dataset-citation.jsx +2 -4
  94. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/dataset-history.jsx +0 -0
  95. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/dataset-reviewers.ts +1 -1
  96. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/doi-link.tsx +0 -0
  97. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/edit-button.tsx +0 -0
  98. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/edit-description-field.jsx +0 -0
  99. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/edit-description-list.jsx +0 -0
  100. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/edit-list.jsx +0 -0
  101. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/number-input.tsx +0 -0
  102. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/save-button.tsx +0 -0
  103. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/select-input.tsx +0 -0
  104. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/text-array-input.tsx +0 -0
  105. package/src/scripts/{refactor_2021/dataset → dataset}/fragments/text-input.tsx +0 -0
  106. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/__snapshots__/delete.spec.jsx.snap +0 -0
  107. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/__snapshots__/deprecate-snapshot.spec.tsx.snap +0 -0
  108. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/__snapshots__/deprecate-version.spec.tsx.snap +0 -0
  109. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/__snapshots__/description.spec.jsx.snap +0 -0
  110. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/__snapshots__/update-permissions.spec.jsx.snap +0 -0
  111. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/cache-id.spec.js +0 -0
  112. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/delete.spec.jsx +0 -0
  113. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/deprecate-snapshot.spec.tsx +0 -0
  114. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/deprecate-version.spec.tsx +0 -0
  115. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/description.spec.jsx +0 -0
  116. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/remove-permissions.spec.tsx +0 -0
  117. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/__tests__/update-permissions.spec.jsx +0 -0
  118. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/cache-clear.jsx +0 -0
  119. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/cache-id.js +0 -0
  120. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/comment.jsx +0 -0
  121. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/create-anonymous-reviewer.tsx +0 -0
  122. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/dataset-relations.tsx +0 -0
  123. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/delete-anonymous-reviewer.tsx +0 -0
  124. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/delete-comment.jsx +2 -4
  125. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/delete-dataset-form.jsx +0 -0
  126. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/delete-dir.jsx +0 -0
  127. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/delete-file.jsx +0 -0
  128. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/delete.jsx +0 -0
  129. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/deprecate-version.tsx +0 -0
  130. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/description.jsx +1 -1
  131. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/flag-annex-object.jsx +1 -2
  132. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/follow.tsx +2 -2
  133. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/import-dataset.tsx +0 -0
  134. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/metadata-form.jsx +0 -0
  135. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/publish.jsx +0 -0
  136. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/readme.jsx +1 -1
  137. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/remove-annex-object.jsx +0 -0
  138. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/remove-permissions.tsx +0 -0
  139. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/revalidate.jsx +0 -0
  140. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/snapshot.tsx +1 -1
  141. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/star.tsx +2 -2
  142. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/submit-metadata.jsx +1 -1
  143. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/undo-deprecate-version.tsx +0 -0
  144. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/update-file.jsx +0 -0
  145. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/update-permissions.tsx +0 -0
  146. package/src/scripts/{refactor_2021/dataset → dataset}/mutations/update-ref.jsx +0 -0
  147. package/src/scripts/{refactor_2021/dataset → dataset}/routes/__tests__/__snapshots__/publish.spec.jsx.snap +0 -0
  148. package/src/scripts/{refactor_2021/dataset → dataset}/routes/__tests__/publish.spec.jsx +0 -0
  149. package/src/scripts/{refactor_2021/dataset → dataset}/routes/add-metadata.jsx +1 -1
  150. package/src/scripts/{refactor_2021/dataset → dataset}/routes/admin-datalad.jsx +0 -0
  151. package/src/scripts/{refactor_2021/dataset → dataset}/routes/admin-exports.jsx +3 -5
  152. package/src/scripts/{refactor_2021/dataset → dataset}/routes/delete-page.tsx +0 -0
  153. package/src/scripts/{refactor_2021/dataset → dataset}/routes/deprecate-snapshot-page.tsx +0 -0
  154. package/src/scripts/{refactor_2021/dataset → dataset}/routes/download-dataset.tsx +0 -0
  155. package/src/scripts/{refactor_2021/dataset → dataset}/routes/manage-anonymous-reviewers.tsx +0 -0
  156. package/src/scripts/{refactor_2021/dataset → dataset}/routes/manage-permissions.jsx +0 -0
  157. package/src/scripts/{refactor_2021/dataset → dataset}/routes/publish.jsx +0 -0
  158. package/src/scripts/{refactor_2021/dataset → dataset}/routes/snapshot.jsx +0 -0
  159. package/src/scripts/{refactor_2021/dataset → dataset}/snapshot-container.tsx +3 -3
  160. package/src/scripts/{refactor_2021 → errors}/freshdesk-widget.jsx +1 -1
  161. package/src/scripts/errors/freshdeskInterface.jsx +1 -1
  162. package/src/scripts/index.tsx +5 -5
  163. package/src/scripts/pages/admin/admin.jsx +1 -1
  164. package/src/scripts/pages/admin/user-tools.tsx +1 -1
  165. package/src/scripts/{refactor_2021/user → pages}/api.jsx +2 -2
  166. package/src/scripts/{faq → pages/faq}/__tests__/__snapshots__/faq.spec.jsx.snap +1 -1
  167. package/src/scripts/{faq → pages/faq}/__tests__/faq.spec.jsx +0 -0
  168. package/src/scripts/{faq → pages/faq}/faq-content.js +3 -5
  169. package/src/scripts/{faq → pages/faq}/faq.jsx +1 -1
  170. package/src/scripts/{refactor_2021 → pages/front-page}/aggregate-queries/aggregate-counts-container.tsx +0 -0
  171. package/src/scripts/{refactor_2021 → pages/front-page}/aggregate-queries/use-participant-count.ts +0 -0
  172. package/src/scripts/{refactor_2021 → pages/front-page}/aggregate-queries/use-publicDatasets-count.ts +0 -0
  173. package/src/scripts/pages/import-dataset.tsx +5 -5
  174. package/src/scripts/routes.tsx +3 -3
  175. package/src/scripts/{refactor_2021/search → search}/__tests__/search-container.spec.tsx +0 -0
  176. package/src/scripts/{refactor_2021/search → search}/__tests__/search-params-ctx.spec.tsx +0 -0
  177. package/src/scripts/{refactor_2021/search → search}/es-query-builders.ts +0 -0
  178. package/src/scripts/{refactor_2021/search → search}/filters-block-container.tsx +0 -0
  179. package/src/scripts/{refactor_2021/search → search}/initial-search-params.tsx +0 -0
  180. package/src/scripts/{refactor_2021/search → search}/inputs/__tests__/sort-by-select.spec.tsx +0 -0
  181. package/src/scripts/{refactor_2021/search → search}/inputs/admin-allDatasets-toggle.tsx +0 -0
  182. package/src/scripts/{refactor_2021/search → search}/inputs/age-range-input.tsx +0 -0
  183. package/src/scripts/{refactor_2021/search → search}/inputs/author-input.tsx +0 -0
  184. package/src/scripts/{refactor_2021/search → search}/inputs/date-radios.tsx +0 -0
  185. package/src/scripts/{refactor_2021/search → search}/inputs/diagnosis-select.tsx +0 -0
  186. package/src/scripts/{refactor_2021/search → search}/inputs/index.ts +0 -0
  187. package/src/scripts/{refactor_2021/search → search}/inputs/keyword-input.tsx +0 -0
  188. package/src/scripts/{refactor_2021/search → search}/inputs/modality-select.tsx +0 -0
  189. package/src/scripts/{refactor_2021/search → search}/inputs/pet/bodyParts_input.tsx +0 -0
  190. package/src/scripts/{refactor_2021/search → search}/inputs/pet/scannerManufacturersModelNames_input.tsx +0 -0
  191. package/src/scripts/{refactor_2021/search → search}/inputs/pet/scannerManufacturers_input.tsx +0 -0
  192. package/src/scripts/{refactor_2021/search → search}/inputs/pet/tracerNames_input.tsx +0 -0
  193. package/src/scripts/{refactor_2021/search → search}/inputs/pet/tracerRadionuclides_input.tsx +0 -0
  194. package/src/scripts/{refactor_2021/search → search}/inputs/section-select.tsx +0 -0
  195. package/src/scripts/{refactor_2021/search → search}/inputs/sex-radios.tsx +0 -0
  196. package/src/scripts/{refactor_2021/search → search}/inputs/show-datasets-radios.tsx +2 -4
  197. package/src/scripts/{refactor_2021/search → search}/inputs/sort-by-select.tsx +0 -0
  198. package/src/scripts/{refactor_2021/search → search}/inputs/species-select.tsx +0 -0
  199. package/src/scripts/{refactor_2021/search → search}/inputs/study-domain-input.tsx +0 -0
  200. package/src/scripts/{refactor_2021/search → search}/inputs/subject-count-range-input.tsx +0 -0
  201. package/src/scripts/{refactor_2021/search → search}/inputs/task-input.tsx +0 -0
  202. package/src/scripts/{refactor_2021/search → search}/search-container.tsx +1 -1
  203. package/src/scripts/{refactor_2021/search → search}/search-params-ctx.tsx +0 -0
  204. package/src/scripts/{refactor_2021/search → search}/search-routes.tsx +0 -0
  205. package/src/scripts/{refactor_2021/search → search}/use-search-results.tsx +0 -0
  206. package/src/scripts/test-utils.js +1 -1
  207. package/src/scripts/{refactor_2021/uploader → uploader}/add-path-to-files.js +0 -0
  208. package/src/scripts/{refactor_2021/uploader → uploader}/file-select.tsx +0 -0
  209. package/src/scripts/{refactor_2021/uploader → uploader}/file-upload.js +1 -1
  210. package/src/scripts/{refactor_2021/uploader → uploader}/input.jsx +0 -0
  211. package/src/scripts/{refactor_2021/uploader → uploader}/upload-button.jsx +0 -0
  212. package/src/scripts/{refactor_2021/uploader → uploader}/upload-disclaimer-input.tsx +0 -0
  213. package/src/scripts/{refactor_2021/uploader → uploader}/upload-disclaimer.jsx +0 -0
  214. package/src/scripts/{refactor_2021/uploader → uploader}/upload-file-status.jsx +0 -0
  215. package/src/scripts/{refactor_2021/uploader → uploader}/upload-issues.jsx +1 -1
  216. package/src/scripts/{refactor_2021/uploader → uploader}/upload-metadata.jsx +0 -0
  217. package/src/scripts/{refactor_2021/uploader → uploader}/upload-mutation.js +0 -0
  218. package/src/scripts/{refactor_2021/uploader → uploader}/upload-progress-button.jsx +0 -0
  219. package/src/scripts/{refactor_2021/uploader → uploader}/upload-progress-class.js +0 -0
  220. package/src/scripts/{refactor_2021/uploader → uploader}/upload-progress.jsx +0 -0
  221. package/src/scripts/{refactor_2021/uploader → uploader}/upload-rename.jsx +0 -0
  222. package/src/scripts/{refactor_2021/uploader → uploader}/upload-resume.jsx +0 -0
  223. package/src/scripts/{refactor_2021/uploader → uploader}/upload-select.jsx +0 -0
  224. package/src/scripts/{refactor_2021/uploader → uploader}/upload-status.jsx +0 -0
  225. package/src/scripts/{refactor_2021/uploader → uploader}/upload-step.jsx +0 -0
  226. package/src/scripts/{refactor_2021/uploader → uploader}/uploader-context.js +0 -0
  227. package/src/scripts/{refactor_2021/uploader → uploader}/uploader-location.js +0 -0
  228. package/src/scripts/{refactor_2021/uploader → uploader}/uploader-modal.jsx +0 -0
  229. package/src/scripts/{refactor_2021/uploader → uploader}/uploader-setup-routes.jsx +0 -0
  230. package/src/scripts/{refactor_2021/uploader → uploader}/uploader-status-routes.jsx +0 -0
  231. package/src/scripts/{refactor_2021/uploader → uploader}/uploader-view.jsx +1 -1
  232. package/src/scripts/{refactor_2021/uploader → uploader}/uploader.jsx +1 -1
  233. package/src/scripts/{refactor_2021/utils → utils}/cookies.js +0 -0
  234. package/src/scripts/{refactor_2021 → utils}/user-login-modal-ctx.tsx +1 -2
  235. package/src/scripts/{refactor_2021/validation → validation}/validation-panel.jsx +0 -0
  236. package/src/scripts/{refactor_2021/validation → validation}/validation-results.issues.issue.jsx +0 -0
  237. package/src/scripts/{refactor_2021/validation → validation}/validation-results.issues.jsx +0 -0
  238. package/src/scripts/{refactor_2021/validation → validation}/validation-results.jsx +0 -0
  239. package/src/scripts/{refactor_2021/validation → validation}/validation-status.jsx +0 -0
  240. package/src/scripts/{refactor_2021/validation → validation}/validation.jsx +1 -1
  241. package/src/scripts/refactor_2021/common/partials/toast-content.jsx +0 -18
  242. package/src/scripts/refactor_2021/utils/datalad.js +0 -13
  243. package/src/scripts/refactor_2021/utils/gtag.js +0 -22
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openneuro/app",
3
- "version": "4.5.0",
3
+ "version": "4.5.1",
4
4
  "description": "React JS web frontend for the OpenNeuro platform.",
5
5
  "license": "MIT",
6
6
  "main": "public/client.js",
@@ -19,10 +19,10 @@
19
19
  "@elastic/apm-rum": "5.9.1",
20
20
  "@emotion/react": "11.6.0",
21
21
  "@emotion/styled": "11.6.0",
22
- "@openneuro/client": "^4.5.0",
23
- "@openneuro/components": "^4.5.0",
22
+ "@openneuro/client": "^4.5.1",
23
+ "@openneuro/components": "^4.5.1",
24
24
  "babel-runtime": "^6.26.0",
25
- "bids-validator": "1.9.2",
25
+ "bids-validator": "1.9.3",
26
26
  "bytes": "^3.0.0",
27
27
  "comlink": "^4.0.5",
28
28
  "core-js": "^3.3.2",
@@ -116,5 +116,5 @@
116
116
  "publishConfig": {
117
117
  "access": "public"
118
118
  },
119
- "gitHead": "8771d59f40e642de9313468e8764f91fb0d811b2"
119
+ "gitHead": "92a2879d0f00400c240bfe3319f26c38db8ef866"
120
120
  }
@@ -1,4 +1,4 @@
1
- import { config } from '../../config'
1
+ import { config } from '../config'
2
2
 
3
3
  export default {
4
4
  google: `${config.api}auth/google`,
@@ -1,23 +1,23 @@
1
1
  import React, { FC, useContext } from 'react'
2
2
  import useState from 'react-usestateref'
3
- import UploaderContext from '../uploader/uploader-context.js'
4
- import UploadProgress from '../uploader/upload-progress.jsx'
3
+ import UploaderContext from '../../uploader/uploader-context.js'
4
+ import UploadProgress from '../../uploader/upload-progress.jsx'
5
5
  import { Header, LandingExpandedHeader } from '@openneuro/components/header'
6
6
  import { Input } from '@openneuro/components/input'
7
- import ModalitySelect from '../search/inputs/modality-select'
8
- import { SearchParamsCtx } from '../search/search-params-ctx'
9
- import initialSearchParams from '../search/initial-search-params'
10
- import { UserModalOpenCtx } from '../user-login-modal-ctx'
7
+ import ModalitySelect from '../../search/inputs/modality-select'
8
+ import { SearchParamsCtx } from '../../search/search-params-ctx'
9
+ import initialSearchParams from '../../search/initial-search-params'
10
+ import { UserModalOpenCtx } from '../../utils/user-login-modal-ctx'
11
11
  import { useLocation, useHistory } from 'react-router-dom'
12
12
  import { useCookies } from 'react-cookie'
13
- import signOut from '../authentication/signOut'
14
- import { getUnexpiredProfile } from '../authentication/profile'
15
- import FreshdeskWidget from '../freshdesk-widget'
16
- import AggregateCountsContainer from '../aggregate-queries/aggregate-counts-container'
17
- import loginUrls from '../authentication/loginUrls'
18
- import UploaderView from '../uploader/uploader-view.jsx'
19
- import UploadButton from '../uploader/upload-button.jsx'
20
- import UploadProgressButton from '../uploader/upload-progress-button.jsx'
13
+ import signOut from '../../authentication/signOut'
14
+ import { getUnexpiredProfile } from '../../authentication/profile'
15
+ import FreshdeskWidget from '../partials/freshdesk-widget'
16
+ import AggregateCountsContainer from '../../pages/front-page/aggregate-queries/aggregate-counts-container'
17
+ import loginUrls from '../../authentication/loginUrls'
18
+ import UploaderView from '../../uploader/uploader-view.jsx'
19
+ import UploadButton from '../../uploader/upload-button.jsx'
20
+ import UploadProgressButton from '../../uploader/upload-progress-button.jsx'
21
21
  const HeaderContainer: FC = () => {
22
22
  const history = useHistory()
23
23
 
@@ -134,7 +134,9 @@ const HeaderContainer: FC = () => {
134
134
  onSearch={() => {
135
135
  handleSubmit()
136
136
  }}
137
- clearSearchParams={() => { clearSearchParams() }}
137
+ clearSearchParams={() => {
138
+ clearSearchParams()
139
+ }}
138
140
  />
139
141
  )}
140
142
  />
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import PropTypes from 'prop-types'
3
3
  import { useCookies } from 'react-cookie'
4
- import { getProfile } from '../../refactor_2021/authentication/profile'
4
+ import { getProfile } from '../../authentication/profile'
5
5
  import { config } from '../../config'
6
6
 
7
7
  const buildCustomQuery = (customText, prepopulatedFields) => {
@@ -5,7 +5,7 @@ import Comment from './comment.jsx'
5
5
  import CommentEditor from './comment-editor.jsx'
6
6
  import LoggedIn from '../../authentication/logged-in.jsx'
7
7
  import LoggedOut from '../../authentication/logged-out.jsx'
8
- import ErrorBoundary from '../../../errors/errorBoundary.jsx'
8
+ import ErrorBoundary from '../../errors/errorBoundary.jsx'
9
9
 
10
10
  import ToastContent from '../../common/partials/toast-content.jsx'
11
11
 
@@ -1,28 +1,28 @@
1
- import { apm } from '../../apm'
1
+ import { apm } from '../apm'
2
2
  import React, { useEffect } from 'react'
3
3
  import PropTypes from 'prop-types'
4
4
  import { useQuery, gql, useApolloClient } from '@apollo/client'
5
5
  import { Loading } from '@openneuro/components/loading'
6
6
 
7
- import DatasetQueryContext from '../../datalad/dataset/dataset-query-context.js'
8
- import DatasetContext from '../../datalad/dataset/dataset-context.js'
7
+ import DatasetQueryContext from '../datalad/dataset/dataset-query-context.js'
8
+ import DatasetContext from '../datalad/dataset/dataset-context.js'
9
9
  import DatasetRoutes from './dataset-routes'
10
- import FilesSubscription from '../../datalad/subscriptions/files-subscription.jsx'
11
- import usePermissionsSubscription from '../../datalad/subscriptions/usePermissionsSubscription'
12
- import useSnapshotsUpdatedSubscriptions from '../../datalad/subscriptions/useSnapshotsUpdatedSubscriptions'
10
+ import FilesSubscription from '../datalad/subscriptions/files-subscription.jsx'
11
+ import usePermissionsSubscription from '../datalad/subscriptions/usePermissionsSubscription'
12
+ import useSnapshotsUpdatedSubscriptions from '../datalad/subscriptions/useSnapshotsUpdatedSubscriptions'
13
13
  import useDatasetDeletedSubscription, {
14
14
  datasetDeletedToast,
15
- } from '../../datalad/subscriptions/useDatasetDeletedSubscription.jsx'
16
- import useDraftSubscription from '../../datalad/subscriptions/useDraftSubscription.js'
17
- import * as DatasetQueryFragments from '../../datalad/dataset/dataset-query-fragments.js'
18
- import { DATASET_COMMENTS } from '../../datalad/dataset/comments-fragments.js'
15
+ } from '../datalad/subscriptions/useDatasetDeletedSubscription.jsx'
16
+ import useDraftSubscription from '../datalad/subscriptions/useDraftSubscription.js'
17
+ import * as DatasetQueryFragments from '../datalad/dataset/dataset-query-fragments.js'
18
+ import { DATASET_COMMENTS } from '../datalad/dataset/comments-fragments.js'
19
19
  import ErrorBoundary, {
20
20
  ErrorBoundaryAssertionFailureException,
21
- } from '../../errors/errorBoundary.jsx'
22
- import DatasetRedirect from '../../datalad/routes/dataset-redirect'
23
- import { trackAnalytics } from '../../utils/datalad'
24
- import FourOFourPage from '../../errors/404page'
25
- import FourOThreePage from '../../errors/403page'
21
+ } from '../errors/errorBoundary.jsx'
22
+ import DatasetRedirect from '../datalad/routes/dataset-redirect'
23
+ import { trackAnalytics } from '../utils/datalad'
24
+ import FourOFourPage from '../errors/404page'
25
+ import FourOThreePage from '../errors/403page'
26
26
 
27
27
  /**
28
28
  * Generate the dataset page query
@@ -1,6 +1,6 @@
1
1
  import React from 'react'
2
2
  import PropTypes from 'prop-types'
3
- import { getConfig, config } from '../../../config'
3
+ import { getConfig, config } from '../../config'
4
4
  import ShellExample from './shell-example.jsx'
5
5
  import {
6
6
  getUnexpiredProfile,
@@ -9,7 +9,7 @@ import {
9
9
  downloadCompleteToast,
10
10
  requestFailureToast,
11
11
  } from './native-file-toast.jsx'
12
- import { apm } from '../../../apm.js'
12
+ import { apm } from '../../apm.js'
13
13
  import { downloadDataset } from './download-query'
14
14
 
15
15
  /**
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import PropTypes from 'prop-types'
3
3
  import ShellExample from './shell-example.jsx'
4
- import { getConfig } from '../../../config'
4
+ import { getConfig } from '../../config'
5
5
 
6
6
  export const DownloadSampleS3 = ({ datasetId, s3Bucket }) => (
7
7
  <ShellExample>
@@ -7,7 +7,7 @@ import parseISO from 'date-fns/parseISO'
7
7
 
8
8
  import Validation from '../validation/validation.jsx'
9
9
  import Files from './files'
10
- import { config } from '../../config'
10
+ import { config } from '../config'
11
11
  import {
12
12
  getUnexpiredProfile,
13
13
  hasEditPermissions,
@@ -22,7 +22,7 @@ exports[`File component renders for dataset snapshots 1`] = `
22
22
  <span
23
23
  class=" "
24
24
  data-flow="up"
25
- data-tooltip="Download"
25
+ data-tooltip="Download: 500B"
26
26
  >
27
27
  <span
28
28
  class="edit-file download-file"
@@ -83,7 +83,7 @@ exports[`File component renders with common props 1`] = `
83
83
  <span
84
84
  class=" "
85
85
  data-flow="up"
86
- data-tooltip="Download"
86
+ data-tooltip="Download: 500B"
87
87
  >
88
88
  <span
89
89
  class="edit-file download-file"
@@ -1,6 +1,6 @@
1
1
  import React from 'react'
2
2
  import { render, screen, fireEvent } from '@testing-library/react'
3
- import DatasetQueryContext from '../../../../datalad/dataset/dataset-query-context.js'
3
+ import DatasetQueryContext from '../../../datalad/dataset/dataset-query-context.js'
4
4
  import FileTreeUnloadedDirectory, {
5
5
  mergeNewFiles,
6
6
  } from '../file-tree-unloaded-directory.jsx'
@@ -1,25 +1,31 @@
1
1
  import React from 'react'
2
2
  import { render, screen } from '@testing-library/react'
3
3
  import { MemoryRouter } from 'react-router-dom'
4
- import File from '../file.jsx'
4
+ import File from '../file'
5
5
 
6
6
  describe('File component', () => {
7
7
  it('renders with common props', () => {
8
8
  const { asFragment } = render(
9
- <File datasetId="ds001" path="" filename="README" />,
9
+ <File datasetId="ds001" path="" filename="README" size={500} />,
10
10
  { wrapper: MemoryRouter },
11
11
  )
12
12
  expect(asFragment()).toMatchSnapshot()
13
13
  })
14
14
  it('renders for dataset snapshots', () => {
15
15
  const { asFragment } = render(
16
- <File datasetId="ds001" snapshotTag="1.0.0" path="" filename="README" />,
16
+ <File
17
+ datasetId="ds001"
18
+ snapshotTag="1.0.0"
19
+ path=""
20
+ filename="README"
21
+ size={500}
22
+ />,
17
23
  { wrapper: MemoryRouter },
18
24
  )
19
25
  expect(asFragment()).toMatchSnapshot()
20
26
  })
21
27
  it('generates correct download links for top level files', () => {
22
- render(<File datasetId="ds001" path="" filename="README" />, {
28
+ render(<File datasetId="ds001" path="" filename="README" size={500} />, {
23
29
  wrapper: MemoryRouter,
24
30
  })
25
31
  expect(screen.getByRole('link', { name: 'download file' })).toHaveAttribute(
@@ -33,6 +39,7 @@ describe('File component', () => {
33
39
  datasetId="ds001"
34
40
  path="sub-01:anat"
35
41
  filename="sub-01_T1w.nii.gz"
42
+ size={2000000}
36
43
  />,
37
44
  { wrapper: MemoryRouter },
38
45
  )
@@ -2,9 +2,9 @@ import React from 'react'
2
2
  import PropTypes from 'prop-types'
3
3
  import { Link } from 'react-router-dom'
4
4
  import FileView from './file-view.jsx'
5
- import { apiPath } from './file.jsx'
5
+ import { apiPath } from './file'
6
6
  import styled from '@emotion/styled'
7
- import { Media } from '../../../styles/media'
7
+ import { Media } from '../../styles/media'
8
8
 
9
9
  const PathBreadcrumb = styled.div`
10
10
  font-size: 14px;
@@ -1,6 +1,6 @@
1
1
  import React, { useState, useContext, useEffect } from 'react'
2
2
  import PropTypes from 'prop-types'
3
- import DatasetQueryContext from '../../../datalad/dataset/dataset-query-context.js'
3
+ import DatasetQueryContext from '../../datalad/dataset/dataset-query-context.js'
4
4
  import FileTreeLoading from './file-tree-loading.jsx'
5
5
  import { gql } from '@apollo/client'
6
6
  import { AccordionTab } from '@openneuro/components/accordion'
@@ -1,10 +1,10 @@
1
1
  import React from 'react'
2
2
  import PropTypes from 'prop-types'
3
- import File from './file.jsx'
3
+ import File from './file'
4
4
  import UpdateFile from '../mutations/update-file.jsx'
5
5
  import DeleteDir from '../mutations/delete-dir.jsx'
6
6
  import FileTreeUnloadedDirectory from './file-tree-unloaded-directory.jsx'
7
- import { Media } from '../../../styles/media'
7
+ import { Media } from '../../styles/media'
8
8
  import { AccordionTab } from '@openneuro/components/accordion'
9
9
 
10
10
  export const sortByFilename = (a, b) => a.filename.localeCompare(b.filename)
@@ -66,6 +66,7 @@ const FileTree = ({
66
66
  datasetId={datasetId}
67
67
  snapshotTag={snapshotTag}
68
68
  path={path}
69
+ size={file.size}
69
70
  editMode={editMode}
70
71
  toggleFileToDelete={toggleFileToDelete}
71
72
  isFileToBeDeleted={isFileToBeDeleted}
@@ -1,6 +1,6 @@
1
1
  import React, { useState, useEffect } from 'react'
2
2
  import { Loading } from '@openneuro/components/loading'
3
- import { apiPath } from './file.jsx'
3
+ import { apiPath } from './file'
4
4
  import FileViewerType from './file-viewer-type.jsx'
5
5
 
6
6
  const FileView = ({ datasetId, snapshotTag, path }) => {
@@ -1,9 +1,9 @@
1
1
  import React from 'react'
2
- import PropTypes from 'prop-types'
2
+ import bytes from 'bytes'
3
3
  import { Link } from 'react-router-dom'
4
4
  import UpdateFile from '../mutations/update-file.jsx'
5
5
  import DeleteFile from '../mutations/delete-file.jsx'
6
- import { Media } from '../../../styles/media'
6
+ import { Media } from '../../styles/media'
7
7
  import RemoveAnnexObject from '../mutations/remove-annex-object.jsx'
8
8
  import FlagAnnexObject from '../mutations/flag-annex-object.jsx'
9
9
  import { isAdmin } from '../../authentication/admin-user.jsx'
@@ -79,8 +79,33 @@ export const apiPath = (datasetId, snapshotTag, filePath) => {
79
79
  return `/crn/datasets/${datasetId}${snapshotPath}/files/${filePath}`
80
80
  }
81
81
 
82
+ interface FileProps {
83
+ id: string
84
+ size: number
85
+ datasetId: string
86
+ path: string
87
+ filename: string
88
+ snapshotTag: string
89
+ editMode: boolean
90
+ isMobile: boolean
91
+ annexed: boolean
92
+ annexKey: string
93
+ datasetPermissions: string[]
94
+ toggleFileToDelete: ({
95
+ id,
96
+ path,
97
+ filename,
98
+ }: {
99
+ id: string
100
+ path: string
101
+ filename: string
102
+ }) => boolean
103
+ isFileToBeDeleted: (id: string) => boolean
104
+ }
105
+
82
106
  const File = ({
83
107
  id,
108
+ size,
84
109
  datasetId,
85
110
  path,
86
111
  filename,
@@ -92,7 +117,7 @@ const File = ({
92
117
  datasetPermissions,
93
118
  toggleFileToDelete,
94
119
  isFileToBeDeleted,
95
- }) => {
120
+ }: FileProps) => {
96
121
  const { icon, color } = getFileIcon(filename)
97
122
  const snapshotVersionPath = snapshotTag ? `/versions/${snapshotTag}` : ''
98
123
  // React route to display the file
@@ -109,7 +134,7 @@ const File = ({
109
134
  {filename}
110
135
  <span className="filetree-editfile">
111
136
  <Media greaterThanOrEqual="medium">
112
- <Tooltip tooltip="Download">
137
+ <Tooltip tooltip={`Download: ${bytes.format(size) as string}`}>
113
138
  <span className="edit-file download-file">
114
139
  <a
115
140
  href={apiPath(datasetId, snapshotTag, filePath(path, filename))}
@@ -131,7 +156,7 @@ const File = ({
131
156
  <Media greaterThanOrEqual="medium">
132
157
  <Tooltip tooltip="Update">
133
158
  <UpdateFile datasetId={datasetId} path={path}>
134
- <i className="fa fa-file-o" />
159
+ <i className="fa fa-cloud-upload" />
135
160
  </UpdateFile>
136
161
  </Tooltip>
137
162
  </Media>
@@ -205,12 +230,4 @@ const File = ({
205
230
  )
206
231
  }
207
232
 
208
- File.propTypes = {
209
- datasetId: PropTypes.string,
210
- path: PropTypes.string,
211
- filename: PropTypes.string,
212
- snapshotTag: PropTypes.string,
213
- editMode: PropTypes.bool,
214
- }
215
-
216
233
  export default File
@@ -2,7 +2,7 @@ import React, { useState } from 'react'
2
2
  import PropTypes from 'prop-types'
3
3
  import { flatToTree } from './flat-to-tree.js'
4
4
  import FileTree from './file-tree.jsx'
5
- import { Media } from '../../../styles/media'
5
+ import { Media } from '../../styles/media'
6
6
  import { useMutation, gql } from '@apollo/client'
7
7
  import { WarnButton } from '@openneuro/components/warn-button'
8
8
  import { AccordionWrap } from '@openneuro/components/accordion'
@@ -1,6 +1,6 @@
1
1
  import React from 'react'
2
2
  import PropTypes from 'prop-types'
3
- import Papaya from '../../../../common/partials/papaya.jsx'
3
+ import Papaya from '../../../common/partials/papaya.jsx'
4
4
  import styled from '@emotion/styled'
5
5
 
6
6
  const StyleWrapper = styled.div`