synapse-react-client 4.0.32 → 4.0.34

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 (331) hide show
  1. package/dist/SWC.index.js +1 -1
  2. package/dist/components/AccessRequirementList/AccessRequirementList.d.ts +5 -1
  3. package/dist/components/AccessRequirementList/AccessRequirementList.d.ts.map +1 -1
  4. package/dist/components/AccessRequirementList/AccessRequirementList.js +152 -85
  5. package/dist/components/AccessRequirementList/AccessRequirementList.js.map +1 -1
  6. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess.js +1 -0
  7. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess.js.map +1 -1
  8. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.d.ts +1 -0
  9. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.d.ts.map +1 -1
  10. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js +62 -43
  11. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js.map +1 -1
  12. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.d.ts +6 -0
  13. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.d.ts.map +1 -1
  14. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.js +227 -147
  15. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.js.map +1 -1
  16. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DocumentTemplate.d.ts.map +1 -1
  17. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DocumentTemplate.js +28 -24
  18. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DocumentTemplate.js.map +1 -1
  19. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep.d.ts +21 -0
  20. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep.d.ts.map +1 -0
  21. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep.js +163 -0
  22. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep.js.map +1 -0
  23. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManualUploadDucStep/ManualUploadDucStep.d.ts +22 -0
  24. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManualUploadDucStep/ManualUploadDucStep.d.ts.map +1 -0
  25. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManualUploadDucStep/ManualUploadDucStep.js +264 -0
  26. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManualUploadDucStep/ManualUploadDucStep.js.map +1 -0
  27. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/RequestDataAccessSuccess.js +1 -0
  28. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/RequestDataAccessSuccess.js.map +1 -1
  29. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.d.ts.map +1 -1
  30. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.js +166 -71
  31. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.js.map +1 -1
  32. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewCollaboratorsAndSigningOfficialAccordion.d.ts +13 -0
  33. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewCollaboratorsAndSigningOfficialAccordion.d.ts.map +1 -0
  34. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewCollaboratorsAndSigningOfficialAccordion.js +122 -0
  35. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewCollaboratorsAndSigningOfficialAccordion.js.map +1 -0
  36. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep.d.ts +17 -0
  37. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep.d.ts.map +1 -0
  38. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep.js +112 -0
  39. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep.js.map +1 -0
  40. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep.d.ts +22 -0
  41. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep.d.ts.map +1 -0
  42. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep.js +193 -0
  43. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep.js.map +1 -0
  44. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/UploadDocumentField.d.ts +1 -0
  45. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/UploadDocumentField.d.ts.map +1 -1
  46. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/UploadDocumentField.js +7 -7
  47. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/UploadDocumentField.js.map +1 -1
  48. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/styles.d.ts +3 -0
  49. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/styles.d.ts.map +1 -0
  50. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/styles.js +9 -0
  51. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/styles.js.map +1 -0
  52. package/dist/components/CopyToClipboardIcon.d.ts +2 -1
  53. package/dist/components/CopyToClipboardIcon.d.ts.map +1 -1
  54. package/dist/components/CopyToClipboardIcon.js +6 -6
  55. package/dist/components/CopyToClipboardIcon.js.map +1 -1
  56. package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
  57. package/dist/components/DataGrid/SynapseGrid.js +230 -215
  58. package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
  59. package/dist/components/DataGrid/SyncGridWithSourceButton.js +3 -3
  60. package/dist/components/DataGrid/SyncGridWithSourceButton.js.map +1 -1
  61. package/dist/components/DataGrid/columns/DateTimeColumn.js +1 -1
  62. package/dist/components/DataGrid/columns/DateTimeColumn.js.map +1 -1
  63. package/dist/components/DataGrid/components/ReorderColumnsButton.d.ts +10 -0
  64. package/dist/components/DataGrid/components/ReorderColumnsButton.d.ts.map +1 -0
  65. package/dist/components/DataGrid/components/ReorderColumnsButton.js +37 -0
  66. package/dist/components/DataGrid/components/ReorderColumnsButton.js.map +1 -0
  67. package/dist/components/DataGrid/components/ReorderColumnsDialog.d.ts +12 -0
  68. package/dist/components/DataGrid/components/ReorderColumnsDialog.d.ts.map +1 -0
  69. package/dist/components/DataGrid/components/ReorderColumnsDialog.js +93 -0
  70. package/dist/components/DataGrid/components/ReorderColumnsDialog.js.map +1 -0
  71. package/dist/components/DataGrid/hooks/useGetSchemaForGrid.js +1 -1
  72. package/dist/components/DataGrid/utils/applyModelChange.d.ts +3 -0
  73. package/dist/components/DataGrid/utils/applyModelChange.d.ts.map +1 -1
  74. package/dist/components/DataGrid/utils/applyModelChange.js +5 -0
  75. package/dist/components/DataGrid/utils/applyModelChange.js.map +1 -1
  76. package/dist/components/DataGrid/utils/computeDefaultColumnOrder.d.ts +8 -0
  77. package/dist/components/DataGrid/utils/computeDefaultColumnOrder.d.ts.map +1 -0
  78. package/dist/components/DataGrid/utils/computeDefaultColumnOrder.js +14 -0
  79. package/dist/components/DataGrid/utils/computeDefaultColumnOrder.js.map +1 -0
  80. package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js +1 -1
  81. package/dist/components/EntityFinder/details/view/DetailsView.d.ts.map +1 -1
  82. package/dist/components/EntityFinder/details/view/DetailsView.js +119 -122
  83. package/dist/components/EntityFinder/details/view/DetailsView.js.map +1 -1
  84. package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.d.ts +5 -1
  85. package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.d.ts.map +1 -1
  86. package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js +7 -7
  87. package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js.map +1 -1
  88. package/dist/components/EntityLink.d.ts +2 -0
  89. package/dist/components/EntityLink.d.ts.map +1 -1
  90. package/dist/components/EntityLink.js +15 -11
  91. package/dist/components/EntityLink.js.map +1 -1
  92. package/dist/components/EntitySidebar/AccessAndPermissions.css +1 -0
  93. package/dist/components/EntitySidebar/AccessAndPermissions.d.ts +7 -0
  94. package/dist/components/EntitySidebar/AccessAndPermissions.d.ts.map +1 -0
  95. package/dist/components/EntitySidebar/AccessAndPermissions.js +75 -0
  96. package/dist/components/EntitySidebar/AccessAndPermissions.js.map +1 -0
  97. package/dist/components/EntitySidebar/AccessAndPermissions.module.js +15 -0
  98. package/dist/components/EntitySidebar/AccessAndPermissions.module.js.map +1 -0
  99. package/dist/components/EntitySidebar/AccessAndPermissions.module.scss +58 -0
  100. package/dist/components/EntitySidebar/EntitySidebar.css +1 -1
  101. package/dist/components/EntitySidebar/EntitySidebar.d.ts.map +1 -1
  102. package/dist/components/EntitySidebar/EntitySidebar.js +54 -42
  103. package/dist/components/EntitySidebar/EntitySidebar.js.map +1 -1
  104. package/dist/components/EntitySidebar/EntitySidebar.module.js +10 -11
  105. package/dist/components/EntitySidebar/EntitySidebar.module.js.map +1 -1
  106. package/dist/components/EntitySidebar/EntitySidebar.module.scss +6 -13
  107. package/dist/components/EntityTreeTable/EntityTreeTable.css +1 -1
  108. package/dist/components/EntityTreeTable/EntityTreeTable.module.js +1 -1
  109. package/dist/components/EntityTreeTable/EntityTreeTable.module.js.map +1 -1
  110. package/dist/components/EntityTreeTable/EntityTreeTable.module.scss +18 -0
  111. package/dist/components/EntityTreeTable/components/ColumnHeaders.d.ts.map +1 -1
  112. package/dist/components/EntityTreeTable/components/ColumnHeaders.js +20 -7
  113. package/dist/components/EntityTreeTable/components/ColumnHeaders.js.map +1 -1
  114. package/dist/components/EntityTreeTable/components/EntityNameCell.d.ts.map +1 -1
  115. package/dist/components/EntityTreeTable/components/EntityNameCell.js +3 -1
  116. package/dist/components/EntityTreeTable/components/EntityNameCell.js.map +1 -1
  117. package/dist/components/EntityTreeTable/components/EntityTreeTableView.d.ts.map +1 -1
  118. package/dist/components/EntityTreeTable/components/EntityTreeTableView.js +4 -1
  119. package/dist/components/EntityTreeTable/components/EntityTreeTableView.js.map +1 -1
  120. package/dist/components/EntityTreeTable/components/IdColumnHeader.d.ts.map +1 -1
  121. package/dist/components/EntityTreeTable/components/IdColumnHeader.js +3 -1
  122. package/dist/components/EntityTreeTable/components/IdColumnHeader.js.map +1 -1
  123. package/dist/components/EntityTreeTable/hooks/useTableColumns.d.ts.map +1 -1
  124. package/dist/components/EntityTreeTable/hooks/useTableColumns.js +24 -19
  125. package/dist/components/EntityTreeTable/hooks/useTableColumns.js.map +1 -1
  126. package/dist/components/FilePreview/PdfPreview.d.ts.map +1 -1
  127. package/dist/components/FilePreview/PdfPreview.js +23 -20
  128. package/dist/components/FilePreview/PdfPreview.js.map +1 -1
  129. package/dist/components/Forum/DiscussionEmpty.css +1 -1
  130. package/dist/components/Forum/DiscussionEmpty.module.js +4 -4
  131. package/dist/components/Forum/DiscussionEmpty.module.js.map +1 -1
  132. package/dist/components/Forum/DiscussionEmpty.module.scss +3 -6
  133. package/dist/components/GenericCard/SynapseCardLabel.d.ts.map +1 -1
  134. package/dist/components/GenericCard/SynapseCardLabel.js +100 -99
  135. package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
  136. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPicker.css +1 -0
  137. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPicker.d.ts +29 -0
  138. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPicker.d.ts.map +1 -0
  139. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPicker.js +229 -0
  140. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPicker.js.map +1 -0
  141. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPicker.module.js +9 -0
  142. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPicker.module.js.map +1 -0
  143. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPicker.module.scss +19 -0
  144. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPickerModal.d.ts +23 -0
  145. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPickerModal.d.ts.map +1 -0
  146. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPickerModal.js +39 -0
  147. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaPickerModal.js.map +1 -0
  148. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaVersionSelectionContext.d.ts +14 -0
  149. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaVersionSelectionContext.d.ts.map +1 -0
  150. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaVersionSelectionContext.js +12 -0
  151. package/dist/components/JsonSchema/JsonSchemaPicker/JsonSchemaVersionSelectionContext.js.map +1 -0
  152. package/dist/components/JsonSchema/JsonSchemaPicker/VersionSelectionType.d.ts +17 -0
  153. package/dist/components/JsonSchema/JsonSchemaPicker/VersionSelectionType.d.ts.map +1 -0
  154. package/dist/components/JsonSchema/JsonSchemaPicker/VersionSelectionType.js +8 -0
  155. package/dist/components/JsonSchema/JsonSchemaPicker/VersionSelectionType.js.map +1 -0
  156. package/dist/components/JsonSchema/JsonSchemaPicker/index.d.ts +6 -0
  157. package/dist/components/JsonSchema/JsonSchemaPicker/index.d.ts.map +1 -0
  158. package/dist/components/JsonSchema/JsonSchemaPicker/index.js +4 -0
  159. package/dist/components/JsonSchema/JsonSchemaPicker/useJsonSchemaOrganizations.d.ts +20 -0
  160. package/dist/components/JsonSchema/JsonSchemaPicker/useJsonSchemaOrganizations.d.ts.map +1 -0
  161. package/dist/components/JsonSchema/JsonSchemaPicker/useJsonSchemaOrganizations.js +25 -0
  162. package/dist/components/JsonSchema/JsonSchemaPicker/useJsonSchemaOrganizations.js.map +1 -0
  163. package/dist/components/JsonSchema/JsonSchemaPicker/useJsonSchemaSelection.d.ts +35 -0
  164. package/dist/components/JsonSchema/JsonSchemaPicker/useJsonSchemaSelection.d.ts.map +1 -0
  165. package/dist/components/JsonSchema/JsonSchemaPicker/useJsonSchemaSelection.js +60 -0
  166. package/dist/components/JsonSchema/JsonSchemaPicker/useJsonSchemaSelection.js.map +1 -0
  167. package/dist/components/ProjectInfo/ProjectInfo.css +1 -1
  168. package/dist/components/ProjectInfo/ProjectInfo.module.js +5 -5
  169. package/dist/components/ProjectInfo/ProjectInfo.module.js.map +1 -1
  170. package/dist/components/ProjectInfo/ProjectInfo.module.scss +2 -4
  171. package/dist/components/ProjectInfo/ProjectInfoPopover.d.ts.map +1 -1
  172. package/dist/components/ProjectInfo/ProjectInfoPopover.js +17 -16
  173. package/dist/components/ProjectInfo/ProjectInfoPopover.js.map +1 -1
  174. package/dist/components/ProjectStorage/ProjectDataAvailability.d.ts.map +1 -1
  175. package/dist/components/ProjectStorage/ProjectDataAvailability.js +16 -16
  176. package/dist/components/ProjectStorage/ProjectDataAvailability.js.map +1 -1
  177. package/dist/components/ProvenanceGraph/ProvenanceGraph.d.ts.map +1 -1
  178. package/dist/components/ProvenanceGraph/ProvenanceGraph.js +95 -95
  179. package/dist/components/ProvenanceGraph/ProvenanceGraph.js.map +1 -1
  180. package/dist/components/SchemaDrivenAnnotationEditor/SchemaDrivenAnnotationEditor.js +2 -2
  181. package/dist/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.d.ts.map +1 -1
  182. package/dist/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.js +120 -92
  183. package/dist/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.js.map +1 -1
  184. package/dist/components/StorybookComponentWrapper.d.ts.map +1 -1
  185. package/dist/components/StorybookComponentWrapper.js +1 -3
  186. package/dist/components/StorybookComponentWrapper.js.map +1 -1
  187. package/dist/components/SynapseChat/SynapseChat.d.ts.map +1 -1
  188. package/dist/components/SynapseChat/SynapseChat.js +40 -40
  189. package/dist/components/SynapseChat/SynapseChat.js.map +1 -1
  190. package/dist/components/SynapseChat/SynapseChatInteraction.d.ts +3 -2
  191. package/dist/components/SynapseChat/SynapseChatInteraction.d.ts.map +1 -1
  192. package/dist/components/SynapseChat/SynapseChatInteraction.js.map +1 -1
  193. package/dist/components/SynapseChat/components/AttachmentChip/AttachmentChip.css +1 -1
  194. package/dist/components/SynapseChat/components/AttachmentChip/AttachmentChip.d.ts.map +1 -1
  195. package/dist/components/SynapseChat/components/AttachmentChip/AttachmentChip.js +0 -7
  196. package/dist/components/SynapseChat/components/AttachmentChip/AttachmentChip.js.map +1 -1
  197. package/dist/components/SynapseChat/components/AttachmentChip/AttachmentChip.module.js +2 -2
  198. package/dist/components/SynapseChat/components/AttachmentChip/AttachmentChip.module.js.map +1 -1
  199. package/dist/components/SynapseChat/components/AttachmentChip/AttachmentChip.module.scss +12 -2
  200. package/dist/components/SynapseChat/components/ChatAttachmentStrip/ChatAttachmentStrip.css +1 -1
  201. package/dist/components/SynapseChat/components/ChatAttachmentStrip/ChatAttachmentStrip.module.js +3 -3
  202. package/dist/components/SynapseChat/components/ChatAttachmentStrip/ChatAttachmentStrip.module.js.map +1 -1
  203. package/dist/components/SynapseChat/components/ChatAttachmentStrip/ChatAttachmentStrip.module.scss +5 -1
  204. package/dist/components/TanStackTable/ColumnHeader.d.ts +7 -0
  205. package/dist/components/TanStackTable/ColumnHeader.d.ts.map +1 -1
  206. package/dist/components/TanStackTable/ColumnHeader.js +10 -9
  207. package/dist/components/TanStackTable/ColumnHeader.js.map +1 -1
  208. package/dist/components/TanStackTable/StyledVirtualTanStackTable.d.ts +8 -0
  209. package/dist/components/TanStackTable/StyledVirtualTanStackTable.d.ts.map +1 -1
  210. package/dist/components/TanStackTable/StyledVirtualTanStackTable.js +31 -22
  211. package/dist/components/TanStackTable/StyledVirtualTanStackTable.js.map +1 -1
  212. package/dist/components/TanStackTable/useFetchNextPageOnScrollToBottom.d.ts +21 -0
  213. package/dist/components/TanStackTable/useFetchNextPageOnScrollToBottom.d.ts.map +1 -0
  214. package/dist/components/TanStackTable/useFetchNextPageOnScrollToBottom.js +22 -0
  215. package/dist/components/TanStackTable/useFetchNextPageOnScrollToBottom.js.map +1 -0
  216. package/dist/components/dataaccess/AccessRequirementDashboard.d.ts.map +1 -1
  217. package/dist/components/dataaccess/AccessRequirementDashboard.js +55 -55
  218. package/dist/components/dataaccess/AccessRequirementDashboard.js.map +1 -1
  219. package/dist/components/dataaccess/EDucTemplateTable.d.ts +3 -0
  220. package/dist/components/dataaccess/EDucTemplateTable.d.ts.map +1 -0
  221. package/dist/components/dataaccess/EDucTemplateTable.js +213 -0
  222. package/dist/components/dataaccess/EDucTemplateTable.js.map +1 -0
  223. package/dist/components/dataaccess/ReviewerDashboard.d.ts.map +1 -1
  224. package/dist/components/dataaccess/ReviewerDashboard.js +44 -34
  225. package/dist/components/dataaccess/ReviewerDashboard.js.map +1 -1
  226. package/dist/components/entity/metadata/AnnotationsTable.js +2 -2
  227. package/dist/components/entity/metadata/AnnotationsTable.js.map +1 -1
  228. package/dist/components/entity/page/breadcrumbs/EntityPageBreadcrumbs.d.ts.map +1 -1
  229. package/dist/components/entity/page/breadcrumbs/EntityPageBreadcrumbs.js +8 -8
  230. package/dist/components/entity/page/breadcrumbs/EntityPageBreadcrumbs.js.map +1 -1
  231. package/dist/components/entity/page/title_bar/EntityPageTitleBar.d.ts +0 -1
  232. package/dist/components/entity/page/title_bar/EntityPageTitleBar.d.ts.map +1 -1
  233. package/dist/components/entity/page/title_bar/EntityPageTitleBar.js +22 -22
  234. package/dist/components/entity/page/title_bar/EntityPageTitleBar.js.map +1 -1
  235. package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.d.ts.map +1 -1
  236. package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js +62 -68
  237. package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js.map +1 -1
  238. package/dist/components/styled/StyledTableContainer.d.ts +1 -0
  239. package/dist/components/styled/StyledTableContainer.d.ts.map +1 -1
  240. package/dist/components/styled/StyledTableContainer.js +3 -3
  241. package/dist/components/styled/StyledTableContainer.js.map +1 -1
  242. package/dist/components/widgets/facet-nav/FacetNavPanel.d.ts +2 -0
  243. package/dist/components/widgets/facet-nav/FacetNavPanel.d.ts.map +1 -1
  244. package/dist/components/widgets/facet-nav/FacetNavPanel.js +35 -40
  245. package/dist/components/widgets/facet-nav/FacetNavPanel.js.map +1 -1
  246. package/dist/mocks/eDuc/mockEDucTemplates.d.ts +7 -0
  247. package/dist/mocks/eDuc/mockEDucTemplates.d.ts.map +1 -0
  248. package/dist/mocks/eDuc/mockEDucTemplates.js +18 -0
  249. package/dist/mocks/eDuc/mockEDucTemplates.js.map +1 -0
  250. package/dist/mocks/jsonschema/mockJsonSchemaListing.d.ts +31 -0
  251. package/dist/mocks/jsonschema/mockJsonSchemaListing.d.ts.map +1 -0
  252. package/dist/mocks/jsonschema/mockJsonSchemaListing.js +101 -0
  253. package/dist/mocks/jsonschema/mockJsonSchemaListing.js.map +1 -0
  254. package/dist/mocks/msw/handlers/dataAccessRequestHandlers.d.ts.map +1 -1
  255. package/dist/mocks/msw/handlers/dataAccessRequestHandlers.js +48 -23
  256. package/dist/mocks/msw/handlers/dataAccessRequestHandlers.js.map +1 -1
  257. package/dist/mocks/msw/handlers/eDucTemplateHandlers.d.ts +2 -0
  258. package/dist/mocks/msw/handlers/eDucTemplateHandlers.d.ts.map +1 -0
  259. package/dist/mocks/msw/handlers/eDucTemplateHandlers.js +14 -0
  260. package/dist/mocks/msw/handlers/eDucTemplateHandlers.js.map +1 -0
  261. package/dist/mocks/msw/handlers/jsonSchemaListingHandlers.d.ts +8 -0
  262. package/dist/mocks/msw/handlers/jsonSchemaListingHandlers.d.ts.map +1 -0
  263. package/dist/mocks/msw/handlers/jsonSchemaListingHandlers.js +30 -0
  264. package/dist/mocks/msw/handlers/jsonSchemaListingHandlers.js.map +1 -0
  265. package/dist/mocks/msw/handlers.d.ts.map +1 -1
  266. package/dist/mocks/msw/handlers.js +55 -51
  267. package/dist/mocks/msw/handlers.js.map +1 -1
  268. package/dist/style/abstracts/_cssVariables.scss +13 -0
  269. package/dist/style/components/entity_finder/_details-view.scss +0 -10
  270. package/dist/style/components/facet_nav/_facet-nav-panel.scss +0 -6
  271. package/dist/style/main.css +1 -1
  272. package/dist/synapse-client/SynapseClient.d.ts.map +1 -1
  273. package/dist/synapse-client/SynapseClient.js +2 -6
  274. package/dist/synapse-client/SynapseClient.js.map +1 -1
  275. package/dist/synapse-queries/KeyFactory.d.ts +3 -0
  276. package/dist/synapse-queries/KeyFactory.d.ts.map +1 -1
  277. package/dist/synapse-queries/KeyFactory.js +9 -0
  278. package/dist/synapse-queries/KeyFactory.js.map +1 -1
  279. package/dist/synapse-queries/dataaccess/useEDuc.d.ts +3 -3
  280. package/dist/synapse-queries/dataaccess/useEDuc.d.ts.map +1 -1
  281. package/dist/synapse-queries/dataaccess/useEDuc.js +40 -35
  282. package/dist/synapse-queries/dataaccess/useEDuc.js.map +1 -1
  283. package/dist/synapse-queries/entity/index.d.ts +0 -2
  284. package/dist/synapse-queries/entity/index.d.ts.map +1 -1
  285. package/dist/synapse-queries/entity/index.js +8 -10
  286. package/dist/synapse-queries/index.d.ts +1 -0
  287. package/dist/synapse-queries/index.d.ts.map +1 -1
  288. package/dist/synapse-queries/index.js +136 -128
  289. package/dist/synapse-queries/index.js.map +1 -1
  290. package/dist/synapse-queries/jsonschema/index.d.ts +6 -0
  291. package/dist/synapse-queries/jsonschema/index.d.ts.map +1 -0
  292. package/dist/synapse-queries/jsonschema/index.js +6 -0
  293. package/dist/synapse-queries/jsonschema/useEntityBoundSchema.d.ts.map +1 -0
  294. package/dist/synapse-queries/{entity → jsonschema}/useEntityBoundSchema.js +1 -1
  295. package/dist/synapse-queries/jsonschema/useEntityBoundSchema.js.map +1 -0
  296. package/dist/synapse-queries/jsonschema/useListJsonSchemaVersions.d.ts +26 -0
  297. package/dist/synapse-queries/jsonschema/useListJsonSchemaVersions.d.ts.map +1 -0
  298. package/dist/synapse-queries/jsonschema/useListJsonSchemaVersions.js +36 -0
  299. package/dist/synapse-queries/jsonschema/useListJsonSchemaVersions.js.map +1 -0
  300. package/dist/synapse-queries/jsonschema/useListJsonSchemasInfinite.d.ts +8 -0
  301. package/dist/synapse-queries/jsonschema/useListJsonSchemasInfinite.d.ts.map +1 -0
  302. package/dist/synapse-queries/jsonschema/useListJsonSchemasInfinite.js +21 -0
  303. package/dist/synapse-queries/jsonschema/useListJsonSchemasInfinite.js.map +1 -0
  304. package/dist/synapse-queries/jsonschema/useListOrganizations.d.ts +8 -0
  305. package/dist/synapse-queries/jsonschema/useListOrganizations.d.ts.map +1 -0
  306. package/dist/synapse-queries/jsonschema/useListOrganizations.js +22 -0
  307. package/dist/synapse-queries/jsonschema/useListOrganizations.js.map +1 -0
  308. package/dist/synapse-queries/jsonschema/useSchema.d.ts.map +1 -0
  309. package/dist/synapse-queries/{entity → jsonschema}/useSchema.js +1 -1
  310. package/dist/synapse-queries/jsonschema/useSchema.js.map +1 -0
  311. package/dist/testutils/VirtualizedTableTestUtils.js +17 -0
  312. package/dist/testutils/VirtualizedTableTestUtils.js.map +1 -0
  313. package/dist/theme/palette/Palettes.d.ts.map +1 -1
  314. package/dist/theme/palette/Palettes.js +13 -0
  315. package/dist/theme/palette/Palettes.js.map +1 -1
  316. package/dist/tsconfig.build.tsbuildinfo +1 -1
  317. package/dist/utils/APIConstants.d.ts +6 -0
  318. package/dist/utils/APIConstants.d.ts.map +1 -1
  319. package/dist/utils/APIConstants.js +2 -2
  320. package/dist/utils/APIConstants.js.map +1 -1
  321. package/dist/utils/hooks/useFetchBlobUrl.d.ts +9 -0
  322. package/dist/utils/hooks/useFetchBlobUrl.d.ts.map +1 -0
  323. package/dist/utils/hooks/useFetchBlobUrl.js +19 -0
  324. package/dist/utils/hooks/useFetchBlobUrl.js.map +1 -0
  325. package/package.json +3 -3
  326. package/dist/synapse-queries/entity/useEntityBoundSchema.d.ts.map +0 -1
  327. package/dist/synapse-queries/entity/useEntityBoundSchema.js.map +0 -1
  328. package/dist/synapse-queries/entity/useSchema.d.ts.map +0 -1
  329. package/dist/synapse-queries/entity/useSchema.js.map +0 -1
  330. /package/dist/synapse-queries/{entity → jsonschema}/useEntityBoundSchema.d.ts +0 -0
  331. /package/dist/synapse-queries/{entity → jsonschema}/useSchema.d.ts +0 -0
