synapse-react-client 4.0.40 → 4.0.42

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 (438) hide show
  1. package/dist/SWC.index.d.ts +1 -0
  2. package/dist/SWC.index.d.ts.map +1 -1
  3. package/dist/SWC.index.js +2 -1
  4. package/dist/SWC.index.js.map +1 -1
  5. package/dist/components/AccessRequirement/ImposeRestrictionDialog/ImposeRestrictionDialog.d.ts +1 -0
  6. package/dist/components/AccessRequirement/ImposeRestrictionDialog/ImposeRestrictionDialog.d.ts.map +1 -1
  7. package/dist/components/AccessRequirement/ImposeRestrictionDialog/ImposeRestrictionDialog.js +12 -12
  8. package/dist/components/AccessRequirement/ImposeRestrictionDialog/ImposeRestrictionDialog.js.map +1 -1
  9. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/AccessorRequirementHelpText.d.ts +7 -0
  10. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/AccessorRequirementHelpText.d.ts.map +1 -0
  11. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/AccessorRequirementHelpText.js +30 -0
  12. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/AccessorRequirementHelpText.js.map +1 -0
  13. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.d.ts.map +1 -1
  14. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.js +138 -244
  15. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.js.map +1 -1
  16. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DucUploadSection.d.ts +13 -0
  17. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DucUploadSection.d.ts.map +1 -0
  18. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DucUploadSection.js +60 -0
  19. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DucUploadSection.js.map +1 -0
  20. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep.d.ts +8 -2
  21. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep.d.ts.map +1 -1
  22. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep.js +179 -63
  23. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/EDucPreviewStep/EDucPreviewStep.js.map +1 -1
  24. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.d.ts +2 -0
  25. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.d.ts.map +1 -1
  26. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.js +13 -13
  27. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.js.map +1 -1
  28. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItemView.d.ts +3 -2
  29. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItemView.d.ts.map +1 -1
  30. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItemView.js.map +1 -1
  31. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManualUploadDucStep/ManualUploadDucStep.d.ts +3 -2
  32. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManualUploadDucStep/ManualUploadDucStep.d.ts.map +1 -1
  33. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManualUploadDucStep/ManualUploadDucStep.js.map +1 -1
  34. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/PrincipalInvestigatorFields.d.ts +12 -0
  35. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/PrincipalInvestigatorFields.d.ts.map +1 -0
  36. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/PrincipalInvestigatorFields.js +50 -0
  37. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/PrincipalInvestigatorFields.js.map +1 -0
  38. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.d.ts.map +1 -1
  39. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.js +112 -143
  40. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.js.map +1 -1
  41. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep.d.ts +4 -2
  42. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep.d.ts.map +1 -1
  43. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep.js +8 -7
  44. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ReviewDucStep/ReviewDucStep.js.map +1 -1
  45. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep.d.ts +3 -2
  46. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep.d.ts.map +1 -1
  47. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep.js +79 -47
  48. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SignatureStatusStep/SignatureStatusStep.js.map +1 -1
  49. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SigningOfficialFields.d.ts +12 -0
  50. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SigningOfficialFields.d.ts.map +1 -0
  51. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SigningOfficialFields.js +51 -0
  52. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/SigningOfficialFields.js.map +1 -0
  53. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/eDucSignatureUtils.d.ts +12 -0
  54. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/eDucSignatureUtils.d.ts.map +1 -0
  55. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/eDucSignatureUtils.js +24 -0
  56. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/eDucSignatureUtils.js.map +1 -0
  57. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/requestFlowTypes.d.ts +11 -0
  58. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/requestFlowTypes.d.ts.map +1 -0
  59. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/requestFlowTypes.js +0 -0
  60. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/useInitializeRequestAccessors.d.ts +22 -0
  61. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/useInitializeRequestAccessors.d.ts.map +1 -0
  62. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/useInitializeRequestAccessors.js +32 -0
  63. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/useInitializeRequestAccessors.js.map +1 -0
  64. package/dist/components/AclEditor/AclEditor.js +20 -20
  65. package/dist/components/Aridhia/AridhiaAccessStatus.d.ts.map +1 -1
  66. package/dist/components/Aridhia/AridhiaAccessStatus.js +51 -48
  67. package/dist/components/Aridhia/AridhiaAccessStatus.js.map +1 -1
  68. package/dist/components/Authentication/Constants.d.ts +4 -0
  69. package/dist/components/Authentication/Constants.d.ts.map +1 -1
  70. package/dist/components/Authentication/Constants.js +5 -2
  71. package/dist/components/Authentication/Constants.js.map +1 -1
  72. package/dist/components/Authentication/RecoveryCodeGrid.d.ts.map +1 -1
  73. package/dist/components/Authentication/RecoveryCodeGrid.js +8 -1
  74. package/dist/components/Authentication/RecoveryCodeGrid.js.map +1 -1
  75. package/dist/components/Authentication/RegenerateBackupCodesWarning.js +4 -1
  76. package/dist/components/Authentication/RegenerateBackupCodesWarning.js.map +1 -1
  77. package/dist/components/Authentication/TOTPForm.d.ts.map +1 -1
  78. package/dist/components/Authentication/TOTPForm.js +20 -18
  79. package/dist/components/Authentication/TOTPForm.js.map +1 -1
  80. package/dist/components/Authentication/TwoFactorBackupCodes.d.ts.map +1 -1
  81. package/dist/components/Authentication/TwoFactorBackupCodes.js +41 -12
  82. package/dist/components/Authentication/TwoFactorBackupCodes.js.map +1 -1
  83. package/dist/components/Authentication/TwoFactorEnrollmentForm.d.ts.map +1 -1
  84. package/dist/components/Authentication/TwoFactorEnrollmentForm.js +90 -77
  85. package/dist/components/Authentication/TwoFactorEnrollmentForm.js.map +1 -1
  86. package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
  87. package/dist/components/DataGrid/SynapseGrid.js +244 -246
  88. package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
  89. package/dist/components/DataGrid/components/GridLoadingState.d.ts +23 -0
  90. package/dist/components/DataGrid/components/GridLoadingState.d.ts.map +1 -0
  91. package/dist/components/DataGrid/components/GridLoadingState.js +64 -0
  92. package/dist/components/DataGrid/components/GridLoadingState.js.map +1 -0
  93. package/dist/components/DataGrid/components/ReorderColumnsDialog.d.ts.map +1 -1
  94. package/dist/components/DataGrid/components/ReorderColumnsDialog.js +52 -54
  95. package/dist/components/DataGrid/components/ReorderColumnsDialog.js.map +1 -1
  96. package/dist/components/DataGrid/useDataGridWebsocket.d.ts +60 -6
  97. package/dist/components/DataGrid/useDataGridWebsocket.d.ts.map +1 -1
  98. package/dist/components/DataGrid/useDataGridWebsocket.js +71 -60
  99. package/dist/components/DataGrid/useDataGridWebsocket.js.map +1 -1
  100. package/dist/components/DataGrid/utils/getNamedColumnIndices.d.ts +11 -0
  101. package/dist/components/DataGrid/utils/getNamedColumnIndices.d.ts.map +1 -0
  102. package/dist/components/DataGrid/utils/getNamedColumnIndices.js +8 -0
  103. package/dist/components/DataGrid/utils/getNamedColumnIndices.js.map +1 -0
  104. package/dist/components/FilePreview/FileHandleContentRenderer.d.ts +6 -2
  105. package/dist/components/FilePreview/FileHandleContentRenderer.d.ts.map +1 -1
  106. package/dist/components/FilePreview/FileHandleContentRenderer.js +27 -14
  107. package/dist/components/FilePreview/FileHandleContentRenderer.js.map +1 -1
  108. package/dist/components/FilePreview/PdfPreview.d.ts +1 -1
  109. package/dist/components/FilePreview/PdfPreview.d.ts.map +1 -1
  110. package/dist/components/FilePreview/PdfPreview.js +15 -16
  111. package/dist/components/FilePreview/PdfPreview.js.map +1 -1
  112. package/dist/components/FormTemplateEditor/ChoiceOptionsEditor.d.ts +11 -0
  113. package/dist/components/FormTemplateEditor/ChoiceOptionsEditor.d.ts.map +1 -0
  114. package/dist/components/FormTemplateEditor/ChoiceOptionsEditor.js +61 -0
  115. package/dist/components/FormTemplateEditor/ChoiceOptionsEditor.js.map +1 -0
  116. package/dist/components/FormTemplateEditor/FieldDefinitionDrawer.d.ts +33 -0
  117. package/dist/components/FormTemplateEditor/FieldDefinitionDrawer.d.ts.map +1 -0
  118. package/dist/components/FormTemplateEditor/FieldDefinitionDrawer.js +190 -0
  119. package/dist/components/FormTemplateEditor/FieldDefinitionDrawer.js.map +1 -0
  120. package/dist/components/FormTemplateEditor/FieldLibrary.css +1 -0
  121. package/dist/components/FormTemplateEditor/FieldLibrary.d.ts +17 -0
  122. package/dist/components/FormTemplateEditor/FieldLibrary.d.ts.map +1 -0
  123. package/dist/components/FormTemplateEditor/FieldLibrary.js +88 -0
  124. package/dist/components/FormTemplateEditor/FieldLibrary.js.map +1 -0
  125. package/dist/components/FormTemplateEditor/FieldLibrary.module.js +5 -0
  126. package/dist/components/FormTemplateEditor/FieldLibrary.module.js.map +1 -0
  127. package/dist/components/FormTemplateEditor/FieldLibrary.module.scss +12 -0
  128. package/dist/components/FormTemplateEditor/FieldLibraryRow.d.ts +19 -0
  129. package/dist/components/FormTemplateEditor/FieldLibraryRow.d.ts.map +1 -0
  130. package/dist/components/FormTemplateEditor/FieldLibraryRow.js +115 -0
  131. package/dist/components/FormTemplateEditor/FieldLibraryRow.js.map +1 -0
  132. package/dist/components/FormTemplateEditor/FieldValidationErrorAlert.css +1 -0
  133. package/dist/components/FormTemplateEditor/FieldValidationErrorAlert.d.ts +9 -0
  134. package/dist/components/FormTemplateEditor/FieldValidationErrorAlert.d.ts.map +1 -0
  135. package/dist/components/FormTemplateEditor/FieldValidationErrorAlert.js +18 -0
  136. package/dist/components/FormTemplateEditor/FieldValidationErrorAlert.js.map +1 -0
  137. package/dist/components/FormTemplateEditor/FieldValidationErrorAlert.module.js +5 -0
  138. package/dist/components/FormTemplateEditor/FieldValidationErrorAlert.module.js.map +1 -0
  139. package/dist/components/FormTemplateEditor/FieldValidationErrorAlert.module.scss +4 -0
  140. package/dist/components/FormTemplateEditor/FormStructurePanel.d.ts +21 -0
  141. package/dist/components/FormTemplateEditor/FormStructurePanel.d.ts.map +1 -0
  142. package/dist/components/FormTemplateEditor/FormStructurePanel.js +108 -0
  143. package/dist/components/FormTemplateEditor/FormStructurePanel.js.map +1 -0
  144. package/dist/components/FormTemplateEditor/FormTemplateEditor.d.ts +10 -0
  145. package/dist/components/FormTemplateEditor/FormTemplateEditor.d.ts.map +1 -0
  146. package/dist/components/FormTemplateEditor/FormTemplateEditor.js +31 -0
  147. package/dist/components/FormTemplateEditor/FormTemplateEditor.js.map +1 -0
  148. package/dist/components/FormTemplateEditor/FormTemplateEditorForm.d.ts +15 -0
  149. package/dist/components/FormTemplateEditor/FormTemplateEditorForm.d.ts.map +1 -0
  150. package/dist/components/FormTemplateEditor/FormTemplateEditorForm.js +234 -0
  151. package/dist/components/FormTemplateEditor/FormTemplateEditorForm.js.map +1 -0
  152. package/dist/components/FormTemplateEditor/FormTemplatePreview.d.ts +14 -0
  153. package/dist/components/FormTemplateEditor/FormTemplatePreview.d.ts.map +1 -0
  154. package/dist/components/FormTemplateEditor/FormTemplatePreview.js +72 -0
  155. package/dist/components/FormTemplateEditor/FormTemplatePreview.js.map +1 -0
  156. package/dist/components/FormTemplateEditor/JsonSchemaBodyEditor.d.ts +13 -0
  157. package/dist/components/FormTemplateEditor/JsonSchemaBodyEditor.d.ts.map +1 -0
  158. package/dist/components/FormTemplateEditor/JsonSchemaBodyEditor.js +33 -0
  159. package/dist/components/FormTemplateEditor/JsonSchemaBodyEditor.js.map +1 -0
  160. package/dist/components/FormTemplateEditor/StepCard.d.ts +25 -0
  161. package/dist/components/FormTemplateEditor/StepCard.d.ts.map +1 -0
  162. package/dist/components/FormTemplateEditor/StepCard.js +203 -0
  163. package/dist/components/FormTemplateEditor/StepCard.js.map +1 -0
  164. package/dist/components/FormTemplateEditor/StepFieldRow.d.ts +34 -0
  165. package/dist/components/FormTemplateEditor/StepFieldRow.d.ts.map +1 -0
  166. package/dist/components/FormTemplateEditor/StepFieldRow.js +128 -0
  167. package/dist/components/FormTemplateEditor/StepFieldRow.js.map +1 -0
  168. package/dist/components/FormTemplateEditor/TemplateFileHandleField.d.ts +19 -0
  169. package/dist/components/FormTemplateEditor/TemplateFileHandleField.d.ts.map +1 -0
  170. package/dist/components/FormTemplateEditor/TemplateFileHandleField.js +78 -0
  171. package/dist/components/FormTemplateEditor/TemplateFileHandleField.js.map +1 -0
  172. package/dist/components/FormTemplateEditor/dragHandle.css +1 -0
  173. package/dist/components/FormTemplateEditor/dragHandle.module.js +8 -0
  174. package/dist/components/FormTemplateEditor/dragHandle.module.js.map +1 -0
  175. package/dist/components/FormTemplateEditor/dragHandle.module.scss +22 -0
  176. package/dist/components/FormTemplateEditor/dropTarget.css +1 -0
  177. package/dist/components/FormTemplateEditor/dropTarget.module.js +5 -0
  178. package/dist/components/FormTemplateEditor/dropTarget.module.js.map +1 -0
  179. package/dist/components/FormTemplateEditor/dropTarget.module.scss +14 -0
  180. package/dist/components/FormTemplateEditor/formTemplateDraftState.d.ts +48 -0
  181. package/dist/components/FormTemplateEditor/formTemplateDraftState.d.ts.map +1 -0
  182. package/dist/components/FormTemplateEditor/formTemplateDraftState.js +126 -0
  183. package/dist/components/FormTemplateEditor/formTemplateDraftState.js.map +1 -0
  184. package/dist/components/FormTemplateEditor/formTemplateSchema.d.ts +35 -0
  185. package/dist/components/FormTemplateEditor/formTemplateSchema.d.ts.map +1 -0
  186. package/dist/components/FormTemplateEditor/formTemplateSchema.js +35 -0
  187. package/dist/components/FormTemplateEditor/formTemplateSchema.js.map +1 -0
  188. package/dist/components/FormTemplateEditor/formTemplateValidation.d.ts +32 -0
  189. package/dist/components/FormTemplateEditor/formTemplateValidation.d.ts.map +1 -0
  190. package/dist/components/FormTemplateEditor/formTemplateValidation.js +75 -0
  191. package/dist/components/FormTemplateEditor/formTemplateValidation.js.map +1 -0
  192. package/dist/components/FormTemplateEditor/schemaFieldUtils.d.ts +27 -0
  193. package/dist/components/FormTemplateEditor/schemaFieldUtils.d.ts.map +1 -0
  194. package/dist/components/FormTemplateEditor/schemaFieldUtils.js +84 -0
  195. package/dist/components/FormTemplateEditor/schemaFieldUtils.js.map +1 -0
  196. package/dist/components/FormTemplateEditor/sortableIds.d.ts +23 -0
  197. package/dist/components/FormTemplateEditor/sortableIds.d.ts.map +1 -0
  198. package/dist/components/FormTemplateEditor/sortableIds.js +24 -0
  199. package/dist/components/FormTemplateEditor/sortableIds.js.map +1 -0
  200. package/dist/components/FormTemplateEditor/useFormTemplateDraft.d.ts +33 -0
  201. package/dist/components/FormTemplateEditor/useFormTemplateDraft.d.ts.map +1 -0
  202. package/dist/components/FormTemplateEditor/useFormTemplateDraft.js +59 -0
  203. package/dist/components/FormTemplateEditor/useFormTemplateDraft.js.map +1 -0
  204. package/dist/components/FormTemplateEditor/useFormTemplateDrag.d.ts +9 -0
  205. package/dist/components/FormTemplateEditor/useFormTemplateDrag.d.ts.map +1 -0
  206. package/dist/components/FormTemplateEditor/useFormTemplateDrag.js +66 -0
  207. package/dist/components/FormTemplateEditor/useFormTemplateDrag.js.map +1 -0
  208. package/dist/components/FormTemplateEditor/useSaveFormTemplate.d.ts +28 -0
  209. package/dist/components/FormTemplateEditor/useSaveFormTemplate.d.ts.map +1 -0
  210. package/dist/components/FormTemplateEditor/useSaveFormTemplate.js +54 -0
  211. package/dist/components/FormTemplateEditor/useSaveFormTemplate.js.map +1 -0
  212. package/dist/components/FormTemplateEditor/utils.d.ts +21 -0
  213. package/dist/components/FormTemplateEditor/utils.d.ts.map +1 -0
  214. package/dist/components/FormTemplateEditor/utils.js +24 -0
  215. package/dist/components/FormTemplateEditor/utils.js.map +1 -0
  216. package/dist/components/JsonSchemaForm/CustomFormContext.d.ts +1 -1
  217. package/dist/components/JsonSchemaForm/CustomFormContext.d.ts.map +1 -1
  218. package/dist/components/JsonSchemaForm/JsonSchemaForm.css +1 -1
  219. package/dist/components/JsonSchemaForm/JsonSchemaForm.module.js +1 -1
  220. package/dist/components/JsonSchemaForm/JsonSchemaForm.module.js.map +1 -1
  221. package/dist/components/JsonSchemaForm/JsonSchemaForm.module.scss +6 -1
  222. package/dist/components/JsonSchemaForm/templates/RJSFInputLabel.d.ts.map +1 -1
  223. package/dist/components/JsonSchemaForm/templates/RJSFInputLabel.js +4 -0
  224. package/dist/components/JsonSchemaForm/templates/RJSFInputLabel.js.map +1 -1
  225. package/dist/components/JsonSchemaForm/widgets/SelectWidget.d.ts +11 -0
  226. package/dist/components/JsonSchemaForm/widgets/SelectWidget.d.ts.map +1 -1
  227. package/dist/components/JsonSchemaForm/widgets/SelectWidget.js +28 -19
  228. package/dist/components/JsonSchemaForm/widgets/SelectWidget.js.map +1 -1
  229. package/dist/components/QueryBuilder/FilterConditionRow.css +1 -1
  230. package/dist/components/QueryBuilder/FilterConditionRow.d.ts +3 -0
  231. package/dist/components/QueryBuilder/FilterConditionRow.d.ts.map +1 -1
  232. package/dist/components/QueryBuilder/FilterConditionRow.js +123 -123
  233. package/dist/components/QueryBuilder/FilterConditionRow.js.map +1 -1
  234. package/dist/components/QueryBuilder/FilterConditionRow.module.js +10 -11
  235. package/dist/components/QueryBuilder/FilterConditionRow.module.js.map +1 -1
  236. package/dist/components/QueryBuilder/FilterConditionRow.module.scss +0 -5
  237. package/dist/components/QueryBuilder/FilterGroupNode.css +1 -1
  238. package/dist/components/QueryBuilder/FilterGroupNode.d.ts +4 -0
  239. package/dist/components/QueryBuilder/FilterGroupNode.d.ts.map +1 -1
  240. package/dist/components/QueryBuilder/FilterGroupNode.js +85 -51
  241. package/dist/components/QueryBuilder/FilterGroupNode.js.map +1 -1
  242. package/dist/components/QueryBuilder/FilterGroupNode.module.js +10 -9
  243. package/dist/components/QueryBuilder/FilterGroupNode.module.js.map +1 -1
  244. package/dist/components/QueryBuilder/FilterGroupNode.module.scss +9 -0
  245. package/dist/components/QueryBuilder/QBDragHandle.d.ts +10 -0
  246. package/dist/components/QueryBuilder/QBDragHandle.d.ts.map +1 -0
  247. package/dist/components/QueryBuilder/QBDragHandle.js +22 -0
  248. package/dist/components/QueryBuilder/QBDragHandle.js.map +1 -0
  249. package/dist/components/QueryBuilder/QueryBuilderControls.d.ts.map +1 -1
  250. package/dist/components/QueryBuilder/QueryBuilderControls.js +120 -108
  251. package/dist/components/QueryBuilder/QueryBuilderControls.js.map +1 -1
  252. package/dist/components/QueryBuilder/QueryBuilderInternalContext.d.ts +7 -0
  253. package/dist/components/QueryBuilder/QueryBuilderInternalContext.d.ts.map +1 -1
  254. package/dist/components/QueryBuilder/QueryBuilderInternalContext.js.map +1 -1
  255. package/dist/components/QueryBuilder/qbTreeToReadable.d.ts +2 -1
  256. package/dist/components/QueryBuilder/qbTreeToReadable.d.ts.map +1 -1
  257. package/dist/components/QueryBuilder/qbTreeToReadable.js +25 -21
  258. package/dist/components/QueryBuilder/qbTreeToReadable.js.map +1 -1
  259. package/dist/components/QueryBuilder/queryBuilderDnd.d.ts +27 -0
  260. package/dist/components/QueryBuilder/queryBuilderDnd.d.ts.map +1 -0
  261. package/dist/components/QueryBuilder/queryBuilderDnd.js +41 -0
  262. package/dist/components/QueryBuilder/queryBuilderDnd.js.map +1 -0
  263. package/dist/components/QueryBuilder/queryBuilderDrag.css +1 -0
  264. package/dist/components/QueryBuilder/queryBuilderDrag.module.js +8 -0
  265. package/dist/components/QueryBuilder/queryBuilderDrag.module.js.map +1 -0
  266. package/dist/components/QueryBuilder/queryBuilderDrag.module.scss +12 -0
  267. package/dist/components/QueryBuilder/queryBuilderMetadata.d.ts +16 -0
  268. package/dist/components/QueryBuilder/queryBuilderMetadata.d.ts.map +1 -1
  269. package/dist/components/QueryBuilder/queryBuilderMetadata.js +13 -5
  270. package/dist/components/QueryBuilder/queryBuilderMetadata.js.map +1 -1
  271. package/dist/components/QueryBuilder/queryBuilderOperations.d.ts +13 -0
  272. package/dist/components/QueryBuilder/queryBuilderOperations.d.ts.map +1 -1
  273. package/dist/components/QueryBuilder/queryBuilderOperations.js +39 -36
  274. package/dist/components/QueryBuilder/queryBuilderOperations.js.map +1 -1
  275. package/dist/components/QueryBuilder/useQBValueDisplayName.d.ts +18 -0
  276. package/dist/components/QueryBuilder/useQBValueDisplayName.d.ts.map +1 -0
  277. package/dist/components/QueryBuilder/useQBValueDisplayName.js +64 -0
  278. package/dist/components/QueryBuilder/useQBValueDisplayName.js.map +1 -0
  279. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts.map +1 -1
  280. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js +46 -47
  281. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
  282. package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js +6 -6
  283. package/dist/components/SynapseTable/RowSelection/RowSelectionUI.d.ts +1 -0
  284. package/dist/components/SynapseTable/RowSelection/RowSelectionUI.d.ts.map +1 -1
  285. package/dist/components/SynapseTable/RowSelection/RowSelectionUI.js +13 -11
  286. package/dist/components/SynapseTable/RowSelection/RowSelectionUI.js.map +1 -1
  287. package/dist/components/SynapseTable/SearchV2.js +4 -4
  288. package/dist/components/ToastMessage/ToastMessage.d.ts.map +1 -1
  289. package/dist/components/ToastMessage/ToastMessage.js +25 -22
  290. package/dist/components/ToastMessage/ToastMessage.js.map +1 -1
  291. package/dist/components/dataaccess/FormTemplateEditorRoute.d.ts +7 -0
  292. package/dist/components/dataaccess/FormTemplateEditorRoute.d.ts.map +1 -0
  293. package/dist/components/dataaccess/FormTemplateEditorRoute.js +26 -0
  294. package/dist/components/dataaccess/FormTemplateEditorRoute.js.map +1 -0
  295. package/dist/components/dataaccess/FormTemplateTable.d.ts +10 -0
  296. package/dist/components/dataaccess/FormTemplateTable.d.ts.map +1 -0
  297. package/dist/components/dataaccess/FormTemplateTable.js +124 -0
  298. package/dist/components/dataaccess/FormTemplateTable.js.map +1 -0
  299. package/dist/components/dataaccess/ReviewerDashboard.d.ts.map +1 -1
  300. package/dist/components/dataaccess/ReviewerDashboard.js +80 -50
  301. package/dist/components/dataaccess/ReviewerDashboard.js.map +1 -1
  302. package/dist/components/dataaccess/UserAccessRequestHistory/InFlightEDucSignaturesTable.d.ts.map +1 -1
  303. package/dist/components/dataaccess/UserAccessRequestHistory/InFlightEDucSignaturesTable.js +2 -0
  304. package/dist/components/dataaccess/UserAccessRequestHistory/InFlightEDucSignaturesTable.js.map +1 -1
  305. package/dist/components/entity/page/title_bar/EntityPageTitleBar.d.ts +0 -1
  306. package/dist/components/entity/page/title_bar/EntityPageTitleBar.d.ts.map +1 -1
  307. package/dist/components/entity/page/title_bar/EntityPageTitleBar.js +35 -36
  308. package/dist/components/entity/page/title_bar/EntityPageTitleBar.js.map +1 -1
  309. package/dist/components/styled/LeftRightPanel.d.ts.map +1 -1
  310. package/dist/components/styled/LeftRightPanel.js +19 -2
  311. package/dist/components/styled/LeftRightPanel.js.map +1 -1
  312. package/dist/components/widgets/FileHandleLink.d.ts +12 -2
  313. package/dist/components/widgets/FileHandleLink.d.ts.map +1 -1
  314. package/dist/components/widgets/FileHandleLink.js +25 -29
  315. package/dist/components/widgets/FileHandleLink.js.map +1 -1
  316. package/dist/mocks/accessRequirement/mockFormTemplates.d.ts +4 -2
  317. package/dist/mocks/accessRequirement/mockFormTemplates.d.ts.map +1 -1
  318. package/dist/mocks/accessRequirement/mockFormTemplates.js +13 -14
  319. package/dist/mocks/accessRequirement/mockFormTemplates.js.map +1 -1
  320. package/dist/mocks/accessRequirement/mockJsonSchemas.d.ts +4 -1
  321. package/dist/mocks/accessRequirement/mockJsonSchemas.d.ts.map +1 -1
  322. package/dist/mocks/accessRequirement/mockJsonSchemas.js +24 -17
  323. package/dist/mocks/accessRequirement/mockJsonSchemas.js.map +1 -1
  324. package/dist/mocks/msw/handlers/asyncJobHandlers.d.ts +41 -14
  325. package/dist/mocks/msw/handlers/asyncJobHandlers.d.ts.map +1 -1
  326. package/dist/mocks/msw/handlers/asyncJobHandlers.js +53 -44
  327. package/dist/mocks/msw/handlers/asyncJobHandlers.js.map +1 -1
  328. package/dist/mocks/msw/handlers/authHandlers.d.ts +1 -0
  329. package/dist/mocks/msw/handlers/authHandlers.d.ts.map +1 -1
  330. package/dist/mocks/msw/handlers/authHandlers.js +6 -2
  331. package/dist/mocks/msw/handlers/authHandlers.js.map +1 -1
  332. package/dist/mocks/msw/handlers/chatHandlers.d.ts.map +1 -1
  333. package/dist/mocks/msw/handlers/chatHandlers.js +19 -13
  334. package/dist/mocks/msw/handlers/chatHandlers.js.map +1 -1
  335. package/dist/mocks/msw/handlers/dataAccessRequestHandlers.d.ts +2 -0
  336. package/dist/mocks/msw/handlers/dataAccessRequestHandlers.d.ts.map +1 -1
  337. package/dist/mocks/msw/handlers/dataAccessRequestHandlers.js +52 -46
  338. package/dist/mocks/msw/handlers/dataAccessRequestHandlers.js.map +1 -1
  339. package/dist/mocks/msw/handlers/fileHandlers.d.ts.map +1 -1
  340. package/dist/mocks/msw/handlers/fileHandlers.js +25 -21
  341. package/dist/mocks/msw/handlers/fileHandlers.js.map +1 -1
  342. package/dist/mocks/msw/handlers/formTemplateHandlers.d.ts +2 -1
  343. package/dist/mocks/msw/handlers/formTemplateHandlers.d.ts.map +1 -1
  344. package/dist/mocks/msw/handlers/formTemplateHandlers.js +18 -18
  345. package/dist/mocks/msw/handlers/formTemplateHandlers.js.map +1 -1
  346. package/dist/mocks/msw/handlers/schemaHandlers.d.ts +10 -1
  347. package/dist/mocks/msw/handlers/schemaHandlers.d.ts.map +1 -1
  348. package/dist/mocks/msw/handlers/schemaHandlers.js +30 -7
  349. package/dist/mocks/msw/handlers/schemaHandlers.js.map +1 -1
  350. package/dist/mocks/msw/handlers/searchQueryHandlers.d.ts.map +1 -1
  351. package/dist/mocks/msw/handlers/searchQueryHandlers.js +24 -18
  352. package/dist/mocks/msw/handlers/searchQueryHandlers.js.map +1 -1
  353. package/dist/mocks/msw/handlers/tableQueryHandlers.d.ts.map +1 -1
  354. package/dist/mocks/msw/handlers/tableQueryHandlers.js +35 -16
  355. package/dist/mocks/msw/handlers/tableQueryHandlers.js.map +1 -1
  356. package/dist/mocks/msw/handlers/twoFactorEnrollmentHandlers.d.ts +8 -0
  357. package/dist/mocks/msw/handlers/twoFactorEnrollmentHandlers.d.ts.map +1 -0
  358. package/dist/mocks/msw/handlers/twoFactorEnrollmentHandlers.js +19 -0
  359. package/dist/mocks/msw/handlers/twoFactorEnrollmentHandlers.js.map +1 -0
  360. package/dist/style/abstracts/_cssVariables.scss +13 -0
  361. package/dist/style/components/_toasts.scss +10 -1
  362. package/dist/style/main.css +1 -1
  363. package/dist/synapse-queries/KeyFactory.d.ts +9 -3
  364. package/dist/synapse-queries/KeyFactory.d.ts.map +1 -1
  365. package/dist/synapse-queries/KeyFactory.js +17 -7
  366. package/dist/synapse-queries/KeyFactory.js.map +1 -1
  367. package/dist/synapse-queries/auth/index.d.ts +1 -0
  368. package/dist/synapse-queries/auth/index.d.ts.map +1 -1
  369. package/dist/synapse-queries/auth/index.js +2 -1
  370. package/dist/synapse-queries/auth/useUnbindOAuthProviderIdentity.d.ts +11 -0
  371. package/dist/synapse-queries/auth/useUnbindOAuthProviderIdentity.d.ts.map +1 -0
  372. package/dist/synapse-queries/auth/useUnbindOAuthProviderIdentity.js +19 -0
  373. package/dist/synapse-queries/auth/useUnbindOAuthProviderIdentity.js.map +1 -0
  374. package/dist/synapse-queries/dataaccess/index.d.ts +0 -1
  375. package/dist/synapse-queries/dataaccess/index.d.ts.map +1 -1
  376. package/dist/synapse-queries/dataaccess/index.js +3 -4
  377. package/dist/synapse-queries/dataaccess/useEDuc.d.ts +18 -0
  378. package/dist/synapse-queries/dataaccess/useEDuc.d.ts.map +1 -1
  379. package/dist/synapse-queries/dataaccess/useEDuc.js +33 -1
  380. package/dist/synapse-queries/dataaccess/useEDuc.js.map +1 -1
  381. package/dist/synapse-queries/file/useDirectUploadToS3.js +6 -6
  382. package/dist/synapse-queries/file/useFileHandle.d.ts +8 -0
  383. package/dist/synapse-queries/file/useFileHandle.d.ts.map +1 -1
  384. package/dist/synapse-queries/file/useFileHandle.js +15 -6
  385. package/dist/synapse-queries/file/useFileHandle.js.map +1 -1
  386. package/dist/synapse-queries/index.js +260 -257
  387. package/dist/synapse-queries/jsonschema/index.js +2 -2
  388. package/dist/synapse-queries/jsonschema/useCreateJsonSchema.d.ts +9 -0
  389. package/dist/synapse-queries/jsonschema/useCreateJsonSchema.d.ts.map +1 -0
  390. package/dist/synapse-queries/jsonschema/useCreateJsonSchema.js +22 -0
  391. package/dist/synapse-queries/jsonschema/useCreateJsonSchema.js.map +1 -0
  392. package/dist/synapse-queries/jsonschema/useSchema.d.ts +5 -0
  393. package/dist/synapse-queries/jsonschema/useSchema.d.ts.map +1 -1
  394. package/dist/synapse-queries/jsonschema/useSchema.js +9 -1
  395. package/dist/synapse-queries/jsonschema/useSchema.js.map +1 -1
  396. package/dist/testutils/vitest.setup.js +18 -9
  397. package/dist/testutils/vitest.setup.js.map +1 -1
  398. package/dist/tsconfig.build.tsbuildinfo +1 -1
  399. package/dist/utils/APIConstants.d.ts +2 -0
  400. package/dist/utils/APIConstants.d.ts.map +1 -1
  401. package/dist/utils/APIConstants.js +2 -2
  402. package/dist/utils/APIConstants.js.map +1 -1
  403. package/dist/utils/appendFinalQueryParamKey.d.ts.map +1 -1
  404. package/dist/utils/appendFinalQueryParamKey.js +4 -1
  405. package/dist/utils/appendFinalQueryParamKey.js.map +1 -1
  406. package/dist/utils/featureflag/FeatureFlags.d.ts +2 -0
  407. package/dist/utils/featureflag/FeatureFlags.d.ts.map +1 -1
  408. package/dist/utils/featureflag/FeatureFlags.js +1 -1
  409. package/dist/utils/featureflag/FeatureFlags.js.map +1 -1
  410. package/dist/utils/functions/ArrayUtils.d.ts +3 -0
  411. package/dist/utils/functions/ArrayUtils.d.ts.map +1 -1
  412. package/dist/utils/functions/ArrayUtils.js +7 -1
  413. package/dist/utils/functions/ArrayUtils.js.map +1 -1
  414. package/dist/utils/functions/toPascalCase.d.ts +6 -0
  415. package/dist/utils/functions/toPascalCase.d.ts.map +1 -0
  416. package/dist/utils/functions/toPascalCase.js +8 -0
  417. package/dist/utils/functions/toPascalCase.js.map +1 -0
  418. package/dist/utils/jsonschema/generateDataAccessSchema.d.ts +26 -0
  419. package/dist/utils/jsonschema/generateDataAccessSchema.d.ts.map +1 -0
  420. package/dist/utils/jsonschema/generateDataAccessSchema.js +28 -0
  421. package/dist/utils/jsonschema/generateDataAccessSchema.js.map +1 -0
  422. package/dist/utils/jsonschema/submissionContext.d.ts +91 -0
  423. package/dist/utils/jsonschema/submissionContext.d.ts.map +1 -0
  424. package/dist/utils/jsonschema/submissionContext.js +178 -0
  425. package/dist/utils/jsonschema/submissionContext.js.map +1 -0
  426. package/package.json +13 -10
  427. package/dist/components/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.d.ts +0 -6
  428. package/dist/components/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.d.ts.map +0 -1
  429. package/dist/components/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.js +0 -32
  430. package/dist/components/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.js.map +0 -1
  431. package/dist/components/entity/page/title_bar/TitleBarProperties.d.ts +0 -9
  432. package/dist/components/entity/page/title_bar/TitleBarProperties.d.ts.map +0 -1
  433. package/dist/components/entity/page/title_bar/TitleBarProperties.js +0 -24
  434. package/dist/components/entity/page/title_bar/TitleBarProperties.js.map +0 -1
  435. package/dist/synapse-queries/dataaccess/useGenerateDataAccessSchema.d.ts +0 -21
  436. package/dist/synapse-queries/dataaccess/useGenerateDataAccessSchema.d.ts.map +0 -1
  437. package/dist/synapse-queries/dataaccess/useGenerateDataAccessSchema.js +0 -34
  438. package/dist/synapse-queries/dataaccess/useGenerateDataAccessSchema.js.map +0 -1