package/dist/SWC.index.js CHANGED
@@ -116,7 +116,7 @@ var x = { BackendDestinationEnum: r }, S = {
116
116
  sendSearchResultsReturnedEvent: y,
117
117
  sendSearchResultReturnedEvent: v,
118
118
  sendSearchResultClickedEvent: _
119
- }, T = "4.0.32";
119
+ }, T = "4.0.34";
120
120
  //#endregion
121
121
  export { w as Analytics, a as HttpClient, d as Palettes, o as SynapseClient, C as SynapseComponents, n as SynapseConstants, S as SynapseContext, x as SynapseEnums, m as SynapseQueries, T as SynapseReactClientVersion, p as SynapseSessionManager, i as xssOptions };
122
122
 
@@ -35,7 +35,11 @@ declare enum RequestDataStep {
35
35
  UPDATE_ACCESSORS_AND_FILES = 2,
36
36
  PROMPT_CANCEL = 3,
37
37
  PROMPT_LOGIN = 4,
38
- COMPLETE = 5
38
+ COMPLETE = 5,
39
+ REVIEW_DUC = 6,
40
+ EDUC_PREVIEW = 7,
41
+ MANUAL_UPLOAD_DUC = 8,
42
+ SIGNATURE_STATUS = 9
39
43
  }
40
44
  export type RequestDataStepCallbackArgs = {
41
45
  step: RequestDataStep;
@@ -1 +1 @@
1
- {"version":3,"file":"AccessRequirementList.d.ts","sourceRoot":"","sources":["../../../src/components/AccessRequirementList/AccessRequirementList.tsx"],"names":[],"mappings":"AAmBA,OAAO,EACL,iBAAiB,EAIjB,2BAA2B,EAC3B,OAAO,EACP,OAAO,EACP,sBAAsB,EAGvB,MAAM,iCAAiC,CAAA;AAGxC,OAAO,EAAE,SAAS,EAAqB,MAAM,OAAO,CAAA;AAiBpD,MAAM,MAAM,0BAA0B,GAAG;IAEvC,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B,aAAa,CAAC,EAAE,OAAO,CAAA;IAEvB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,MAAM,EAAE,MAAM,IAAI,CAAA;IAElB,0BAA0B,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAErD,mBAAmB,CAAC,EAAE,SAAS,CAAA;IAE/B,mBAAmB,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAA;CACrD,GAAG,CACA;IACE;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAA;CACjB,GACD;IACE;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAA;CACf,GACD;IAEE,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,WAAW,CAAC,EAAE,sBAAsB,CAAA;CACrC,CACJ,CAAA;AA8BD,eAAO,MAAM,8BAA8B,GACzC,oBAAoB,KAAK,CAAC,iBAAiB,CAAC,KAC3C,OAEF,CAAA;AAMD;;GAEG;AACH,aAAK,eAAe;IAClB,YAAY,IAAI;IAChB,uBAAuB,IAAI;IAC3B,0BAA0B,IAAI;IAC9B,aAAa,IAAI;IACjB,YAAY,IAAI;IAChB,QAAQ,IAAI;CACb;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,eAAe,CAAA;IACrB,2BAA2B,CAAC,EAAE,2BAA2B,CAAA;IACzD,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,iBAAiB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CACtC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAC3C,KAAK,EAAE,0BAA0B,2CAgUlC"}
1
+ {"version":3,"file":"AccessRequirementList.d.ts","sourceRoot":"","sources":["../../../src/components/AccessRequirementList/AccessRequirementList.tsx"],"names":[],"mappings":"AAmBA,OAAO,EACL,iBAAiB,EAIjB,2BAA2B,EAC3B,OAAO,EACP,OAAO,EACP,sBAAsB,EAGvB,MAAM,iCAAiC,CAAA;AAGxC,OAAO,EAAE,SAAS,EAAqB,MAAM,OAAO,CAAA;AAqBpD,MAAM,MAAM,0BAA0B,GAAG;IAEvC,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B,aAAa,CAAC,EAAE,OAAO,CAAA;IAEvB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,MAAM,EAAE,MAAM,IAAI,CAAA;IAElB,0BAA0B,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAErD,mBAAmB,CAAC,EAAE,SAAS,CAAA;IAE/B,mBAAmB,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAA;CACrD,GAAG,CACA;IACE;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAA;CACjB,GACD;IACE;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAA;CACf,GACD;IAEE,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,WAAW,CAAC,EAAE,sBAAsB,CAAA;CACrC,CACJ,CAAA;AA8BD,eAAO,MAAM,8BAA8B,GACzC,oBAAoB,KAAK,CAAC,iBAAiB,CAAC,KAC3C,OAEF,CAAA;AAMD;;GAEG;AACH,aAAK,eAAe;IAClB,YAAY,IAAI;IAChB,uBAAuB,IAAI;IAC3B,0BAA0B,IAAI;IAC9B,aAAa,IAAI;IACjB,YAAY,IAAI;IAChB,QAAQ,IAAI;IACZ,UAAU,IAAI;IACd,YAAY,IAAI;IAChB,iBAAiB,IAAI;IACrB,gBAAgB,IAAI;CACrB;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,eAAe,CAAA;IACrB,2BAA2B,CAAC,EAAE,2BAA2B,CAAA;IACzD,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,iBAAiB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CACtC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAC3C,KAAK,EAAE,0BAA0B,2CAgZlC"}
@@ -4,35 +4,39 @@ import { useOneSageURL as n } from "../../utils/hooks/useOneSageURL.js";
4
4
  import "../../utils/hooks/index.js";
5
5
  import "../../utils/index.js";
6
6
  import { useCanShowManagedACTWikiInWizard as r } from "./AccessRequirementListUtils.js";
7
- import { useGetAccessRequirementsForEntity as i, useGetAccessRequirementsForTeam as a, useSortAccessRequirementIdsByCompletion as o } from "../../synapse-queries/dataaccess/useAccessRequirements.js";
7
+ import { useGetAccessRequirementsForEntity as i, useGetAccessRequirementsForTeam as ee, useSortAccessRequirementIdsByCompletion as te } from "../../synapse-queries/dataaccess/useAccessRequirements.js";
8
8
  import "../../synapse-queries/index.js";
9
- import { DialogBaseTitle as s } from "../DialogBase.js";
10
- import c from "../IconSvg/IconSvg.js";
11
- import { EntityLink as l } from "../EntityLink.js";
12
- import u from "../UserOrTeamBadge/index.js";
13
- import { AccessRequirementListItem as d } from "./AccessRequirementListItem.js";
14
- import ee from "./ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess.js";
15
- import f from "./ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.js";
16
- import p from "./ManagedACTAccessRequirementRequestFlow/RequestDataAccessSuccess.js";
17
- import te from "./ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.js";
18
- import ne from "./RequirementItem/AuthenticatedRequirement.js";
19
- import re from "./RequirementItem/CertificationRequirement.js";
20
- import ie from "./RequirementItem/TwoFactorAuthEnabledRequirement.js";
21
- import m from "./RequirementItem/ValidationRequirement.js";
22
- import { useMemo as h, useState as g } from "react";
23
- import { Button as _, Dialog as v, DialogActions as y, DialogContent as b, Typography as x, styled as S } from "@mui/material";
24
- import { Fragment as C, jsx as w, jsxs as T } from "react/jsx-runtime";
25
- import { ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as E, LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as D, MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as O, RestrictableObjectType as k, SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as A, TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as j } from "@sage-bionetworks/synapse-types";
26
- import M from "lodash-es/noop";
27
- import N from "lodash-es/groupBy";
9
+ import { DialogBaseTitle as a } from "../DialogBase.js";
10
+ import o from "../IconSvg/IconSvg.js";
11
+ import { EntityLink as s } from "../EntityLink.js";
12
+ import ne from "../UserOrTeamBadge/index.js";
13
+ import { AccessRequirementListItem as re } from "./AccessRequirementListItem.js";
14
+ import ie from "./ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess.js";
15
+ import ae from "./ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.js";
16
+ import c from "./ManagedACTAccessRequirementRequestFlow/RequestDataAccessSuccess.js";
17
+ import oe from "./ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.js";
18
+ import l from "./ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep.js";
19
+ import u from "./ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep.js";
20
+ import d from "./ManagedACTAccessRequirementRequestFlow/ManualUploadDucStep/ManualUploadDucStep.js";
21
+ import f from "./ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep.js";
22
+ import p from "./RequirementItem/AuthenticatedRequirement.js";
23
+ import m from "./RequirementItem/CertificationRequirement.js";
24
+ import h from "./RequirementItem/TwoFactorAuthEnabledRequirement.js";
25
+ import g from "./RequirementItem/ValidationRequirement.js";
26
+ import { useMemo as _, useState as v } from "react";
27
+ import { Button as y, Dialog as b, DialogActions as x, DialogContent as S, Typography as C, styled as w } from "@mui/material";
28
+ import { Fragment as T, jsx as E, jsxs as D } from "react/jsx-runtime";
29
+ import { ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as O, LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as k, MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as A, RestrictableObjectType as j, SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as M, TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE as N } from "@sage-bionetworks/synapse-types";
30
+ import P from "lodash-es/noop";
31
+ import F from "lodash-es/groupBy";
28
32
  //#region src/components/AccessRequirementList/AccessRequirementList.tsx
29
- var P = [
33
+ var I = [
34
+ M,
35
+ N,
30
36
  A,
31
- j,
32
37
  O,
33
- E,
34
- D
35
- ], F = new Set(P), I = S(x, { label: "DialogSubsectionHeader" })(({ theme: e }) => ({
38
+ k
39
+ ], L = new Set(I), R = w(C, { label: "DialogSubsectionHeader" })(({ theme: e }) => ({
36
40
  marginTop: e.spacing(4),
37
41
  marginBottom: e.spacing(2),
38
42
  paddingBottom: e.spacing(1),
@@ -40,58 +44,63 @@ var P = [
40
44
  fontWeight: "bold",
41
45
  borderBottom: "1px solid",
42
46
  borderColor: e.palette.grey[200]
43
- })), L = (e) => e.some(R), R = (e) => !F.has(e.concreteType);
44
- function z(S) {
45
- let { onHide: E = M, renderAsModal: D = !1, numberOfFilesAffected: j, requestObjectName: F, customDialogActions: L, onSubmissionCreated: R = M } = S, z = "entityId" in S, B = "teamId" in S, V = "accessRequirementFromProps" in S, H = "subjectId" in S ? S.subjectId : z ? S.entityId : B ? S.teamId : void 0, U = "subjectType" in S ? S.subjectType : z ? k.ENTITY : B ? k.TEAM : void 0, { dialogTitle: W = "Data Access Request" } = S, { isAuthenticated: G } = t(), [K, ae] = g(0), q = n(), [J, oe] = g(), [se, ce] = g(""), [le, ue] = g(), Y = r(), { data: de } = a(H, { enabled: H !== void 0 && U === k.TEAM }), { data: fe } = i(H, { enabled: H !== void 0 && U === k.ENTITY }), X = (V ? S.accessRequirementFromProps : void 0) ?? fe ?? de, { data: Z } = o((X ?? []).map((e) => String(e.id)), {
47
+ })), z = (e) => e.some(B), B = (e) => !L.has(e.concreteType);
48
+ function V(w) {
49
+ let { onHide: O = P, renderAsModal: k = !1, numberOfFilesAffected: N, requestObjectName: L, customDialogActions: z, onSubmissionCreated: B = P } = w, V = "entityId" in w, H = "teamId" in w, U = "accessRequirementFromProps" in w, W = "subjectId" in w ? w.subjectId : V ? w.entityId : H ? w.teamId : void 0, G = "subjectType" in w ? w.subjectType : V ? j.ENTITY : H ? j.TEAM : void 0, { dialogTitle: K = "Data Access Request" } = w, { isAuthenticated: q } = t(), [J, se] = v(0), ce = n(), [Y, le] = v(), [ue, de] = v(""), [fe, pe] = v(), me = r(), { data: he } = ee(W, { enabled: W !== void 0 && G === j.TEAM }), { data: ge } = i(W, { enabled: W !== void 0 && G === j.ENTITY }), X = (U ? w.accessRequirementFromProps : void 0) ?? ge ?? he, { data: Z } = te((X ?? []).map((e) => String(e.id)), {
46
50
  enabled: !!X,
47
51
  staleTime: Infinity
48
- }), pe = h(() => {
52
+ }), _e = _(() => {
49
53
  if (X && Z) {
50
- let e = N(X, "concreteType");
51
- return P.map((t) => {
54
+ let e = F(X, "concreteType");
55
+ return I.map((t) => {
52
56
  let n = e[t];
53
57
  return n ? Z.map((e) => n.find((t) => e === String(t.id))) : [];
54
58
  }).flat().filter((e) => e !== void 0);
55
59
  }
56
60
  }, [X, Z]), Q = (e) => {
57
61
  let { managedACTAccessRequirement: t, step: n, researchProjectId: r, dataAccessRequest: i } = e;
58
- t && oe(t), r && ce(r), i && ue(i), ae(n);
59
- }, me = X?.some((e) => e.concreteType === O && e.isTwoFaRequired), he = X?.some((e) => (e.concreteType === O || e.concreteType === A) && e.isCertifiedUserRequired), ge = X?.some((e) => (e.concreteType === O || e.concreteType === A) && e.isValidatedProfileRequired), _e = h(() => F || (j ? /* @__PURE__ */ T(C, { children: [
60
- /* @__PURE__ */ w(c, {
62
+ t && le(t), r && de(r), i && pe(i), se(n);
63
+ }, ve = X?.some((e) => e.concreteType === A && e.isTwoFaRequired), ye = X?.some((e) => (e.concreteType === A || e.concreteType === M) && e.isCertifiedUserRequired), be = X?.some((e) => (e.concreteType === A || e.concreteType === M) && e.isValidatedProfileRequired), xe = _(() => L || (N ? /* @__PURE__ */ D(T, { children: [
64
+ /* @__PURE__ */ E(o, {
61
65
  icon: "file",
62
66
  sx: { width: "30px" }
63
67
  }),
64
68
  " ",
65
- j,
69
+ N,
66
70
  " ",
67
71
  "File(s)"
68
- ] }) : H !== void 0 && U === k.ENTITY ? /* @__PURE__ */ w(l, { entity: H }) : U === k.TEAM ? /* @__PURE__ */ w(u, { principalId: H }) : (console.warn(`Unhandled case for AccessRequirementList requestDetails: ${U}: ${H}`), /* @__PURE__ */ w(C, {}))), [
69
- j,
70
- F,
71
- H,
72
- U
73
- ]), ve = [2, 1].includes(K) && Y ? "xl" : "md", $ = /* @__PURE__ */ w(C, {});
74
- switch (K) {
72
+ ] }) : W !== void 0 && G === j.ENTITY ? /* @__PURE__ */ E(s, { entity: W }) : G === j.TEAM ? /* @__PURE__ */ E(ne, { principalId: W }) : (console.warn(`Unhandled case for AccessRequirementList requestDetails: ${G}: ${W}`), /* @__PURE__ */ E(T, {}))), [
73
+ N,
74
+ L,
75
+ W,
76
+ G
77
+ ]), Se = [
78
+ 2,
79
+ 1,
80
+ 6,
81
+ 7
82
+ ].includes(J) && me ? "xl" : "md", $ = /* @__PURE__ */ E(T, {});
83
+ switch (J) {
75
84
  case 1:
76
- $ = /* @__PURE__ */ w(te, {
77
- managedACTAccessRequirement: J,
85
+ $ = /* @__PURE__ */ E(oe, {
86
+ managedACTAccessRequirement: Y,
78
87
  onSave: (e) => {
79
88
  Q({
80
- managedACTAccessRequirement: J,
89
+ managedACTAccessRequirement: Y,
81
90
  step: 2,
82
91
  researchProjectId: e.id
83
92
  });
84
93
  },
85
- onHide: E
94
+ onHide: O
86
95
  });
87
96
  break;
88
97
  case 2:
89
- $ = /* @__PURE__ */ w(f, {
90
- researchProjectId: se,
91
- managedACTAccessRequirement: J,
92
- subjectId: H ?? "",
93
- subjectType: U ?? k.ENTITY,
94
- onHide: E,
98
+ $ = /* @__PURE__ */ E(ae, {
99
+ researchProjectId: ue,
100
+ managedACTAccessRequirement: Y,
101
+ subjectId: W ?? "",
102
+ subjectType: G ?? j.ENTITY,
103
+ onHide: O,
95
104
  onCancel: (e) => {
96
105
  Q({
97
106
  step: 3,
@@ -99,82 +108,140 @@ function z(S) {
99
108
  });
100
109
  },
101
110
  onSubmissionCreated: (e) => {
102
- Q({ step: 5 }), R(e);
111
+ Q({ step: 5 }), B(e);
103
112
  },
104
113
  onBackClicked: () => {
105
114
  Q({ step: 1 });
115
+ },
116
+ onEDucContinue: Y?.eDucTemplateId ? () => {
117
+ Q({ step: 6 });
118
+ } : void 0
119
+ });
120
+ break;
121
+ case 6:
122
+ $ = /* @__PURE__ */ E(l, {
123
+ managedACTAccessRequirement: Y,
124
+ onHide: O,
125
+ onBackClicked: () => {
126
+ Q({ step: 2 });
127
+ },
128
+ onCreateDuc: () => {
129
+ Q({ step: 7 });
130
+ }
131
+ });
132
+ break;
133
+ case 7:
134
+ $ = /* @__PURE__ */ E(u, {
135
+ managedACTAccessRequirement: Y,
136
+ onHide: O,
137
+ onBackClicked: () => {
138
+ Q({ step: 6 });
139
+ },
140
+ onSendForSignature: () => {
141
+ Q({ step: 9 });
142
+ },
143
+ onManualUpload: () => {
144
+ Q({ step: 8 });
145
+ }
146
+ });
147
+ break;
148
+ case 8:
149
+ $ = /* @__PURE__ */ E(d, {
150
+ managedACTAccessRequirement: Y,
151
+ subjectId: W ?? "",
152
+ subjectType: G ?? j.ENTITY,
153
+ onHide: O,
154
+ onBackClicked: () => {
155
+ Q({ step: 7 });
156
+ },
157
+ onSubmissionCreated: (e) => {
158
+ Q({ step: 5 }), B(e);
159
+ }
160
+ });
161
+ break;
162
+ case 9:
163
+ $ = /* @__PURE__ */ E(f, {
164
+ managedACTAccessRequirement: Y,
165
+ subjectId: W ?? "",
166
+ subjectType: G ?? j.ENTITY,
167
+ onHide: O,
168
+ onBackClicked: () => {
169
+ Q({ step: 7 });
170
+ },
171
+ onSubmissionCreated: (e) => {
172
+ Q({ step: 5 }), B(e);
106
173
  }
107
174
  });
108
175
  break;
109
176
  case 3:
110
- $ = /* @__PURE__ */ w(ee, {
111
- modifiedDataAccessRequest: le,
112
- onHide: E
177
+ $ = /* @__PURE__ */ E(ie, {
178
+ modifiedDataAccessRequest: fe,
179
+ onHide: O
113
180
  });
114
181
  break;
115
182
  case 4:
116
- e(q.toString()), W = "Please Log In", $ = /* @__PURE__ */ w(C, {});
183
+ e(ce.toString()), K = "Please Log In", $ = /* @__PURE__ */ E(T, {});
117
184
  break;
118
185
  case 5:
119
- $ = /* @__PURE__ */ w(p, { onHide: E });
186
+ $ = /* @__PURE__ */ E(c, { onHide: O });
120
187
  break;
121
- default: $ = /* @__PURE__ */ T(C, { children: [
122
- D ? /* @__PURE__ */ w(s, {
123
- title: W,
124
- onCancel: E
125
- }) : /* @__PURE__ */ w(x, {
188
+ default: $ = /* @__PURE__ */ D(T, { children: [
189
+ k ? /* @__PURE__ */ E(a, {
190
+ title: K,
191
+ onCancel: O
192
+ }) : /* @__PURE__ */ E(C, {
126
193
  variant: "h5",
127
194
  sx: { mb: 2 },
128
- children: W
195
+ children: K
129
196
  }),
130
- /* @__PURE__ */ T(b, { children: [
131
- /* @__PURE__ */ w(I, {
197
+ /* @__PURE__ */ D(S, { children: [
198
+ /* @__PURE__ */ E(R, {
132
199
  variant: "h4",
133
200
  sx: { mt: 0 },
134
201
  children: "What is this request for?"
135
202
  }),
136
- /* @__PURE__ */ w(x, {
203
+ /* @__PURE__ */ E(C, {
137
204
  variant: "body1",
138
205
  component: "span",
139
- children: _e
206
+ children: xe
140
207
  }),
141
- /* @__PURE__ */ w(I, {
208
+ /* @__PURE__ */ E(R, {
142
209
  variant: "h4",
143
210
  children: "What do I need to do?"
144
211
  }),
145
- /* @__PURE__ */ w(ne, {}),
146
- he && /* @__PURE__ */ w(re, {}),
147
- ge && /* @__PURE__ */ w(m, {}),
148
- me && /* @__PURE__ */ w(ie, {}),
149
- pe?.map((e) => /* @__PURE__ */ w(d, {
212
+ /* @__PURE__ */ E(p, {}),
213
+ ye && /* @__PURE__ */ E(m, {}),
214
+ be && /* @__PURE__ */ E(g, {}),
215
+ ve && /* @__PURE__ */ E(h, {}),
216
+ _e?.map((e) => /* @__PURE__ */ E(re, {
150
217
  accessRequirement: e,
151
- subjectId: H,
152
- subjectType: U,
153
- onHide: E,
218
+ subjectId: W,
219
+ subjectType: G,
220
+ onHide: O,
154
221
  onRequestAccess: (e) => {
155
222
  Q({
156
223
  managedACTAccessRequirement: e,
157
- step: G ? 1 : 4
224
+ step: q ? 1 : 4
158
225
  });
159
226
  }
160
227
  }, e.id))
161
228
  ] }),
162
- /* @__PURE__ */ w(y, { children: L || /* @__PURE__ */ w(C, { children: D && /* @__PURE__ */ w(_, {
229
+ /* @__PURE__ */ E(x, { children: z || /* @__PURE__ */ E(T, { children: k && /* @__PURE__ */ E(y, {
163
230
  variant: "contained",
164
- onClick: E,
231
+ onClick: O,
165
232
  children: "Close"
166
233
  }) }) })
167
234
  ] });
168
235
  }
169
- return D ? /* @__PURE__ */ w(v, {
170
- maxWidth: ve,
236
+ return k ? /* @__PURE__ */ E(b, {
237
+ maxWidth: Se,
171
238
  fullWidth: !0,
172
239
  open: !0,
173
- onClose: E,
240
+ onClose: O,
174
241
  children: $
175
- }) : /* @__PURE__ */ w(C, { children: $ });
242
+ }) : /* @__PURE__ */ E(T, { children: $ });
176
243
  }
177
244
  //#endregion
178
- export { L as checkHasUnsupportedRequirement, z as default };
245
+ export { z as checkHasUnsupportedRequirement, V as default };
179
246
 
180
247
  //# sourceMappingURL=AccessRequirementList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AccessRequirementList.js","names":[],"sources":["../../../src/components/AccessRequirementList/AccessRequirementList.tsx"],"sourcesContent":["import {\n useGetAccessRequirementsForEntity,\n useGetAccessRequirementsForTeam,\n useSortAccessRequirementIdsByCompletion,\n} from '@/synapse-queries'\nimport {\n storeRedirectURLForOneSageLoginAndGotoURL,\n useSynapseContext,\n} from '@/utils'\nimport { StyledComponent } from '@emotion/styled'\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n styled,\n Typography,\n TypographyProps,\n} from '@mui/material'\nimport {\n AccessRequirement,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ManagedACTAccessRequirement,\n Renewal,\n Request,\n RestrictableObjectType,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\nimport noop from 'lodash-es/noop'\nimport groupBy from 'lodash-es/groupBy'\nimport { ReactNode, useMemo, useState } from 'react'\nimport { DialogBaseTitle } from '../DialogBase'\nimport { EntityLink } from '../EntityLink'\nimport IconSvg from '../IconSvg/IconSvg'\nimport UserOrTeamBadge from '../UserOrTeamBadge'\nimport { AccessRequirementListItem } from './AccessRequirementListItem'\nimport { useCanShowManagedACTWikiInWizard } from './AccessRequirementListUtils'\nimport CancelRequestDataAccess from './ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess'\nimport DataAccessRequestAccessorsFilesForm from './ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm'\nimport RequestDataAccessSuccess from './ManagedACTAccessRequirementRequestFlow/RequestDataAccessSuccess'\nimport ResearchProjectForm from './ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm'\nimport AuthenticatedRequirement from './RequirementItem/AuthenticatedRequirement'\nimport CertificationRequirement from './RequirementItem/CertificationRequirement'\nimport TwoFactorAuthEnabledRequirement from './RequirementItem/TwoFactorAuthEnabledRequirement'\nimport ValidationRequirement from './RequirementItem/ValidationRequirement'\nimport { useOneSageURL } from '@/utils/hooks'\n\nexport type AccessRequirementListProps = {\n /* if provided, will show this instead of the entity information */\n numberOfFilesAffected?: number\n /* if provided, will show this instead of the entity information or numberOfFilesAffected */\n requestObjectName?: string\n /* If true, this component will render in its own modal */\n renderAsModal?: boolean\n /* Overrides the default dialog title. This only applies if renderAsModal is true */\n dialogTitle?: string\n /* Called when the user rejects the terms of a listed AccessRequirement. If renderAsModal is true, this is also called when the user closes the modal. */\n onHide: () => void\n /* Displays the provided list of access requirements, instead of the ones fetched using the subject ID */\n accessRequirementFromProps?: Array<AccessRequirement>\n /* If provided, displays these actions on when viewing all ARs */\n customDialogActions?: ReactNode\n /* Optional callback invoked if a submission is created via this component */\n onSubmissionCreated?: (submissionId: string) => void\n} & (\n | {\n /**\n * Fetches the access requirements associated with an entity\n * @deprecated Please use `subjectId` and `subjectType`\n */\n entityId: string\n }\n | {\n /**\n * Fetches the access requirements associated with a team\n * @deprecated Please use `subjectId` and `subjectType`\n */\n teamId: string\n }\n | {\n /* The ID of the object for which access is being requested */\n subjectId?: string\n /* The type of the object for which access is being requested */\n subjectType?: RestrictableObjectType\n }\n)\n\nconst SUPPORTED_ACCESS_REQUIREMENT_TYPES_SORTED: AccessRequirement['concreteType'][] =\n [\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ]\n\nconst SUPPORTED_ACCESS_REQUIREMENT_TYPES = new Set<\n AccessRequirement['concreteType']\n>(SUPPORTED_ACCESS_REQUIREMENT_TYPES_SORTED)\n\nconst DialogSubsectionHeader: StyledComponent<TypographyProps> = styled(\n Typography,\n {\n label: 'DialogSubsectionHeader',\n },\n)(({ theme }) => ({\n marginTop: theme.spacing(4),\n marginBottom: theme.spacing(2),\n paddingBottom: theme.spacing(1),\n fontSize: '18px',\n fontWeight: 'bold',\n borderBottom: '1px solid',\n borderColor: theme.palette.grey['200'],\n}))\n\nexport const checkHasUnsupportedRequirement = (\n accessRequirements: Array<AccessRequirement>,\n): boolean => {\n return accessRequirements.some(isARUnsupported)\n}\n\nconst isARUnsupported = (accessRequirement: AccessRequirement) => {\n return !SUPPORTED_ACCESS_REQUIREMENT_TYPES.has(accessRequirement.concreteType)\n}\n\n/**\n * Represents a distinct screen in the wizard used to apply to a ManagedACTAccessRequirement\n */\nenum RequestDataStep {\n SHOW_ALL_ARS = 0,\n UPDATE_RESEARCH_PROJECT = 1,\n UPDATE_ACCESSORS_AND_FILES = 2,\n PROMPT_CANCEL = 3,\n PROMPT_LOGIN = 4,\n COMPLETE = 5,\n}\n\nexport type RequestDataStepCallbackArgs = {\n step: RequestDataStep\n managedACTAccessRequirement?: ManagedACTAccessRequirement\n researchProjectId?: string\n dataAccessRequest?: Request | Renewal\n}\n\n/**\n * The AccessRequirementListV2 component renders a set of {@link AccessRequirement}s (either pre-defined, or those applied\n * to an entity, based on provided props).\n *\n * The component shows the user the approval status of each AR and provides a workflow for accepting the terms of or\n * creating a submission for any of the Access Requirements.\n */\nexport default function AccessRequirementList(\n props: AccessRequirementListProps,\n) {\n const {\n onHide = noop,\n renderAsModal = false,\n numberOfFilesAffected,\n requestObjectName,\n customDialogActions,\n onSubmissionCreated = noop,\n } = props\n\n const isShowingRequirementsForEntity = 'entityId' in props\n const isShowingRequirementsForTeam = 'teamId' in props\n const isShowingRequirementsFromProps = 'accessRequirementFromProps' in props\n\n const subjectId =\n 'subjectId' in props\n ? props.subjectId\n : isShowingRequirementsForEntity\n ? props.entityId\n : isShowingRequirementsForTeam\n ? props.teamId\n : undefined\n\n const subjectType =\n 'subjectType' in props\n ? props.subjectType\n : isShowingRequirementsForEntity\n ? RestrictableObjectType.ENTITY\n : isShowingRequirementsForTeam\n ? RestrictableObjectType.TEAM\n : undefined\n\n let { dialogTitle = 'Data Access Request' } = props\n const { isAuthenticated } = useSynapseContext()\n const [requestDataStep, setRequestDataStep] = useState<RequestDataStep>(\n RequestDataStep.SHOW_ALL_ARS,\n )\n const oneSageURL = useOneSageURL()\n const [managedACTAccessRequirement, setManagedACTAccessRequirement] =\n useState<ManagedACTAccessRequirement>()\n const [researchProjectId, setResearchProjectId] = useState<string>('')\n const [dataAccessRequest, setDataAccessRequest] = useState<\n Request | Renewal | undefined\n >()\n\n const canShowManagedACTWikiInWizard = useCanShowManagedACTWikiInWizard()\n\n const { data: fetchedRequirementsForTeam } = useGetAccessRequirementsForTeam(\n subjectId!,\n {\n enabled:\n subjectId !== undefined && subjectType === RestrictableObjectType.TEAM,\n },\n )\n const { data: fetchedRequirementsForEntity } =\n useGetAccessRequirementsForEntity(subjectId!, {\n enabled:\n subjectId !== undefined &&\n subjectType === RestrictableObjectType.ENTITY,\n })\n\n const requirementsFromProps = isShowingRequirementsFromProps\n ? props.accessRequirementFromProps\n : undefined\n\n const accessRequirements =\n requirementsFromProps ??\n fetchedRequirementsForEntity ??\n fetchedRequirementsForTeam\n\n /**\n * Set the initial ordering of the Access Requirements to show complete ARs first. The individual AR Item components\n * retrieve and render status independently, so this data only determines ordering. For this reason, the query data\n * should not be invalidated or updated as the user progresses through the workflow.\n */\n const { data: sortedAccessRequirementIds } =\n useSortAccessRequirementIdsByCompletion(\n (accessRequirements ?? []).map(ar => String(ar.id)),\n {\n enabled: !!accessRequirements,\n // Set the stale time to infinity because we don't want to refetch this and change the order\n staleTime: Infinity,\n },\n )\n\n const sortedGroupedAccessRequirementsByType = useMemo(() => {\n if (accessRequirements && sortedAccessRequirementIds) {\n // SWC-7218: Group by access requirement type\n const groupedAccessRequirementsByType = groupBy(\n accessRequirements,\n 'concreteType',\n )\n const sortedByTypeAndStatus =\n SUPPORTED_ACCESS_REQUIREMENT_TYPES_SORTED.map(type => {\n const arsOfType = groupedAccessRequirementsByType[type]\n if (arsOfType) {\n return sortedAccessRequirementIds.map(\n id => arsOfType.find(ar => id === String(ar.id))!,\n )\n }\n return []\n })\n .flat()\n .filter((item): item is AccessRequirement => item !== undefined)\n return sortedByTypeAndStatus\n }\n return undefined\n }, [accessRequirements, sortedAccessRequirementIds])\n\n const requestDataStepCallback = (props: RequestDataStepCallbackArgs) => {\n const {\n managedACTAccessRequirement,\n step,\n researchProjectId,\n dataAccessRequest: newDataAccessRequest,\n } = props\n if (managedACTAccessRequirement) {\n // required for step 1, 2 form\n setManagedACTAccessRequirement(managedACTAccessRequirement)\n }\n if (researchProjectId) {\n setResearchProjectId(researchProjectId)\n }\n if (newDataAccessRequest) {\n setDataAccessRequest(newDataAccessRequest)\n }\n setRequestDataStep(step)\n }\n\n const anyARsRequireTwoFactorAuth = accessRequirements?.some(\n accessRequirement =>\n accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE &&\n accessRequirement.isTwoFaRequired,\n )\n\n const anyARsRequireCertification = accessRequirements?.some(\n accessRequirement =>\n (accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE ||\n accessRequirement.concreteType ===\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE) &&\n accessRequirement.isCertifiedUserRequired,\n )\n\n const anyARsRequireProfileValidation = accessRequirements?.some(\n accessRequirement =>\n (accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE ||\n accessRequirement.concreteType ===\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE) &&\n accessRequirement.isValidatedProfileRequired,\n )\n\n const requestDetails = useMemo(() => {\n // Prioritize requestObjectName, then the number of files affected, then the entity/team name\n if (requestObjectName) return requestObjectName\n if (numberOfFilesAffected)\n return (\n <>\n <IconSvg icon=\"file\" sx={{ width: '30px' }} /> {numberOfFilesAffected}{' '}\n File(s)\n </>\n )\n if (\n subjectId !== undefined &&\n subjectType === RestrictableObjectType.ENTITY\n ) {\n return <EntityLink entity={subjectId} />\n } else if (subjectType === RestrictableObjectType.TEAM) {\n return <UserOrTeamBadge principalId={subjectId} />\n } else {\n console.warn(\n `Unhandled case for AccessRequirementList requestDetails: ${subjectType}: ${subjectId}`,\n )\n return <></>\n }\n }, [numberOfFilesAffected, requestObjectName, subjectId, subjectType])\n\n const dialogWidth =\n [\n RequestDataStep.UPDATE_ACCESSORS_AND_FILES,\n RequestDataStep.UPDATE_RESEARCH_PROJECT,\n ].includes(requestDataStep) && canShowManagedACTWikiInWizard\n ? 'xl'\n : 'md'\n\n let renderContent = <></>\n switch (requestDataStep) {\n case RequestDataStep.UPDATE_RESEARCH_PROJECT:\n renderContent = (\n <ResearchProjectForm\n managedACTAccessRequirement={managedACTAccessRequirement!}\n onSave={researchProject => {\n requestDataStepCallback({\n managedACTAccessRequirement,\n step: RequestDataStep.UPDATE_ACCESSORS_AND_FILES,\n researchProjectId: researchProject.id,\n })\n }}\n onHide={onHide}\n />\n )\n break\n case RequestDataStep.UPDATE_ACCESSORS_AND_FILES:\n renderContent = (\n <DataAccessRequestAccessorsFilesForm\n researchProjectId={researchProjectId}\n managedACTAccessRequirement={managedACTAccessRequirement!}\n subjectId={subjectId ?? ''}\n subjectType={subjectType ?? RestrictableObjectType.ENTITY}\n onHide={onHide}\n onCancel={dataAccessRequestInProgress => {\n requestDataStepCallback({\n step: RequestDataStep.PROMPT_CANCEL,\n dataAccessRequest: dataAccessRequestInProgress,\n })\n }}\n onSubmissionCreated={submissionId => {\n requestDataStepCallback({ step: RequestDataStep.COMPLETE })\n onSubmissionCreated(submissionId)\n }}\n onBackClicked={() => {\n requestDataStepCallback({\n step: RequestDataStep.UPDATE_RESEARCH_PROJECT,\n })\n }}\n />\n )\n break\n case RequestDataStep.PROMPT_CANCEL:\n renderContent = (\n <CancelRequestDataAccess\n modifiedDataAccessRequest={dataAccessRequest}\n onHide={onHide} // for closing dialogs\n />\n )\n break\n case RequestDataStep.PROMPT_LOGIN:\n // Send to OneSage login page\n storeRedirectURLForOneSageLoginAndGotoURL(oneSageURL.toString())\n dialogTitle = 'Please Log In'\n renderContent = <></>\n break\n case RequestDataStep.COMPLETE:\n renderContent = <RequestDataAccessSuccess onHide={onHide} />\n break\n case RequestDataStep.SHOW_ALL_ARS:\n default:\n renderContent = (\n <>\n {renderAsModal ? (\n <DialogBaseTitle title={dialogTitle} onCancel={onHide} />\n ) : (\n <Typography variant=\"h5\" sx={{ mb: 2 }}>\n {dialogTitle}\n </Typography>\n )}\n <DialogContent>\n <DialogSubsectionHeader variant={'h4'} sx={{ mt: 0 }}>\n What is this request for?\n </DialogSubsectionHeader>\n <Typography variant={'body1'} component={'span'}>\n {requestDetails}\n </Typography>\n <DialogSubsectionHeader variant={'h4'}>\n What do I need to do?\n </DialogSubsectionHeader>\n <AuthenticatedRequirement />\n {anyARsRequireCertification && <CertificationRequirement />}\n {anyARsRequireProfileValidation && <ValidationRequirement />}\n {anyARsRequireTwoFactorAuth && <TwoFactorAuthEnabledRequirement />}\n {sortedGroupedAccessRequirementsByType?.map(accessRequirement => {\n return (\n <AccessRequirementListItem\n key={accessRequirement.id}\n accessRequirement={accessRequirement}\n subjectId={subjectId}\n subjectType={subjectType}\n onHide={onHide}\n onRequestAccess={accessRequirement => {\n const nextStep = isAuthenticated\n ? RequestDataStep.UPDATE_RESEARCH_PROJECT\n : RequestDataStep.PROMPT_LOGIN\n requestDataStepCallback({\n managedACTAccessRequirement: accessRequirement,\n step: nextStep,\n })\n }}\n />\n )\n })}\n </DialogContent>\n <DialogActions>\n {customDialogActions ? (\n customDialogActions\n ) : (\n <>\n {renderAsModal && (\n <Button variant=\"contained\" onClick={onHide}>\n Close\n </Button>\n )}\n </>\n )}\n </DialogActions>\n </>\n )\n }\n\n if (renderAsModal) {\n return (\n <Dialog maxWidth={dialogWidth} fullWidth open={true} onClose={onHide}>\n {renderContent}\n </Dialog>\n )\n }\n\n return <>{renderContent}</>\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0FA,IAAM,IACJ;CACE;CACA;CACA;CACA;CACA;AACF,GAEI,IAAqC,IAAI,IAE7C,CAAyC,GAErC,IAA2D,EAC/D,GACA,EACE,OAAO,yBACT,CACF,GAAG,EAAE,gBAAa;CAChB,WAAW,EAAM,QAAQ,CAAC;CAC1B,cAAc,EAAM,QAAQ,CAAC;CAC7B,eAAe,EAAM,QAAQ,CAAC;CAC9B,UAAU;CACV,YAAY;CACZ,cAAc;CACd,aAAa,EAAM,QAAQ,KAAK;AAClC,EAAE,GAEW,KACX,MAEO,EAAmB,KAAK,CAAe,GAG1C,KAAmB,MAChB,CAAC,EAAmC,IAAI,EAAkB,YAAY;AA6B/E,SAAwB,EACtB,GACA;CACA,IAAM,EACJ,YAAS,GACT,mBAAgB,IAChB,0BACA,sBACA,wBACA,yBAAsB,MACpB,GAEE,IAAiC,cAAc,GAC/C,IAA+B,YAAY,GAC3C,IAAiC,gCAAgC,GAEjE,IACJ,eAAe,IACX,EAAM,YACN,IACE,EAAM,WACN,IACE,EAAM,SACN,KAAA,GAEJ,IACJ,iBAAiB,IACb,EAAM,cACN,IACE,EAAuB,SACvB,IACE,EAAuB,OACvB,KAAA,GAEN,EAAE,iBAAc,0BAA0B,GACxC,EAAE,uBAAoB,EAAkB,GACxC,CAAC,GAAiB,MAAsB,EAAA,CAE9C,GACM,IAAa,EAAc,GAC3B,CAAC,GAA6B,MAClC,EAAsC,GAClC,CAAC,IAAmB,MAAwB,EAAiB,EAAE,GAC/D,CAAC,IAAmB,MAAwB,EAEhD,GAEI,IAAgC,EAAiC,GAEjE,EAAE,MAAM,OAA+B,EAC3C,GACA,EACE,SACE,MAAc,KAAA,KAAa,MAAgB,EAAuB,KACtE,CACF,GACM,EAAE,MAAM,OACZ,EAAkC,GAAY,EAC5C,SACE,MAAc,KAAA,KACd,MAAgB,EAAuB,OAC3C,CAAC,GAMG,KAJwB,IAC1B,EAAM,6BACN,KAAA,MAIF,MACA,IAOI,EAAE,MAAM,MACZ,GACG,KAAsB,CAAC,GAAG,KAAI,MAAM,OAAO,EAAG,EAAE,CAAC,GAClD;EACE,SAAS,CAAC,CAAC;EAEX,WAAW;CACb,CACF,GAEI,KAAwC,QAAc;EAC1D,IAAI,KAAsB,GAA4B;GAEpD,IAAM,IAAkC,EACtC,GACA,cACF;GAaA,OAXE,EAA0C,KAAI,MAAQ;IACpD,IAAM,IAAY,EAAgC;IAMlD,OALI,IACK,EAA2B,KAChC,MAAM,EAAU,MAAK,MAAM,MAAO,OAAO,EAAG,EAAE,CAAC,CACjD,IAEK,CAAC;GACV,CAAC,EACE,KAAK,EACL,QAAQ,MAAoC,MAAS,KAAA,CACnD;EACT;CAEF,GAAG,CAAC,GAAoB,CAA0B,CAAC,GAE7C,KAA2B,MAAuC;EACtE,IAAM,EACJ,gCACA,SACA,sBACA,mBAAmB,MACjB;EAWJ,AAVI,KAEF,GAA+B,CAA2B,GAExD,KACF,GAAqB,CAAiB,GAEpC,KACF,GAAqB,CAAoB,GAE3C,GAAmB,CAAI;CACzB,GAEM,KAA6B,GAAoB,MACrD,MACE,EAAkB,iBAChB,KACF,EAAkB,eACtB,GAEM,KAA6B,GAAoB,MACrD,OACG,EAAkB,iBACjB,KACA,EAAkB,iBAChB,MACJ,EAAkB,uBACtB,GAEM,KAAiC,GAAoB,MACzD,OACG,EAAkB,iBACjB,KACA,EAAkB,iBAChB,MACJ,EAAkB,0BACtB,GAEM,KAAiB,QAEjB,MACA,IAEA,kBAAA,GAAA,EAAA,UAAA;EACE,kBAAC,GAAD;GAAS,MAAK;GAAO,IAAI,EAAE,OAAO,OAAO;EAAI,CAAA;EAAC;EAAE;EAAuB;EAAI;CAE3E,EAAA,CAAA,IAGJ,MAAc,KAAA,KACd,MAAgB,EAAuB,SAEhC,kBAAC,GAAD,EAAY,QAAQ,EAAY,CAAA,IAC9B,MAAgB,EAAuB,OACzC,kBAAC,GAAD,EAAiB,aAAa,EAAY,CAAA,KAEjD,QAAQ,KACN,4DAA4D,EAAY,IAAI,GAC9E,GACO,kBAAA,GAAA,CAAI,CAAA,KAEZ;EAAC;EAAuB;EAAmB;EAAW;CAAW,CAAC,GAE/D,KACJ,CAAA,GAAA,CAGA,EAAE,SAAS,CAAe,KAAK,IAC3B,OACA,MAEF,IAAgB,kBAAA,GAAA,CAAI,CAAA;CACxB,QAAQ,GAAR;EACE,KAAA;GACE,IACE,kBAAC,IAAD;IAC+B;IAC7B,SAAQ,MAAmB;KACzB,EAAwB;MACtB;MACA,MAAA;MACA,mBAAmB,EAAgB;KACrC,CAAC;IACH;IACQ;GACT,CAAA;GAEH;EACF,KAAA;GACE,IACE,kBAAC,GAAD;IACqB;IACU;IAC7B,WAAW,KAAa;IACxB,aAAa,KAAe,EAAuB;IAC3C;IACR,WAAU,MAA+B;KACvC,EAAwB;MACtB,MAAA;MACA,mBAAmB;KACrB,CAAC;IACH;IACA,sBAAqB,MAAgB;KAEnC,AADA,EAAwB,EAAE,MAAA,EAA+B,CAAC,GAC1D,EAAoB,CAAY;IAClC;IACA,qBAAqB;KACnB,EAAwB,EACtB,MAAA,EACF,CAAC;IACH;GACD,CAAA;GAEH;EACF,KAAA;GACE,IACE,kBAAC,IAAD;IACE,2BAA2B;IACnB;GACT,CAAA;GAEH;EACF,KAAA;GAIE,AAFA,EAA0C,EAAW,SAAS,CAAC,GAC/D,IAAc,iBACd,IAAgB,kBAAA,GAAA,CAAI,CAAA;GACpB;EACF,KAAA;GACE,IAAgB,kBAAC,GAAD,EAAkC,UAAS,CAAA;GAC3D;EAEF,SACE,IACE,kBAAA,GAAA,EAAA,UAAA;GACG,IACC,kBAAC,GAAD;IAAiB,OAAO;IAAa,UAAU;GAAS,CAAA,IAExD,kBAAC,GAAD;IAAY,SAAQ;IAAK,IAAI,EAAE,IAAI,EAAE;cAClC;GACS,CAAA;GAEd,kBAAC,GAAD,EAAA,UAAA;IACE,kBAAC,GAAD;KAAwB,SAAS;KAAM,IAAI,EAAE,IAAI,EAAE;eAAG;IAE9B,CAAA;IACxB,kBAAC,GAAD;KAAY,SAAS;KAAS,WAAW;eACtC;IACS,CAAA;IACZ,kBAAC,GAAD;KAAwB,SAAS;eAAM;IAEf,CAAA;IACxB,kBAAC,IAAD,CAA2B,CAAA;IAC1B,MAA8B,kBAAC,IAAD,CAA2B,CAAA;IACzD,MAAkC,kBAAC,GAAD,CAAwB,CAAA;IAC1D,MAA8B,kBAAC,IAAD,CAAkC,CAAA;IAChE,IAAuC,KAAI,MAExC,kBAAC,GAAD;KAEqB;KACR;KACE;KACL;KACR,kBAAiB,MAAqB;MAIpC,EAAwB;OACtB,6BAA6B;OAC7B,MALe,IAAA,IAAA;MAMjB,CAAC;KACH;IACD,GAdM,EAAkB,EAcxB,CAEJ;GACY,EAAA,CAAA;GACf,kBAAC,GAAD,EAAA,UACG,KAGC,kBAAA,GAAA,EAAA,UACG,KACC,kBAAC,GAAD;IAAQ,SAAQ;IAAY,SAAS;cAAQ;GAErC,CAAA,EAEV,CAAA,EAES,CAAA;EACf,EAAA,CAAA;CAER;CAUA,OARI,IAEA,kBAAC,GAAD;EAAQ,UAAU;EAAa,WAAA;EAAU,MAAM;EAAM,SAAS;YAC3D;CACK,CAAA,IAIL,kBAAA,GAAA,EAAA,UAAG,EAAgB,CAAA;AAC5B"}
1
+ {"version":3,"file":"AccessRequirementList.js","names":[],"sources":["../../../src/components/AccessRequirementList/AccessRequirementList.tsx"],"sourcesContent":["import {\n useGetAccessRequirementsForEntity,\n useGetAccessRequirementsForTeam,\n useSortAccessRequirementIdsByCompletion,\n} from '@/synapse-queries'\nimport {\n storeRedirectURLForOneSageLoginAndGotoURL,\n useSynapseContext,\n} from '@/utils'\nimport { StyledComponent } from '@emotion/styled'\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n styled,\n Typography,\n TypographyProps,\n} from '@mui/material'\nimport {\n AccessRequirement,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ManagedACTAccessRequirement,\n Renewal,\n Request,\n RestrictableObjectType,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\nimport noop from 'lodash-es/noop'\nimport groupBy from 'lodash-es/groupBy'\nimport { ReactNode, useMemo, useState } from 'react'\nimport { DialogBaseTitle } from '../DialogBase'\nimport { EntityLink } from '../EntityLink'\nimport IconSvg from '../IconSvg/IconSvg'\nimport UserOrTeamBadge from '../UserOrTeamBadge'\nimport { AccessRequirementListItem } from './AccessRequirementListItem'\nimport { useCanShowManagedACTWikiInWizard } from './AccessRequirementListUtils'\nimport CancelRequestDataAccess from './ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess'\nimport DataAccessRequestAccessorsFilesForm from './ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm'\nimport RequestDataAccessSuccess from './ManagedACTAccessRequirementRequestFlow/RequestDataAccessSuccess'\nimport ResearchProjectForm from './ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm'\nimport ReviewDucStep from './ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep'\nimport EDucPreviewStep from './ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep'\nimport ManualUploadDucStep from './ManagedACTAccessRequirementRequestFlow/ManualUploadDucStep/ManualUploadDucStep'\nimport SignatureStatusStep from './ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep'\nimport AuthenticatedRequirement from './RequirementItem/AuthenticatedRequirement'\nimport CertificationRequirement from './RequirementItem/CertificationRequirement'\nimport TwoFactorAuthEnabledRequirement from './RequirementItem/TwoFactorAuthEnabledRequirement'\nimport ValidationRequirement from './RequirementItem/ValidationRequirement'\nimport { useOneSageURL } from '@/utils/hooks'\n\nexport type AccessRequirementListProps = {\n /* if provided, will show this instead of the entity information */\n numberOfFilesAffected?: number\n /* if provided, will show this instead of the entity information or numberOfFilesAffected */\n requestObjectName?: string\n /* If true, this component will render in its own modal */\n renderAsModal?: boolean\n /* Overrides the default dialog title. This only applies if renderAsModal is true */\n dialogTitle?: string\n /* Called when the user rejects the terms of a listed AccessRequirement. If renderAsModal is true, this is also called when the user closes the modal. */\n onHide: () => void\n /* Displays the provided list of access requirements, instead of the ones fetched using the subject ID */\n accessRequirementFromProps?: Array<AccessRequirement>\n /* If provided, displays these actions on when viewing all ARs */\n customDialogActions?: ReactNode\n /* Optional callback invoked if a submission is created via this component */\n onSubmissionCreated?: (submissionId: string) => void\n} & (\n | {\n /**\n * Fetches the access requirements associated with an entity\n * @deprecated Please use `subjectId` and `subjectType`\n */\n entityId: string\n }\n | {\n /**\n * Fetches the access requirements associated with a team\n * @deprecated Please use `subjectId` and `subjectType`\n */\n teamId: string\n }\n | {\n /* The ID of the object for which access is being requested */\n subjectId?: string\n /* The type of the object for which access is being requested */\n subjectType?: RestrictableObjectType\n }\n)\n\nconst SUPPORTED_ACCESS_REQUIREMENT_TYPES_SORTED: AccessRequirement['concreteType'][] =\n [\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ]\n\nconst SUPPORTED_ACCESS_REQUIREMENT_TYPES = new Set<\n AccessRequirement['concreteType']\n>(SUPPORTED_ACCESS_REQUIREMENT_TYPES_SORTED)\n\nconst DialogSubsectionHeader: StyledComponent<TypographyProps> = styled(\n Typography,\n {\n label: 'DialogSubsectionHeader',\n },\n)(({ theme }) => ({\n marginTop: theme.spacing(4),\n marginBottom: theme.spacing(2),\n paddingBottom: theme.spacing(1),\n fontSize: '18px',\n fontWeight: 'bold',\n borderBottom: '1px solid',\n borderColor: theme.palette.grey['200'],\n}))\n\nexport const checkHasUnsupportedRequirement = (\n accessRequirements: Array<AccessRequirement>,\n): boolean => {\n return accessRequirements.some(isARUnsupported)\n}\n\nconst isARUnsupported = (accessRequirement: AccessRequirement) => {\n return !SUPPORTED_ACCESS_REQUIREMENT_TYPES.has(accessRequirement.concreteType)\n}\n\n/**\n * Represents a distinct screen in the wizard used to apply to a ManagedACTAccessRequirement\n */\nenum RequestDataStep {\n SHOW_ALL_ARS = 0,\n UPDATE_RESEARCH_PROJECT = 1,\n UPDATE_ACCESSORS_AND_FILES = 2,\n PROMPT_CANCEL = 3,\n PROMPT_LOGIN = 4,\n COMPLETE = 5,\n REVIEW_DUC = 6,\n EDUC_PREVIEW = 7,\n MANUAL_UPLOAD_DUC = 8,\n SIGNATURE_STATUS = 9,\n}\n\nexport type RequestDataStepCallbackArgs = {\n step: RequestDataStep\n managedACTAccessRequirement?: ManagedACTAccessRequirement\n researchProjectId?: string\n dataAccessRequest?: Request | Renewal\n}\n\n/**\n * The AccessRequirementListV2 component renders a set of {@link AccessRequirement}s (either pre-defined, or those applied\n * to an entity, based on provided props).\n *\n * The component shows the user the approval status of each AR and provides a workflow for accepting the terms of or\n * creating a submission for any of the Access Requirements.\n */\nexport default function AccessRequirementList(\n props: AccessRequirementListProps,\n) {\n const {\n onHide = noop,\n renderAsModal = false,\n numberOfFilesAffected,\n requestObjectName,\n customDialogActions,\n onSubmissionCreated = noop,\n } = props\n\n const isShowingRequirementsForEntity = 'entityId' in props\n const isShowingRequirementsForTeam = 'teamId' in props\n const isShowingRequirementsFromProps = 'accessRequirementFromProps' in props\n\n const subjectId =\n 'subjectId' in props\n ? props.subjectId\n : isShowingRequirementsForEntity\n ? props.entityId\n : isShowingRequirementsForTeam\n ? props.teamId\n : undefined\n\n const subjectType =\n 'subjectType' in props\n ? props.subjectType\n : isShowingRequirementsForEntity\n ? RestrictableObjectType.ENTITY\n : isShowingRequirementsForTeam\n ? RestrictableObjectType.TEAM\n : undefined\n\n let { dialogTitle = 'Data Access Request' } = props\n const { isAuthenticated } = useSynapseContext()\n const [requestDataStep, setRequestDataStep] = useState<RequestDataStep>(\n RequestDataStep.SHOW_ALL_ARS,\n )\n const oneSageURL = useOneSageURL()\n const [managedACTAccessRequirement, setManagedACTAccessRequirement] =\n useState<ManagedACTAccessRequirement>()\n const [researchProjectId, setResearchProjectId] = useState<string>('')\n const [dataAccessRequest, setDataAccessRequest] = useState<\n Request | Renewal | undefined\n >()\n\n const canShowManagedACTWikiInWizard = useCanShowManagedACTWikiInWizard()\n\n const { data: fetchedRequirementsForTeam } = useGetAccessRequirementsForTeam(\n subjectId!,\n {\n enabled:\n subjectId !== undefined && subjectType === RestrictableObjectType.TEAM,\n },\n )\n const { data: fetchedRequirementsForEntity } =\n useGetAccessRequirementsForEntity(subjectId!, {\n enabled:\n subjectId !== undefined &&\n subjectType === RestrictableObjectType.ENTITY,\n })\n\n const requirementsFromProps = isShowingRequirementsFromProps\n ? props.accessRequirementFromProps\n : undefined\n\n const accessRequirements =\n requirementsFromProps ??\n fetchedRequirementsForEntity ??\n fetchedRequirementsForTeam\n\n /**\n * Set the initial ordering of the Access Requirements to show complete ARs first. The individual AR Item components\n * retrieve and render status independently, so this data only determines ordering. For this reason, the query data\n * should not be invalidated or updated as the user progresses through the workflow.\n */\n const { data: sortedAccessRequirementIds } =\n useSortAccessRequirementIdsByCompletion(\n (accessRequirements ?? []).map(ar => String(ar.id)),\n {\n enabled: !!accessRequirements,\n // Set the stale time to infinity because we don't want to refetch this and change the order\n staleTime: Infinity,\n },\n )\n\n const sortedGroupedAccessRequirementsByType = useMemo(() => {\n if (accessRequirements && sortedAccessRequirementIds) {\n // SWC-7218: Group by access requirement type\n const groupedAccessRequirementsByType = groupBy(\n accessRequirements,\n 'concreteType',\n )\n const sortedByTypeAndStatus =\n SUPPORTED_ACCESS_REQUIREMENT_TYPES_SORTED.map(type => {\n const arsOfType = groupedAccessRequirementsByType[type]\n if (arsOfType) {\n return sortedAccessRequirementIds.map(\n id => arsOfType.find(ar => id === String(ar.id))!,\n )\n }\n return []\n })\n .flat()\n .filter((item): item is AccessRequirement => item !== undefined)\n return sortedByTypeAndStatus\n }\n return undefined\n }, [accessRequirements, sortedAccessRequirementIds])\n\n const requestDataStepCallback = (props: RequestDataStepCallbackArgs) => {\n const {\n managedACTAccessRequirement,\n step,\n researchProjectId,\n dataAccessRequest: newDataAccessRequest,\n } = props\n if (managedACTAccessRequirement) {\n // required for step 1, 2 form\n setManagedACTAccessRequirement(managedACTAccessRequirement)\n }\n if (researchProjectId) {\n setResearchProjectId(researchProjectId)\n }\n if (newDataAccessRequest) {\n setDataAccessRequest(newDataAccessRequest)\n }\n setRequestDataStep(step)\n }\n\n const anyARsRequireTwoFactorAuth = accessRequirements?.some(\n accessRequirement =>\n accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE &&\n accessRequirement.isTwoFaRequired,\n )\n\n const anyARsRequireCertification = accessRequirements?.some(\n accessRequirement =>\n (accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE ||\n accessRequirement.concreteType ===\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE) &&\n accessRequirement.isCertifiedUserRequired,\n )\n\n const anyARsRequireProfileValidation = accessRequirements?.some(\n accessRequirement =>\n (accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE ||\n accessRequirement.concreteType ===\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE) &&\n accessRequirement.isValidatedProfileRequired,\n )\n\n const requestDetails = useMemo(() => {\n // Prioritize requestObjectName, then the number of files affected, then the entity/team name\n if (requestObjectName) return requestObjectName\n if (numberOfFilesAffected)\n return (\n <>\n <IconSvg icon=\"file\" sx={{ width: '30px' }} /> {numberOfFilesAffected}{' '}\n File(s)\n </>\n )\n if (\n subjectId !== undefined &&\n subjectType === RestrictableObjectType.ENTITY\n ) {\n return <EntityLink entity={subjectId} />\n } else if (subjectType === RestrictableObjectType.TEAM) {\n return <UserOrTeamBadge principalId={subjectId} />\n } else {\n console.warn(\n `Unhandled case for AccessRequirementList requestDetails: ${subjectType}: ${subjectId}`,\n )\n return <></>\n }\n }, [numberOfFilesAffected, requestObjectName, subjectId, subjectType])\n\n const dialogWidth =\n [\n RequestDataStep.UPDATE_ACCESSORS_AND_FILES,\n RequestDataStep.UPDATE_RESEARCH_PROJECT,\n RequestDataStep.REVIEW_DUC,\n RequestDataStep.EDUC_PREVIEW,\n ].includes(requestDataStep) && canShowManagedACTWikiInWizard\n ? 'xl'\n : 'md'\n\n let renderContent = <></>\n switch (requestDataStep) {\n case RequestDataStep.UPDATE_RESEARCH_PROJECT:\n renderContent = (\n <ResearchProjectForm\n managedACTAccessRequirement={managedACTAccessRequirement!}\n onSave={researchProject => {\n requestDataStepCallback({\n managedACTAccessRequirement,\n step: RequestDataStep.UPDATE_ACCESSORS_AND_FILES,\n researchProjectId: researchProject.id,\n })\n }}\n onHide={onHide}\n />\n )\n break\n case RequestDataStep.UPDATE_ACCESSORS_AND_FILES:\n renderContent = (\n <DataAccessRequestAccessorsFilesForm\n researchProjectId={researchProjectId}\n managedACTAccessRequirement={managedACTAccessRequirement!}\n subjectId={subjectId ?? ''}\n subjectType={subjectType ?? RestrictableObjectType.ENTITY}\n onHide={onHide}\n onCancel={dataAccessRequestInProgress => {\n requestDataStepCallback({\n step: RequestDataStep.PROMPT_CANCEL,\n dataAccessRequest: dataAccessRequestInProgress,\n })\n }}\n onSubmissionCreated={submissionId => {\n requestDataStepCallback({ step: RequestDataStep.COMPLETE })\n onSubmissionCreated(submissionId)\n }}\n onBackClicked={() => {\n requestDataStepCallback({\n step: RequestDataStep.UPDATE_RESEARCH_PROJECT,\n })\n }}\n onEDucContinue={\n managedACTAccessRequirement?.eDucTemplateId\n ? () => {\n requestDataStepCallback({\n step: RequestDataStep.REVIEW_DUC,\n })\n }\n : undefined\n }\n />\n )\n break\n case RequestDataStep.REVIEW_DUC:\n renderContent = (\n <ReviewDucStep\n managedACTAccessRequirement={managedACTAccessRequirement!}\n onHide={onHide}\n onBackClicked={() => {\n requestDataStepCallback({\n step: RequestDataStep.UPDATE_ACCESSORS_AND_FILES,\n })\n }}\n onCreateDuc={() => {\n requestDataStepCallback({ step: RequestDataStep.EDUC_PREVIEW })\n }}\n />\n )\n break\n case RequestDataStep.EDUC_PREVIEW:\n renderContent = (\n <EDucPreviewStep\n managedACTAccessRequirement={managedACTAccessRequirement!}\n onHide={onHide}\n onBackClicked={() => {\n requestDataStepCallback({ step: RequestDataStep.REVIEW_DUC })\n }}\n onSendForSignature={() => {\n requestDataStepCallback({ step: RequestDataStep.SIGNATURE_STATUS })\n }}\n onManualUpload={() => {\n requestDataStepCallback({\n step: RequestDataStep.MANUAL_UPLOAD_DUC,\n })\n }}\n />\n )\n break\n case RequestDataStep.MANUAL_UPLOAD_DUC:\n renderContent = (\n <ManualUploadDucStep\n managedACTAccessRequirement={managedACTAccessRequirement!}\n subjectId={subjectId ?? ''}\n subjectType={subjectType ?? RestrictableObjectType.ENTITY}\n onHide={onHide}\n onBackClicked={() => {\n requestDataStepCallback({ step: RequestDataStep.EDUC_PREVIEW })\n }}\n onSubmissionCreated={submissionId => {\n requestDataStepCallback({ step: RequestDataStep.COMPLETE })\n onSubmissionCreated(submissionId)\n }}\n />\n )\n break\n case RequestDataStep.SIGNATURE_STATUS:\n renderContent = (\n <SignatureStatusStep\n managedACTAccessRequirement={managedACTAccessRequirement!}\n subjectId={subjectId ?? ''}\n subjectType={subjectType ?? RestrictableObjectType.ENTITY}\n onHide={onHide}\n onBackClicked={() => {\n requestDataStepCallback({ step: RequestDataStep.EDUC_PREVIEW })\n }}\n onSubmissionCreated={submissionId => {\n requestDataStepCallback({ step: RequestDataStep.COMPLETE })\n onSubmissionCreated(submissionId)\n }}\n />\n )\n break\n case RequestDataStep.PROMPT_CANCEL:\n renderContent = (\n <CancelRequestDataAccess\n modifiedDataAccessRequest={dataAccessRequest}\n onHide={onHide} // for closing dialogs\n />\n )\n break\n case RequestDataStep.PROMPT_LOGIN:\n // Send to OneSage login page\n storeRedirectURLForOneSageLoginAndGotoURL(oneSageURL.toString())\n dialogTitle = 'Please Log In'\n renderContent = <></>\n break\n case RequestDataStep.COMPLETE:\n renderContent = <RequestDataAccessSuccess onHide={onHide} />\n break\n case RequestDataStep.SHOW_ALL_ARS:\n default:\n renderContent = (\n <>\n {renderAsModal ? (\n <DialogBaseTitle title={dialogTitle} onCancel={onHide} />\n ) : (\n <Typography variant=\"h5\" sx={{ mb: 2 }}>\n {dialogTitle}\n </Typography>\n )}\n <DialogContent>\n <DialogSubsectionHeader variant={'h4'} sx={{ mt: 0 }}>\n What is this request for?\n </DialogSubsectionHeader>\n <Typography variant={'body1'} component={'span'}>\n {requestDetails}\n </Typography>\n <DialogSubsectionHeader variant={'h4'}>\n What do I need to do?\n </DialogSubsectionHeader>\n <AuthenticatedRequirement />\n {anyARsRequireCertification && <CertificationRequirement />}\n {anyARsRequireProfileValidation && <ValidationRequirement />}\n {anyARsRequireTwoFactorAuth && <TwoFactorAuthEnabledRequirement />}\n {sortedGroupedAccessRequirementsByType?.map(accessRequirement => {\n return (\n <AccessRequirementListItem\n key={accessRequirement.id}\n accessRequirement={accessRequirement}\n subjectId={subjectId}\n subjectType={subjectType}\n onHide={onHide}\n onRequestAccess={accessRequirement => {\n const nextStep = isAuthenticated\n ? RequestDataStep.UPDATE_RESEARCH_PROJECT\n : RequestDataStep.PROMPT_LOGIN\n requestDataStepCallback({\n managedACTAccessRequirement: accessRequirement,\n step: nextStep,\n })\n }}\n />\n )\n })}\n </DialogContent>\n <DialogActions>\n {customDialogActions ? (\n customDialogActions\n ) : (\n <>\n {renderAsModal && (\n <Button variant=\"contained\" onClick={onHide}>\n Close\n </Button>\n )}\n </>\n )}\n </DialogActions>\n </>\n )\n }\n\n if (renderAsModal) {\n return (\n <Dialog maxWidth={dialogWidth} fullWidth open={true} onClose={onHide}>\n {renderContent}\n </Dialog>\n )\n }\n\n return <>{renderContent}</>\n}\n"],"mappings":"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"}
@@ -31,6 +31,7 @@ function h(h) {
31
31
  "Save Changes",
32
32
  /* @__PURE__ */ p(i, { sx: { flexGrow: 1 } }),
33
33
  /* @__PURE__ */ p(l, {
34
+ "aria-label": "Close",
34
35
  onClick: _,
35
36
  children: /* @__PURE__ */ p(t, {
36
37
  icon: "close",
@@ -1 +1 @@
1
- {"version":3,"file":"CancelRequestDataAccess.js","names":[],"sources":["../../../../src/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess.tsx"],"sourcesContent":["import { useUpdateDataAccessRequest } from '@/synapse-queries'\nimport {\n Alert,\n Box,\n Button,\n DialogActions,\n DialogContent,\n DialogTitle,\n IconButton,\n Stack,\n Typography,\n} from '@mui/material'\nimport { Renewal, Request } from '@sage-bionetworks/synapse-types'\nimport { useState } from 'react'\nimport IconSvg from '../../IconSvg/IconSvg'\nimport { AlertProps } from './DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm'\n\nexport type CancelRequestDataAccessProps = {\n /* The data access request with unsaved changes */\n modifiedDataAccessRequest: Request | Renewal | undefined\n onHide: () => void\n}\n\nfunction CancelRequestDataAccess(props: CancelRequestDataAccessProps) {\n const { modifiedDataAccessRequest, onHide } = props\n const [alert, setAlert] = useState<AlertProps | undefined>()\n const [showCloseBtn, setShowCloseBtn] = useState<boolean>(false)\n\n const { mutate: updateRequest } = useUpdateDataAccessRequest({\n onSuccess: () => {\n onHide()\n },\n onError: e => {\n setAlert({\n key: 'error',\n message: `Sorry, there is an error in submitting your request. ${\n e.reason ? e.reason + '.' : ' '\n }Please close this dialog and try again later.`,\n })\n setShowCloseBtn(true)\n },\n })\n\n function handleSave() {\n if (modifiedDataAccessRequest) {\n updateRequest(modifiedDataAccessRequest)\n }\n }\n\n return (\n <>\n <DialogTitle>\n <Stack\n direction=\"row\"\n sx={{\n alignItems: 'center',\n gap: '5px',\n }}\n >\n Save Changes\n <Box sx={{ flexGrow: 1 }} />\n <IconButton onClick={onHide}>\n <IconSvg icon={'close'} wrap={false} sx={{ color: 'grey.700' }} />\n </IconButton>\n </Stack>\n </DialogTitle>\n\n <DialogContent>\n <Typography variant={'body1'}>\n Would you like to save your recent changes?\n </Typography>\n {alert && <Alert severity={alert.key}>{alert.message}</Alert>}\n </DialogContent>\n\n <DialogActions>\n {!showCloseBtn && (\n <>\n <Button variant=\"outlined\" onClick={onHide}>\n Cancel\n </Button>\n <Button\n variant=\"contained\"\n onClick={() => {\n handleSave()\n }}\n >\n Save changes\n </Button>\n </>\n )}\n {showCloseBtn && (\n <Button variant=\"contained\" onClick={onHide}>\n Close\n </Button>\n )}\n </DialogActions>\n </>\n )\n}\n\nexport default CancelRequestDataAccess\n"],"mappings":";;;;;;;AAuBA,SAAS,EAAwB,GAAqC;CACpE,IAAM,EAAE,8BAA2B,cAAW,GACxC,CAAC,GAAO,KAAY,EAAiC,GACrD,CAAC,GAAc,KAAmB,EAAkB,EAAK,GAEzD,EAAE,QAAQ,MAAkB,EAA2B;EAC3D,iBAAiB;GACf,EAAO;EACT;EACA,UAAS,MAAK;GAOZ,AANA,EAAS;IACP,KAAK;IACL,SAAS,wDACP,EAAE,SAAS,EAAE,SAAS,MAAM,IAC7B;GACH,CAAC,GACD,EAAgB,EAAI;EACtB;CACF,CAAC;CAED,SAAS,IAAa;EACpB,AAAI,KACF,EAAc,CAAyB;CAE3C;CAEA,OACE,kBAAA,GAAA,EAAA,UAAA;EACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;GACE,WAAU;GACV,IAAI;IACF,YAAY;IACZ,KAAK;GACP;aALF;IAMC;IAEC,kBAAC,GAAD,EAAK,IAAI,EAAE,UAAU,EAAE,EAAI,CAAA;IAC3B,kBAAC,GAAD;KAAY,SAAS;eACnB,kBAAC,GAAD;MAAS,MAAM;MAAS,MAAM;MAAO,IAAI,EAAE,OAAO,WAAW;KAAI,CAAA;IACvD,CAAA;GACP;KACI,CAAA;EAEb,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;GAAY,SAAS;aAAS;EAElB,CAAA,GACX,KAAS,kBAAC,GAAD;GAAO,UAAU,EAAM;aAAM,EAAM;EAAe,CAAA,CAC/C,EAAA,CAAA;EAEf,kBAAC,GAAD,EAAA,UAAA,CACG,CAAC,KACA,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,GAAD;GAAQ,SAAQ;GAAW,SAAS;aAAQ;EAEpC,CAAA,GACR,kBAAC,GAAD;GACE,SAAQ;GACR,eAAe;IACb,EAAW;GACb;aACD;EAEO,CAAA,CACR,EAAA,CAAA,GAEH,KACC,kBAAC,GAAD;GAAQ,SAAQ;GAAY,SAAS;aAAQ;EAErC,CAAA,CAEG,EAAA,CAAA;CACf,EAAA,CAAA;AAEN"}
1
+ {"version":3,"file":"CancelRequestDataAccess.js","names":[],"sources":["../../../../src/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess.tsx"],"sourcesContent":["import { useUpdateDataAccessRequest } from '@/synapse-queries'\nimport {\n Alert,\n Box,\n Button,\n DialogActions,\n DialogContent,\n DialogTitle,\n IconButton,\n Stack,\n Typography,\n} from '@mui/material'\nimport { Renewal, Request } from '@sage-bionetworks/synapse-types'\nimport { useState } from 'react'\nimport IconSvg from '../../IconSvg/IconSvg'\nimport { AlertProps } from './DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm'\n\nexport type CancelRequestDataAccessProps = {\n /* The data access request with unsaved changes */\n modifiedDataAccessRequest: Request | Renewal | undefined\n onHide: () => void\n}\n\nfunction CancelRequestDataAccess(props: CancelRequestDataAccessProps) {\n const { modifiedDataAccessRequest, onHide } = props\n const [alert, setAlert] = useState<AlertProps | undefined>()\n const [showCloseBtn, setShowCloseBtn] = useState<boolean>(false)\n\n const { mutate: updateRequest } = useUpdateDataAccessRequest({\n onSuccess: () => {\n onHide()\n },\n onError: e => {\n setAlert({\n key: 'error',\n message: `Sorry, there is an error in submitting your request. ${\n e.reason ? e.reason + '.' : ' '\n }Please close this dialog and try again later.`,\n })\n setShowCloseBtn(true)\n },\n })\n\n function handleSave() {\n if (modifiedDataAccessRequest) {\n updateRequest(modifiedDataAccessRequest)\n }\n }\n\n return (\n <>\n <DialogTitle>\n <Stack\n direction=\"row\"\n sx={{\n alignItems: 'center',\n gap: '5px',\n }}\n >\n Save Changes\n <Box sx={{ flexGrow: 1 }} />\n <IconButton aria-label={'Close'} onClick={onHide}>\n <IconSvg icon={'close'} wrap={false} sx={{ color: 'grey.700' }} />\n </IconButton>\n </Stack>\n </DialogTitle>\n\n <DialogContent>\n <Typography variant={'body1'}>\n Would you like to save your recent changes?\n </Typography>\n {alert && <Alert severity={alert.key}>{alert.message}</Alert>}\n </DialogContent>\n\n <DialogActions>\n {!showCloseBtn && (\n <>\n <Button variant=\"outlined\" onClick={onHide}>\n Cancel\n </Button>\n <Button\n variant=\"contained\"\n onClick={() => {\n handleSave()\n }}\n >\n Save changes\n </Button>\n </>\n )}\n {showCloseBtn && (\n <Button variant=\"contained\" onClick={onHide}>\n Close\n </Button>\n )}\n </DialogActions>\n </>\n )\n}\n\nexport default CancelRequestDataAccess\n"],"mappings":";;;;;;;AAuBA,SAAS,EAAwB,GAAqC;CACpE,IAAM,EAAE,8BAA2B,cAAW,GACxC,CAAC,GAAO,KAAY,EAAiC,GACrD,CAAC,GAAc,KAAmB,EAAkB,EAAK,GAEzD,EAAE,QAAQ,MAAkB,EAA2B;EAC3D,iBAAiB;GACf,EAAO;EACT;EACA,UAAS,MAAK;GAOZ,AANA,EAAS;IACP,KAAK;IACL,SAAS,wDACP,EAAE,SAAS,EAAE,SAAS,MAAM,IAC7B;GACH,CAAC,GACD,EAAgB,EAAI;EACtB;CACF,CAAC;CAED,SAAS,IAAa;EACpB,AAAI,KACF,EAAc,CAAyB;CAE3C;CAEA,OACE,kBAAA,GAAA,EAAA,UAAA;EACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;GACE,WAAU;GACV,IAAI;IACF,YAAY;IACZ,KAAK;GACP;aALF;IAMC;IAEC,kBAAC,GAAD,EAAK,IAAI,EAAE,UAAU,EAAE,EAAI,CAAA;IAC3B,kBAAC,GAAD;KAAY,cAAY;KAAS,SAAS;eACxC,kBAAC,GAAD;MAAS,MAAM;MAAS,MAAM;MAAO,IAAI,EAAE,OAAO,WAAW;KAAI,CAAA;IACvD,CAAA;GACP;KACI,CAAA;EAEb,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;GAAY,SAAS;aAAS;EAElB,CAAA,GACX,KAAS,kBAAC,GAAD;GAAO,UAAU,EAAM;aAAM,EAAM;EAAe,CAAA,CAC/C,EAAA,CAAA;EAEf,kBAAC,GAAD,EAAA,UAAA,CACG,CAAC,KACA,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,GAAD;GAAQ,SAAQ;GAAW,SAAS;aAAQ;EAEpC,CAAA,GACR,kBAAC,GAAD;GACE,SAAQ;GACR,eAAe;IACb,EAAW;GACb;aACD;EAEO,CAAA,CACR,EAAA,CAAA,GAEH,KACC,kBAAC,GAAD;GAAQ,SAAQ;GAAY,SAAS;aAAQ;EAErC,CAAA,CAEG,EAAA,CAAA;CACf,EAAA,CAAA;AAEN"}
@@ -5,6 +5,7 @@ export type DataAccessRequestAccessorsEditorProps = {
5
5
  onChange: (updater: (prevValue: AccessorChange[]) => AccessorChange[]) => void;
6
6
  isRenewal: boolean;
7
7
  helpText: ReactNode;
8
+ collaboratorLimit?: number;
8
9
  };
9
10
  /**
10
11
  * Component that handles adding/removing/revoking accessors for a data access request.
@@ -1 +1 @@
1
- {"version":3,"file":"DataAccessRequestAccessorsEditor.d.ts","sourceRoot":"","sources":["../../../../src/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.tsx"],"names":[],"mappings":"AASA,OAAO,EACL,cAAc,EAIf,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKjC,MAAM,MAAM,qCAAqC,GAAG;IAElD,eAAe,EAAE,cAAc,EAAE,CAAA;IAEjC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,IAAI,CAAA;IAE9E,SAAS,EAAE,OAAO,CAAA;IAElB,QAAQ,EAAE,SAAS,CAAA;CACpB,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,gCAAgC,CACtD,KAAK,EAAE,qCAAqC,2CAoI7C"}
1
+ {"version":3,"file":"DataAccessRequestAccessorsEditor.d.ts","sourceRoot":"","sources":["../../../../src/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.tsx"],"names":[],"mappings":"AAUA,OAAO,EACL,cAAc,EAIf,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMjC,MAAM,MAAM,qCAAqC,GAAG;IAElD,eAAe,EAAE,cAAc,EAAE,CAAA;IAEjC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,IAAI,CAAA;IAE9E,SAAS,EAAE,OAAO,CAAA;IAElB,QAAQ,EAAE,SAAS,CAAA;IAEnB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,gCAAgC,CACtD,KAAK,EAAE,qCAAqC,2CAiK7C"}