@@ -6,21 +6,20 @@ import i from "../../../utils/ConditionalWrapper.js";
6
6
  import a from "../../../favorites/FavoriteButton.js";
7
7
  import o from "../action_menu/EntityActionMenu.js";
8
8
  import { EntityTitleBarVersionInfo as s } from "./EntityTitleBarVersionInfo.js";
9
- import c from "./TitleBarProperties.js";
10
- import { CopyToClipboardString as l } from "../../../CopyToClipboardString/CopyToClipboardString.js";
11
- import { Avatar as u, Box as d, Skeleton as f, Stack as p, Typography as m } from "@mui/material";
12
- import { jsx as h, jsxs as g } from "react/jsx-runtime";
9
+ import { CopyToClipboardString as c } from "../../../CopyToClipboardString/CopyToClipboardString.js";
10
+ import { Avatar as l, Box as u, Skeleton as d, Stack as f, Typography as p } from "@mui/material";
11
+ import { jsx as m, jsxs as h } from "react/jsx-runtime";
13
12
  //#region src/components/entity/page/title_bar/EntityPageTitleBar.tsx
14
- var _ = "#EAF0F5", v = "#497097";
15
- function y(y) {
16
- let { entityId: b, versionNumber: x, entityActionMenuProps: S } = y, C = S?.actionConfiguration.SHOW_VERSION_HISTORY?.onClick, { data: w, isLoading: T } = t(b, x), E = w?.entity && e(w.entity) ? w.entity.repositoryName : w?.entity?.name;
17
- return /* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h(d, {
13
+ var g = "#EAF0F5", _ = "#497097";
14
+ function v(v) {
15
+ let { entityId: y, versionNumber: b, entityActionMenuProps: x } = v, S = x?.actionConfiguration.SHOW_VERSION_HISTORY?.onClick, { data: C, isLoading: w } = t(y, b), T = C?.entity && e(C.entity) ? C.entity.repositoryName : C?.entity?.name;
16
+ return /* @__PURE__ */ m("div", { children: /* @__PURE__ */ m(u, {
18
17
  sx: {
19
18
  padding: "10px 16px",
20
- backgroundColor: _,
19
+ backgroundColor: g,
21
20
  borderRadius: "5px"
22
21
  },
23
- children: /* @__PURE__ */ g(p, {
22
+ children: /* @__PURE__ */ h(f, {
24
23
  sx: {
25
24
  flexDirection: {
26
25
  xs: "column",
@@ -28,19 +27,19 @@ function y(y) {
28
27
  },
29
28
  alignItems: "center"
30
29
  },
31
- children: [/* @__PURE__ */ g(p, {
30
+ children: [/* @__PURE__ */ h(f, {
32
31
  direction: "row",
33
32
  sx: {
34
33
  alignItems: "center",
35
34
  flexGrow: 1
36
35
  },
37
- children: [/* @__PURE__ */ h(i, {
38
- condition: T,
39
- wrapper: f,
36
+ children: [/* @__PURE__ */ m(i, {
37
+ condition: w,
38
+ wrapper: d,
40
39
  wrapperProps: { variant: "circular" },
41
- children: /* @__PURE__ */ h(u, {
40
+ children: /* @__PURE__ */ m(l, {
42
41
  sx: {
43
- bgcolor: v,
42
+ bgcolor: _,
44
43
  height: 68,
45
44
  width: 68,
46
45
  borderRadius: "3px",
@@ -50,46 +49,46 @@ function y(y) {
50
49
  }
51
50
  },
52
51
  variant: "square",
53
- children: w?.entityType && /* @__PURE__ */ h(n, {
54
- icon: w?.entityType ? r[w.entityType] : "file",
52
+ children: C?.entityType && /* @__PURE__ */ m(n, {
53
+ icon: C?.entityType ? r[C.entityType] : "file",
55
54
  wrap: !1
56
55
  })
57
56
  })
58
- }), /* @__PURE__ */ g(d, {
57
+ }), /* @__PURE__ */ h(u, {
59
58
  sx: {
60
59
  marginLeft: "10px",
61
60
  flexGrow: 1
62
61
  },
63
62
  children: [
64
- /* @__PURE__ */ g(p, {
63
+ /* @__PURE__ */ h(f, {
65
64
  direction: "row",
66
65
  sx: {
67
66
  alignItems: "center",
68
67
  gap: "3px"
69
68
  },
70
- children: [/* @__PURE__ */ h(i, {
71
- condition: T,
72
- wrapper: f,
73
- children: /* @__PURE__ */ h(m, {
69
+ children: [/* @__PURE__ */ m(i, {
70
+ condition: w,
71
+ wrapper: d,
72
+ children: /* @__PURE__ */ m(p, {
74
73
  variant: "headline2",
75
74
  sx: {
76
75
  color: "greyV2.950",
77
76
  fontWeight: 540
78
77
  },
79
- children: E ?? "Name not set"
78
+ children: T ?? "Name not set"
80
79
  })
81
- }), w?.entity?.id && /* @__PURE__ */ h(a, {
82
- entityId: w.entity.id,
80
+ }), C?.entity?.id && /* @__PURE__ */ m(a, {
81
+ entityId: C.entity.id,
83
82
  iconColor: "greyV2.400"
84
83
  })]
85
84
  }),
86
- /* @__PURE__ */ h(s, {
87
- entityId: b,
88
- versionNumber: x,
89
- toggleShowVersionHistory: C
85
+ /* @__PURE__ */ m(s, {
86
+ entityId: y,
87
+ versionNumber: b,
88
+ toggleShowVersionHistory: S
90
89
  }),
91
- /* @__PURE__ */ h(l, {
92
- value: b,
90
+ /* @__PURE__ */ m(c, {
91
+ value: y,
93
92
  icon: "rounded",
94
93
  sx: { "& .MuiTypography-root": {
95
94
  color: "greyV2.800",
@@ -99,11 +98,11 @@ function y(y) {
99
98
  })
100
99
  ]
101
100
  })]
102
- }), S && /* @__PURE__ */ h(o, { ...S })]
101
+ }), x && /* @__PURE__ */ m(o, { ...x })]
103
102
  })
104
- }), /* @__PURE__ */ h(c, { ...y })] });
103
+ }) });
105
104
  }
106
105
  //#endregion
107
- export { y as default };
106
+ export { v as default };
108
107
 
109
108
  //# sourceMappingURL=EntityPageTitleBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntityPageTitleBar.js","names":[],"sources":["../../../../../src/components/entity/page/title_bar/EntityPageTitleBar.tsx"],"sourcesContent":["import ConditionalWrapper from '@/components/utils/ConditionalWrapper'\nimport { useGetEntityBundle } from '@/synapse-queries'\nimport { isDockerRepository } from '@/utils/types/IsType'\nimport { Avatar, Box, Skeleton, Stack, Typography } from '@mui/material'\nimport FavoriteButton from '../../../favorites/FavoriteButton'\nimport IconSvg, { type2SvgIconName } from '../../../IconSvg/IconSvg'\nimport EntityActionMenu, {\n EntityActionMenuProps,\n} from '../action_menu/EntityActionMenu'\nimport { EntityTitleBarVersionInfo } from './EntityTitleBarVersionInfo'\nimport TitleBarProperties from './TitleBarProperties'\nimport CopyToClipboardString from '@/components/CopyToClipboardString/CopyToClipboardString'\n\nexport type EntityPageTitleBarProps = {\n entityId: string\n versionNumber?: number\n /* Props that will be passed through to an EntityActionMenu component */\n entityActionMenuProps?: EntityActionMenuProps\n /* Callback invoked when an ACT member clicks \"Add Conditions for Use\". */\n onActMemberClickAddConditionsForUse: () => void\n}\n\nconst TITLE_BAR_BACKGROUND_COLOR = '#EAF0F5'\nconst AVATAR_BACKGROUND_COLOR = '#497097'\n\n/**\n * The EntityPageTitleBar component is shown on every Entity page in Synapse, and shows an Entity's metadata and\n * provides controls to view and manipulate the Entity.\n */\nexport default function EntityPageTitleBar(props: EntityPageTitleBarProps) {\n const { entityId, versionNumber, entityActionMenuProps } = props\n\n const toggleShowVersionHistory =\n entityActionMenuProps?.actionConfiguration['SHOW_VERSION_HISTORY']?.onClick\n\n const { data: bundle, isLoading } = useGetEntityBundle(\n entityId,\n versionNumber,\n )\n\n const name =\n bundle?.entity && isDockerRepository(bundle.entity)\n ? bundle.entity.repositoryName\n : bundle?.entity?.name\n\n return (\n <div>\n <Box\n sx={{\n padding: '10px 16px',\n backgroundColor: TITLE_BAR_BACKGROUND_COLOR,\n borderRadius: '5px',\n }}\n >\n <Stack\n sx={{\n flexDirection: { xs: 'column', md: 'row' },\n alignItems: 'center',\n }}\n >\n <Stack\n direction={'row'}\n sx={{\n alignItems: 'center',\n flexGrow: 1,\n }}\n >\n <ConditionalWrapper\n condition={isLoading}\n wrapper={Skeleton}\n wrapperProps={{\n variant: 'circular',\n }}\n >\n <Avatar\n sx={{\n bgcolor: AVATAR_BACKGROUND_COLOR,\n height: 68,\n width: 68,\n borderRadius: '3px',\n svg: {\n height: '36px',\n width: '36px',\n },\n }}\n variant={'square'}\n >\n {bundle?.entityType && (\n <IconSvg\n icon={\n bundle?.entityType\n ? type2SvgIconName[bundle.entityType]\n : 'file'\n }\n wrap={false}\n />\n )}\n </Avatar>\n </ConditionalWrapper>\n <Box sx={{ marginLeft: '10px', flexGrow: 1 }}>\n <Stack\n direction={'row'}\n sx={{\n alignItems: 'center',\n gap: '3px',\n }}\n >\n <ConditionalWrapper condition={isLoading} wrapper={Skeleton}>\n <Typography\n variant={'headline2'}\n sx={{ color: 'greyV2.950', fontWeight: 540 }}\n >\n {name ?? 'Name not set'}\n </Typography>\n </ConditionalWrapper>\n {bundle?.entity?.id && (\n <FavoriteButton\n entityId={bundle.entity.id}\n iconColor={'greyV2.400'}\n />\n )}\n </Stack>\n <EntityTitleBarVersionInfo\n entityId={entityId}\n versionNumber={versionNumber}\n toggleShowVersionHistory={toggleShowVersionHistory}\n />\n <CopyToClipboardString\n value={entityId}\n icon=\"rounded\"\n sx={{\n '& .MuiTypography-root': {\n color: 'greyV2.800',\n fontWeight: 440,\n lineHeight: '20px',\n },\n }}\n />\n </Box>\n </Stack>\n {entityActionMenuProps && (\n <EntityActionMenu {...entityActionMenuProps} />\n )}\n </Stack>\n </Box>\n <TitleBarProperties {...props} />\n </div>\n )\n}\n"],"mappings":";;;;;;;;;;;;;AAsBA,IAAM,IAA6B,WAC7B,IAA0B;AAMhC,SAAwB,EAAmB,GAAgC;CACzE,IAAM,EAAE,aAAU,kBAAe,6BAA0B,GAErD,IACJ,GAAuB,oBAAoB,sBAAyB,SAEhE,EAAE,MAAM,GAAQ,iBAAc,EAClC,GACA,CACF,GAEM,IACJ,GAAQ,UAAU,EAAmB,EAAO,MAAM,IAC9C,EAAO,OAAO,iBACd,GAAQ,QAAQ;CAEtB,OACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,GAAD;EACE,IAAI;GACF,SAAS;GACT,iBAAiB;GACjB,cAAc;EAChB;YAEA,kBAAC,GAAD;GACE,IAAI;IACF,eAAe;KAAE,IAAI;KAAU,IAAI;IAAM;IACzC,YAAY;GACd;aAJF,CAME,kBAAC,GAAD;IACE,WAAW;IACX,IAAI;KACF,YAAY;KACZ,UAAU;IACZ;cALF,CAOE,kBAAC,GAAD;KACE,WAAW;KACX,SAAS;KACT,cAAc,EACZ,SAAS,WACX;eAEA,kBAAC,GAAD;MACE,IAAI;OACF,SAAS;OACT,QAAQ;OACR,OAAO;OACP,cAAc;OACd,KAAK;QACH,QAAQ;QACR,OAAO;OACT;MACF;MACA,SAAS;gBAER,GAAQ,cACP,kBAAC,GAAD;OACE,MACE,GAAQ,aACJ,EAAiB,EAAO,cACxB;OAEN,MAAM;MACP,CAAA;KAEG,CAAA;IACU,CAAA,GACpB,kBAAC,GAAD;KAAK,IAAI;MAAE,YAAY;MAAQ,UAAU;KAAE;eAA3C;MACE,kBAAC,GAAD;OACE,WAAW;OACX,IAAI;QACF,YAAY;QACZ,KAAK;OACP;iBALF,CAOE,kBAAC,GAAD;QAAoB,WAAW;QAAW,SAAS;kBACjD,kBAAC,GAAD;SACE,SAAS;SACT,IAAI;UAAE,OAAO;UAAc,YAAY;SAAI;mBAE1C,KAAQ;QACC,CAAA;OACM,CAAA,GACnB,GAAQ,QAAQ,MACf,kBAAC,GAAD;QACE,UAAU,EAAO,OAAO;QACxB,WAAW;OACZ,CAAA,CAEE;;MACP,kBAAC,GAAD;OACY;OACK;OACW;MAC3B,CAAA;MACD,kBAAC,GAAD;OACE,OAAO;OACP,MAAK;OACL,IAAI,EACF,yBAAyB;QACvB,OAAO;QACP,YAAY;QACZ,YAAY;OACd,EACF;MACD,CAAA;KACE;MACA;OACN,KACC,kBAAC,GAAD,EAAkB,GAAI,EAAwB,CAAA,CAE3C;;CACJ,CAAA,GACL,kBAAC,GAAD,EAAoB,GAAI,EAAQ,CAAA,CAC7B,EAAA,CAAA;AAET"}
1
+ {"version":3,"file":"EntityPageTitleBar.js","names":[],"sources":["../../../../../src/components/entity/page/title_bar/EntityPageTitleBar.tsx"],"sourcesContent":["import ConditionalWrapper from '@/components/utils/ConditionalWrapper'\nimport { useGetEntityBundle } from '@/synapse-queries'\nimport { isDockerRepository } from '@/utils/types/IsType'\nimport { Avatar, Box, Skeleton, Stack, Typography } from '@mui/material'\nimport FavoriteButton from '../../../favorites/FavoriteButton'\nimport IconSvg, { type2SvgIconName } from '../../../IconSvg/IconSvg'\nimport EntityActionMenu, {\n EntityActionMenuProps,\n} from '../action_menu/EntityActionMenu'\nimport { EntityTitleBarVersionInfo } from './EntityTitleBarVersionInfo'\nimport CopyToClipboardString from '@/components/CopyToClipboardString/CopyToClipboardString'\n\nexport type EntityPageTitleBarProps = {\n entityId: string\n versionNumber?: number\n /* Props that will be passed through to an EntityActionMenu component */\n entityActionMenuProps?: EntityActionMenuProps\n}\n\nconst TITLE_BAR_BACKGROUND_COLOR = '#EAF0F5'\nconst AVATAR_BACKGROUND_COLOR = '#497097'\n\n/**\n * The EntityPageTitleBar component is shown on every Entity page in Synapse, and shows an Entity's metadata and\n * provides controls to view and manipulate the Entity.\n */\nexport default function EntityPageTitleBar(props: EntityPageTitleBarProps) {\n const { entityId, versionNumber, entityActionMenuProps } = props\n\n const toggleShowVersionHistory =\n entityActionMenuProps?.actionConfiguration['SHOW_VERSION_HISTORY']?.onClick\n\n const { data: bundle, isLoading } = useGetEntityBundle(\n entityId,\n versionNumber,\n )\n\n const name =\n bundle?.entity && isDockerRepository(bundle.entity)\n ? bundle.entity.repositoryName\n : bundle?.entity?.name\n\n return (\n <div>\n <Box\n sx={{\n padding: '10px 16px',\n backgroundColor: TITLE_BAR_BACKGROUND_COLOR,\n borderRadius: '5px',\n }}\n >\n <Stack\n sx={{\n flexDirection: { xs: 'column', md: 'row' },\n alignItems: 'center',\n }}\n >\n <Stack\n direction={'row'}\n sx={{\n alignItems: 'center',\n flexGrow: 1,\n }}\n >\n <ConditionalWrapper\n condition={isLoading}\n wrapper={Skeleton}\n wrapperProps={{\n variant: 'circular',\n }}\n >\n <Avatar\n sx={{\n bgcolor: AVATAR_BACKGROUND_COLOR,\n height: 68,\n width: 68,\n borderRadius: '3px',\n svg: {\n height: '36px',\n width: '36px',\n },\n }}\n variant={'square'}\n >\n {bundle?.entityType && (\n <IconSvg\n icon={\n bundle?.entityType\n ? type2SvgIconName[bundle.entityType]\n : 'file'\n }\n wrap={false}\n />\n )}\n </Avatar>\n </ConditionalWrapper>\n <Box sx={{ marginLeft: '10px', flexGrow: 1 }}>\n <Stack\n direction={'row'}\n sx={{\n alignItems: 'center',\n gap: '3px',\n }}\n >\n <ConditionalWrapper condition={isLoading} wrapper={Skeleton}>\n <Typography\n variant={'headline2'}\n sx={{ color: 'greyV2.950', fontWeight: 540 }}\n >\n {name ?? 'Name not set'}\n </Typography>\n </ConditionalWrapper>\n {bundle?.entity?.id && (\n <FavoriteButton\n entityId={bundle.entity.id}\n iconColor={'greyV2.400'}\n />\n )}\n </Stack>\n <EntityTitleBarVersionInfo\n entityId={entityId}\n versionNumber={versionNumber}\n toggleShowVersionHistory={toggleShowVersionHistory}\n />\n <CopyToClipboardString\n value={entityId}\n icon=\"rounded\"\n sx={{\n '& .MuiTypography-root': {\n color: 'greyV2.800',\n fontWeight: 440,\n lineHeight: '20px',\n },\n }}\n />\n </Box>\n </Stack>\n {entityActionMenuProps && (\n <EntityActionMenu {...entityActionMenuProps} />\n )}\n </Stack>\n </Box>\n </div>\n )\n}\n"],"mappings":";;;;;;;;;;;;AAmBA,IAAM,IAA6B,WAC7B,IAA0B;AAMhC,SAAwB,EAAmB,GAAgC;CACzE,IAAM,EAAE,aAAU,kBAAe,6BAA0B,GAErD,IACJ,GAAuB,oBAAoB,sBAAyB,SAEhE,EAAE,MAAM,GAAQ,iBAAc,EAClC,GACA,CACF,GAEM,IACJ,GAAQ,UAAU,EAAmB,EAAO,MAAM,IAC9C,EAAO,OAAO,iBACd,GAAQ,QAAQ;CAEtB,OACE,kBAAC,OAAD,EAAA,UACE,kBAAC,GAAD;EACE,IAAI;GACF,SAAS;GACT,iBAAiB;GACjB,cAAc;EAChB;YAEA,kBAAC,GAAD;GACE,IAAI;IACF,eAAe;KAAE,IAAI;KAAU,IAAI;IAAM;IACzC,YAAY;GACd;aAJF,CAME,kBAAC,GAAD;IACE,WAAW;IACX,IAAI;KACF,YAAY;KACZ,UAAU;IACZ;cALF,CAOE,kBAAC,GAAD;KACE,WAAW;KACX,SAAS;KACT,cAAc,EACZ,SAAS,WACX;eAEA,kBAAC,GAAD;MACE,IAAI;OACF,SAAS;OACT,QAAQ;OACR,OAAO;OACP,cAAc;OACd,KAAK;QACH,QAAQ;QACR,OAAO;OACT;MACF;MACA,SAAS;gBAER,GAAQ,cACP,kBAAC,GAAD;OACE,MACE,GAAQ,aACJ,EAAiB,EAAO,cACxB;OAEN,MAAM;MACP,CAAA;KAEG,CAAA;IACU,CAAA,GACpB,kBAAC,GAAD;KAAK,IAAI;MAAE,YAAY;MAAQ,UAAU;KAAE;eAA3C;MACE,kBAAC,GAAD;OACE,WAAW;OACX,IAAI;QACF,YAAY;QACZ,KAAK;OACP;iBALF,CAOE,kBAAC,GAAD;QAAoB,WAAW;QAAW,SAAS;kBACjD,kBAAC,GAAD;SACE,SAAS;SACT,IAAI;UAAE,OAAO;UAAc,YAAY;SAAI;mBAE1C,KAAQ;QACC,CAAA;OACM,CAAA,GACnB,GAAQ,QAAQ,MACf,kBAAC,GAAD;QACE,UAAU,EAAO,OAAO;QACxB,WAAW;OACZ,CAAA,CAEE;;MACP,kBAAC,GAAD;OACY;OACK;OACW;MAC3B,CAAA;MACD,kBAAC,GAAD;OACE,OAAO;OACP,MAAK;OACL,IAAI,EACF,yBAAyB;QACvB,OAAO;QACP,YAAY;QACZ,YAAY;OACd,EACF;MACD,CAAA;KACE;MACA;OACN,KACC,kBAAC,GAAD,EAAkB,GAAI,EAAwB,CAAA,CAE3C;;CACJ,CAAA,EACF,CAAA;AAET"}
@@ -1 +1 @@
1
- {"version":3,"file":"LeftRightPanel.d.ts","sourceRoot":"","sources":["../../../src/components/styled/LeftRightPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,QAAQ,EAAS,UAAU,EAAU,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,eAAO,MAAM,oBAAoB,EAAE,eAAe,CAAC,QAAQ,CAWxD,CAAA;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,EAAE,eAAe,CAAC,UAAU,CA4B1D,CAAA;AAEH,KAAK,mBAAmB,GAAG;IACzB,WAAW,EAAE,SAAS,CAAA;IACtB,YAAY,EAAE,SAAS,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,cAAc,CAAC,EAC7B,WAAW,EACX,YAAY,EACZ,SAAS,GACV,EAAE,mBAAmB,2CASrB"}
1
+ {"version":3,"file":"LeftRightPanel.d.ts","sourceRoot":"","sources":["../../../src/components/styled/LeftRightPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,QAAQ,EAAS,UAAU,EAAU,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,eAAO,MAAM,oBAAoB,EAAE,eAAe,CAAC,QAAQ,CAWxD,CAAA;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,EAAE,eAAe,CAAC,UAAU,CAiC1D,CAAA;AAEH,KAAK,mBAAmB,GAAG;IACzB,WAAW,EAAE,SAAS,CAAA;IACtB,YAAY,EAAE,SAAS,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,cAAc,CAAC,EAC7B,WAAW,EACX,YAAY,EACZ,SAAS,GACV,EAAE,mBAAmB,2CASrB"}
@@ -9,12 +9,14 @@ var a = n(e, { label: "StyledOuterContainer" })(({ theme: e }) => ({
9
9
  backgroundSize: "cover",
10
10
  [e.breakpoints.down("md")]: { padding: 0 }
11
11
  })), o = n(t, { label: "StyledInnerContainer" })(({ theme: e }) => ({
12
+ position: "relative",
12
13
  width: "900px",
13
14
  minHeight: "675px",
14
15
  margin: "0 auto",
15
16
  display: "flex",
16
17
  overflow: "hidden",
17
18
  [e.breakpoints.down("md")]: {
19
+ boxShadow: "none",
18
20
  flexDirection: "column",
19
21
  width: "100%",
20
22
  minHeight: 0,
@@ -27,12 +29,27 @@ var a = n(e, { label: "StyledOuterContainer" })(({ theme: e }) => ({
27
29
  [e.breakpoints.down("md")]: { width: "100%" }
28
30
  },
29
31
  "& > div:nth-of-type(1)": { backgroundColor: e.palette.background.paper },
30
- "& > div:nth-of-type(2)": { backgroundColor: e.palette.grey[200] }
32
+ "& > div:nth-of-type(2)": {
33
+ backgroundColor: e.palette.grey[200],
34
+ [e.breakpoints.down("md")]: { backgroundColor: e.palette.background.paper }
35
+ }
31
36
  }));
32
37
  function s({ leftContent: t, rightContent: n, className: s }) {
33
38
  return /* @__PURE__ */ r(a, {
34
39
  className: s,
35
- children: /* @__PURE__ */ i(o, { children: [/* @__PURE__ */ r(e, { children: t }), /* @__PURE__ */ r(e, { children: n })] })
40
+ children: /* @__PURE__ */ i(o, { children: [/* @__PURE__ */ r(e, {
41
+ sx: { order: {
42
+ xs: 2,
43
+ md: 1
44
+ } },
45
+ children: t
46
+ }), /* @__PURE__ */ r(e, {
47
+ sx: { order: {
48
+ xs: 1,
49
+ md: 2
50
+ } },
51
+ children: n
52
+ })] })
36
53
  });
37
54
  }
38
55
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"LeftRightPanel.js","names":[],"sources":["../../../src/components/styled/LeftRightPanel.tsx"],"sourcesContent":["import { Box, BoxProps, Paper, PaperProps, styled } from '@mui/material'\nimport { StyledComponent } from '@emotion/styled'\nimport { ReactNode } from 'react'\n\nexport const StyledOuterContainer: StyledComponent<BoxProps> = styled(Box, {\n label: 'StyledOuterContainer',\n})(({ theme }) => ({\n minHeight: '100vh',\n paddingTop: '50px',\n paddingBottom: '50px',\n background: theme.styledBackground,\n backgroundSize: 'cover',\n [theme.breakpoints.down('md')]: {\n padding: 0,\n },\n}))\n\n/**\n * Canonical 900px two-column card that stacks into a single column on\n * mobile. Layout-only: consumers supply their own panel padding.\n * `apps/SageAccountWeb` extends this (adding baked-in panel padding) rather\n * than redefining it -- see that app's `StyledComponents.ts` (SWC-7966).\n *\n * Below `md` the card grows with its content and the page scrolls normally.\n */\nexport const StyledInnerContainer: StyledComponent<PaperProps> = styled(Paper, {\n label: 'StyledInnerContainer',\n})(({ theme }) => ({\n width: '900px',\n minHeight: '675px',\n margin: '0 auto',\n display: 'flex',\n overflow: 'hidden',\n [theme.breakpoints.down('md')]: {\n flexDirection: 'column',\n width: '100%',\n minHeight: 0,\n height: 'auto',\n overflow: 'visible',\n },\n '& > div:nth-of-type(1), & > div:nth-of-type(2)': {\n borderRadius: 'inherit',\n width: '450px',\n [theme.breakpoints.down('md')]: {\n width: '100%',\n },\n },\n '& > div:nth-of-type(1)': {\n backgroundColor: theme.palette.background.paper,\n },\n '& > div:nth-of-type(2)': {\n backgroundColor: theme.palette.grey[200],\n },\n}))\n\ntype LeftRightPanelProps = {\n leftContent: ReactNode\n rightContent: ReactNode\n className?: string\n}\n\nexport function LeftRightPanel({\n leftContent,\n rightContent,\n className,\n}: LeftRightPanelProps) {\n return (\n <StyledOuterContainer className={className}>\n <StyledInnerContainer>\n <Box>{leftContent}</Box>\n <Box>{rightContent}</Box>\n </StyledInnerContainer>\n </StyledOuterContainer>\n )\n}\n"],"mappings":";;;AAIA,IAAa,IAAkD,EAAO,GAAK,EACzE,OAAO,uBACT,CAAC,GAAG,EAAE,gBAAa;CACjB,WAAW;CACX,YAAY;CACZ,eAAe;CACf,YAAY,EAAM;CAClB,gBAAgB;EACf,EAAM,YAAY,KAAK,IAAI,IAAI,EAC9B,SAAS,EACX;AACF,EAAE,GAUW,IAAoD,EAAO,GAAO,EAC7E,OAAO,uBACT,CAAC,GAAG,EAAE,gBAAa;CACjB,OAAO;CACP,WAAW;CACX,QAAQ;CACR,SAAS;CACT,UAAU;EACT,EAAM,YAAY,KAAK,IAAI,IAAI;EAC9B,eAAe;EACf,OAAO;EACP,WAAW;EACX,QAAQ;EACR,UAAU;CACZ;CACA,kDAAkD;EAChD,cAAc;EACd,OAAO;GACN,EAAM,YAAY,KAAK,IAAI,IAAI,EAC9B,OAAO,OACT;CACF;CACA,0BAA0B,EACxB,iBAAiB,EAAM,QAAQ,WAAW,MAC5C;CACA,0BAA0B,EACxB,iBAAiB,EAAM,QAAQ,KAAK,KACtC;AACF,EAAE;AAQF,SAAgB,EAAe,EAC7B,gBACA,iBACA,gBACsB;CACtB,OACE,kBAAC,GAAD;EAAiC;YAC/B,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UAAM,EAAiB,CAAA,GACvB,kBAAC,GAAD,EAAA,UAAM,EAAkB,CAAA,CACJ,EAAA,CAAA;CACF,CAAA;AAE1B"}
1
+ {"version":3,"file":"LeftRightPanel.js","names":[],"sources":["../../../src/components/styled/LeftRightPanel.tsx"],"sourcesContent":["import { Box, BoxProps, Paper, PaperProps, styled } from '@mui/material'\nimport { StyledComponent } from '@emotion/styled'\nimport { ReactNode } from 'react'\n\nexport const StyledOuterContainer: StyledComponent<BoxProps> = styled(Box, {\n label: 'StyledOuterContainer',\n})(({ theme }) => ({\n minHeight: '100vh',\n paddingTop: '50px',\n paddingBottom: '50px',\n background: theme.styledBackground,\n backgroundSize: 'cover',\n [theme.breakpoints.down('md')]: {\n padding: 0,\n },\n}))\n\n/**\n * Canonical 900px two-column card that stacks into a single column on\n * mobile. Layout-only: consumers supply their own panel padding.\n * `apps/SageAccountWeb` extends this (adding baked-in panel padding) rather\n * than redefining it -- see that app's `StyledComponents.ts` (SWC-7966).\n *\n * Below `md` the card grows with its content and the page scrolls normally.\n */\nexport const StyledInnerContainer: StyledComponent<PaperProps> = styled(Paper, {\n label: 'StyledInnerContainer',\n})(({ theme }) => ({\n position: 'relative',\n width: '900px',\n minHeight: '675px',\n margin: '0 auto',\n display: 'flex',\n overflow: 'hidden',\n [theme.breakpoints.down('md')]: {\n boxShadow: 'none',\n flexDirection: 'column',\n width: '100%',\n minHeight: 0,\n height: 'auto',\n overflow: 'visible',\n },\n '& > div:nth-of-type(1), & > div:nth-of-type(2)': {\n borderRadius: 'inherit',\n width: '450px',\n [theme.breakpoints.down('md')]: {\n width: '100%',\n },\n },\n '& > div:nth-of-type(1)': {\n backgroundColor: theme.palette.background.paper,\n },\n '& > div:nth-of-type(2)': {\n backgroundColor: theme.palette.grey[200],\n [theme.breakpoints.down('md')]: {\n backgroundColor: theme.palette.background.paper,\n },\n },\n}))\n\ntype LeftRightPanelProps = {\n leftContent: ReactNode\n rightContent: ReactNode\n className?: string\n}\n\nexport function LeftRightPanel({\n leftContent,\n rightContent,\n className,\n}: LeftRightPanelProps) {\n return (\n <StyledOuterContainer className={className}>\n <StyledInnerContainer>\n <Box sx={{ order: { xs: 2, md: 1 } }}>{leftContent}</Box>\n <Box sx={{ order: { xs: 1, md: 2 } }}>{rightContent}</Box>\n </StyledInnerContainer>\n </StyledOuterContainer>\n )\n}\n"],"mappings":";;;AAIA,IAAa,IAAkD,EAAO,GAAK,EACzE,OAAO,uBACT,CAAC,GAAG,EAAE,gBAAa;CACjB,WAAW;CACX,YAAY;CACZ,eAAe;CACf,YAAY,EAAM;CAClB,gBAAgB;EACf,EAAM,YAAY,KAAK,IAAI,IAAI,EAC9B,SAAS,EACX;AACF,EAAE,GAUW,IAAoD,EAAO,GAAO,EAC7E,OAAO,uBACT,CAAC,GAAG,EAAE,gBAAa;CACjB,UAAU;CACV,OAAO;CACP,WAAW;CACX,QAAQ;CACR,SAAS;CACT,UAAU;EACT,EAAM,YAAY,KAAK,IAAI,IAAI;EAC9B,WAAW;EACX,eAAe;EACf,OAAO;EACP,WAAW;EACX,QAAQ;EACR,UAAU;CACZ;CACA,kDAAkD;EAChD,cAAc;EACd,OAAO;GACN,EAAM,YAAY,KAAK,IAAI,IAAI,EAC9B,OAAO,OACT;CACF;CACA,0BAA0B,EACxB,iBAAiB,EAAM,QAAQ,WAAW,MAC5C;CACA,0BAA0B;EACxB,iBAAiB,EAAM,QAAQ,KAAK;GACnC,EAAM,YAAY,KAAK,IAAI,IAAI,EAC9B,iBAAiB,EAAM,QAAQ,WAAW,MAC5C;CACF;AACF,EAAE;AAQF,SAAgB,EAAe,EAC7B,gBACA,iBACA,gBACsB;CACtB,OACE,kBAAC,GAAD;EAAiC;YAC/B,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;GAAK,IAAI,EAAE,OAAO;IAAE,IAAI;IAAG,IAAI;GAAE,EAAE;aAAI;EAAiB,CAAA,GACxD,kBAAC,GAAD;GAAK,IAAI,EAAE,OAAO;IAAE,IAAI;IAAG,IAAI;GAAE,EAAE;aAAI;EAAkB,CAAA,CACrC,EAAA,CAAA;CACF,CAAA;AAE1B"}
@@ -1,11 +1,21 @@
1
1
  import React from 'react';
2
2
  import { FileHandleAssociation } from '@sage-bionetworks/synapse-types';
3
3
  type FileHandleLinkProps = {
4
- fileHandleAssociation: FileHandleAssociation;
5
4
  redirect?: boolean;
6
5
  showDownloadIcon: boolean;
7
6
  displayValue?: string;
8
- };
7
+ } & ({
8
+ /** Downloads the file handle as it is associated with a Synapse object. */
9
+ fileHandleAssociation: FileHandleAssociation;
10
+ creatorFileHandleId?: never;
11
+ } | {
12
+ fileHandleAssociation?: never;
13
+ /**
14
+ * Downloads a file handle that is not associated with any object yet. Synapse only serves
15
+ * such a file handle to the user that created it.
16
+ */
17
+ creatorFileHandleId: string;
18
+ });
9
19
  export declare const FileHandleLink: (props: FileHandleLinkProps) => React.ReactNode;
10
20
  export {};
11
21
  //# sourceMappingURL=FileHandleLink.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileHandleLink.d.ts","sourceRoot":"","sources":["../../../src/components/widgets/FileHandleLink.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,EAGL,qBAAqB,EACtB,MAAM,iCAAiC,CAAA;AAIxC,KAAK,mBAAmB,GAAG;IACzB,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gBAAgB,EAAE,OAAO,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AACD,eAAO,MAAM,cAAc,GAAI,OAAO,mBAAmB,KAAG,KAAK,CAAC,SA8DjE,CAAA"}
1
+ {"version":3,"file":"FileHandleLink.d.ts","sourceRoot":"","sources":["../../../src/components/widgets/FileHandleLink.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAA;AAMtC,OAAO,EAEL,qBAAqB,EACtB,MAAM,iCAAiC,CAAA;AAIxC,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gBAAgB,EAAE,OAAO,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,GAAG,CACA;IACE,2EAA2E;IAC3E,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,mBAAmB,CAAC,EAAE,KAAK,CAAA;CAC5B,GACD;IACE,qBAAqB,CAAC,EAAE,KAAK,CAAA;IAC7B;;;OAGG;IACH,mBAAmB,EAAE,MAAM,CAAA;CAC5B,CACJ,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,OAAO,mBAAmB,KAAG,KAAK,CAAC,SAmEjE,CAAA"}
@@ -2,43 +2,39 @@ import { SRC_SIGN_IN_CLASS as e } from "../../utils/SynapseConstants.js";
2
2
  import t from "../../synapse-client/index.js";
3
3
  import { useSynapseContext as n } from "../../utils/context/SynapseContext.js";
4
4
  import "../../utils/index.js";
5
- import r from "../IconSvg/IconSvg.js";
6
- import { useEffect as i, useState as a } from "react";
7
- import { jsx as o, jsxs as s } from "react/jsx-runtime";
5
+ import { useGetFileBatch as r } from "../../synapse-queries/file/useFiles.js";
6
+ import i from "../IconSvg/IconSvg.js";
7
+ import { useGetCreatorFileHandle as a } from "../../synapse-queries/file/useFileHandle.js";
8
+ import { useMemo as o } from "react";
9
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
10
+ import { useMutation as l } from "@tanstack/react-query";
8
11
  //#region src/components/widgets/FileHandleLink.tsx
9
- var c = (c) => {
10
- let { fileHandleAssociation: l, showDownloadIcon: u, redirect: d = !1, displayValue: f } = c, { accessToken: p } = n(), [m, h] = a();
11
- i(() => {
12
- f === void 0 && (async () => {
13
- let e = {
14
- requestedFiles: [l],
15
- includeFileHandles: !0,
16
- includePreSignedURLs: !1,
17
- includePreviewPreSignedURLs: !1
18
- };
19
- h(await t.getFiles(e, p));
20
- })();
21
- }, [
22
- p,
23
- f,
24
- l
25
- ]);
26
- let g;
27
- return m && (g = m.requestedFiles[0].fileHandle?.fileName), /* @__PURE__ */ s("button", {
12
+ var u = (u) => {
13
+ let { fileHandleAssociation: d, creatorFileHandleId: f, showDownloadIcon: p, redirect: m = !1, displayValue: h } = u, { accessToken: g } = n(), _ = d?.fileHandleId ?? f, v = h === void 0, { data: y } = r(o(() => ({
14
+ requestedFiles: d ? [d] : [],
15
+ includeFileHandles: !0,
16
+ includePreSignedURLs: !1,
17
+ includePreviewPreSignedURLs: !1
18
+ }), [d]), { enabled: v && !!d }), { data: b } = a(f ?? "", { enabled: v && !!f }), x = d ? y?.requestedFiles[0].fileHandle?.fileName : b?.fileName, { mutate: S } = l({
19
+ mutationFn: () => d ? t.getActualFileHandleByIdURL(d.fileHandleId, g, d.associateObjectType, d.associateObjectId, m) : t.getFileHandleByIdURL(f, g),
20
+ onSuccess: (e) => {
21
+ window.open(e, "_blank");
22
+ },
23
+ onError: (e) => {
24
+ console.error("Error on retrieving file handle url ", e);
25
+ }
26
+ });
27
+ return /* @__PURE__ */ c("button", {
28
28
  onClick: () => {
29
- p && l && t.getActualFileHandleByIdURL(l.fileHandleId, p, l.associateObjectType, l.associateObjectId, d).then((e) => {
30
- window.open(e, "_blank");
31
- }).catch((e) => {
32
- console.error("Error on retrieving file handle url ", e);
33
- });
29
+ g && S();
34
30
  },
35
31
  className: `SRC-primary-text-color ${e}`,
36
32
  type: "button",
37
33
  style: { padding: 0 },
38
- children: [f ?? g ?? l.fileHandleId, u && /* @__PURE__ */ o(r, { icon: "download" })]
34
+ children: [h ?? x ?? _, p && /* @__PURE__ */ s(i, { icon: "download" })]
39
35
  });
40
36
  };
41
37
  //#endregion
42
- export { c as FileHandleLink };
38
+ export { u as FileHandleLink };
43
39
 
44
40
  //# sourceMappingURL=FileHandleLink.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileHandleLink.js","names":[],"sources":["../../../src/components/widgets/FileHandleLink.tsx"],"sourcesContent":["import React from 'react'\nimport SynapseClient from '@/synapse-client'\nimport { SynapseConstants } from '@/utils'\nimport { useSynapseContext } from '@/utils/context/SynapseContext'\nimport {\n BatchFileRequest,\n BatchFileResult,\n FileHandleAssociation,\n} from '@sage-bionetworks/synapse-types'\nimport { useEffect, useState } from 'react'\nimport IconSvg from '../IconSvg/IconSvg'\n\ntype FileHandleLinkProps = {\n fileHandleAssociation: FileHandleAssociation\n redirect?: boolean\n showDownloadIcon: boolean\n displayValue?: string\n}\nexport const FileHandleLink = (props: FileHandleLinkProps): React.ReactNode => {\n const {\n fileHandleAssociation,\n showDownloadIcon,\n redirect = false,\n displayValue,\n } = props\n const { accessToken } = useSynapseContext()\n\n const [batchFileResult, setBatchFileResult] = useState<\n BatchFileResult | undefined\n >()\n\n useEffect(() => {\n if (displayValue === undefined) {\n const getFiles = async () => {\n const batchFileRequest: BatchFileRequest = {\n requestedFiles: [fileHandleAssociation],\n includeFileHandles: true,\n includePreSignedURLs: false,\n includePreviewPreSignedURLs: false,\n }\n setBatchFileResult(\n await SynapseClient.getFiles(batchFileRequest, accessToken),\n )\n }\n getFiles()\n }\n }, [accessToken, displayValue, fileHandleAssociation])\n\n let fileName: string | undefined = undefined\n if (batchFileResult) {\n fileName = batchFileResult.requestedFiles[0].fileHandle?.fileName\n }\n\n return (\n <button\n onClick={() => {\n if (accessToken && fileHandleAssociation) {\n SynapseClient.getActualFileHandleByIdURL(\n fileHandleAssociation.fileHandleId,\n accessToken,\n fileHandleAssociation.associateObjectType,\n fileHandleAssociation.associateObjectId,\n redirect,\n )\n .then(url => {\n window.open(url, '_blank')\n })\n .catch(err => {\n console.error('Error on retrieving file handle url ', err)\n })\n }\n }}\n className={`SRC-primary-text-color ${SynapseConstants.SRC_SIGN_IN_CLASS}`}\n type=\"button\"\n style={{ padding: 0 }}\n >\n {displayValue ?? fileName ?? fileHandleAssociation.fileHandleId}\n {showDownloadIcon && <IconSvg icon=\"download\" />}\n </button>\n )\n}\n"],"mappings":";;;;;;;;AAkBA,IAAa,KAAkB,MAAgD;CAC7E,IAAM,EACJ,0BACA,qBACA,cAAW,IACX,oBACE,GACE,EAAE,mBAAgB,EAAkB,GAEpC,CAAC,GAAiB,KAAsB,EAE5C;CAEF,QAAgB;EACd,AAAI,MAAiB,KAAA,MAYnB,YAX6B;GAC3B,IAAM,IAAqC;IACzC,gBAAgB,CAAC,CAAqB;IACtC,oBAAoB;IACpB,sBAAsB;IACtB,6BAA6B;GAC/B;GACA,EACE,MAAM,EAAc,SAAS,GAAkB,CAAW,CAC5D;EACF,GACS;CAEb,GAAG;EAAC;EAAa;EAAc;CAAqB,CAAC;CAErD,IAAI;CAKJ,OAJI,MACF,IAAW,EAAgB,eAAe,GAAG,YAAY,WAIzD,kBAAC,UAAD;EACE,eAAe;GACb,AAAI,KAAe,KACjB,EAAc,2BACZ,EAAsB,cACtB,GACA,EAAsB,qBACtB,EAAsB,mBACtB,CACF,EACG,MAAK,MAAO;IACX,OAAO,KAAK,GAAK,QAAQ;GAC3B,CAAC,EACA,OAAM,MAAO;IACZ,QAAQ,MAAM,wCAAwC,CAAG;GAC3D,CAAC;EAEP;EACA,WAAW,0BAA0B;EACrC,MAAK;EACL,OAAO,EAAE,SAAS,EAAE;YApBtB,CAsBG,KAAgB,KAAY,EAAsB,cAClD,KAAoB,kBAAC,GAAD,EAAS,MAAK,WAAY,CAAA,CACzC;;AAEZ"}
1
+ {"version":3,"file":"FileHandleLink.js","names":[],"sources":["../../../src/components/widgets/FileHandleLink.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport SynapseClient from '@/synapse-client'\nimport { useGetCreatorFileHandle } from '@/synapse-queries/file/useFileHandle'\nimport { useGetFileBatch } from '@/synapse-queries/file/useFiles'\nimport { SynapseConstants } from '@/utils'\nimport { useSynapseContext } from '@/utils/context/SynapseContext'\nimport {\n BatchFileRequest,\n FileHandleAssociation,\n} from '@sage-bionetworks/synapse-types'\nimport { useMutation } from '@tanstack/react-query'\nimport IconSvg from '../IconSvg/IconSvg'\n\ntype FileHandleLinkProps = {\n redirect?: boolean\n showDownloadIcon: boolean\n displayValue?: string\n} & (\n | {\n /** Downloads the file handle as it is associated with a Synapse object. */\n fileHandleAssociation: FileHandleAssociation\n creatorFileHandleId?: never\n }\n | {\n fileHandleAssociation?: never\n /**\n * Downloads a file handle that is not associated with any object yet. Synapse only serves\n * such a file handle to the user that created it.\n */\n creatorFileHandleId: string\n }\n)\n\nexport const FileHandleLink = (props: FileHandleLinkProps): React.ReactNode => {\n const {\n fileHandleAssociation,\n creatorFileHandleId,\n showDownloadIcon,\n redirect = false,\n displayValue,\n } = props\n const { accessToken } = useSynapseContext()\n const fileHandleId =\n fileHandleAssociation?.fileHandleId ?? creatorFileHandleId\n const shouldLookUpFileName = displayValue === undefined\n\n const batchFileRequest = useMemo<BatchFileRequest>(\n () => ({\n requestedFiles: fileHandleAssociation ? [fileHandleAssociation] : [],\n includeFileHandles: true,\n includePreSignedURLs: false,\n includePreviewPreSignedURLs: false,\n }),\n [fileHandleAssociation],\n )\n const { data: batchFileResult } = useGetFileBatch(batchFileRequest, {\n enabled: shouldLookUpFileName && !!fileHandleAssociation,\n })\n const { data: creatorFileHandle } = useGetCreatorFileHandle(\n creatorFileHandleId ?? '',\n { enabled: shouldLookUpFileName && !!creatorFileHandleId },\n )\n const fileName = fileHandleAssociation\n ? batchFileResult?.requestedFiles[0].fileHandle?.fileName\n : creatorFileHandle?.fileName\n\n const { mutate: openFile } = useMutation({\n mutationFn: (): Promise<string> =>\n fileHandleAssociation\n ? SynapseClient.getActualFileHandleByIdURL(\n fileHandleAssociation.fileHandleId,\n accessToken,\n fileHandleAssociation.associateObjectType,\n fileHandleAssociation.associateObjectId,\n redirect,\n )\n : SynapseClient.getFileHandleByIdURL(creatorFileHandleId, accessToken),\n onSuccess: url => {\n window.open(url, '_blank')\n },\n onError: err => {\n console.error('Error on retrieving file handle url ', err)\n },\n })\n\n return (\n <button\n onClick={() => {\n if (accessToken) {\n openFile()\n }\n }}\n className={`SRC-primary-text-color ${SynapseConstants.SRC_SIGN_IN_CLASS}`}\n type=\"button\"\n style={{ padding: 0 }}\n >\n {displayValue ?? fileName ?? fileHandleId}\n {showDownloadIcon && <IconSvg icon=\"download\" />}\n </button>\n )\n}\n"],"mappings":";;;;;;;;;;;AAiCA,IAAa,KAAkB,MAAgD;CAC7E,IAAM,EACJ,0BACA,wBACA,qBACA,cAAW,IACX,oBACE,GACE,EAAE,mBAAgB,EAAkB,GACpC,IACJ,GAAuB,gBAAgB,GACnC,IAAuB,MAAiB,KAAA,GAWxC,EAAE,MAAM,MAAoB,EATT,SAChB;EACL,gBAAgB,IAAwB,CAAC,CAAqB,IAAI,CAAC;EACnE,oBAAoB;EACpB,sBAAsB;EACtB,6BAA6B;CAC/B,IACA,CAAC,CAAqB,CAE0B,GAAkB,EAClE,SAAS,KAAwB,CAAC,CAAC,EACrC,CAAC,GACK,EAAE,MAAM,MAAsB,EAClC,KAAuB,IACvB,EAAE,SAAS,KAAwB,CAAC,CAAC,EAAoB,CAC3D,GACM,IAAW,IACb,GAAiB,eAAe,GAAG,YAAY,WAC/C,GAAmB,UAEjB,EAAE,QAAQ,MAAa,EAAY;EACvC,kBACE,IACI,EAAc,2BACZ,EAAsB,cACtB,GACA,EAAsB,qBACtB,EAAsB,mBACtB,CACF,IACA,EAAc,qBAAqB,GAAqB,CAAW;EACzE,YAAW,MAAO;GAChB,OAAO,KAAK,GAAK,QAAQ;EAC3B;EACA,UAAS,MAAO;GACd,QAAQ,MAAM,wCAAwC,CAAG;EAC3D;CACF,CAAC;CAED,OACE,kBAAC,UAAD;EACE,eAAe;GACb,AAAI,KACF,EAAS;EAEb;EACA,WAAW,0BAA0B;EACrC,MAAK;EACL,OAAO,EAAE,SAAS,EAAE;YARtB,CAUG,KAAgB,KAAY,GAC5B,KAAoB,kBAAC,GAAD,EAAS,MAAK,WAAY,CAAA,CACzC;;AAEZ"}
@@ -8,9 +8,11 @@ export declare const mockGenomicsTemplate: FormTemplate;
8
8
  * Renders the Data Access schema as a 2-step form:
9
9
  * Project Details → Compliance.
10
10
  *
11
- * Demonstrates a file-upload field with a downloadable template, and a
12
- * RENEWAL_ONLY field.
11
+ * Demonstrates a file-upload field with a downloadable template, and a Renewal-only field
12
+ * (`irbApprovalNumber`, gated in `mockClinicalSchema` via `x-synapse-submissionContext`).
13
13
  */
14
14
  export declare const mockClinicalTemplate: FormTemplate;
15
15
  export declare const mockFormTemplates: FormTemplate[];
16
+ /** A deprecated template. Not part of `mockFormTemplates`, which models the default (non-deprecated) list. */
17
+ export declare const mockDeprecatedTemplate: FormTemplate;
16
18
  //# sourceMappingURL=mockFormTemplates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mockFormTemplates.d.ts","sourceRoot":"","sources":["../../../src/mocks/accessRequirement/mockFormTemplates.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAEb,MAAM,kCAAkC,CAAA;AAIzC;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,YAqClC,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,EAAE,YA2ClC,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,YAAY,EAG3C,CAAA"}
1
+ {"version":3,"file":"mockFormTemplates.d.ts","sourceRoot":"","sources":["../../../src/mocks/accessRequirement/mockFormTemplates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAI/D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,YAmClC,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,EAAE,YAsClC,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,YAAY,EAG3C,CAAA;AAED,8GAA8G;AAC9G,eAAO,MAAM,sBAAsB,EAAE,YAMpC,CAAA"}
@@ -1,8 +1,7 @@
1
1
  import { MOCK_FILE_HANDLE_ID as e } from "../mock_file_handle.js";
2
2
  import { mockClinicalSchema as t, mockGenomicsSchema as n } from "./mockJsonSchemas.js";
3
- import { FormTemplateFieldSubmissionContextEnum as r } from "@sage-bionetworks/synapse-client";
4
3
  //#region src/mocks/accessRequirement/mockFormTemplates.ts
5
- var i = {
4
+ var r = {
6
5
  id: "template-1",
7
6
  name: "Genomics DAR",
8
7
  etag: "etag-template-1",
@@ -17,7 +16,6 @@ var i = {
17
16
  "ui:widget": "textarea",
18
17
  "ui:options": { rows: 5 }
19
18
  },
20
- submissionContext: r.ALWAYS,
21
19
  isPublic: !0
22
20
  }]
23
21
  }, {
@@ -25,12 +23,11 @@ var i = {
25
23
  description: "Review and agree to the terms and conditions for accessing this data.",
26
24
  fields: [{
27
25
  schemaPath: "/agreeToTerms",
28
- uiDefinition: {},
29
- submissionContext: r.ALWAYS
26
+ uiDefinition: {}
30
27
  }]
31
28
  }],
32
29
  deprecated: !1
33
- }, a = {
30
+ }, i = {
34
31
  id: "template-2",
35
32
  name: "Clinical Trial DAR",
36
33
  etag: "etag-template-2",
@@ -41,30 +38,32 @@ var i = {
41
38
  fields: [{
42
39
  schemaPath: "/projectTitle",
43
40
  uiDefinition: {},
44
- submissionContext: r.ALWAYS,
45
41
  isPublic: !0
46
42
  }, {
47
43
  schemaPath: "/dataUsePurpose",
48
- uiDefinition: {},
49
- submissionContext: r.ALWAYS
44
+ uiDefinition: {}
50
45
  }]
51
46
  }, {
52
47
  title: "Compliance",
53
48
  description: "Provide any required compliance documentation.",
54
49
  fields: [{
55
50
  schemaPath: "/irbApprovalNumber",
56
- uiDefinition: {},
57
- submissionContext: r.RENEWAL_ONLY
51
+ uiDefinition: {}
58
52
  }, {
59
53
  schemaPath: "/signedDataUseAgreement",
60
54
  uiDefinition: {},
61
- submissionContext: r.ALWAYS,
62
55
  templateFileHandleId: e
63
56
  }]
64
57
  }],
65
58
  deprecated: !1
66
- }, o = [i, a];
59
+ }, a = [r, i], o = {
60
+ ...r,
61
+ id: "template-3",
62
+ name: "Legacy Genomics DAR",
63
+ etag: "etag-template-3",
64
+ deprecated: !0
65
+ };
67
66
  //#endregion
68
- export { a as mockClinicalTemplate, o as mockFormTemplates, i as mockGenomicsTemplate };
67
+ export { i as mockClinicalTemplate, o as mockDeprecatedTemplate, a as mockFormTemplates, r as mockGenomicsTemplate };
69
68
 
70
69
  //# sourceMappingURL=mockFormTemplates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mockFormTemplates.js","names":[],"sources":["../../../src/mocks/accessRequirement/mockFormTemplates.ts"],"sourcesContent":["import {\n FormTemplate,\n FormTemplateFieldSubmissionContextEnum,\n} from '@sage-bionetworks/synapse-client'\nimport { MOCK_FILE_HANDLE_ID } from '@/mocks/mock_file_handle'\nimport { mockClinicalSchema, mockGenomicsSchema } from './mockJsonSchemas'\n\n/**\n * Renders the a Data Access schema as a 2-step form:\n * Research Use → Agreements\n */\nexport const mockGenomicsTemplate: FormTemplate = {\n id: 'template-1',\n name: 'Genomics DAR',\n etag: 'etag-template-1',\n versionNumber: 1,\n schema$id: mockGenomicsSchema.$id as string,\n steps: [\n {\n title: 'Research Use',\n description:\n 'Describe your research project and how you intend to use the data.',\n fields: [\n {\n schemaPath: '/intendedDataUse',\n uiDefinition: {\n 'ui:widget': 'textarea',\n 'ui:options': { rows: 5 },\n },\n submissionContext: FormTemplateFieldSubmissionContextEnum.ALWAYS,\n isPublic: true,\n },\n ],\n },\n {\n title: 'Agreements',\n description:\n 'Review and agree to the terms and conditions for accessing this data.',\n fields: [\n {\n schemaPath: '/agreeToTerms',\n uiDefinition: {},\n submissionContext: FormTemplateFieldSubmissionContextEnum.ALWAYS,\n },\n ],\n },\n ],\n deprecated: false,\n}\n\n/**\n * Renders the Data Access schema as a 2-step form:\n * Project Details → Compliance.\n *\n * Demonstrates a file-upload field with a downloadable template, and a\n * RENEWAL_ONLY field.\n */\nexport const mockClinicalTemplate: FormTemplate = {\n id: 'template-2',\n name: 'Clinical Trial DAR',\n etag: 'etag-template-2',\n versionNumber: 1,\n schema$id: mockClinicalSchema.$id as string,\n steps: [\n {\n title: 'Project Details',\n fields: [\n {\n schemaPath: '/projectTitle',\n uiDefinition: {},\n submissionContext: FormTemplateFieldSubmissionContextEnum.ALWAYS,\n isPublic: true,\n },\n {\n schemaPath: '/dataUsePurpose',\n uiDefinition: {},\n submissionContext: FormTemplateFieldSubmissionContextEnum.ALWAYS,\n },\n ],\n },\n {\n title: 'Compliance',\n description: 'Provide any required compliance documentation.',\n fields: [\n {\n schemaPath: '/irbApprovalNumber',\n uiDefinition: {},\n submissionContext:\n FormTemplateFieldSubmissionContextEnum.RENEWAL_ONLY,\n },\n {\n schemaPath: '/signedDataUseAgreement',\n uiDefinition: {},\n submissionContext: FormTemplateFieldSubmissionContextEnum.ALWAYS,\n templateFileHandleId: MOCK_FILE_HANDLE_ID,\n },\n ],\n },\n ],\n deprecated: false,\n}\n\nexport const mockFormTemplates: FormTemplate[] = [\n mockGenomicsTemplate,\n mockClinicalTemplate,\n]\n"],"mappings":";;;;AAWA,IAAa,IAAqC;CAChD,IAAI;CACJ,MAAM;CACN,MAAM;CACN,eAAe;CACf,WAAW,EAAmB;CAC9B,OAAO,CACL;EACE,OAAO;EACP,aACE;EACF,QAAQ,CACN;GACE,YAAY;GACZ,cAAc;IACZ,aAAa;IACb,cAAc,EAAE,MAAM,EAAE;GAC1B;GACA,mBAAmB,EAAuC;GAC1D,UAAU;EACZ,CACF;CACF,GACA;EACE,OAAO;EACP,aACE;EACF,QAAQ,CACN;GACE,YAAY;GACZ,cAAc,CAAC;GACf,mBAAmB,EAAuC;EAC5D,CACF;CACF,CACF;CACA,YAAY;AACd,GASa,IAAqC;CAChD,IAAI;CACJ,MAAM;CACN,MAAM;CACN,eAAe;CACf,WAAW,EAAmB;CAC9B,OAAO,CACL;EACE,OAAO;EACP,QAAQ,CACN;GACE,YAAY;GACZ,cAAc,CAAC;GACf,mBAAmB,EAAuC;GAC1D,UAAU;EACZ,GACA;GACE,YAAY;GACZ,cAAc,CAAC;GACf,mBAAmB,EAAuC;EAC5D,CACF;CACF,GACA;EACE,OAAO;EACP,aAAa;EACb,QAAQ,CACN;GACE,YAAY;GACZ,cAAc,CAAC;GACf,mBACE,EAAuC;EAC3C,GACA;GACE,YAAY;GACZ,cAAc,CAAC;GACf,mBAAmB,EAAuC;GAC1D,sBAAsB;EACxB,CACF;CACF,CACF;CACA,YAAY;AACd,GAEa,IAAoC,CAC/C,GACA,CACF"}
1
+ {"version":3,"file":"mockFormTemplates.js","names":[],"sources":["../../../src/mocks/accessRequirement/mockFormTemplates.ts"],"sourcesContent":["import { FormTemplate } from '@sage-bionetworks/synapse-client'\nimport { MOCK_FILE_HANDLE_ID } from '@/mocks/mock_file_handle'\nimport { mockClinicalSchema, mockGenomicsSchema } from './mockJsonSchemas'\n\n/**\n * Renders the a Data Access schema as a 2-step form:\n * Research Use → Agreements\n */\nexport const mockGenomicsTemplate: FormTemplate = {\n id: 'template-1',\n name: 'Genomics DAR',\n etag: 'etag-template-1',\n versionNumber: 1,\n schema$id: mockGenomicsSchema.$id as string,\n steps: [\n {\n title: 'Research Use',\n description:\n 'Describe your research project and how you intend to use the data.',\n fields: [\n {\n schemaPath: '/intendedDataUse',\n uiDefinition: {\n 'ui:widget': 'textarea',\n 'ui:options': { rows: 5 },\n },\n isPublic: true,\n },\n ],\n },\n {\n title: 'Agreements',\n description:\n 'Review and agree to the terms and conditions for accessing this data.',\n fields: [\n {\n schemaPath: '/agreeToTerms',\n uiDefinition: {},\n },\n ],\n },\n ],\n deprecated: false,\n}\n\n/**\n * Renders the Data Access schema as a 2-step form:\n * Project Details → Compliance.\n *\n * Demonstrates a file-upload field with a downloadable template, and a Renewal-only field\n * (`irbApprovalNumber`, gated in `mockClinicalSchema` via `x-synapse-submissionContext`).\n */\nexport const mockClinicalTemplate: FormTemplate = {\n id: 'template-2',\n name: 'Clinical Trial DAR',\n etag: 'etag-template-2',\n versionNumber: 1,\n schema$id: mockClinicalSchema.$id as string,\n steps: [\n {\n title: 'Project Details',\n fields: [\n {\n schemaPath: '/projectTitle',\n uiDefinition: {},\n isPublic: true,\n },\n {\n schemaPath: '/dataUsePurpose',\n uiDefinition: {},\n },\n ],\n },\n {\n title: 'Compliance',\n description: 'Provide any required compliance documentation.',\n fields: [\n {\n schemaPath: '/irbApprovalNumber',\n uiDefinition: {},\n },\n {\n schemaPath: '/signedDataUseAgreement',\n uiDefinition: {},\n templateFileHandleId: MOCK_FILE_HANDLE_ID,\n },\n ],\n },\n ],\n deprecated: false,\n}\n\nexport const mockFormTemplates: FormTemplate[] = [\n mockGenomicsTemplate,\n mockClinicalTemplate,\n]\n\n/** A deprecated template. Not part of `mockFormTemplates`, which models the default (non-deprecated) list. */\nexport const mockDeprecatedTemplate: FormTemplate = {\n ...mockGenomicsTemplate,\n id: 'template-3',\n name: 'Legacy Genomics DAR',\n etag: 'etag-template-3',\n deprecated: true,\n}\n"],"mappings":";;;AAQA,IAAa,IAAqC;CAChD,IAAI;CACJ,MAAM;CACN,MAAM;CACN,eAAe;CACf,WAAW,EAAmB;CAC9B,OAAO,CACL;EACE,OAAO;EACP,aACE;EACF,QAAQ,CACN;GACE,YAAY;GACZ,cAAc;IACZ,aAAa;IACb,cAAc,EAAE,MAAM,EAAE;GAC1B;GACA,UAAU;EACZ,CACF;CACF,GACA;EACE,OAAO;EACP,aACE;EACF,QAAQ,CACN;GACE,YAAY;GACZ,cAAc,CAAC;EACjB,CACF;CACF,CACF;CACA,YAAY;AACd,GASa,IAAqC;CAChD,IAAI;CACJ,MAAM;CACN,MAAM;CACN,eAAe;CACf,WAAW,EAAmB;CAC9B,OAAO,CACL;EACE,OAAO;EACP,QAAQ,CACN;GACE,YAAY;GACZ,cAAc,CAAC;GACf,UAAU;EACZ,GACA;GACE,YAAY;GACZ,cAAc,CAAC;EACjB,CACF;CACF,GACA;EACE,OAAO;EACP,aAAa;EACb,QAAQ,CACN;GACE,YAAY;GACZ,cAAc,CAAC;EACjB,GACA;GACE,YAAY;GACZ,cAAc,CAAC;GACf,sBAAsB;EACxB,CACF;CACF,CACF;CACA,YAAY;AACd,GAEa,IAAoC,CAC/C,GACA,CACF,GAGa,IAAuC;CAClD,GAAG;CACH,IAAI;CACJ,MAAM;CACN,MAAM;CACN,YAAY;AACd"}
@@ -12,7 +12,10 @@
12
12
  import { RJSFSchema } from '@rjsf/utils';
13
13
  /** Genomics DAR data contract — all fields required. */
14
14
  export declare const mockGenomicsSchema: RJSFSchema;
15
- /** Clinical Trial DAR data contract — includes a file upload. */
15
+ /**
16
+ * Clinical Trial DAR data contract — includes a file upload and a Renewal-only field
17
+ * (`irbApprovalNumber`), gated behind an `x-synapse-submissionContext` conditional.
18
+ */
16
19
  export declare const mockClinicalSchema: RJSFSchema;
17
20
  /**
18
21
  * Map from `$id` (with version) to the JSON Schema body. In the real system
@@ -1 +1 @@
1
- {"version":3,"file":"mockJsonSchemas.d.ts","sourceRoot":"","sources":["../../../src/mocks/accessRequirement/mockJsonSchemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,wDAAwD;AACxD,eAAO,MAAM,kBAAkB,EAAE,UAmBhC,CAAA;AAED,iEAAiE;AACjE,eAAO,MAAM,kBAAkB,EAAE,UA+BhC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAG7D,CAAA;AAED,0DAA0D;AAC1D,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,GAChB,UAAU,GAAG,SAAS,CAExB"}
1
+ {"version":3,"file":"mockJsonSchemas.d.ts","sourceRoot":"","sources":["../../../src/mocks/accessRequirement/mockJsonSchemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAKxC,wDAAwD;AACxD,eAAO,MAAM,kBAAkB,EAAE,UAoBhC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,UA+ChC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAG7D,CAAA;AAED,0DAA0D;AAC1D,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,GAChB,UAAU,GAAG,SAAS,CAExB"}
@@ -1,6 +1,9 @@
1
+ import { SUBMISSION_CONTEXT_PROPERTY as e } from "../../utils/jsonschema/submissionContext.js";
2
+ import { ACCESS_REQUIREMENT_BASE_SCHEMA_ID as t } from "../../components/FormTemplateEditor/formTemplateSchema.js";
3
+ import { DataAccessRequestType as n } from "@sage-bionetworks/synapse-client";
1
4
  //#region src/mocks/accessRequirement/mockJsonSchemas.ts
2
- var e = {
3
- $id: "org.sagebionetworks.dar.genomics-1.0.0",
5
+ var r = {
6
+ $id: "org.sagebionetworks.act-GenomicsDataAccessRequest-1.0.0",
4
7
  type: "object",
5
8
  title: "Genomics Data Access Request",
6
9
  properties: {
@@ -15,9 +18,10 @@ var e = {
15
18
  description: "I agree to abide by all terms and conditions for accessing this data."
16
19
  }
17
20
  },
18
- required: ["intendedDataUse", "agreeToTerms"]
19
- }, t = {
20
- $id: "org.sagebionetworks.dar.clinical-1.0.0",
21
+ required: ["intendedDataUse", "agreeToTerms"],
22
+ allOf: [{ $ref: t }]
23
+ }, i = {
24
+ $id: "org.sagebionetworks.act-ClinicalTrialDataAccessRequest-1.0.0",
21
25
  type: "object",
22
26
  title: "Clinical Trial Data Access Request",
23
27
  properties: {
@@ -36,11 +40,6 @@ var e = {
36
40
  "Educational"
37
41
  ]
38
42
  },
39
- irbApprovalNumber: {
40
- type: "string",
41
- title: "IRB Approval Number",
42
- description: "If your institution requires IRB approval, provide the approval number."
43
- },
44
43
  signedDataUseAgreement: {
45
44
  type: "number",
46
45
  title: "Signed Data Use Agreement",
@@ -48,15 +47,23 @@ var e = {
48
47
  format: "synapse-filehandle-id"
49
48
  }
50
49
  },
51
- required: ["projectTitle", "signedDataUseAgreement"]
52
- }, n = {
53
- [e.$id]: e,
54
- [t.$id]: t
50
+ required: ["projectTitle", "signedDataUseAgreement"],
51
+ allOf: [{ $ref: t }, {
52
+ if: { properties: { [e]: { const: n.RENEWAL } } },
53
+ then: { properties: { irbApprovalNumber: {
54
+ type: "string",
55
+ title: "IRB Approval Number",
56
+ description: "If your institution requires IRB approval, provide the approval number."
57
+ } } }
58
+ }]
59
+ }, a = {
60
+ [r.$id]: r,
61
+ [i.$id]: i
55
62
  };
56
- function r(e) {
57
- return n[e];
63
+ function o(e) {
64
+ return a[e];
58
65
  }
59
66
  //#endregion
60
- export { r as getMockJsonSchemaById, t as mockClinicalSchema, e as mockGenomicsSchema, n as mockJsonSchemaRegistry };
67
+ export { o as getMockJsonSchemaById, i as mockClinicalSchema, r as mockGenomicsSchema, a as mockJsonSchemaRegistry };
61
68
 
62
69
  //# sourceMappingURL=mockJsonSchemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mockJsonSchemas.js","names":[],"sources":["../../../src/mocks/accessRequirement/mockJsonSchemas.ts"],"sourcesContent":["/**\n * Mock JSON Schema registry for the JSON Schema-based Access Requirements demo.\n *\n * Each FormTemplate pins a registered JSON Schema by `$id`. The schema is the\n * data contract — it owns property types, validation rules, and which properties\n * are required.\n *\n * The FormTemplateEditor lets ACT edit the schema body alongside the template in\n * a single UI; saving is conceptually a write to both the schema registry and\n * the template service.\n */\n\nimport { RJSFSchema } from '@rjsf/utils'\n\n/** Genomics DAR data contract — all fields required. */\nexport const mockGenomicsSchema: RJSFSchema = {\n $id: 'org.sagebionetworks.dar.genomics-1.0.0',\n type: 'object',\n title: 'Genomics Data Access Request',\n properties: {\n intendedDataUse: {\n type: 'string',\n title: 'Intended Data Use Statement',\n description:\n 'Describe in detail how you intend to use the requested data.',\n },\n agreeToTerms: {\n type: 'boolean',\n title: 'Terms and Conditions',\n description:\n 'I agree to abide by all terms and conditions for accessing this data.',\n },\n },\n required: ['intendedDataUse', 'agreeToTerms'],\n}\n\n/** Clinical Trial DAR data contract — includes a file upload. */\nexport const mockClinicalSchema: RJSFSchema = {\n $id: 'org.sagebionetworks.dar.clinical-1.0.0',\n type: 'object',\n title: 'Clinical Trial Data Access Request',\n properties: {\n projectTitle: {\n type: 'string',\n title: 'Project Title',\n description: 'The title of the research project.',\n },\n dataUsePurpose: {\n type: 'string',\n title: 'Data Use Purpose',\n description: 'Select the primary purpose for your use of this data.',\n enum: ['Research', 'Commercial', 'Educational'],\n },\n irbApprovalNumber: {\n type: 'string',\n title: 'IRB Approval Number',\n description:\n 'If your institution requires IRB approval, provide the approval number.',\n },\n signedDataUseAgreement: {\n type: 'number',\n title: 'Signed Data Use Agreement',\n description:\n 'Upload a signed copy of the Data Use Agreement. A template is available for download.',\n format: 'synapse-filehandle-id',\n },\n },\n required: ['projectTitle', 'signedDataUseAgreement'],\n}\n\n/**\n * Map from `$id` (with version) to the JSON Schema body. In the real system\n * this is served by the registered JSON Schema service.\n */\nexport const mockJsonSchemaRegistry: Record<string, RJSFSchema> = {\n [mockGenomicsSchema.$id as string]: mockGenomicsSchema,\n [mockClinicalSchema.$id as string]: mockClinicalSchema,\n}\n\n/** Look up a registered JSON Schema body by its `$id`. */\nexport function getMockJsonSchemaById(\n schema$id: string,\n): RJSFSchema | undefined {\n return mockJsonSchemaRegistry[schema$id]\n}\n"],"mappings":";AAeA,IAAa,IAAiC;CAC5C,KAAK;CACL,MAAM;CACN,OAAO;CACP,YAAY;EACV,iBAAiB;GACf,MAAM;GACN,OAAO;GACP,aACE;EACJ;EACA,cAAc;GACZ,MAAM;GACN,OAAO;GACP,aACE;EACJ;CACF;CACA,UAAU,CAAC,mBAAmB,cAAc;AAC9C,GAGa,IAAiC;CAC5C,KAAK;CACL,MAAM;CACN,OAAO;CACP,YAAY;EACV,cAAc;GACZ,MAAM;GACN,OAAO;GACP,aAAa;EACf;EACA,gBAAgB;GACd,MAAM;GACN,OAAO;GACP,aAAa;GACb,MAAM;IAAC;IAAY;IAAc;GAAa;EAChD;EACA,mBAAmB;GACjB,MAAM;GACN,OAAO;GACP,aACE;EACJ;EACA,wBAAwB;GACtB,MAAM;GACN,OAAO;GACP,aACE;GACF,QAAQ;EACV;CACF;CACA,UAAU,CAAC,gBAAgB,wBAAwB;AACrD,GAMa,IAAqD;EAC/D,EAAmB,MAAgB;EACnC,EAAmB,MAAgB;AACtC;AAGA,SAAgB,EACd,GACwB;CACxB,OAAO,EAAuB;AAChC"}
1
+ {"version":3,"file":"mockJsonSchemas.js","names":[],"sources":["../../../src/mocks/accessRequirement/mockJsonSchemas.ts"],"sourcesContent":["/**\n * Mock JSON Schema registry for the JSON Schema-based Access Requirements demo.\n *\n * Each FormTemplate pins a registered JSON Schema by `$id`. The schema is the\n * data contract — it owns property types, validation rules, and which properties\n * are required.\n *\n * The FormTemplateEditor lets ACT edit the schema body alongside the template in\n * a single UI; saving is conceptually a write to both the schema registry and\n * the template service.\n */\n\nimport { RJSFSchema } from '@rjsf/utils'\nimport { DataAccessRequestType } from '@sage-bionetworks/synapse-client'\nimport { SUBMISSION_CONTEXT_PROPERTY } from '@/utils/jsonschema/submissionContext'\nimport { ACCESS_REQUIREMENT_BASE_SCHEMA_ID } from '@/components/FormTemplateEditor/formTemplateSchema'\n\n/** Genomics DAR data contract — all fields required. */\nexport const mockGenomicsSchema: RJSFSchema = {\n $id: 'org.sagebionetworks.act-GenomicsDataAccessRequest-1.0.0',\n type: 'object',\n title: 'Genomics Data Access Request',\n properties: {\n intendedDataUse: {\n type: 'string',\n title: 'Intended Data Use Statement',\n description:\n 'Describe in detail how you intend to use the requested data.',\n },\n agreeToTerms: {\n type: 'boolean',\n title: 'Terms and Conditions',\n description:\n 'I agree to abide by all terms and conditions for accessing this data.',\n },\n },\n required: ['intendedDataUse', 'agreeToTerms'],\n allOf: [{ $ref: ACCESS_REQUIREMENT_BASE_SCHEMA_ID }],\n}\n\n/**\n * Clinical Trial DAR data contract — includes a file upload and a Renewal-only field\n * (`irbApprovalNumber`), gated behind an `x-synapse-submissionContext` conditional.\n */\nexport const mockClinicalSchema: RJSFSchema = {\n $id: 'org.sagebionetworks.act-ClinicalTrialDataAccessRequest-1.0.0',\n type: 'object',\n title: 'Clinical Trial Data Access Request',\n properties: {\n projectTitle: {\n type: 'string',\n title: 'Project Title',\n description: 'The title of the research project.',\n },\n dataUsePurpose: {\n type: 'string',\n title: 'Data Use Purpose',\n description: 'Select the primary purpose for your use of this data.',\n enum: ['Research', 'Commercial', 'Educational'],\n },\n signedDataUseAgreement: {\n type: 'number',\n title: 'Signed Data Use Agreement',\n description:\n 'Upload a signed copy of the Data Use Agreement. A template is available for download.',\n format: 'synapse-filehandle-id',\n },\n },\n required: ['projectTitle', 'signedDataUseAgreement'],\n allOf: [\n { $ref: ACCESS_REQUIREMENT_BASE_SCHEMA_ID },\n {\n if: {\n properties: {\n [SUBMISSION_CONTEXT_PROPERTY]: {\n const: DataAccessRequestType.RENEWAL,\n },\n },\n },\n then: {\n properties: {\n irbApprovalNumber: {\n type: 'string',\n title: 'IRB Approval Number',\n description:\n 'If your institution requires IRB approval, provide the approval number.',\n },\n },\n },\n },\n ],\n}\n\n/**\n * Map from `$id` (with version) to the JSON Schema body. In the real system\n * this is served by the registered JSON Schema service.\n */\nexport const mockJsonSchemaRegistry: Record<string, RJSFSchema> = {\n [mockGenomicsSchema.$id as string]: mockGenomicsSchema,\n [mockClinicalSchema.$id as string]: mockClinicalSchema,\n}\n\n/** Look up a registered JSON Schema body by its `$id`. */\nexport function getMockJsonSchemaById(\n schema$id: string,\n): RJSFSchema | undefined {\n return mockJsonSchemaRegistry[schema$id]\n}\n"],"mappings":";;;;AAkBA,IAAa,IAAiC;CAC5C,KAAK;CACL,MAAM;CACN,OAAO;CACP,YAAY;EACV,iBAAiB;GACf,MAAM;GACN,OAAO;GACP,aACE;EACJ;EACA,cAAc;GACZ,MAAM;GACN,OAAO;GACP,aACE;EACJ;CACF;CACA,UAAU,CAAC,mBAAmB,cAAc;CAC5C,OAAO,CAAC,EAAE,MAAM,EAAkC,CAAC;AACrD,GAMa,IAAiC;CAC5C,KAAK;CACL,MAAM;CACN,OAAO;CACP,YAAY;EACV,cAAc;GACZ,MAAM;GACN,OAAO;GACP,aAAa;EACf;EACA,gBAAgB;GACd,MAAM;GACN,OAAO;GACP,aAAa;GACb,MAAM;IAAC;IAAY;IAAc;GAAa;EAChD;EACA,wBAAwB;GACtB,MAAM;GACN,OAAO;GACP,aACE;GACF,QAAQ;EACV;CACF;CACA,UAAU,CAAC,gBAAgB,wBAAwB;CACnD,OAAO,CACL,EAAE,MAAM,EAAkC,GAC1C;EACE,IAAI,EACF,YAAY,GACT,IAA8B,EAC7B,OAAO,EAAsB,QAC/B,EACF,EACF;EACA,MAAM,EACJ,YAAY,EACV,mBAAmB;GACjB,MAAM;GACN,OAAO;GACP,aACE;EACJ,EACF,EACF;CACF,CACF;AACF,GAMa,IAAqD;EAC/D,EAAmB,MAAgB;EACnC,EAAmB,MAAgB;AACtC;AAGA,SAAgB,EACd,GACwB;CACxB,OAAO,EAAuB;AAChC"}