synapse-react-client 4.0.18 → 4.0.20

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 (1609) hide show
  1. package/dist/SWC.index.d.ts +3 -1
  2. package/dist/SWC.index.d.ts.map +1 -1
  3. package/dist/SWC.index.js +3 -1
  4. package/dist/SWC.index.js.map +1 -1
  5. package/dist/aridhia-queries/aridhiaTokenExchange.js.map +1 -1
  6. package/dist/aridhia-queries/useGetAridhiaRequests.js.map +1 -1
  7. package/dist/assets/DefaultColorfulPortalCardBackground.js.map +1 -1
  8. package/dist/assets/GoogleIcon.js.map +1 -1
  9. package/dist/assets/GoogleIcon24.js.map +1 -1
  10. package/dist/assets/homepage/BlinkingLiveIcon.d.ts +1 -1
  11. package/dist/assets/homepage/BlinkingLiveIcon.js.map +1 -1
  12. package/dist/assets/homepage/aacr.js.map +1 -1
  13. package/dist/assets/homepage/cri.js.map +1 -1
  14. package/dist/assets/homepage/ctf.js.map +1 -1
  15. package/dist/assets/homepage/egress.js.map +1 -1
  16. package/dist/assets/homepage/facebook.js.map +1 -1
  17. package/dist/assets/homepage/fisma.js.map +1 -1
  18. package/dist/assets/homepage/gff.js.map +1 -1
  19. package/dist/assets/homepage/github.js.map +1 -1
  20. package/dist/assets/homepage/gray.js.map +1 -1
  21. package/dist/assets/homepage/hipaa-compliant.js.map +1 -1
  22. package/dist/assets/homepage/instagram.js.map +1 -1
  23. package/dist/assets/homepage/linkedin.js.map +1 -1
  24. package/dist/assets/homepage/ml-commons.js.map +1 -1
  25. package/dist/assets/homepage/nih-aging.js.map +1 -1
  26. package/dist/assets/homepage/nih-heart.js.map +1 -1
  27. package/dist/assets/homepage/nih-nci.js.map +1 -1
  28. package/dist/assets/homepage/nih-nimh.js.map +1 -1
  29. package/dist/assets/homepage/ntap.js.map +1 -1
  30. package/dist/assets/homepage/plan-item.js.map +1 -1
  31. package/dist/assets/homepage/powered-by-synapse-feature.js.map +1 -1
  32. package/dist/assets/homepage/precision-governance-feature.js.map +1 -1
  33. package/dist/assets/homepage/python.js.map +1 -1
  34. package/dist/assets/homepage/r.js.map +1 -1
  35. package/dist/assets/homepage/research-credit-feature.js.map +1 -1
  36. package/dist/assets/homepage/seamless-integration-feature.js.map +1 -1
  37. package/dist/assets/homepage/sloan.js.map +1 -1
  38. package/dist/assets/homepage/twitter.js.map +1 -1
  39. package/dist/assets/homepage/users.js.map +1 -1
  40. package/dist/assets/homepage/youtube.js.map +1 -1
  41. package/dist/assets/icons/AccessDataAnywhere.js.map +1 -1
  42. package/dist/assets/icons/AccessPending.js.map +1 -1
  43. package/dist/assets/icons/AccessPendingCloud.js.map +1 -1
  44. package/dist/assets/icons/AddAd.js.map +1 -1
  45. package/dist/assets/icons/AddToList.js.map +1 -1
  46. package/dist/assets/icons/Alert.js.map +1 -1
  47. package/dist/assets/icons/Arrow.js.map +1 -1
  48. package/dist/assets/icons/AwardScroll.js.map +1 -1
  49. package/dist/assets/icons/Baseline.js.map +1 -1
  50. package/dist/assets/icons/Cavatica.js.map +1 -1
  51. package/dist/assets/icons/CertifiedUser.js.map +1 -1
  52. package/dist/assets/icons/Challenge.js.map +1 -1
  53. package/dist/assets/icons/Checkbox/Checked.js.map +1 -1
  54. package/dist/assets/icons/Checkbox/Checked2.js.map +1 -1
  55. package/dist/assets/icons/Checkbox/Indeterminate.js.map +1 -1
  56. package/dist/assets/icons/Checkbox/Indeterminate2.js.map +1 -1
  57. package/dist/assets/icons/Checkbox/Unchecked.js.map +1 -1
  58. package/dist/assets/icons/Checkbox/Unchecked2.js.map +1 -1
  59. package/dist/assets/icons/ClappingHands.js.map +1 -1
  60. package/dist/assets/icons/CloudWarning.js.map +1 -1
  61. package/dist/assets/icons/CommunicateFindings.js.map +1 -1
  62. package/dist/assets/icons/CreateVersion.js.map +1 -1
  63. package/dist/assets/icons/DNA_Two.js.map +1 -1
  64. package/dist/assets/icons/Data2.js.map +1 -1
  65. package/dist/assets/icons/DoubleQuotes.js.map +1 -1
  66. package/dist/assets/icons/EmailAddressAdornment.js.map +1 -1
  67. package/dist/assets/icons/FileWithShield.js.map +1 -1
  68. package/dist/assets/icons/FileWithShield2.js.map +1 -1
  69. package/dist/assets/icons/FrontHand.js.map +1 -1
  70. package/dist/assets/icons/HandWithMoney.js.map +1 -1
  71. package/dist/assets/icons/IconCopy.js.map +1 -1
  72. package/dist/assets/icons/IconMinus.js.map +1 -1
  73. package/dist/assets/icons/IconPlus.js.map +1 -1
  74. package/dist/assets/icons/Java.js.map +1 -1
  75. package/dist/assets/icons/MintDoi.js.map +1 -1
  76. package/dist/assets/icons/MultiFile.js.map +1 -1
  77. package/dist/assets/icons/MultiFile2.js.map +1 -1
  78. package/dist/assets/icons/NoData.js.map +1 -1
  79. package/dist/assets/icons/NoSearchResults.js.map +1 -1
  80. package/dist/assets/icons/ORCIDIcon.js.map +1 -1
  81. package/dist/assets/icons/OpenBook.js.map +1 -1
  82. package/dist/assets/icons/Podium.js.map +1 -1
  83. package/dist/assets/icons/Python.js.map +1 -1
  84. package/dist/assets/icons/QueryStructuredData.js.map +1 -1
  85. package/dist/assets/icons/RLogo.js.map +1 -1
  86. package/dist/assets/icons/RecordProvenance.js.map +1 -1
  87. package/dist/assets/icons/RosetteRibbon.js.map +1 -1
  88. package/dist/assets/icons/SageFullLogo.js.map +1 -1
  89. package/dist/assets/icons/SearchImage.js.map +1 -1
  90. package/dist/assets/icons/ShareYourResearch.js.map +1 -1
  91. package/dist/assets/icons/Sort.js.map +1 -1
  92. package/dist/assets/icons/StarTrophy.js.map +1 -1
  93. package/dist/assets/icons/SynapseFullLogo.js.map +1 -1
  94. package/dist/assets/icons/SynapseIconWhite.js.map +1 -1
  95. package/dist/assets/icons/SynapseLogoName.js.map +1 -1
  96. package/dist/assets/icons/TasksIcon.js.map +1 -1
  97. package/dist/assets/icons/Terminal.js.map +1 -1
  98. package/dist/assets/icons/ThreeStars.js.map +1 -1
  99. package/dist/assets/icons/UnpackagableFile.js.map +1 -1
  100. package/dist/assets/icons/UnpackagableFile2.js.map +1 -1
  101. package/dist/assets/icons/ValidatedProfile.js.map +1 -1
  102. package/dist/assets/icons/account-certified.js.map +1 -1
  103. package/dist/assets/icons/account-enabled-mfa.js.map +1 -1
  104. package/dist/assets/icons/account-validated.js.map +1 -1
  105. package/dist/assets/icons/bioChemicalPhysical.js.map +1 -1
  106. package/dist/assets/icons/chart2.js.map +1 -1
  107. package/dist/assets/icons/columns.js.map +1 -1
  108. package/dist/assets/icons/columnsDarkTheme.js.map +1 -1
  109. package/dist/assets/icons/computationalTool.js.map +1 -1
  110. package/dist/assets/icons/dataReuse.js.map +1 -1
  111. package/dist/assets/icons/emailAddressAdornment2.js.map +1 -1
  112. package/dist/assets/icons/emailWithNotification.js.map +1 -1
  113. package/dist/assets/icons/error_page/maintenance.js.map +1 -1
  114. package/dist/assets/icons/error_page/no-access.js.map +1 -1
  115. package/dist/assets/icons/error_page/unavailable.js.map +1 -1
  116. package/dist/assets/icons/file.js.map +1 -1
  117. package/dist/assets/icons/inSilicoModel.js.map +1 -1
  118. package/dist/assets/icons/institution.js.map +1 -1
  119. package/dist/assets/icons/json-form-tool-no-submissions.js.map +1 -1
  120. package/dist/assets/icons/modelSystem.js.map +1 -1
  121. package/dist/assets/icons/mouse.js.map +1 -1
  122. package/dist/assets/icons/organizations.js.map +1 -1
  123. package/dist/assets/icons/person.js.map +1 -1
  124. package/dist/assets/icons/spatialProfiling.js.map +1 -1
  125. package/dist/assets/icons/standardDataModel.js.map +1 -1
  126. package/dist/assets/icons/study-active.js.map +1 -1
  127. package/dist/assets/icons/study-complete.js.map +1 -1
  128. package/dist/assets/icons/subscribe_plus.js.map +1 -1
  129. package/dist/assets/icons/synapse-logo.js.map +1 -1
  130. package/dist/assets/icons/terms/CheckIcon.js.map +1 -1
  131. package/dist/assets/icons/translational.js.map +1 -1
  132. package/dist/assets/icons/tree_horizontal.js.map +1 -1
  133. package/dist/assets/illustrations/acknowledgement_statements_illustration.js.map +1 -1
  134. package/dist/assets/illustrations/challenges_illustration.js.map +1 -1
  135. package/dist/assets/illustrations/cohort_builder_illustration.js.map +1 -1
  136. package/dist/assets/illustrations/data_access_management_illustration.js.map +1 -1
  137. package/dist/assets/illustrations/datasets_illustration.js.map +1 -1
  138. package/dist/assets/illustrations/diagonalLinePattern.js.map +1 -1
  139. package/dist/assets/illustrations/discussions_illustration.js.map +1 -1
  140. package/dist/assets/illustrations/docker_illustration.js.map +1 -1
  141. package/dist/assets/illustrations/donation_illustration.js.map +1 -1
  142. package/dist/assets/illustrations/favorites_illustration.js.map +1 -1
  143. package/dist/assets/illustrations/files_illustration.js.map +1 -1
  144. package/dist/assets/illustrations/following_illustration.js.map +1 -1
  145. package/dist/assets/illustrations/index.js.map +1 -1
  146. package/dist/assets/illustrations/left_dot_blob_dark_illustration.js.map +1 -1
  147. package/dist/assets/illustrations/left_dot_blob_illustration.js.map +1 -1
  148. package/dist/assets/illustrations/projects_illustration.js.map +1 -1
  149. package/dist/assets/illustrations/right_dot_blob_dark_illustration.js.map +1 -1
  150. package/dist/assets/illustrations/right_dot_blob_illustration.js.map +1 -1
  151. package/dist/assets/illustrations/tables_illustration.js.map +1 -1
  152. package/dist/assets/illustrations/teams_illustration.js.map +1 -1
  153. package/dist/assets/illustrations/trash_can_illustration.js.map +1 -1
  154. package/dist/assets/illustrations/underconstruction_illustration.js.map +1 -1
  155. package/dist/assets/illustrations/wikis_illustration.js.map +1 -1
  156. package/dist/assets/logos/other/ad-workbench-logo.js.map +1 -1
  157. package/dist/assets/logos/other/cavatica-logo.js.map +1 -1
  158. package/dist/assets/logos/other/pluto-logo.js.map +1 -1
  159. package/dist/assets/logos/other/terra-logo.js.map +1 -1
  160. package/dist/assets/mui_components/AccessManagement.js.map +1 -1
  161. package/dist/assets/mui_components/AccountCertified.js.map +1 -1
  162. package/dist/assets/mui_components/AccountRegistered.js.map +1 -1
  163. package/dist/assets/mui_components/AccountValidated.js.map +1 -1
  164. package/dist/assets/mui_components/ActionKey.js.map +1 -1
  165. package/dist/assets/mui_components/BioChemicalPhysical.js.map +1 -1
  166. package/dist/assets/mui_components/Chromatin.js.map +1 -1
  167. package/dist/assets/mui_components/Clinical.js.map +1 -1
  168. package/dist/assets/mui_components/ComputationalTool.js.map +1 -1
  169. package/dist/assets/mui_components/Data.js.map +1 -1
  170. package/dist/assets/mui_components/DataLocked.js.map +1 -1
  171. package/dist/assets/mui_components/DataReuse.js.map +1 -1
  172. package/dist/assets/mui_components/Dataset.js.map +1 -1
  173. package/dist/assets/mui_components/DatasetCollection.js.map +1 -1
  174. package/dist/assets/mui_components/Docker.js.map +1 -1
  175. package/dist/assets/mui_components/GeneExpression.js.map +1 -1
  176. package/dist/assets/mui_components/GeneVariants.js.map +1 -1
  177. package/dist/assets/mui_components/HelpChatBubble.js.map +1 -1
  178. package/dist/assets/mui_components/Imaging.js.map +1 -1
  179. package/dist/assets/mui_components/InSilicoModel.js.map +1 -1
  180. package/dist/assets/mui_components/Kinomics.js.map +1 -1
  181. package/dist/assets/mui_components/LineGraph.js.map +1 -1
  182. package/dist/assets/mui_components/ModelSystem.js.map +1 -1
  183. package/dist/assets/mui_components/Other.js.map +1 -1
  184. package/dist/assets/mui_components/PackagableFile.js.map +1 -1
  185. package/dist/assets/mui_components/PackagableFile2.js.map +1 -1
  186. package/dist/assets/mui_components/Proteomics.js.map +1 -1
  187. package/dist/assets/mui_components/Rat.js.map +1 -1
  188. package/dist/assets/mui_components/SpatialProfiling.js.map +1 -1
  189. package/dist/assets/sustainability/darkDialPosition1.js.map +1 -1
  190. package/dist/assets/sustainability/darkDialPosition2.js.map +1 -1
  191. package/dist/assets/sustainability/darkDialPosition3.js.map +1 -1
  192. package/dist/assets/sustainability/darkDialPosition4.js.map +1 -1
  193. package/dist/assets/sustainability/dialPosition1.js.map +1 -1
  194. package/dist/assets/sustainability/dialPosition2.js.map +1 -1
  195. package/dist/assets/sustainability/dialPosition3.js.map +1 -1
  196. package/dist/assets/sustainability/dialPosition4.js.map +1 -1
  197. package/dist/assets/themed_icons/Active.js.map +1 -1
  198. package/dist/assets/themed_icons/Chart.js.map +1 -1
  199. package/dist/assets/themed_icons/Close.js.map +1 -1
  200. package/dist/assets/themed_icons/Collapse.js.map +1 -1
  201. package/dist/assets/themed_icons/Columns.js.map +1 -1
  202. package/dist/assets/themed_icons/ColumnsDark.js.map +1 -1
  203. package/dist/assets/themed_icons/Database.js.map +1 -1
  204. package/dist/assets/themed_icons/Download.js.map +1 -1
  205. package/dist/assets/themed_icons/Expand.js.map +1 -1
  206. package/dist/assets/themed_icons/Explore.js.map +1 -1
  207. package/dist/assets/themed_icons/ExternalLink.js.map +1 -1
  208. package/dist/assets/themed_icons/Filter.js.map +1 -1
  209. package/dist/assets/themed_icons/Program.js.map +1 -1
  210. package/dist/assets/themed_icons/Project.js.map +1 -1
  211. package/dist/assets/themed_icons/Publication.js.map +1 -1
  212. package/dist/assets/themed_icons/Search.js.map +1 -1
  213. package/dist/assets/themed_icons/Settings.js.map +1 -1
  214. package/dist/assets/themed_icons/SortDown.js.map +1 -1
  215. package/dist/assets/themed_icons/SortUp.js.map +1 -1
  216. package/dist/assets/themed_icons/SqlEditorIcon.js.map +1 -1
  217. package/dist/assets/themed_icons/Study.js.map +1 -1
  218. package/dist/assets/themed_icons/ToolClinical.js.map +1 -1
  219. package/dist/assets/themed_icons/ToolComputational.js.map +1 -1
  220. package/dist/assets/themed_icons/ToolExperimental.js.map +1 -1
  221. package/dist/assets/themed_icons/VerticalDots.js.map +1 -1
  222. package/dist/components/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.js.map +1 -1
  223. package/dist/components/AccessRequirement/EntityActionsRequired.js.map +1 -1
  224. package/dist/components/AccessRequirement/ImposeRestrictionDialog/ImposeRestrictionDialog.js.map +1 -1
  225. package/dist/components/AccessRequirementAclEditor/AccessRequirementAclEditor.js.map +1 -1
  226. package/dist/components/AccessRequirementList/AccessApprovalCheckMark.js +10 -11
  227. package/dist/components/AccessRequirementList/AccessApprovalCheckMark.js.map +1 -1
  228. package/dist/components/AccessRequirementList/AccessRequirementList.js +73 -76
  229. package/dist/components/AccessRequirementList/AccessRequirementList.js.map +1 -1
  230. package/dist/components/AccessRequirementList/AccessRequirementListItem.js.map +1 -1
  231. package/dist/components/AccessRequirementList/AccessRequirementListUtils.js.map +1 -1
  232. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess.js.map +1 -1
  233. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js.map +1 -1
  234. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.js.map +1 -1
  235. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DocumentTemplate.js.map +1 -1
  236. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.js.map +1 -1
  237. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItem.js.map +1 -1
  238. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItemView.js.map +1 -1
  239. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/RequestDataAccessSuccess.js.map +1 -1
  240. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.js.map +1 -1
  241. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/UploadDocumentField.js.map +1 -1
  242. package/dist/components/AccessRequirementList/RequirementItem/AuthenticatedRequirement.js.map +1 -1
  243. package/dist/components/AccessRequirementList/RequirementItem/CertificationRequirement.js.map +1 -1
  244. package/dist/components/AccessRequirementList/RequirementItem/LockAccessRequirementItem.js.map +1 -1
  245. package/dist/components/AccessRequirementList/RequirementItem/RequirementItem.js.map +1 -1
  246. package/dist/components/AccessRequirementList/RequirementItem/SelfSignAccessRequirementItem.js.map +1 -1
  247. package/dist/components/AccessRequirementList/RequirementItem/TwoFactorAuthEnabledRequirement.js.map +1 -1
  248. package/dist/components/AccessRequirementList/RequirementItem/UnmanagedACTAccessRequirementItem.js.map +1 -1
  249. package/dist/components/AccessRequirementList/RequirementItem/ValidationRequirement.js.map +1 -1
  250. package/dist/components/AccessRequirementRelatedProjectsList/AccessRequirementRelatedProjectsList.js.map +1 -1
  251. package/dist/components/AccessTokenPage/AccessTokenCard/AccessTokenCard.js.map +1 -1
  252. package/dist/components/AccessTokenPage/AccessTokenPage.js.map +1 -1
  253. package/dist/components/AccessTokenPage/CreateAccessTokenModal.js.map +1 -1
  254. package/dist/components/AccountLevelBadge/AccountLevelBadge.js.map +1 -1
  255. package/dist/components/AccountLevelBadges/AccountLevelBadges.js.map +1 -1
  256. package/dist/components/AccountLevelBadges/useRevokeCertificationUI.js.map +1 -1
  257. package/dist/components/AcknowledgementsPage/AcknowledgementsDialog.js.map +1 -1
  258. package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js.map +1 -1
  259. package/dist/components/AcknowledgementsPage/StudyAcknowledgement.js.map +1 -1
  260. package/dist/components/AcknowledgementsPage/StudyAcknowledgements.js.map +1 -1
  261. package/dist/components/AclEditor/AclEditor.js.map +1 -1
  262. package/dist/components/AclEditor/AclEditor.test-utils.js.map +1 -1
  263. package/dist/components/AclEditor/AclEditorSkeleton.js.map +1 -1
  264. package/dist/components/AclEditor/PermissionLevelMenu.js.map +1 -1
  265. package/dist/components/AclEditor/ReadOnlyPermissionLevel.js.map +1 -1
  266. package/dist/components/AclEditor/ResourceAccessAndUserGroupHeader.js +2 -4
  267. package/dist/components/AclEditor/ResourceAccessAndUserGroupHeader.js.map +1 -1
  268. package/dist/components/AclEditor/ResourceAccessItem.js.map +1 -1
  269. package/dist/components/AclEditor/useSortResourceAccessList.js.map +1 -1
  270. package/dist/components/AclEditor/useUpdateAcl.js.map +1 -1
  271. package/dist/components/AdaptiveTwoColumnLayout/AdaptiveTwoColumnLayout.js.map +1 -1
  272. package/dist/components/AddToDownloadListV2.js.map +1 -1
  273. package/dist/components/Aridhia/AridhiaAccessStatus.js.map +1 -1
  274. package/dist/components/Aridhia/aridhiaAccessStatusUtils.js.map +1 -1
  275. package/dist/components/Authentication/AuthenticationMethodSelection.js.map +1 -1
  276. package/dist/components/Authentication/LastLoginInfo.js.map +1 -1
  277. package/dist/components/Authentication/LoginFlowBackButton.js.map +1 -1
  278. package/dist/components/Authentication/LoginForm.js.map +1 -1
  279. package/dist/components/Authentication/LoginMethod.js.map +1 -1
  280. package/dist/components/Authentication/LoginMethodButton.js.map +1 -1
  281. package/dist/components/Authentication/Logout.js.map +1 -1
  282. package/dist/components/Authentication/OneTimePasswordForm.js.map +1 -1
  283. package/dist/components/Authentication/PasswordField.js.map +1 -1
  284. package/dist/components/Authentication/RecoveryCodeForm.js.map +1 -1
  285. package/dist/components/Authentication/RecoveryCodeGrid.js.map +1 -1
  286. package/dist/components/Authentication/RegenerateBackupCodesWarning.js.map +1 -1
  287. package/dist/components/Authentication/Reset2FAWarning.js.map +1 -1
  288. package/dist/components/Authentication/StandaloneLoginForm.js.map +1 -1
  289. package/dist/components/Authentication/TOTPForm.js.map +1 -1
  290. package/dist/components/Authentication/TwoFactorAuthSettingsPanel.js.map +1 -1
  291. package/dist/components/Authentication/TwoFactorBackupCodes.js.map +1 -1
  292. package/dist/components/Authentication/TwoFactorEnrollmentForm.js.map +1 -1
  293. package/dist/components/Authentication/TwoFactorSecretDialog.js.map +1 -1
  294. package/dist/components/Authentication/UsernamePasswordForm.js.map +1 -1
  295. package/dist/components/BasePortalCard/BasePortalCard.js.map +1 -1
  296. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
  297. package/dist/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
  298. package/dist/components/CTASectionWrapper/CTASectionWrapper.js.map +1 -1
  299. package/dist/components/CannedRejectionDialog/CannedRejectionDialog.js.map +1 -1
  300. package/dist/components/CardContainer/CardContainer.js.map +1 -1
  301. package/dist/components/CardContainerLogic/CardContainerLogic.js.map +1 -1
  302. package/dist/components/CardDeck/CardDeck.Desktop.js.map +1 -1
  303. package/dist/components/CardDeck/CardDeck.Mobile.js.map +1 -1
  304. package/dist/components/CardDeck/CardDeck.js.map +1 -1
  305. package/dist/components/CardDeck/TableQueryCardDeck.js.map +1 -1
  306. package/dist/components/CardGridWithLinks/CardGridWithLinks.js.map +1 -1
  307. package/dist/components/CertificationQuiz/CertificationAnswer.js.map +1 -1
  308. package/dist/components/CertificationQuiz/CertificationQuiz.js.map +1 -1
  309. package/dist/components/ChallengeDataDownload/ChallengeDataDownload.js.map +1 -1
  310. package/dist/components/ChallengeDetailPage/ChallengeDetailPage.js.map +1 -1
  311. package/dist/components/ChallengeRegisterButton/ChallengeRegisterButton.js.map +1 -1
  312. package/dist/components/ChallengeRequirementsModal/ChallengeRequirementsModal.js.map +1 -1
  313. package/dist/components/ChallengeSubmission/AddExternalRepo.js.map +1 -1
  314. package/dist/components/ChallengeSubmission/AvailableEvaluationQueueList.js.map +1 -1
  315. package/dist/components/ChallengeSubmission/ChallengeSubmission.js.map +1 -1
  316. package/dist/components/ChallengeSubmission/ChallengeSubmissionStepper.js +62 -64
  317. package/dist/components/ChallengeSubmission/ChallengeSubmissionStepper.js.map +1 -1
  318. package/dist/components/ChallengeSubmission/EvaluationQueueCurrentRoundInfo.js.map +1 -1
  319. package/dist/components/ChallengeSubmission/EvaluationQueueList.js.map +1 -1
  320. package/dist/components/ChallengeSubmission/SubmissionCommitList.js.map +1 -1
  321. package/dist/components/ChallengeSubmission/SubmissionDirectoryList.js.map +1 -1
  322. package/dist/components/ChallengeTeamWizard/ChallengeTeamSearch.js.map +1 -1
  323. package/dist/components/ChallengeTeamWizard/ChallengeTeamTable.js.map +1 -1
  324. package/dist/components/ChallengeTeamWizard/ChallengeTeamWizard.js +96 -102
  325. package/dist/components/ChallengeTeamWizard/ChallengeTeamWizard.js.map +1 -1
  326. package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js.map +1 -1
  327. package/dist/components/ChallengeTeamWizard/MembershipRequestForm.js.map +1 -1
  328. package/dist/components/ChallengeTeamWizard/OpenMembershipInvitation.js.map +1 -1
  329. package/dist/components/ChallengeTeamWizard/RegistrationSuccessful.js.map +1 -1
  330. package/dist/components/ChallengeTeamWizard/SelectChallengeTeam.js.map +1 -1
  331. package/dist/components/ChallengeTeamWizard/useCreateAndRegisterChallengeTeam.js.map +1 -1
  332. package/dist/components/ChangePassword/ChangePassword.js.map +1 -1
  333. package/dist/components/ChangePassword/ChangePasswordWithToken.js.map +1 -1
  334. package/dist/components/ChangePassword/useChangePasswordFormState.js.map +1 -1
  335. package/dist/components/CitationPopover/CitationPopover.js.map +1 -1
  336. package/dist/components/CitationPopover/CitationPopoverContent.js.map +1 -1
  337. package/dist/components/CitationPopover/CitationPopoverUtils.js.map +1 -1
  338. package/dist/components/CitationPopover/useCitation.js.map +1 -1
  339. package/dist/components/ColorGradient/ColorGradient.js.map +1 -1
  340. package/dist/components/ColoredBulletListItem/ColoredBulletListItem.js.map +1 -1
  341. package/dist/components/ColumnFilter/ColumnFilter.js.map +1 -1
  342. package/dist/components/ComponentCollapse.js.map +1 -1
  343. package/dist/components/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
  344. package/dist/components/CookiesNotification/CookiePreferencesDialog.js.map +1 -1
  345. package/dist/components/CookiesNotification/CookiesNotification.d.ts.map +1 -1
  346. package/dist/components/CookiesNotification/CookiesNotification.js +9 -9
  347. package/dist/components/CookiesNotification/CookiesNotification.js.map +1 -1
  348. package/dist/components/CopyToClipboardIcon.js.map +1 -1
  349. package/dist/components/CopyToClipboardInput/CopyToClipboardInput.js.map +1 -1
  350. package/dist/components/CopyToClipboardString/CopyToClipboardString.js.map +1 -1
  351. package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js.map +1 -1
  352. package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizardUtils.js.map +1 -1
  353. package/dist/components/CreateProjectModal/CreateProjectModal.js.map +1 -1
  354. package/dist/components/CreateProjectModal/ProjectVisibilityRadioGroup.js.map +1 -1
  355. package/dist/components/CreateTableViewWizard/CreateTableViewWizard.js.map +1 -1
  356. package/dist/components/CreateTableViewWizard/CreateTableViewWizardUtils.js.map +1 -1
  357. package/dist/components/CreateTableViewWizard/TableNameForm.js.map +1 -1
  358. package/dist/components/CreateTableViewWizard/TableTypeSelection.js.map +1 -1
  359. package/dist/components/CreateTableViewWizard/ViewTypeSelection.js.map +1 -1
  360. package/dist/components/CrispChat/CrispChat.js.map +1 -1
  361. package/dist/components/DataExplorer/DataExplorer.css +1 -0
  362. package/dist/components/DataExplorer/DataExplorer.d.ts +13 -0
  363. package/dist/components/DataExplorer/DataExplorer.d.ts.map +1 -0
  364. package/dist/components/DataExplorer/DataExplorer.js +116 -0
  365. package/dist/components/DataExplorer/DataExplorer.js.map +1 -0
  366. package/dist/components/DataExplorer/DataExplorer.module.js +22 -0
  367. package/dist/components/DataExplorer/DataExplorer.module.js.map +1 -0
  368. package/dist/components/DataExplorer/DataExplorer.module.scss +156 -0
  369. package/dist/components/DataGrid/DataGrid.js +72 -72
  370. package/dist/components/DataGrid/DataGrid.js.map +1 -1
  371. package/dist/components/DataGrid/DataGridTypes.js.map +1 -1
  372. package/dist/components/DataGrid/DataGridWebSocket.d.ts +2 -0
  373. package/dist/components/DataGrid/DataGridWebSocket.d.ts.map +1 -1
  374. package/dist/components/DataGrid/DataGridWebSocket.js +9 -10
  375. package/dist/components/DataGrid/DataGridWebSocket.js.map +1 -1
  376. package/dist/components/DataGrid/MergeGridWithSourceTableButton.js.map +1 -1
  377. package/dist/components/DataGrid/StartGridSession.js.map +1 -1
  378. package/dist/components/DataGrid/SynapseGrid.d.ts +3 -1
  379. package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
  380. package/dist/components/DataGrid/SynapseGrid.js +219 -211
  381. package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
  382. package/dist/components/DataGrid/columns/AutocompleteColumn.d.ts.map +1 -1
  383. package/dist/components/DataGrid/columns/AutocompleteColumn.js +106 -102
  384. package/dist/components/DataGrid/columns/AutocompleteColumn.js.map +1 -1
  385. package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.d.ts.map +1 -1
  386. package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.js +97 -89
  387. package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.js.map +1 -1
  388. package/dist/components/DataGrid/columns/DateTimeColumn.js.map +1 -1
  389. package/dist/components/DataGrid/columns/GridAutocompleteChip.js.map +1 -1
  390. package/dist/components/DataGrid/columns/useGridAutocompleteState.d.ts +19 -8
  391. package/dist/components/DataGrid/columns/useGridAutocompleteState.d.ts.map +1 -1
  392. package/dist/components/DataGrid/columns/useGridAutocompleteState.js +64 -43
  393. package/dist/components/DataGrid/columns/useGridAutocompleteState.js.map +1 -1
  394. package/dist/components/DataGrid/components/ColumnHeaderWithTooltip.js.map +1 -1
  395. package/dist/components/DataGrid/components/ExportCsvFromGridButton.js.map +1 -1
  396. package/dist/components/DataGrid/components/GridMenuButton/GridMenuButton.js.map +1 -1
  397. package/dist/components/DataGrid/components/GridSessionSelectionField.js.map +1 -1
  398. package/dist/components/DataGrid/components/UploadCsvToGridButton.js.map +1 -1
  399. package/dist/components/DataGrid/components/UploadCsvToGridDialog.d.ts.map +1 -1
  400. package/dist/components/DataGrid/components/UploadCsvToGridDialog.js +9 -9
  401. package/dist/components/DataGrid/components/UploadCsvToGridDialog.js.map +1 -1
  402. package/dist/components/DataGrid/components/ValidationAlert.js.map +1 -1
  403. package/dist/components/DataGrid/components/contextMenu.js.map +1 -1
  404. package/dist/components/DataGrid/hooks/useColumnResizeHandles.js +2 -0
  405. package/dist/components/DataGrid/hooks/useColumnResizeHandles.js.map +1 -1
  406. package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js.map +1 -1
  407. package/dist/components/DataGrid/hooks/useGetSchemaForGrid.d.ts.map +1 -1
  408. package/dist/components/DataGrid/hooks/useGetSchemaForGrid.js +8 -1
  409. package/dist/components/DataGrid/hooks/useGetSchemaForGrid.js.map +1 -1
  410. package/dist/components/DataGrid/hooks/useGridReplicaUsers.js.map +1 -1
  411. package/dist/components/DataGrid/hooks/useGridUndoRedo.js.map +1 -1
  412. package/dist/components/DataGrid/hooks/useRemoteSelections.js.map +1 -1
  413. package/dist/components/DataGrid/hooks/useStack.js.map +1 -1
  414. package/dist/components/DataGrid/useCRDTModelView.js.map +1 -1
  415. package/dist/components/DataGrid/useDataGridWebsocket.d.ts +2 -0
  416. package/dist/components/DataGrid/useDataGridWebsocket.d.ts.map +1 -1
  417. package/dist/components/DataGrid/useDataGridWebsocket.js +12 -2
  418. package/dist/components/DataGrid/useDataGridWebsocket.js.map +1 -1
  419. package/dist/components/DataGrid/useInitializeGridConnection.js.map +1 -1
  420. package/dist/components/DataGrid/useMergeGridWithRecordSet.js.map +1 -1
  421. package/dist/components/DataGrid/useMergeGridWithSource.js.map +1 -1
  422. package/dist/components/DataGrid/useMergeGridWithTable.js.map +1 -1
  423. package/dist/components/DataGrid/utils/DataGridUtils.js.map +1 -1
  424. package/dist/components/DataGrid/utils/MessageCounter.js.map +1 -1
  425. package/dist/components/DataGrid/utils/applyModelChange.js.map +1 -1
  426. package/dist/components/DataGrid/utils/calculateColumnWidth.js.map +1 -1
  427. package/dist/components/DataGrid/utils/columnFactory.js.map +1 -1
  428. package/dist/components/DataGrid/utils/computeReplicaSelectionModel.js.map +1 -1
  429. package/dist/components/DataGrid/utils/convertActionToModelChange.js.map +1 -1
  430. package/dist/components/DataGrid/utils/createTestModel.js.map +1 -1
  431. package/dist/components/DataGrid/utils/enrichRowsWithChangeInfo.js.map +1 -1
  432. package/dist/components/DataGrid/utils/extractColumnValidationMessages.js.map +1 -1
  433. package/dist/components/DataGrid/utils/getCellAuthorSid.js.map +1 -1
  434. package/dist/components/DataGrid/utils/getCellClassName.js.map +1 -1
  435. package/dist/components/DataGrid/utils/getChangeTooltipText.js.map +1 -1
  436. package/dist/components/DataGrid/utils/getEmptyValue.js.map +1 -1
  437. package/dist/components/DataGrid/utils/getReplicaCategory.js.map +1 -1
  438. package/dist/components/DataGrid/utils/isValidationUpToDateForRow.js.map +1 -1
  439. package/dist/components/DataGrid/utils/json-rx/JsonRx.js.map +1 -1
  440. package/dist/components/DataGrid/utils/json-rx/JsonRxMessage.js.map +1 -1
  441. package/dist/components/DataGrid/utils/json-rx/JsonRxNotification.js.map +1 -1
  442. package/dist/components/DataGrid/utils/json-rx/JsonRxRequest.js.map +1 -1
  443. package/dist/components/DataGrid/utils/json-rx/JsonRxRequestComplete.js.map +1 -1
  444. package/dist/components/DataGrid/utils/json-rx/JsonRxResponse.js.map +1 -1
  445. package/dist/components/DataGrid/utils/json-rx/JsonRxResponseComplete.js.map +1 -1
  446. package/dist/components/DataGrid/utils/logicalTimestampToString.js.map +1 -1
  447. package/dist/components/DataGrid/utils/mapOperationsToModelChanges.js.map +1 -1
  448. package/dist/components/DataGrid/utils/modelColsToGrid.js.map +1 -1
  449. package/dist/components/DataGrid/utils/modelRowsToGrid.js.map +1 -1
  450. package/dist/components/DataGrid/utils/parseFreeTextUsingJsonSchemaType.js.map +1 -1
  451. package/dist/components/DataGrid/utils/replicaSelectionToGridSelection.js.map +1 -1
  452. package/dist/components/DataGrid/utils/schemaAwarePasteValue.js.map +1 -1
  453. package/dist/components/DataGrid/utils/splitPatch.js.map +1 -1
  454. package/dist/components/DatasetJsonLdScript.js.map +1 -1
  455. package/dist/components/DateTimePicker/DateTimePicker.js.map +1 -1
  456. package/dist/components/Dialog/ConfirmCloseWithoutSavingDialog.js.map +1 -1
  457. package/dist/components/DialogBase.js.map +1 -1
  458. package/dist/components/DirectDownload/DirectDownload.js.map +1 -1
  459. package/dist/components/DirectDownload/FileEntityDirectDownload.js.map +1 -1
  460. package/dist/components/DirectDownloadButton.js.map +1 -1
  461. package/dist/components/DownloadCart/ActionRequiredCard/ActionRequiredCard.js.map +1 -1
  462. package/dist/components/DownloadCart/ActionRequiredListItem.js.map +1 -1
  463. package/dist/components/DownloadCart/AvailableForDownloadTable.js.map +1 -1
  464. package/dist/components/DownloadCart/CreatePackageV2.js.map +1 -1
  465. package/dist/components/DownloadCart/DirectProgrammaticDownload.js.map +1 -1
  466. package/dist/components/DownloadCart/DownloadCartPage.js.map +1 -1
  467. package/dist/components/DownloadCart/DownloadDetails.js.map +1 -1
  468. package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js.map +1 -1
  469. package/dist/components/DownloadCart/DownloadListActionsRequired.js.map +1 -1
  470. package/dist/components/DownloadCart/DownloadListStats.js.map +1 -1
  471. package/dist/components/DownloadCart/DownloadListTable.js.map +1 -1
  472. package/dist/components/DownloadCart/EnableTwoFaRequirementCard.js.map +1 -1
  473. package/dist/components/DownloadCart/MeetAccessRequirementCard.js.map +1 -1
  474. package/dist/components/DownloadCart/RequestDownloadCard.js.map +1 -1
  475. package/dist/components/DownloadCart/ShowDownloadV2.js.map +1 -1
  476. package/dist/components/DownloadCart/TableQueryActionsRequired.js.map +1 -1
  477. package/dist/components/DownloadCart/fileNameUtils.js.map +1 -1
  478. package/dist/components/DraggableDialog/DraggableDialog.js.map +1 -1
  479. package/dist/components/DropdownSelect/DropdownSelect.js.map +1 -1
  480. package/dist/components/DynamicForm/DynamicForm.js.map +1 -1
  481. package/dist/components/DynamicForm/DynamicFormModal.js.map +1 -1
  482. package/dist/components/Ecosystem/EcosystemCard.js.map +1 -1
  483. package/dist/components/Ecosystem/EcosystemLayout.js.map +1 -1
  484. package/dist/components/Ecosystem/EcosystemSkeleton.js.map +1 -1
  485. package/dist/components/Ecosystem/TableQueryEcosystem.js.map +1 -1
  486. package/dist/components/EntityAclEditor/CreateOrDeleteLocalSharingSettingsButton.js.map +1 -1
  487. package/dist/components/EntityAclEditor/EntityAclEditor.js.map +1 -1
  488. package/dist/components/EntityAclEditor/EntityAclEditorModal.js.map +1 -1
  489. package/dist/components/EntityAclEditor/InheritanceMessage.js.map +1 -1
  490. package/dist/components/EntityAclEditor/OpenData.js.map +1 -1
  491. package/dist/components/EntityAclEditor/useNotifyNewACLUsers.js.map +1 -1
  492. package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js +68 -70
  493. package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js.map +1 -1
  494. package/dist/components/EntityCitation/EntityCitation.js.map +1 -1
  495. package/dist/components/EntityCitation/EntityCitationUtils.js.map +1 -1
  496. package/dist/components/EntityDownloadButton/EntityDownloadButton.js +32 -35
  497. package/dist/components/EntityDownloadButton/EntityDownloadButton.js.map +1 -1
  498. package/dist/components/EntityDownloadConfirmation/EntityDownloadConfirmation.js.map +1 -1
  499. package/dist/components/EntityFinder/Breadcrumbs.js.map +1 -1
  500. package/dist/components/EntityFinder/EntityFinder.js +134 -136
  501. package/dist/components/EntityFinder/EntityFinder.js.map +1 -1
  502. package/dist/components/EntityFinder/EntityFinderModal.js.map +1 -1
  503. package/dist/components/EntityFinder/EntityIdTextField.js.map +1 -1
  504. package/dist/components/EntityFinder/VersionSelectionType.js.map +1 -1
  505. package/dist/components/EntityFinder/details/EntityDetailsList.js +20 -20
  506. package/dist/components/EntityFinder/details/EntityDetailsList.js.map +1 -1
  507. package/dist/components/EntityFinder/details/configurations/EntityChildrenDetails.js.map +1 -1
  508. package/dist/components/EntityFinder/details/configurations/FavoritesDetails.js.map +1 -1
  509. package/dist/components/EntityFinder/details/configurations/ProjectListDetails.js.map +1 -1
  510. package/dist/components/EntityFinder/details/configurations/ReferenceDetails.js.map +1 -1
  511. package/dist/components/EntityFinder/details/configurations/SearchDetails.js.map +1 -1
  512. package/dist/components/EntityFinder/details/view/DetailsView.js +67 -67
  513. package/dist/components/EntityFinder/details/view/DetailsView.js.map +1 -1
  514. package/dist/components/EntityFinder/details/view/VersionColumnHeader.js +1 -1
  515. package/dist/components/EntityFinder/details/view/VersionColumnHeader.js.map +1 -1
  516. package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js.map +1 -1
  517. package/dist/components/EntityFinder/details/view/table/CreatedOnCell.js.map +1 -1
  518. package/dist/components/EntityFinder/details/view/table/DateCell.js.map +1 -1
  519. package/dist/components/EntityFinder/details/view/table/EntityBadgeIconsCell.js.map +1 -1
  520. package/dist/components/EntityFinder/details/view/table/EntityFinderCheckboxCell.js.map +1 -1
  521. package/dist/components/EntityFinder/details/view/table/EntityFinderVersionCell.js.map +1 -1
  522. package/dist/components/EntityFinder/details/view/table/EntityNameCell.js.map +1 -1
  523. package/dist/components/EntityFinder/details/view/table/EntityTypeCell.js.map +1 -1
  524. package/dist/components/EntityFinder/details/view/table/FileEntityDirectDownloadCell.js.map +1 -1
  525. package/dist/components/EntityFinder/details/view/table/FileEntityMD5Cell.js.map +1 -1
  526. package/dist/components/EntityFinder/details/view/table/FileEntitySizeCell.js.map +1 -1
  527. package/dist/components/EntityFinder/details/view/table/ModifiedByCell.js.map +1 -1
  528. package/dist/components/EntityFinder/details/view/table/ModifiedOnCell.js.map +1 -1
  529. package/dist/components/EntityFinder/details/view/table/ParentProjectCell.js.map +1 -1
  530. package/dist/components/EntityFinder/details/view/table/UserBadgeCell.js.map +1 -1
  531. package/dist/components/EntityFinder/tree/EntityTree.js +80 -80
  532. package/dist/components/EntityFinder/tree/EntityTree.js.map +1 -1
  533. package/dist/components/EntityFinder/tree/VirtualizedTree.js +31 -31
  534. package/dist/components/EntityFinder/tree/VirtualizedTree.js.map +1 -1
  535. package/dist/components/EntityFinder/useEntitySelection.js.map +1 -1
  536. package/dist/components/EntityForm/EntityForm.js.map +1 -1
  537. package/dist/components/EntityHeaderTable/DebouncedInput.js.map +1 -1
  538. package/dist/components/EntityHeaderTable/EntityHeaderTable.js.map +1 -1
  539. package/dist/components/EntityHeaderTable/EntityHeaderTableCellRenderers.js.map +1 -1
  540. package/dist/components/EntityHeaderTable/Filter.js.map +1 -1
  541. package/dist/components/EntityHeaderTable/useEntityHeaderTableState.js.map +1 -1
  542. package/dist/components/EntityIcon.js.map +1 -1
  543. package/dist/components/EntityLink.js.map +1 -1
  544. package/dist/components/EntitySubjectsSelector/EntitySubjectsSelector.js.map +1 -1
  545. package/dist/components/EntityTreeTable/EntityTreeTable.js.map +1 -1
  546. package/dist/components/EntityTreeTable/components/AutoLoadMore.js.map +1 -1
  547. package/dist/components/EntityTreeTable/components/ColumnHeaders.js.map +1 -1
  548. package/dist/components/EntityTreeTable/components/EntityBadgeIconsCell.js.map +1 -1
  549. package/dist/components/EntityTreeTable/components/EntityNameCell.js.map +1 -1
  550. package/dist/components/EntityTreeTable/components/EntityTreeTableContext.js.map +1 -1
  551. package/dist/components/EntityTreeTable/components/EntityTreeTableRow.js.map +1 -1
  552. package/dist/components/EntityTreeTable/components/EntityTreeTableView.js.map +1 -1
  553. package/dist/components/EntityTreeTable/components/IdCell.js.map +1 -1
  554. package/dist/components/EntityTreeTable/components/IdColumnHeader.js.map +1 -1
  555. package/dist/components/EntityTreeTable/hooks/useEntityTreeState.js.map +1 -1
  556. package/dist/components/EntityTreeTable/hooks/useTableColumns.js.map +1 -1
  557. package/dist/components/EntityTreeTable/hooks/useTableData.js.map +1 -1
  558. package/dist/components/EntityTreeTable/hooks/useTreeOperationsWithDirectFetch.js.map +1 -1
  559. package/dist/components/EntityUpload/EntityUpload.js.map +1 -1
  560. package/dist/components/EntityUpload/EntityUploadModal.js +29 -31
  561. package/dist/components/EntityUpload/EntityUploadModal.js.map +1 -1
  562. package/dist/components/EntityUpload/EntityUploadPromptDialog.js.map +1 -1
  563. package/dist/components/EntityUpload/ExternalObjectStoreCredentialsForm.js.map +1 -1
  564. package/dist/components/EntityUpload/FileUploadProgress.js.map +1 -1
  565. package/dist/components/EntityUpload/LinkToURL.js.map +1 -1
  566. package/dist/components/EntityUpload/ProjectStorageLimitAlert.js.map +1 -1
  567. package/dist/components/EntityViewScopeEditor/EntityViewMaskEditor.js.map +1 -1
  568. package/dist/components/EntityViewScopeEditor/EntityViewScopeEditor.js.map +1 -1
  569. package/dist/components/EntityViewScopeEditor/EntityViewScopeEditorModal.js.map +1 -1
  570. package/dist/components/Evaluation/CreatedOnByUserDiv.js.map +1 -1
  571. package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js.map +1 -1
  572. package/dist/components/Evaluation/EvaluationCard.js.map +1 -1
  573. package/dist/components/Evaluation/EvaluationEditor.js.map +1 -1
  574. package/dist/components/Evaluation/EvaluationEditorPage.js.map +1 -1
  575. package/dist/components/Evaluation/EvaluationRoundEditor.js.map +1 -1
  576. package/dist/components/Evaluation/EvaluationRoundEditorDropdown.js.map +1 -1
  577. package/dist/components/Evaluation/EvaluationRoundEditorList.js.map +1 -1
  578. package/dist/components/Evaluation/input_models/models.js.map +1 -1
  579. package/dist/components/Evaluation/round_limits/EvaluationRoundLimitOptions.js.map +1 -1
  580. package/dist/components/Evaluation/round_limits/EvaluationRoundLimitOptionsList.js.map +1 -1
  581. package/dist/components/EvaluationFinder/EvaluationFinder.js.map +1 -1
  582. package/dist/components/ExperimentalMode/ExperimentalMode.d.ts.map +1 -1
  583. package/dist/components/ExperimentalMode/ExperimentalMode.js +24 -30
  584. package/dist/components/ExperimentalMode/ExperimentalMode.js.map +1 -1
  585. package/dist/components/ExternalFileHandleLink/ExternalFileHandleLink.js.map +1 -1
  586. package/dist/components/FeaturedDataTabs/FacetPlotsCard.js.map +1 -1
  587. package/dist/components/FeaturedDataTabs/FacetPlotsCardGrid.js.map +1 -1
  588. package/dist/components/FeaturedDataTabs/FeaturedDataPlots.js.map +1 -1
  589. package/dist/components/FeaturedDataTabs/FeaturedDataTabs.js.map +1 -1
  590. package/dist/components/FeaturedDataTabs/QueryPerFacetPlotsCard.js.map +1 -1
  591. package/dist/components/FeaturedDataTabs/SingleQueryFacetPlotsCards.js.map +1 -1
  592. package/dist/components/FeaturedResearch/FeaturedResearch.js +16 -18
  593. package/dist/components/FeaturedResearch/FeaturedResearch.js.map +1 -1
  594. package/dist/components/FeaturedToolsList/FeaturedToolCard.js.map +1 -1
  595. package/dist/components/FeaturedToolsList/FeaturedToolsList.js.map +1 -1
  596. package/dist/components/FilePreview/EntityPreview.js.map +1 -1
  597. package/dist/components/FilePreview/FileEntityPreview.js.map +1 -1
  598. package/dist/components/FilePreview/FileHandleContentRenderer.js.map +1 -1
  599. package/dist/components/FilePreview/HtmlPreview/HtmlPreview.js.map +1 -1
  600. package/dist/components/FilePreview/PdfPreview.js.map +1 -1
  601. package/dist/components/FilePreview/PreviewRendererType.js.map +1 -1
  602. package/dist/components/FilePreview/PreviewUtils.js.map +1 -1
  603. package/dist/components/FileUpload/FileUpload.js.map +1 -1
  604. package/dist/components/Forum/DiscussionReply.js.map +1 -1
  605. package/dist/components/Forum/DiscussionSearchResult.js.map +1 -1
  606. package/dist/components/Forum/DiscussionThread.js.map +1 -1
  607. package/dist/components/Forum/ForumPage.js.map +1 -1
  608. package/dist/components/Forum/ForumTable.js.map +1 -1
  609. package/dist/components/Forum/ForumThreadEditor.js.map +1 -1
  610. package/dist/components/Forum/SubscribersModal.js.map +1 -1
  611. package/dist/components/ForumSearch/ForumSearch.js.map +1 -1
  612. package/dist/components/FullTextSearch/FullTextSearch.js.map +1 -1
  613. package/dist/components/FullTextSearch/FullTextSearchUtils.js.map +1 -1
  614. package/dist/components/FullWidthAlert/FullWidthAlert.js.map +1 -1
  615. package/dist/components/GenericCard/BioregistryRules.js.map +1 -1
  616. package/dist/components/GenericCard/CardUtils.js.map +1 -1
  617. package/dist/components/GenericCard/CollapsibleDescription.js.map +1 -1
  618. package/dist/components/GenericCard/CroissantButton/CroissantButton.js.map +1 -1
  619. package/dist/components/GenericCard/GenericCard.js.map +1 -1
  620. package/dist/components/GenericCard/GenericCardActionButton.js.map +1 -1
  621. package/dist/components/GenericCard/GenericCardIcon.js.map +1 -1
  622. package/dist/components/GenericCard/GenericCardTitle.js.map +1 -1
  623. package/dist/components/GenericCard/LabelMaybeWithIcon.js.map +1 -1
  624. package/dist/components/GenericCard/Linkify.js.map +1 -1
  625. package/dist/components/GenericCard/PortalDOI/PortalDOI.js.map +1 -1
  626. package/dist/components/GenericCard/PortalDOI/PortalDOIUtils.js.map +1 -1
  627. package/dist/components/GenericCard/SynapseCardLabel.js +1 -1
  628. package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
  629. package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
  630. package/dist/components/GenericCard/useResolvedSynapseEntity.js.map +1 -1
  631. package/dist/components/Goals/Goals.Desktop.js.map +1 -1
  632. package/dist/components/Goals/Goals.Mobile.js.map +1 -1
  633. package/dist/components/Goals/Goals.js +25 -27
  634. package/dist/components/Goals/Goals.js.map +1 -1
  635. package/dist/components/GoalsV2/GoalsV2.Desktop.js.map +1 -1
  636. package/dist/components/GoalsV2/GoalsV2.Mobile.js.map +1 -1
  637. package/dist/components/GoalsV2/GoalsV2.js +14 -16
  638. package/dist/components/GoalsV2/GoalsV2.js.map +1 -1
  639. package/dist/components/GoalsV3/GoalsV3.Desktop.js.map +1 -1
  640. package/dist/components/GoalsV3/GoalsV3.Mobile.js.map +1 -1
  641. package/dist/components/GoalsV3/GoalsV3.js +14 -16
  642. package/dist/components/GoalsV3/GoalsV3.js.map +1 -1
  643. package/dist/components/GoogleAnalytics/GoogleAnalytics.js.map +1 -1
  644. package/dist/components/GoogleMap/GoogleMap.js.map +1 -1
  645. package/dist/components/GoogleMap/SynapseUserMarker.js.map +1 -1
  646. package/dist/components/HasAccess/AccessIcon.js +10 -10
  647. package/dist/components/HasAccess/AccessIcon.js.map +1 -1
  648. package/dist/components/HasAccess/HasAccessV2.js.map +1 -1
  649. package/dist/components/HasAccess/useHasAccess.js.map +1 -1
  650. package/dist/components/HeaderCard/HeaderCardV2.js.map +1 -1
  651. package/dist/components/HeaderCard.js.map +1 -1
  652. package/dist/components/HelpPopover/HelpPopover.js.map +1 -1
  653. package/dist/components/HexGrid/HexGrid.js.map +1 -1
  654. package/dist/components/IDUReport/IDUReport.js.map +1 -1
  655. package/dist/components/IDUReport/IDUReportSubmissionInfo.js.map +1 -1
  656. package/dist/components/Icon/Icon.js.map +1 -1
  657. package/dist/components/IconList.js.map +1 -1
  658. package/dist/components/IconSvg/IconSvg.js.map +1 -1
  659. package/dist/components/IconSvgButton.js.map +1 -1
  660. package/dist/components/ImageCardGridWithLinks/ImageCardGridWithLinks.js +7 -9
  661. package/dist/components/ImageCardGridWithLinks/ImageCardGridWithLinks.js.map +1 -1
  662. package/dist/components/ImageFromSynapseTable.js.map +1 -1
  663. package/dist/components/InteractiveCopyIdsIcon.js.map +1 -1
  664. package/dist/components/JSONArrayEditor/JSONArrayEditor.js.map +1 -1
  665. package/dist/components/JSONArrayEditor/JSONArrayEditorModal.js.map +1 -1
  666. package/dist/components/JSONArrayEditor/useParseCsv.js.map +1 -1
  667. package/dist/components/JsonLdScript.js.map +1 -1
  668. package/dist/components/JsonSchemaForm/JsonSchemaForm.js.map +1 -1
  669. package/dist/components/JsonSchemaForm/templates/ArrayFieldDescriptionTemplate.js.map +1 -1
  670. package/dist/components/JsonSchemaForm/templates/ArrayFieldItemButtonTemplate.js.map +1 -1
  671. package/dist/components/JsonSchemaForm/templates/ArrayFieldItemTemplate.js.map +1 -1
  672. package/dist/components/JsonSchemaForm/templates/ArrayFieldTemplate.js.map +1 -1
  673. package/dist/components/JsonSchemaForm/templates/ArrayFieldTitleTemplate.js.map +1 -1
  674. package/dist/components/JsonSchemaForm/templates/BaseInputTemplate.js.map +1 -1
  675. package/dist/components/JsonSchemaForm/templates/ButtonTemplate.js.map +1 -1
  676. package/dist/components/JsonSchemaForm/templates/DescriptionFieldTemplate.js.map +1 -1
  677. package/dist/components/JsonSchemaForm/templates/ErrorListTemplate.js.map +1 -1
  678. package/dist/components/JsonSchemaForm/templates/FieldDescriptionTable.js.map +1 -1
  679. package/dist/components/JsonSchemaForm/templates/FieldErrorTemplate.js.map +1 -1
  680. package/dist/components/JsonSchemaForm/templates/FieldTemplate.js.map +1 -1
  681. package/dist/components/JsonSchemaForm/templates/RJSFInputLabel.js.map +1 -1
  682. package/dist/components/JsonSchemaForm/widgets/BooleanWidget.js.map +1 -1
  683. package/dist/components/JsonSchemaForm/widgets/DateTimeWidget.js.map +1 -1
  684. package/dist/components/JsonSchemaForm/widgets/SelectWidget.js.map +1 -1
  685. package/dist/components/LoadingScreen/LoadingScreen.js.map +1 -1
  686. package/dist/components/MailchimpSubscribeSection/MailchimpSubscribeSection.js.map +1 -1
  687. package/dist/components/Markdown/GovernanceMarkdownGithub.js.map +1 -1
  688. package/dist/components/Markdown/MarkdownCollapse.js.map +1 -1
  689. package/dist/components/Markdown/MarkdownEditor.js.map +1 -1
  690. package/dist/components/Markdown/MarkdownGithub.js.map +1 -1
  691. package/dist/components/Markdown/MarkdownPopover.js.map +1 -1
  692. package/dist/components/Markdown/MarkdownSynapse.d.ts.map +1 -1
  693. package/dist/components/Markdown/MarkdownSynapse.js +75 -106
  694. package/dist/components/Markdown/MarkdownSynapse.js.map +1 -1
  695. package/dist/components/Markdown/MarkdownUtils.d.ts +14 -4
  696. package/dist/components/Markdown/MarkdownUtils.d.ts.map +1 -1
  697. package/dist/components/Markdown/MarkdownUtils.js +38 -37
  698. package/dist/components/Markdown/MarkdownUtils.js.map +1 -1
  699. package/dist/components/Markdown/MarkdownWidget.js.map +1 -1
  700. package/dist/components/Markdown/SynapseWikiContext.js.map +1 -1
  701. package/dist/components/Markdown/UserMentionModal.js.map +1 -1
  702. package/dist/components/Markdown/widget/Bookmarks.js.map +1 -1
  703. package/dist/components/Markdown/widget/MarkdownButton.js.map +1 -1
  704. package/dist/components/Markdown/widget/MarkdownEntityPreview.js.map +1 -1
  705. package/dist/components/Markdown/widget/MarkdownIDUReport.js.map +1 -1
  706. package/dist/components/Markdown/widget/MarkdownProvenanceGraph.js.map +1 -1
  707. package/dist/components/Markdown/widget/MarkdownSynapseImage.js.map +1 -1
  708. package/dist/components/Markdown/widget/MarkdownSynapsePlot.js.map +1 -1
  709. package/dist/components/Markdown/widget/MarkdownSynapseTable.js.map +1 -1
  710. package/dist/components/Markdown/widget/MarkdownTableOfContents.js.map +1 -1
  711. package/dist/components/Markdown/widget/MarkdownUserOrTeamBadge.js.map +1 -1
  712. package/dist/components/Markdown/widget/MarkdownVideo.js.map +1 -1
  713. package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js.map +1 -1
  714. package/dist/components/ModalDownload/ModalDownload.FormSchema.js.map +1 -1
  715. package/dist/components/ModalDownload/ModalDownload.js.map +1 -1
  716. package/dist/components/MuiContainer.js.map +1 -1
  717. package/dist/components/OAuthClientAclEditor/OAuthAclEditorModal.js.map +1 -1
  718. package/dist/components/OAuthClientAclEditor/OAuthClientAclEditor.js.map +1 -1
  719. package/dist/components/OAuthClientManagement/CreateOAuthClient.js.map +1 -1
  720. package/dist/components/OAuthClientManagement/OAuthManagement.js.map +1 -1
  721. package/dist/components/OrientationBanner/OrientationBanner.js.map +1 -1
  722. package/dist/components/PageProgress/PageProgress.js.map +1 -1
  723. package/dist/components/Plot/BarPlot.js.map +1 -1
  724. package/dist/components/Plot/DotPlot.js.map +1 -1
  725. package/dist/components/Plot/Plot.d.ts +12 -1
  726. package/dist/components/Plot/Plot.d.ts.map +1 -1
  727. package/dist/components/Plot/Plot.js +5 -1
  728. package/dist/components/Plot/Plot.js.map +1 -1
  729. package/dist/components/Plot/PlotPanelHeader.js.map +1 -1
  730. package/dist/components/Plot/SynapsePlot.js.map +1 -1
  731. package/dist/components/Plot/SynapseSankeyPlot.d.ts +12 -0
  732. package/dist/components/Plot/SynapseSankeyPlot.d.ts.map +1 -0
  733. package/dist/components/Plot/SynapseSankeyPlot.js +54 -0
  734. package/dist/components/Plot/SynapseSankeyPlot.js.map +1 -0
  735. package/dist/components/Plot/ThemesPlot.js.map +1 -1
  736. package/dist/components/Plot/UpsetPlot.js.map +1 -1
  737. package/dist/components/Plot/index.d.ts +3 -1
  738. package/dist/components/Plot/index.d.ts.map +1 -1
  739. package/dist/components/Plot/index.js +2 -1
  740. package/dist/components/Plot/safe-react-plotly-factory.js.map +1 -1
  741. package/dist/components/PortalAclEditor/PortalAclEditor.js.map +1 -1
  742. package/dist/components/PortalAclEditor/PortalAclEditorModal.js.map +1 -1
  743. package/dist/components/PortalFeatureHighlights/PortalFeatureHighlights.js.map +1 -1
  744. package/dist/components/PortalFeaturedPartners/PortalFeaturedPartners.js +4 -6
  745. package/dist/components/PortalFeaturedPartners/PortalFeaturedPartners.js.map +1 -1
  746. package/dist/components/PortalHomePageHeader/PortalHomePageHeader.js.map +1 -1
  747. package/dist/components/PortalList/CreatePortalModal.js.map +1 -1
  748. package/dist/components/PortalList/PortalCard.js.map +1 -1
  749. package/dist/components/PortalList/PortalList.js.map +1 -1
  750. package/dist/components/PortalSectionHeader/PortalSectionHeader.js.map +1 -1
  751. package/dist/components/ProgrammaticInstructionsModal/ProgrammaticInstructionsModal.js +69 -69
  752. package/dist/components/ProgrammaticInstructionsModal/ProgrammaticInstructionsModal.js.map +1 -1
  753. package/dist/components/ProgrammaticTableDownload/ProgrammaticTableDownload.js.map +1 -1
  754. package/dist/components/Programs/Programs.Desktop.js.map +1 -1
  755. package/dist/components/Programs/Programs.Mobile.js.map +1 -1
  756. package/dist/components/Programs/Programs.js.map +1 -1
  757. package/dist/components/ProjectStorage/ProjectDataAvailability.js.map +1 -1
  758. package/dist/components/ProvenanceGraph/ActivityNodeLabel.js.map +1 -1
  759. package/dist/components/ProvenanceGraph/EntityNodeLabel.js.map +1 -1
  760. package/dist/components/ProvenanceGraph/EntityPlaceholderNodeLabel.js.map +1 -1
  761. package/dist/components/ProvenanceGraph/ExpandGraphNodeLabel.js.map +1 -1
  762. package/dist/components/ProvenanceGraph/ExternalGraphNodeLabel.js.map +1 -1
  763. package/dist/components/ProvenanceGraph/ProvenanceEntityIcon.js.map +1 -1
  764. package/dist/components/ProvenanceGraph/ProvenanceExternalIcon.js.map +1 -1
  765. package/dist/components/ProvenanceGraph/ProvenanceGraph.js.map +1 -1
  766. package/dist/components/ProvenanceGraph/ProvenanceGraphUtils.js.map +1 -1
  767. package/dist/components/ProvenanceGraph/ProvenanceUtils.js +13 -13
  768. package/dist/components/ProvenanceGraph/ProvenanceUtils.js.map +1 -1
  769. package/dist/components/ProvenanceGraph/UndefinedNodeLabel.js.map +1 -1
  770. package/dist/components/QueryContext/QueryContext.js.map +1 -1
  771. package/dist/components/QueryCount/QueryCount.js.map +1 -1
  772. package/dist/components/QueryCountButton/QueryCountButton.js.map +1 -1
  773. package/dist/components/QuerySortSelector.js.map +1 -1
  774. package/dist/components/QueryVisualizationWrapper/NoContentPlaceholder.js.map +1 -1
  775. package/dist/components/QueryVisualizationWrapper/QueryVisualizationContext.js.map +1 -1
  776. package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.d.ts.map +1 -1
  777. package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.js +67 -65
  778. package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.js.map +1 -1
  779. package/dist/components/QueryWrapper/QueryWrapper.js +27 -27
  780. package/dist/components/QueryWrapper/QueryWrapper.js.map +1 -1
  781. package/dist/components/QueryWrapper/QueryWrapperLoadingScreen.js.map +1 -1
  782. package/dist/components/QueryWrapper/TableQueryUseQueryOptions.js.map +1 -1
  783. package/dist/components/QueryWrapper/TableRowSelectionState.js.map +1 -1
  784. package/dist/components/QueryWrapper/ViewMoreQueryResultsButton.js.map +1 -1
  785. package/dist/components/QueryWrapper/generateEncodedPathAndQueryForSelectedFacetURL.js.map +1 -1
  786. package/dist/components/QueryWrapper/useComputeRowSelectionPrimaryKey.js.map +1 -1
  787. package/dist/components/QueryWrapper/useGetAddToDownloadListRequestForCurrentQuery.js.map +1 -1
  788. package/dist/components/QueryWrapper/useGetQueryMetadata.js.map +1 -1
  789. package/dist/components/QueryWrapper/useHasFacetedSelectColumn.js.map +1 -1
  790. package/dist/components/QueryWrapper/useOnQueryDataChange.js.map +1 -1
  791. package/dist/components/QueryWrapperErrorBoundary.js.map +1 -1
  792. package/dist/components/QueryWrapperPlotNav/LastUpdatedOn.js.map +1 -1
  793. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts +1 -1
  794. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts.map +1 -1
  795. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js +1 -0
  796. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
  797. package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.js.map +1 -1
  798. package/dist/components/QueryWrapperPlotNav/RowSetView.js.map +1 -1
  799. package/dist/components/QueryWrapperPlotNav/UseRowSet.js.map +1 -1
  800. package/dist/components/RORInstitutionField/RORInstitutionField.js.map +1 -1
  801. package/dist/components/RecentPublicationsGrid/RecentPublicationsGrid.js +6 -8
  802. package/dist/components/RecentPublicationsGrid/RecentPublicationsGrid.js.map +1 -1
  803. package/dist/components/RegisterPageLogoutPrompt/RegisterPageLogoutPrompt.js.map +1 -1
  804. package/dist/components/ReleaseCard/ReleaseCard.js.map +1 -1
  805. package/dist/components/ReleaseCard/ReleaseCardLarge.js.map +1 -1
  806. package/dist/components/ReleaseCard/ReleaseCardMedium.js.map +1 -1
  807. package/dist/components/ReleaseCard/ReleaseCardUtils.js.map +1 -1
  808. package/dist/components/RenderIfInView/RenderIfInView.js.map +1 -1
  809. package/dist/components/ResizableContainer/ResizableContainer.js.map +1 -1
  810. package/dist/components/ResizableContainer/hooks/useResizable.js.map +1 -1
  811. package/dist/components/Resources/Resources.Desktop.js.map +1 -1
  812. package/dist/components/Resources/Resources.Mobile.js.map +1 -1
  813. package/dist/components/Resources/Resources.js +8 -11
  814. package/dist/components/Resources/Resources.js.map +1 -1
  815. package/dist/components/RowDataTable/RowDataTable.js.map +1 -1
  816. package/dist/components/RowDataTable/RowDataTableWithQuery.js.map +1 -1
  817. package/dist/components/RssFeedCards/RssFeedCards.js.map +1 -1
  818. package/dist/components/SageResourcesPopover/SageResourcesPopover.js.map +1 -1
  819. package/dist/components/SchemaDrivenAnnotationEditor/AnnotationEditorUtils.js.map +1 -1
  820. package/dist/components/SchemaDrivenAnnotationEditor/SchemaDrivenAnnotationEditor.js.map +1 -1
  821. package/dist/components/SchemaDrivenAnnotationEditor/field/AdditionalPropertiesSchemaField.js.map +1 -1
  822. package/dist/components/SchemaDrivenAnnotationEditor/field/SynapseAnnotationsRJSFObjectField.js.map +1 -1
  823. package/dist/components/SchemaDrivenAnnotationEditor/template/AdditionalPropertyContext.js.map +1 -1
  824. package/dist/components/SchemaDrivenAnnotationEditor/template/ObjectFieldTemplate.js.map +1 -1
  825. package/dist/components/SchemaDrivenAnnotationEditor/template/SynapseAnnotationsWrapIfAdditionalTemplate.js.map +1 -1
  826. package/dist/components/SchemaDrivenAnnotationEditor/widget/TextWidget.js.map +1 -1
  827. package/dist/components/SearchQueryWrapper/SearchQueryUseQueryOptions.js.map +1 -1
  828. package/dist/components/SearchQueryWrapper/SearchQueryWrapper.js.map +1 -1
  829. package/dist/components/SearchQueryWrapperPlotNav/SearchQueryWrapperPlotNav.d.ts +1 -1
  830. package/dist/components/SearchQueryWrapperPlotNav/SearchQueryWrapperPlotNav.d.ts.map +1 -1
  831. package/dist/components/SearchQueryWrapperPlotNav/SearchQueryWrapperPlotNav.js +1 -0
  832. package/dist/components/SearchQueryWrapperPlotNav/SearchQueryWrapperPlotNav.js.map +1 -1
  833. package/dist/components/SetAccessRequirementCommonFields/SetAccessRequirementCommonFields.js.map +1 -1
  834. package/dist/components/SetBasicAccessRequirementFields/AccessRequirementTextInstructions.js.map +1 -1
  835. package/dist/components/SetBasicAccessRequirementFields/AccessRequirementWikiInstructions.js.map +1 -1
  836. package/dist/components/SetBasicAccessRequirementFields/AccessorRequirements.js.map +1 -1
  837. package/dist/components/SetBasicAccessRequirementFields/GovernanceUtils.js.map +1 -1
  838. package/dist/components/SetBasicAccessRequirementFields/SetBasicAccessRequirementFields.js.map +1 -1
  839. package/dist/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.js.map +1 -1
  840. package/dist/components/ShareThisPage/ShareThisPage.js.map +1 -1
  841. package/dist/components/ShowMore/ShowMore.js.map +1 -1
  842. package/dist/components/SignInButton.js.map +1 -1
  843. package/dist/components/SignInRequiredModal/SignInRequiredModal.js.map +1 -1
  844. package/dist/components/Skeleton/SkeletonButton.js.map +1 -1
  845. package/dist/components/Skeleton/SkeletonInlineBlock.js.map +1 -1
  846. package/dist/components/Skeleton/SkeletonParagraph.js.map +1 -1
  847. package/dist/components/Skeleton/SkeletonTable.js.map +1 -1
  848. package/dist/components/SmartLink/SmartButton.js.map +1 -1
  849. package/dist/components/SmartLink/SmartLink.js.map +1 -1
  850. package/dist/components/SmartLink/useSmartLink.js.map +1 -1
  851. package/dist/components/SourceAppImage.js.map +1 -1
  852. package/dist/components/SpinnerButton/SpinnerButton.js.map +1 -1
  853. package/dist/components/SqlDefinedTableEditor/SqlDefinedTableEditor.js.map +1 -1
  854. package/dist/components/SqlDefinedTableEditor/SqlDefinedTableEditorModal.js.map +1 -1
  855. package/dist/components/StandaloneQueryWrapper/StandaloneQueryWrapper.d.ts +1 -1
  856. package/dist/components/StandaloneQueryWrapper/StandaloneQueryWrapper.d.ts.map +1 -1
  857. package/dist/components/StandaloneQueryWrapper/StandaloneQueryWrapper.js.map +1 -1
  858. package/dist/components/StatisticsPlot.js.map +1 -1
  859. package/dist/components/StepperDialog/StepperDialog.js.map +1 -1
  860. package/dist/components/StorybookComponentWrapper.js.map +1 -1
  861. package/dist/components/SubmissionViewScopeEditor/SubmissionViewScopeEditor.js.map +1 -1
  862. package/dist/components/SubmissionViewScopeEditor/SubmissionViewScopeEditorModal.js.map +1 -1
  863. package/dist/components/SubscriptionPage/ForumTopic.js.map +1 -1
  864. package/dist/components/SubscriptionPage/SubscriptionItem.js.map +1 -1
  865. package/dist/components/SubscriptionPage/SubscriptionPage.js.map +1 -1
  866. package/dist/components/SubscriptionPage/ThreadTopic.js.map +1 -1
  867. package/dist/components/SubscriptionPage/Topic.js.map +1 -1
  868. package/dist/components/SubsectionRowRenderer/SubsectionRowRenderer.js.map +1 -1
  869. package/dist/components/SustainabilityScorecard/Dial.js.map +1 -1
  870. package/dist/components/SustainabilityScorecard/DialLayout.js.map +1 -1
  871. package/dist/components/SustainabilityScorecard/SustainabilityScorecard.js.map +1 -1
  872. package/dist/components/SustainabilityScorecard/SustainabilityScorecardSummary.js.map +1 -1
  873. package/dist/components/SustainabilityScorecard/SustainabilityScorecardUtils.js.map +1 -1
  874. package/dist/components/SynapseChat/AccessLevelMenu.js.map +1 -1
  875. package/dist/components/SynapseChat/GridAgentChat.js.map +1 -1
  876. package/dist/components/SynapseChat/SynapseChat.js.map +1 -1
  877. package/dist/components/SynapseChat/SynapseChatDialog.js.map +1 -1
  878. package/dist/components/SynapseChat/SynapseChatInteraction.js.map +1 -1
  879. package/dist/components/SynapseChat/SynapseChatMessage.js.map +1 -1
  880. package/dist/components/SynapseChat/SynapsePortalChatDialog.js.map +1 -1
  881. package/dist/components/SynapseChat/extractMessageFromTraceEvent.js.map +1 -1
  882. package/dist/components/SynapseChat/useChatState.js.map +1 -1
  883. package/dist/components/SynapseFooter/SynapseFooter.js.map +1 -1
  884. package/dist/components/SynapseFooter/SynapseLinksColumn.js.map +1 -1
  885. package/dist/components/SynapseForm/DataDebug.js.map +1 -1
  886. package/dist/components/SynapseForm/Header.js.map +1 -1
  887. package/dist/components/SynapseForm/NavButtons.js.map +1 -1
  888. package/dist/components/SynapseForm/StepsSideNav.js.map +1 -1
  889. package/dist/components/SynapseForm/SummaryTable.js.map +1 -1
  890. package/dist/components/SynapseForm/SynapseForm.js.map +1 -1
  891. package/dist/components/SynapseForm/SynapseFormCheckboxWidget.js.map +1 -1
  892. package/dist/components/SynapseForm/SynapseFormCheckboxesWidget.js.map +1 -1
  893. package/dist/components/SynapseForm/SynapseFormRadioWidget.js.map +1 -1
  894. package/dist/components/SynapseForm/SynapseFormSubmissionGrid.js.map +1 -1
  895. package/dist/components/SynapseForm/SynapseFormUtils.js.map +1 -1
  896. package/dist/components/SynapseForm/SynapseFormWrapper.js.map +1 -1
  897. package/dist/components/SynapseForm/WarningDialog.js.map +1 -1
  898. package/dist/components/SynapseForm/types.js.map +1 -1
  899. package/dist/components/SynapseForm/useGetFormPropsFromSearchParams.js.map +1 -1
  900. package/dist/components/SynapseHomepageV2/FloatingBlobsBackground.js.map +1 -1
  901. package/dist/components/SynapseHomepageV2/HomepageStyles.js.map +1 -1
  902. package/dist/components/SynapseHomepageV2/SynapseByTheNumbers.js.map +1 -1
  903. package/dist/components/SynapseHomepageV2/SynapseByTheNumbersItem.js.map +1 -1
  904. package/dist/components/SynapseHomepageV2/SynapseFeatureItem.js.map +1 -1
  905. package/dist/components/SynapseHomepageV2/SynapseFeaturedDatasetItem.js.map +1 -1
  906. package/dist/components/SynapseHomepageV2/SynapseFeaturedDatasets.js.map +1 -1
  907. package/dist/components/SynapseHomepageV2/SynapseFeatures.js.map +1 -1
  908. package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.js +18 -21
  909. package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.js.map +1 -1
  910. package/dist/components/SynapseHomepageV2/SynapseHomepageNavBar.js.map +1 -1
  911. package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.js.map +1 -1
  912. package/dist/components/SynapseHomepageV2/SynapseHomepageV2.js.map +1 -1
  913. package/dist/components/SynapseHomepageV2/SynapseHotdrops.js.map +1 -1
  914. package/dist/components/SynapseHomepageV2/SynapseHotdropsItem.js.map +1 -1
  915. package/dist/components/SynapseHomepageV2/SynapseInAction.js.map +1 -1
  916. package/dist/components/SynapseHomepageV2/SynapseInActionItem.js.map +1 -1
  917. package/dist/components/SynapseHomepageV2/SynapsePartners.js.map +1 -1
  918. package/dist/components/SynapseHomepageV2/SynapsePlan.js.map +1 -1
  919. package/dist/components/SynapseHomepageV2/SynapsePlanContent.js.map +1 -1
  920. package/dist/components/SynapseHomepageV2/SynapsePlans.js.map +1 -1
  921. package/dist/components/SynapseHomepageV2/SynapsePlansPage.js.map +1 -1
  922. package/dist/components/SynapseHomepageV2/SynapseSearchChips.js.map +1 -1
  923. package/dist/components/SynapseHomepageV2/SynapseTrendingProjects.js.map +1 -1
  924. package/dist/components/SynapseHomepageV2/SynapseTrendingProjectsItem.js.map +1 -1
  925. package/dist/components/SynapseHomepageV2/WordPressNews.js.map +1 -1
  926. package/dist/components/SynapseHomepageV2/WordPressNewsItem.js.map +1 -1
  927. package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js +78 -78
  928. package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js.map +1 -1
  929. package/dist/components/SynapsePortalBanners/SynapsePortalBanners.js.map +1 -1
  930. package/dist/components/SynapseSearchPageResults/HasAccessChip.js.map +1 -1
  931. package/dist/components/SynapseSearchPageResults/HighlightedTypography.js.map +1 -1
  932. package/dist/components/SynapseSearchPageResults/SearchFacetPanel/SearchFacetPanel.js.map +1 -1
  933. package/dist/components/SynapseSearchPageResults/SearchFacetPanel/SearchFacetPanelUtils.js.map +1 -1
  934. package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js.map +1 -1
  935. package/dist/components/SynapseSearchPageResults/SynapseSearchPage.js.map +1 -1
  936. package/dist/components/SynapseSearchPageResults/SynapseSearchPageResults.js.map +1 -1
  937. package/dist/components/SynapseSearchPageResults/SynapseSearchPageRouter.js.map +1 -1
  938. package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js.map +1 -1
  939. package/dist/components/SynapseSearchPageResults/chipStyles.js.map +1 -1
  940. package/dist/components/SynapseTable/CustomControls/CustomControlButton.js.map +1 -1
  941. package/dist/components/SynapseTable/CustomControls/CustomControlPanel.js.map +1 -1
  942. package/dist/components/SynapseTable/CustomControls/CustomControls.js.map +1 -1
  943. package/dist/components/SynapseTable/EntityIDColumnCopyIcon.js.map +1 -1
  944. package/dist/components/SynapseTable/ExpandCollapseButton.js.map +1 -1
  945. package/dist/components/SynapseTable/ExpandableTableDataCell.js.map +1 -1
  946. package/dist/components/SynapseTable/NoContentAvailable.js.map +1 -1
  947. package/dist/components/SynapseTable/NoContentPlaceholderType.js.map +1 -1
  948. package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js +4 -4
  949. package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js.map +1 -1
  950. package/dist/components/SynapseTable/RowSelection/RowSelectionUI.js.map +1 -1
  951. package/dist/components/SynapseTable/SearchResultsNotFound.js.map +1 -1
  952. package/dist/components/SynapseTable/SearchV2.js.map +1 -1
  953. package/dist/components/SynapseTable/SqlEditor.js.map +1 -1
  954. package/dist/components/SynapseTable/SynapseTable.js.map +1 -1
  955. package/dist/components/SynapseTable/SynapseTableCell/EntityIdList.js.map +1 -1
  956. package/dist/components/SynapseTable/SynapseTableCell/EvaluationIdRenderer.js.map +1 -1
  957. package/dist/components/SynapseTable/SynapseTableCell/JSON/ComplexJSONRenderer.js.map +1 -1
  958. package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONArrayRenderer.js.map +1 -1
  959. package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONObjectRenderer.js.map +1 -1
  960. package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONPrimitiveRenderer.js.map +1 -1
  961. package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONRendererUtils.js.map +1 -1
  962. package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONTableCellRenderer.js.map +1 -1
  963. package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js.map +1 -1
  964. package/dist/components/SynapseTable/SynapseTableCell/UserIdList.js.map +1 -1
  965. package/dist/components/SynapseTable/SynapseTableConstants.js.map +1 -1
  966. package/dist/components/SynapseTable/SynapseTableContext.js.map +1 -1
  967. package/dist/components/SynapseTable/SynapseTableRenderers.js.map +1 -1
  968. package/dist/components/SynapseTable/SynapseTableUtils.js.map +1 -1
  969. package/dist/components/SynapseTable/TableIsEmpty.js.map +1 -1
  970. package/dist/components/SynapseTable/TablePagination.js.map +1 -1
  971. package/dist/components/SynapseTable/TopLevelControls/TopLevelControls.js.map +1 -1
  972. package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js.map +1 -1
  973. package/dist/components/SynapseTable/datasets/DatasetEditorCheckboxCell.js.map +1 -1
  974. package/dist/components/SynapseTable/datasets/DatasetEditorUtils.js.map +1 -1
  975. package/dist/components/SynapseTable/datasets/DatasetEditorVersionCell.js.map +1 -1
  976. package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js +131 -133
  977. package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js.map +1 -1
  978. package/dist/components/SynapseTable/datasets/EntityFetchErrorCell.js.map +1 -1
  979. package/dist/components/SynapseTable/export/ADDiscoveryPortalInstructions.js.map +1 -1
  980. package/dist/components/SynapseTable/export/ExportToAnalysisPlatformDialog.js +48 -51
  981. package/dist/components/SynapseTable/export/ExportToAnalysisPlatformDialog.js.map +1 -1
  982. package/dist/components/SynapseTable/export/ExternalAnalysisPlatformInstructions.js.map +1 -1
  983. package/dist/components/SynapseTable/export/ExternalAnalysisPlatformsConstants.js.map +1 -1
  984. package/dist/components/SynapseTable/export/ExternalPlatformActionsRequiredPrecheck.js.map +1 -1
  985. package/dist/components/SynapseTable/export/ExternalPlatformDisclaimer.js.map +1 -1
  986. package/dist/components/SynapseTable/table-top/ColumnSelection.js.map +1 -1
  987. package/dist/components/SynapseTable/table-top/DownloadLoginModal.js.map +1 -1
  988. package/dist/components/SynapseTable/table-top/DownloadOptions.js.map +1 -1
  989. package/dist/components/SynapseTable/usePrefetchTableData.js.map +1 -1
  990. package/dist/components/SynapseTable/useTableSort.js.map +1 -1
  991. package/dist/components/SystemUseNotification/SystemUseNotification.js.map +1 -1
  992. package/dist/components/TableColumnSchemaEditor/ColumnModelForm.js +12 -12
  993. package/dist/components/TableColumnSchemaEditor/ColumnModelForm.js.map +1 -1
  994. package/dist/components/TableColumnSchemaEditor/ColumnModelFormFields/DefaultValueField.js.map +1 -1
  995. package/dist/components/TableColumnSchemaEditor/ColumnModelFormFields/FieldWithRecommendedMinimum.js.map +1 -1
  996. package/dist/components/TableColumnSchemaEditor/ColumnModelFormFields/MultiValueField.js +4 -4
  997. package/dist/components/TableColumnSchemaEditor/ColumnModelFormFields/MultiValueField.js.map +1 -1
  998. package/dist/components/TableColumnSchemaEditor/ImportTableColumnsButton.js.map +1 -1
  999. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditor.js.map +1 -1
  1000. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorTestUtils.js.map +1 -1
  1001. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.js.map +1 -1
  1002. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js +32 -32
  1003. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js.map +1 -1
  1004. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaFormActions.js.map +1 -1
  1005. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaFormReducer.js.map +1 -1
  1006. package/dist/components/TableColumnSchemaEditor/Validators/BooleanSchema.js.map +1 -1
  1007. package/dist/components/TableColumnSchemaEditor/Validators/ColumnModelValidator.js.map +1 -1
  1008. package/dist/components/TableColumnSchemaEditor/Validators/DatetimeSchema.js.map +1 -1
  1009. package/dist/components/TableColumnSchemaEditor/Validators/DefaultValueValidator.js.map +1 -1
  1010. package/dist/components/TableColumnSchemaEditor/Validators/DoubleSchema.js.map +1 -1
  1011. package/dist/components/TableColumnSchemaEditor/Validators/EntityIdSchema.js.map +1 -1
  1012. package/dist/components/TableColumnSchemaEditor/Validators/EnumValuesValidator.js.map +1 -1
  1013. package/dist/components/TableColumnSchemaEditor/Validators/IntegerSchema.js.map +1 -1
  1014. package/dist/components/TableColumnSchemaEditor/Validators/OptionalStringSchema.js.map +1 -1
  1015. package/dist/components/TableColumnSchemaEditor/Validators/getZodSchemaForColumnType.js.map +1 -1
  1016. package/dist/components/TableFeedCards/TableFeedCards.js.map +1 -1
  1017. package/dist/components/TanStackTable/ColumnHeader.js.map +1 -1
  1018. package/dist/components/TanStackTable/ColumnHeaderEnumFilter.js.map +1 -1
  1019. package/dist/components/TanStackTable/StyledTanStackTable.js.map +1 -1
  1020. package/dist/components/TanStackTable/StyledVirtualTanStackTable.js.map +1 -1
  1021. package/dist/components/TanStackTable/TableBody.js.map +1 -1
  1022. package/dist/components/TanStackTable/TableCellRenderer.js.map +1 -1
  1023. package/dist/components/TanStackTable/TanStackTableUtils.js.map +1 -1
  1024. package/dist/components/TeamBadge.js.map +1 -1
  1025. package/dist/components/TeamSubjectsSelector/TeamBadgeOrError.js.map +1 -1
  1026. package/dist/components/TeamSubjectsSelector/TeamSubjectsSelector.js.map +1 -1
  1027. package/dist/components/TemplateComponent.js.map +1 -1
  1028. package/dist/components/TemporaryBanner/TemporaryBanner.js.map +1 -1
  1029. package/dist/components/TermsAndConditions/TermsAndConditions.js.map +1 -1
  1030. package/dist/components/TermsAndConditions/TermsAndConditionsItem.js.map +1 -1
  1031. package/dist/components/TextField/TextField.js.map +1 -1
  1032. package/dist/components/TextField/TextFieldWithWordLimit.js.map +1 -1
  1033. package/dist/components/TextToComponentCollapse.js.map +1 -1
  1034. package/dist/components/ThemeGallery/ThemeGallery.js.map +1 -1
  1035. package/dist/components/TimelinePlot/TimelineLegendItem.js.map +1 -1
  1036. package/dist/components/TimelinePlot/TimelinePhase.js.map +1 -1
  1037. package/dist/components/TimelinePlot/TimelinePlot.js.map +1 -1
  1038. package/dist/components/TimelinePlot/TimelinePlotSpeciesSelector.js.map +1 -1
  1039. package/dist/components/TimelinePlot/phasesQueryResponseData.js.map +1 -1
  1040. package/dist/components/ToastMessage/ToastMessage.js.map +1 -1
  1041. package/dist/components/TotalQueryResults.js.map +1 -1
  1042. package/dist/components/UserCard/Avatar.js.map +1 -1
  1043. package/dist/components/UserCard/UserBadge.js.map +1 -1
  1044. package/dist/components/UserCard/UserCard.js.map +1 -1
  1045. package/dist/components/UserCard/UserCardContextMenu.js.map +1 -1
  1046. package/dist/components/UserCard/UserCardLarge.js.map +1 -1
  1047. package/dist/components/UserCard/UserCardMedium.js.map +1 -1
  1048. package/dist/components/UserCardList/UserCardList.js.map +1 -1
  1049. package/dist/components/UserCardList/UserCardListGroups/UserCardListGroups.Desktop.js.map +1 -1
  1050. package/dist/components/UserCardList/UserCardListGroups/UserCardListGroups.Mobile.js.map +1 -1
  1051. package/dist/components/UserCardList/UserCardListGroups/UserCardListGroups.js.map +1 -1
  1052. package/dist/components/UserCardList/UserCardListRotate.js.map +1 -1
  1053. package/dist/components/UserOrTeamBadge/UserOrTeamBadge.js.map +1 -1
  1054. package/dist/components/UserOrTeamBadge/useUserOrTeam.js.map +1 -1
  1055. package/dist/components/UserProfileLinks/UserChallenges.js.map +1 -1
  1056. package/dist/components/UserProfileLinks/UserProfileLinks.js.map +1 -1
  1057. package/dist/components/UserProfileLinks/UserProjects.js.map +1 -1
  1058. package/dist/components/UserProfileLinks/UserTeams.js.map +1 -1
  1059. package/dist/components/UserSearchBox/UserSearchBox.js.map +1 -1
  1060. package/dist/components/Webhook/CreateWebhookModal.js.map +1 -1
  1061. package/dist/components/Webhook/WebhookDashboard.js.map +1 -1
  1062. package/dist/components/Webhook/WebhookVerificationDialog.js.map +1 -1
  1063. package/dist/components/WikiMarkdownEditor/WikiMarkdownEditor.js.map +1 -1
  1064. package/dist/components/WikiMarkdownEditorButton/WikiMarkdownEditorButton.js.map +1 -1
  1065. package/dist/components/WizardChoiceButton/WizardChoiceButton.js.map +1 -1
  1066. package/dist/components/WizardChoiceButton/WizardChoiceButtonDescription.js.map +1 -1
  1067. package/dist/components/WizardChoiceButton/WizardChoiceButtonGroup.js.map +1 -1
  1068. package/dist/components/WordPress/WordPressLatestPostChip.js.map +1 -1
  1069. package/dist/components/WordPress/useWordPressCategories.js.map +1 -1
  1070. package/dist/components/WordPress/useWordPressPosts.js.map +1 -1
  1071. package/dist/components/dataaccess/AccessApprovalsTable.js.map +1 -1
  1072. package/dist/components/dataaccess/AccessHistoryDashboard.js.map +1 -1
  1073. package/dist/components/dataaccess/AccessRequestSubmissionTable.js.map +1 -1
  1074. package/dist/components/dataaccess/AccessRequirementDashboard.js.map +1 -1
  1075. package/dist/components/dataaccess/AccessRequirementSearchBox/AccessRequirementSearchBox.js.map +1 -1
  1076. package/dist/components/dataaccess/AccessRequirementTable.js.map +1 -1
  1077. package/dist/components/dataaccess/AccessSubmissionDashboard.js.map +1 -1
  1078. package/dist/components/dataaccess/RejectDataAccessRequestModal.js.map +1 -1
  1079. package/dist/components/dataaccess/RejectProfileValidationRequestModal.js.map +1 -1
  1080. package/dist/components/dataaccess/ReviewerDashboard.js.map +1 -1
  1081. package/dist/components/dataaccess/SubmissionPage/ApproveSubmissionConfirmationModal.js.map +1 -1
  1082. package/dist/components/dataaccess/SubmissionPage/CancelDataAccessRequestConfirmationModal.js.map +1 -1
  1083. package/dist/components/dataaccess/SubmissionPage/SubmissionPage.js.map +1 -1
  1084. package/dist/components/dataaccess/UseAccessRequirementTable.js.map +1 -1
  1085. package/dist/components/dataaccess/UserAccessRequestHistory/SubmissionSortStateTranslator.js.map +1 -1
  1086. package/dist/components/dataaccess/UserAccessRequestHistory/UserAccessRequestHistoryPage.js.map +1 -1
  1087. package/dist/components/dataaccess/UserAccessRequestHistory/UserAccessRequestHistoryPlace.js.map +1 -1
  1088. package/dist/components/dataaccess/UserAccessRequestHistory/UserAccessRequestHistoryTable.js.map +1 -1
  1089. package/dist/components/doi/CreateOrUpdateDoiModal.js.map +1 -1
  1090. package/dist/components/doi/DoiFormSchemas.js.map +1 -1
  1091. package/dist/components/doi/PrivateEntityDoiWarning.js.map +1 -1
  1092. package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js.map +1 -1
  1093. package/dist/components/download_list/DownloadConfirmationUI.js +30 -32
  1094. package/dist/components/download_list/DownloadConfirmationUI.js.map +1 -1
  1095. package/dist/components/download_list/DownloadConfirmationUtils.js.map +1 -1
  1096. package/dist/components/download_list/DownloadDetails.js.map +1 -1
  1097. package/dist/components/download_list/index.js.map +1 -1
  1098. package/dist/components/entity/metadata/AnnotationsTable.js.map +1 -1
  1099. package/dist/components/entity/metadata/EntityAnnotationKey.js.map +1 -1
  1100. package/dist/components/entity/metadata/EntityModal.js.map +1 -1
  1101. package/dist/components/entity/metadata/MetadataTable.js.map +1 -1
  1102. package/dist/components/entity/page/CreatedByModifiedBy.js.map +1 -1
  1103. package/dist/components/entity/page/action_menu/EntityActionMenu.js.map +1 -1
  1104. package/dist/components/entity/page/breadcrumbs/EntityPageBreadcrumbs.js.map +1 -1
  1105. package/dist/components/entity/page/title_bar/CitationsDialog.js.map +1 -1
  1106. package/dist/components/entity/page/title_bar/EntityPageTitleBar.js.map +1 -1
  1107. package/dist/components/entity/page/title_bar/EntityTitleBarVersionInfo.js.map +1 -1
  1108. package/dist/components/entity/page/title_bar/TitleBarProperties.js.map +1 -1
  1109. package/dist/components/entity/page/title_bar/useDataCiteUsage.js.map +1 -1
  1110. package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js.map +1 -1
  1111. package/dist/components/entity/page/title_bar/useGetMentions.js.map +1 -1
  1112. package/dist/components/error/ErrorBanner.js.map +1 -1
  1113. package/dist/components/error/ErrorChip.js.map +1 -1
  1114. package/dist/components/error/ErrorPage.js +24 -24
  1115. package/dist/components/error/ErrorPage.js.map +1 -1
  1116. package/dist/components/error/RouteErrorBoundary.js.map +1 -1
  1117. package/dist/components/error/SendMessageToEntityOwnerDialog.js.map +1 -1
  1118. package/dist/components/error/SynapseObjectDOIInfo.js.map +1 -1
  1119. package/dist/components/favorites/FavoriteButton.js.map +1 -1
  1120. package/dist/components/favorites/FavoritesPage.js.map +1 -1
  1121. package/dist/components/file/upload/BasicFileHandleUpload.js.map +1 -1
  1122. package/dist/components/file/upload/MultiFileUploadProgress.js.map +1 -1
  1123. package/dist/components/file/upload/UploadFilePanel.js.map +1 -1
  1124. package/dist/components/form/RadioGroupWithOtherString.js.map +1 -1
  1125. package/dist/components/home_page/ExpandableContent.js.map +1 -1
  1126. package/dist/components/index.js +48 -47
  1127. package/dist/components/layout/InfiniteTableLayout.js.map +1 -1
  1128. package/dist/components/layout/SWCHeader.js.map +1 -1
  1129. package/dist/components/layout/SWCPageLayout.js.map +1 -1
  1130. package/dist/components/menu/ComplexMenu.js.map +1 -1
  1131. package/dist/components/menu/DropdownMenu.js.map +1 -1
  1132. package/dist/components/row_renderers/Dataset.js.map +1 -1
  1133. package/dist/components/row_renderers/Funder.js.map +1 -1
  1134. package/dist/components/row_renderers/ObservationCard.js.map +1 -1
  1135. package/dist/components/row_renderers/utils/CardFooter.js.map +1 -1
  1136. package/dist/components/row_renderers/utils/ChipContainer.js.map +1 -1
  1137. package/dist/components/styled/HoverPopover.js.map +1 -1
  1138. package/dist/components/styled/InlineBadge.js.map +1 -1
  1139. package/dist/components/styled/InputSizedButton.js.map +1 -1
  1140. package/dist/components/styled/LargeButton.js.map +1 -1
  1141. package/dist/components/styled/LeftRightPanel.js.map +1 -1
  1142. package/dist/components/styled/LightTooltip.js.map +1 -1
  1143. package/dist/components/styled/StyledFormControl.js.map +1 -1
  1144. package/dist/components/styled/StyledPopover.js.map +1 -1
  1145. package/dist/components/styled/StyledTableContainer.js.map +1 -1
  1146. package/dist/components/styled/WideButton.js.map +1 -1
  1147. package/dist/components/table/CsvPreview/CreateTableFromCsvDialog.d.ts +18 -0
  1148. package/dist/components/table/CsvPreview/CreateTableFromCsvDialog.d.ts.map +1 -0
  1149. package/dist/components/table/CsvPreview/CreateTableFromCsvDialog.js +113 -0
  1150. package/dist/components/table/CsvPreview/CreateTableFromCsvDialog.js.map +1 -0
  1151. package/dist/components/table/CsvPreview/CsvPreview.js.map +1 -1
  1152. package/dist/components/table/CsvPreview/CsvPreviewDialog.d.ts +5 -5
  1153. package/dist/components/table/CsvPreview/CsvPreviewDialog.d.ts.map +1 -1
  1154. package/dist/components/table/CsvPreview/CsvPreviewDialog.js +27 -76
  1155. package/dist/components/table/CsvPreview/CsvPreviewDialog.js.map +1 -1
  1156. package/dist/components/table/CsvPreview/CsvPreviewWithOptions.d.ts +19 -0
  1157. package/dist/components/table/CsvPreview/CsvPreviewWithOptions.d.ts.map +1 -0
  1158. package/dist/components/table/CsvPreview/CsvPreviewWithOptions.js +41 -0
  1159. package/dist/components/table/CsvPreview/CsvPreviewWithOptions.js.map +1 -0
  1160. package/dist/components/table/CsvPreview/CsvUploadPreviewContent.d.ts +12 -0
  1161. package/dist/components/table/CsvPreview/CsvUploadPreviewContent.d.ts.map +1 -0
  1162. package/dist/components/table/CsvPreview/CsvUploadPreviewContent.js +25 -0
  1163. package/dist/components/table/CsvPreview/CsvUploadPreviewContent.js.map +1 -0
  1164. package/dist/components/table/CsvPreview/UpdateTableWithCsvDialog.d.ts +18 -0
  1165. package/dist/components/table/CsvPreview/UpdateTableWithCsvDialog.d.ts.map +1 -0
  1166. package/dist/components/table/CsvPreview/UpdateTableWithCsvDialog.js +55 -0
  1167. package/dist/components/table/CsvPreview/UpdateTableWithCsvDialog.js.map +1 -0
  1168. package/dist/components/table/CsvPreview/useCreateTableFromCsv.d.ts +19 -0
  1169. package/dist/components/table/CsvPreview/useCreateTableFromCsv.d.ts.map +1 -0
  1170. package/dist/components/table/CsvPreview/useCreateTableFromCsv.js +35 -0
  1171. package/dist/components/table/CsvPreview/useCreateTableFromCsv.js.map +1 -0
  1172. package/dist/components/table/CsvPreview/useCsvUploadPreview.d.ts +22 -0
  1173. package/dist/components/table/CsvPreview/useCsvUploadPreview.d.ts.map +1 -0
  1174. package/dist/components/table/CsvPreview/useCsvUploadPreview.js +32 -0
  1175. package/dist/components/table/CsvPreview/useCsvUploadPreview.js.map +1 -0
  1176. package/dist/components/table/CsvPreview/useUploadCsvToExistingTable.d.ts +14 -0
  1177. package/dist/components/table/CsvPreview/useUploadCsvToExistingTable.d.ts.map +1 -0
  1178. package/dist/components/table/CsvPreview/useUploadCsvToExistingTable.js +23 -0
  1179. package/dist/components/table/CsvPreview/useUploadCsvToExistingTable.js.map +1 -0
  1180. package/dist/components/table/CsvTableDescriptorForm/CsvTableDescriptorForm.js.map +1 -1
  1181. package/dist/components/trash/TrashCanList.js.map +1 -1
  1182. package/dist/components/utils/Blocker.js.map +1 -1
  1183. package/dist/components/utils/ConditionalWrapper.js.map +1 -1
  1184. package/dist/components/utils/VisibilityObserver.js.map +1 -1
  1185. package/dist/components/widgets/ElementWithTooltip.js.map +1 -1
  1186. package/dist/components/widgets/EntityColumnImage.js.map +1 -1
  1187. package/dist/components/widgets/FileHandleLink.js.map +1 -1
  1188. package/dist/components/widgets/ImageFileHandle.js.map +1 -1
  1189. package/dist/components/widgets/LoginAwareButton.js.map +1 -1
  1190. package/dist/components/widgets/Range.js.map +1 -1
  1191. package/dist/components/widgets/RangeSlider/RangeSlider.js.map +1 -1
  1192. package/dist/components/widgets/SynapseImage.js.map +1 -1
  1193. package/dist/components/widgets/SynapseVideo.js.map +1 -1
  1194. package/dist/components/widgets/facet-nav/FacetNavPanel.js.map +1 -1
  1195. package/dist/components/widgets/facet-nav/FacetPlotLegendList.js.map +1 -1
  1196. package/dist/components/widgets/facet-nav/FacetPlotLegendTable.js.map +1 -1
  1197. package/dist/components/widgets/facet-nav/FacetPlotLegendUtils.js.map +1 -1
  1198. package/dist/components/widgets/facet-nav/PlotsContainer.js.map +1 -1
  1199. package/dist/components/widgets/facet-nav/PlotsContainerSkeleton.js.map +1 -1
  1200. package/dist/components/widgets/facet-nav/SelectionCriteriaPill.js.map +1 -1
  1201. package/dist/components/widgets/facet-nav/SelectionCriteriaPills.js.map +1 -1
  1202. package/dist/components/widgets/facet-nav/useFacetPlots.js.map +1 -1
  1203. package/dist/components/widgets/query-filter/CombinedRangeFacetFilter.js.map +1 -1
  1204. package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilter.js.map +1 -1
  1205. package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterDropdown.js.map +1 -1
  1206. package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterOption.js.map +1 -1
  1207. package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterSkeleton.js.map +1 -1
  1208. package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterUI.js.map +1 -1
  1209. package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterUtils.js.map +1 -1
  1210. package/dist/components/widgets/query-filter/FacetChip.js.map +1 -1
  1211. package/dist/components/widgets/query-filter/FacetFilterControls.js.map +1 -1
  1212. package/dist/components/widgets/query-filter/FacetFilterHeader.js.map +1 -1
  1213. package/dist/components/widgets/query-filter/FacetFilterSkeleton.js.map +1 -1
  1214. package/dist/components/widgets/query-filter/FacetFilterUtils.js.map +1 -1
  1215. package/dist/components/widgets/query-filter/JsonColumnFacetFilters.js.map +1 -1
  1216. package/dist/components/widgets/query-filter/RangeFacetFilter.js +3 -3
  1217. package/dist/components/widgets/query-filter/RangeFacetFilter.js.map +1 -1
  1218. package/dist/components/widgets/query-filter/RangeFacetFilterUI.js +41 -41
  1219. package/dist/components/widgets/query-filter/RangeFacetFilterUI.js.map +1 -1
  1220. package/dist/features/curator/GridPage/GridPage.js.map +1 -1
  1221. package/dist/features/curator/GridPage/components/GridPageRouter.js.map +1 -1
  1222. package/dist/features/curator/GridPage/components/GridPageTitle.js.map +1 -1
  1223. package/dist/features/curator/GridPage/components/UpdateGridPageSearchParamsForm.js.map +1 -1
  1224. package/dist/features/curator/dashboard/CuratorDashboard.js.map +1 -1
  1225. package/dist/features/curator/dashboard/components/CurationTaskCard.js.map +1 -1
  1226. package/dist/features/curator/dashboard/components/NextStepButton.js.map +1 -1
  1227. package/dist/features/curator/dashboard/components/UserOrTeamChip.js.map +1 -1
  1228. package/dist/features/entity/metadata-task/components/CreateOrUpdateCurationTaskDialog.d.ts +5 -0
  1229. package/dist/features/entity/metadata-task/components/CreateOrUpdateCurationTaskDialog.d.ts.map +1 -1
  1230. package/dist/features/entity/metadata-task/components/CreateOrUpdateCurationTaskDialog.js +227 -181
  1231. package/dist/features/entity/metadata-task/components/CreateOrUpdateCurationTaskDialog.js.map +1 -1
  1232. package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.d.ts.map +1 -1
  1233. package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.js +3 -0
  1234. package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.js.map +1 -1
  1235. package/dist/features/entity/metadata-task/components/MetadataTasksPage.d.ts.map +1 -1
  1236. package/dist/features/entity/metadata-task/components/MetadataTasksPage.js +37 -34
  1237. package/dist/features/entity/metadata-task/components/MetadataTasksPage.js.map +1 -1
  1238. package/dist/features/entity/metadata-task/components/MetadataTasksTableAssigneeCell.js.map +1 -1
  1239. package/dist/features/entity/metadata-task/hooks/useGetOrCreateGridSessionForSource.js.map +1 -1
  1240. package/dist/features/entity/metadata-task/hooks/useGridSessionForCurationTask.js.map +1 -1
  1241. package/dist/features/entity/metadata-task/hooks/useGridSessionForCurationTask_legacy.js.map +1 -1
  1242. package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.d.ts.map +1 -1
  1243. package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js +1 -1
  1244. package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js.map +1 -1
  1245. package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.js.map +1 -1
  1246. package/dist/features/entity/metadata-task/utils/constants.d.ts +11 -3
  1247. package/dist/features/entity/metadata-task/utils/constants.d.ts.map +1 -1
  1248. package/dist/features/entity/metadata-task/utils/constants.js +2 -2
  1249. package/dist/features/entity/metadata-task/utils/constants.js.map +1 -1
  1250. package/dist/features/entity/metadata-task/utils/getCreateGridRequestForMetadataTask.js.map +1 -1
  1251. package/dist/features/entity/metadata-task/utils/getGridSourceIdForTask.js.map +1 -1
  1252. package/dist/features/entity/metadata-task/utils/getLatestGridSessionForSource.js.map +1 -1
  1253. package/dist/features/entity/metadata-task/utils/taskHasAssignee.js.map +1 -1
  1254. package/dist/features/team/invitation/components/OpenInvitationsToUserCard.js.map +1 -1
  1255. package/dist/index.js +54 -53
  1256. package/dist/index.js.map +1 -1
  1257. package/dist/mocks/MockAccessApprovals.js.map +1 -1
  1258. package/dist/mocks/MockSynapseContext.js.map +1 -1
  1259. package/dist/mocks/accessRequirement/mockAccessRequirementAcls.js.map +1 -1
  1260. package/dist/mocks/accessRequirement/mockAccessRequirements.js.map +1 -1
  1261. package/dist/mocks/applicationSessionContext/MockApplicationSessionContext.js.map +1 -1
  1262. package/dist/mocks/challenge/mockChallenge.js.map +1 -1
  1263. package/dist/mocks/chat/mockChat.js.map +1 -1
  1264. package/dist/mocks/curation/mockCurationTask.js.map +1 -1
  1265. package/dist/mocks/dataaccess/MockDataAccessRequest.js.map +1 -1
  1266. package/dist/mocks/dataaccess/MockResearchProject.js.map +1 -1
  1267. package/dist/mocks/dataaccess/MockSubmission.js.map +1 -1
  1268. package/dist/mocks/dataaccess/mockAccessRequest.js.map +1 -1
  1269. package/dist/mocks/discussion/mock_discussion.js.map +1 -1
  1270. package/dist/mocks/doi/MockDoi.js.map +1 -1
  1271. package/dist/mocks/entity/index.js.map +1 -1
  1272. package/dist/mocks/entity/mockDataset.js.map +1 -1
  1273. package/dist/mocks/entity/mockDatasetCollection.js.map +1 -1
  1274. package/dist/mocks/entity/mockEntity.js.map +1 -1
  1275. package/dist/mocks/entity/mockEvaluationQueue.js.map +1 -1
  1276. package/dist/mocks/entity/mockFileEntity.js.map +1 -1
  1277. package/dist/mocks/entity/mockFileEntityACLVariants.js.map +1 -1
  1278. package/dist/mocks/entity/mockFileView.js.map +1 -1
  1279. package/dist/mocks/entity/mockGeneratedEntityData.js.map +1 -1
  1280. package/dist/mocks/entity/mockProject.js.map +1 -1
  1281. package/dist/mocks/entity/mockProjectView.js.map +1 -1
  1282. package/dist/mocks/entity/mockReleaseCardsTable.js.map +1 -1
  1283. package/dist/mocks/entity/mockRootEntity.js.map +1 -1
  1284. package/dist/mocks/entity/mockTableEntity.js.map +1 -1
  1285. package/dist/mocks/faker/fakerUtils.js.map +1 -1
  1286. package/dist/mocks/faker/generateDiscussion.js.map +1 -1
  1287. package/dist/mocks/faker/generateEvaluation.js.map +1 -1
  1288. package/dist/mocks/faker/generateFakeEntity.js.map +1 -1
  1289. package/dist/mocks/faker/generateSubscription.js.map +1 -1
  1290. package/dist/mocks/mockAnnotationColumns.js.map +1 -1
  1291. package/dist/mocks/mockCertificationQuiz.js.map +1 -1
  1292. package/dist/mocks/mockDataCatalogQuery.js.map +1 -1
  1293. package/dist/mocks/mockFileViewQuery.js.map +1 -1
  1294. package/dist/mocks/mockOAuthClientAcls.js.map +1 -1
  1295. package/dist/mocks/mockQueryResponseData.js.map +1 -1
  1296. package/dist/mocks/mockQueryResponseDataWithManyEnumFacets.js.map +1 -1
  1297. package/dist/mocks/mockSchema.js.map +1 -1
  1298. package/dist/mocks/mockSearchQueryData.js.map +1 -1
  1299. package/dist/mocks/mockShortIo.js.map +1 -1
  1300. package/dist/mocks/mockSourceAppConfigQuery.js.map +1 -1
  1301. package/dist/mocks/mockSubscription.js.map +1 -1
  1302. package/dist/mocks/mockWiki.js.map +1 -1
  1303. package/dist/mocks/mockWikiPageKey.js.map +1 -1
  1304. package/dist/mocks/mock_drug_tool_data.js.map +1 -1
  1305. package/dist/mocks/mock_file_handle.js.map +1 -1
  1306. package/dist/mocks/mock_file_statistics.js.map +1 -1
  1307. package/dist/mocks/mock_has_access_data.js.map +1 -1
  1308. package/dist/mocks/mock_upload_destination.js.map +1 -1
  1309. package/dist/mocks/msw/handlers/accessRequirementAclHandlers.js.map +1 -1
  1310. package/dist/mocks/msw/handlers/accessRequirementHandlers.js.map +1 -1
  1311. package/dist/mocks/msw/handlers/asyncJobHandlers.js.map +1 -1
  1312. package/dist/mocks/msw/handlers/authHandlers.js.map +1 -1
  1313. package/dist/mocks/msw/handlers/challengeHandlers.js.map +1 -1
  1314. package/dist/mocks/msw/handlers/changePasswordHandlers.js.map +1 -1
  1315. package/dist/mocks/msw/handlers/chatHandlers.js.map +1 -1
  1316. package/dist/mocks/msw/handlers/dataAccessRequestHandlers.js.map +1 -1
  1317. package/dist/mocks/msw/handlers/dataciteHandlers.js.map +1 -1
  1318. package/dist/mocks/msw/handlers/discussionHandlers.js.map +1 -1
  1319. package/dist/mocks/msw/handlers/doiHandlers.js.map +1 -1
  1320. package/dist/mocks/msw/handlers/entityHandlers.js.map +1 -1
  1321. package/dist/mocks/msw/handlers/evaluationHandlers.js.map +1 -1
  1322. package/dist/mocks/msw/handlers/featureFlagHandlers.js.map +1 -1
  1323. package/dist/mocks/msw/handlers/fileHandlers.js.map +1 -1
  1324. package/dist/mocks/msw/handlers/gridHandlers.js.map +1 -1
  1325. package/dist/mocks/msw/handlers/messageHandlers.js.map +1 -1
  1326. package/dist/mocks/msw/handlers/oauthClientAclHandlers.js.map +1 -1
  1327. package/dist/mocks/msw/handlers/personalAccessTokenHandlers.js.map +1 -1
  1328. package/dist/mocks/msw/handlers/projectStorageHandlers.js.map +1 -1
  1329. package/dist/mocks/msw/handlers/realmHandlers.js.map +1 -1
  1330. package/dist/mocks/msw/handlers/researchProjectHandlers.js.map +1 -1
  1331. package/dist/mocks/msw/handlers/resetTwoFactorAuthHandlers.js.map +1 -1
  1332. package/dist/mocks/msw/handlers/schemaHandlers.js.map +1 -1
  1333. package/dist/mocks/msw/handlers/searchQueryHandlers.js.map +1 -1
  1334. package/dist/mocks/msw/handlers/shortIoHandlers.js.map +1 -1
  1335. package/dist/mocks/msw/handlers/subscriptionHandlers.js.map +1 -1
  1336. package/dist/mocks/msw/handlers/tableQueryHandlers.js.map +1 -1
  1337. package/dist/mocks/msw/handlers/tableQueryService.js.map +1 -1
  1338. package/dist/mocks/msw/handlers/teamHandlers.js.map +1 -1
  1339. package/dist/mocks/msw/handlers/termsOfServiceHandlers.js.map +1 -1
  1340. package/dist/mocks/msw/handlers/userProfileHandlers.js.map +1 -1
  1341. package/dist/mocks/msw/handlers/webhookHandlers.js.map +1 -1
  1342. package/dist/mocks/msw/handlers/wikiHandlers.js.map +1 -1
  1343. package/dist/mocks/msw/handlers.js.map +1 -1
  1344. package/dist/mocks/msw/server.d.ts +1 -1
  1345. package/dist/mocks/msw/server.d.ts.map +1 -1
  1346. package/dist/mocks/msw/server.js.map +1 -1
  1347. package/dist/mocks/msw/util/BasicMockedCrudService.js.map +1 -1
  1348. package/dist/mocks/oauth/MockClient.js.map +1 -1
  1349. package/dist/mocks/personalAccessToken/mockPersonalAccessToken.js.map +1 -1
  1350. package/dist/mocks/projectStorage/mockProjectStorageLimits.js.map +1 -1
  1351. package/dist/mocks/provenance/mockActivity.js.map +1 -1
  1352. package/dist/mocks/query/defaultFileViewColumnModels.js.map +1 -1
  1353. package/dist/mocks/query/mockFeaturedDataTabsQueryData.js.map +1 -1
  1354. package/dist/mocks/query/mockHomepageQueryResultData.js.map +1 -1
  1355. package/dist/mocks/query/mockProjectViewQueryResults.js.map +1 -1
  1356. package/dist/mocks/query/mockRejectionReasonsTableQueryResultBundle.js.map +1 -1
  1357. package/dist/mocks/query/mockReleaseCardsTableQueryResultBundle.js.map +1 -1
  1358. package/dist/mocks/query/mockUserCardTableQueryResultBundle.js.map +1 -1
  1359. package/dist/mocks/query/mock_query_data.js.map +1 -1
  1360. package/dist/mocks/query/syn16787123.js.map +1 -1
  1361. package/dist/mocks/query/syn17328596.js.map +1 -1
  1362. package/dist/mocks/query/syn51735464.js.map +1 -1
  1363. package/dist/mocks/query/syn51735464GroupBySpecies.js.map +1 -1
  1364. package/dist/mocks/realm/mockRealmPrincipal.js.map +1 -1
  1365. package/dist/mocks/team/mockTeam.js.map +1 -1
  1366. package/dist/mocks/termsOfService/mockTermsOfService.js.map +1 -1
  1367. package/dist/mocks/user/mock_user_profile.js.map +1 -1
  1368. package/dist/mocks/usergroup/mockUserGroup.js.map +1 -1
  1369. package/dist/ror-client/index.js.map +1 -1
  1370. package/dist/stories/ColorPaletteInspector.js.map +1 -1
  1371. package/dist/stories/ToastDemo.js.map +1 -1
  1372. package/dist/stories/stubs/Alert/MuiAlert.js.map +1 -1
  1373. package/dist/stories/stubs/Button/MuiButton.js.map +1 -1
  1374. package/dist/stories/stubs/Dialog/MuiDialog.js.map +1 -1
  1375. package/dist/stories/stubs/TextField/MuiTextField.js.map +1 -1
  1376. package/dist/stories/stubs/Tooltip/MuiTooltip.js.map +1 -1
  1377. package/dist/synapse-client/HttpClient.js.map +1 -1
  1378. package/dist/synapse-client/SynapseClient.d.ts.map +1 -1
  1379. package/dist/synapse-client/SynapseClient.js +61 -69
  1380. package/dist/synapse-client/SynapseClient.js.map +1 -1
  1381. package/dist/synapse-client/SynapseClientUtils.js.map +1 -1
  1382. package/dist/synapse-queries/InfiniteQueryUtils.js.map +1 -1
  1383. package/dist/synapse-queries/KeyFactory.js.map +1 -1
  1384. package/dist/synapse-queries/QueryFilterUtils.js.map +1 -1
  1385. package/dist/synapse-queries/QueryMatching.test-utils.js.map +1 -1
  1386. package/dist/synapse-queries/asynchronous/usePollAsynchronousJob.js.map +1 -1
  1387. package/dist/synapse-queries/auth/useChangePassword.js.map +1 -1
  1388. package/dist/synapse-queries/auth/useOIDC.js.map +1 -1
  1389. package/dist/synapse-queries/auth/useResetPassword.js.map +1 -1
  1390. package/dist/synapse-queries/auth/useTwoFactorEnrollment.js.map +1 -1
  1391. package/dist/synapse-queries/challenge/useChallenge.js.map +1 -1
  1392. package/dist/synapse-queries/chat/useChat.js.map +1 -1
  1393. package/dist/synapse-queries/croissant/useGetCroissantUrl.js.map +1 -1
  1394. package/dist/synapse-queries/curation/task/useCurationTask.d.ts +1 -0
  1395. package/dist/synapse-queries/curation/task/useCurationTask.d.ts.map +1 -1
  1396. package/dist/synapse-queries/curation/task/useCurationTask.js +12 -2
  1397. package/dist/synapse-queries/curation/task/useCurationTask.js.map +1 -1
  1398. package/dist/synapse-queries/dataaccess/useAccessApprovals.js.map +1 -1
  1399. package/dist/synapse-queries/dataaccess/useAccessRequirements.js.map +1 -1
  1400. package/dist/synapse-queries/dataaccess/useDataAccessSubmission.js.map +1 -1
  1401. package/dist/synapse-queries/dataaccess/useGetApprovedSubmissionInfo.js.map +1 -1
  1402. package/dist/synapse-queries/dataaccess/useRestrictionInformation.js.map +1 -1
  1403. package/dist/synapse-queries/docker/useGetDockerTag.js.map +1 -1
  1404. package/dist/synapse-queries/doi/useDOI.js.map +1 -1
  1405. package/dist/synapse-queries/download/useDownloadList.js.map +1 -1
  1406. package/dist/synapse-queries/entity/useActionsRequiredForTableQuery.js.map +1 -1
  1407. package/dist/synapse-queries/entity/useEntity.js.map +1 -1
  1408. package/dist/synapse-queries/entity/useEntityBoundSchema.js.map +1 -1
  1409. package/dist/synapse-queries/entity/useEntityBundle.js.map +1 -1
  1410. package/dist/synapse-queries/entity/useExportTableQueryToAnalysisPlatform.js.map +1 -1
  1411. package/dist/synapse-queries/entity/useExportToADWorkbench.js.map +1 -1
  1412. package/dist/synapse-queries/entity/useExportToCavatica.js.map +1 -1
  1413. package/dist/synapse-queries/entity/useExportToPluto.js.map +1 -1
  1414. package/dist/synapse-queries/entity/useExportToTerra.js.map +1 -1
  1415. package/dist/synapse-queries/entity/useGetEntityActionsRequired.js.map +1 -1
  1416. package/dist/synapse-queries/entity/useGetEntityChallenge.js.map +1 -1
  1417. package/dist/synapse-queries/entity/useGetEntityChildren.js.map +1 -1
  1418. package/dist/synapse-queries/entity/useGetEntityForum.js.map +1 -1
  1419. package/dist/synapse-queries/entity/useGetEntityHeaders.js.map +1 -1
  1420. package/dist/synapse-queries/entity/useGetQueryResultBundle.js.map +1 -1
  1421. package/dist/synapse-queries/entity/useProjectStorage.js.map +1 -1
  1422. package/dist/synapse-queries/entity/useSchema.js.map +1 -1
  1423. package/dist/synapse-queries/evaluation/useEvaluation.js.map +1 -1
  1424. package/dist/synapse-queries/featureflags/useGetFeatureFlag.js.map +1 -1
  1425. package/dist/synapse-queries/file/UploadToS3.js.map +1 -1
  1426. package/dist/synapse-queries/file/useDirectUploadToS3.js.map +1 -1
  1427. package/dist/synapse-queries/file/useFileHandle.js.map +1 -1
  1428. package/dist/synapse-queries/file/useFiles.js.map +1 -1
  1429. package/dist/synapse-queries/file/useSynapseMultipartUpload.js.map +1 -1
  1430. package/dist/synapse-queries/file/useUploadDestination.js.map +1 -1
  1431. package/dist/synapse-queries/forum/useForum.js.map +1 -1
  1432. package/dist/synapse-queries/forum/useReply.js.map +1 -1
  1433. package/dist/synapse-queries/forum/useThread.js.map +1 -1
  1434. package/dist/synapse-queries/github/useGithub.js.map +1 -1
  1435. package/dist/synapse-queries/grid/useEstablishWebsocketConnection.js.map +1 -1
  1436. package/dist/synapse-queries/grid/useExportGrid.js.map +1 -1
  1437. package/dist/synapse-queries/grid/useGridPresignedUrl.js.map +1 -1
  1438. package/dist/synapse-queries/grid/useGridSession.js.map +1 -1
  1439. package/dist/synapse-queries/grid/useImportCsvIntoGrid.js.map +1 -1
  1440. package/dist/synapse-queries/message/useMessage.js.map +1 -1
  1441. package/dist/synapse-queries/oauth/useOAuthClient.js.map +1 -1
  1442. package/dist/synapse-queries/portal/useListPortals.js.map +1 -1
  1443. package/dist/synapse-queries/portal/usePortal.js.map +1 -1
  1444. package/dist/synapse-queries/provenance/useGetActivityForEntity.js.map +1 -1
  1445. package/dist/synapse-queries/realm/useRealmPrincipals.js.map +1 -1
  1446. package/dist/synapse-queries/ror/index.js.map +1 -1
  1447. package/dist/synapse-queries/search/useSearch.js.map +1 -1
  1448. package/dist/synapse-queries/search/useSuggestion.js.map +1 -1
  1449. package/dist/synapse-queries/subscription/useSubscription.js.map +1 -1
  1450. package/dist/synapse-queries/table/useColumnModel.js.map +1 -1
  1451. package/dist/synapse-queries/table/useDefiningSql.js.map +1 -1
  1452. package/dist/synapse-queries/table/useDownloadTable.js.map +1 -1
  1453. package/dist/synapse-queries/table/useGetCsvPreview.js.map +1 -1
  1454. package/dist/synapse-queries/table/useTableUpdateTransaction.js.map +1 -1
  1455. package/dist/synapse-queries/team/useTeam.js.map +1 -1
  1456. package/dist/synapse-queries/team/useTeamList.js.map +1 -1
  1457. package/dist/synapse-queries/team/useTeamMembers.js.map +1 -1
  1458. package/dist/synapse-queries/termsOfService/useTermsOfService.js.map +1 -1
  1459. package/dist/synapse-queries/trash/useTrashCan.js.map +1 -1
  1460. package/dist/synapse-queries/user/useCertificationQuiz.js.map +1 -1
  1461. package/dist/synapse-queries/user/useFavorites.js.map +1 -1
  1462. package/dist/synapse-queries/user/useGetUserChallenges.js.map +1 -1
  1463. package/dist/synapse-queries/user/useGetUserProjects.js.map +1 -1
  1464. package/dist/synapse-queries/user/useGetUserTeams.js.map +1 -1
  1465. package/dist/synapse-queries/user/usePersonalAccessToken.js.map +1 -1
  1466. package/dist/synapse-queries/user/useProjects.js.map +1 -1
  1467. package/dist/synapse-queries/user/useRevokeCertification.js.map +1 -1
  1468. package/dist/synapse-queries/user/useUserBundle.js.map +1 -1
  1469. package/dist/synapse-queries/user/useUserGroupHeader.js.map +1 -1
  1470. package/dist/synapse-queries/verificationSubmission/useVerificationSubmission.js.map +1 -1
  1471. package/dist/synapse-queries/webhook/useWebhook.js.map +1 -1
  1472. package/dist/synapse-queries/wiki/useWiki.js.map +1 -1
  1473. package/dist/testutils/ComponentToBePassedPropsCustomMatcher.js.map +1 -1
  1474. package/dist/testutils/IsEditingStoreTestUtils.js +17 -0
  1475. package/dist/testutils/IsEditingStoreTestUtils.js.map +1 -0
  1476. package/dist/testutils/LocationTracker.js.map +1 -1
  1477. package/dist/testutils/MarkdownSynapseUtils.js.map +1 -1
  1478. package/dist/testutils/ReactQueryMockUtils.js.map +1 -1
  1479. package/dist/testutils/TestingLibraryUtils.js +18 -16
  1480. package/dist/testutils/TestingLibraryUtils.js.map +1 -1
  1481. package/dist/testutils/muiDatePickerMock.js.map +1 -1
  1482. package/dist/testutils/vitest.setup.js.map +1 -1
  1483. package/dist/theme/DefaultTheme.js.map +1 -1
  1484. package/dist/theme/ThemeProvider.js.map +1 -1
  1485. package/dist/theme/mergeTheme.js.map +1 -1
  1486. package/dist/theme/palette/Palettes.js.map +1 -1
  1487. package/dist/theme/spreadSx.js.map +1 -1
  1488. package/dist/theme/typography/Link.js.map +1 -1
  1489. package/dist/theme/typography/Typography.js.map +1 -1
  1490. package/dist/tsconfig.build.tsbuildinfo +1 -1
  1491. package/dist/utils/APIConstants.js.map +1 -1
  1492. package/dist/utils/AppUtils/AppUtils.d.ts.map +1 -1
  1493. package/dist/utils/AppUtils/AppUtils.js +11 -11
  1494. package/dist/utils/AppUtils/AppUtils.js.map +1 -1
  1495. package/dist/utils/AppUtils/session/ApplicationSessionContext.js.map +1 -1
  1496. package/dist/utils/AppUtils/session/ApplicationSessionManager.js.map +1 -1
  1497. package/dist/utils/AppUtils/session/AuthenticationGuard.js.map +1 -1
  1498. package/dist/utils/AppUtils/session/SessionInitializedGuard.js.map +1 -1
  1499. package/dist/utils/AppUtils/session/SynapseSessionManager.js.map +1 -1
  1500. package/dist/utils/AppUtils/session/useSessionManager.js.map +1 -1
  1501. package/dist/utils/ContentTypeUtils.js.map +1 -1
  1502. package/dist/utils/OrientationBannerConstants.js.map +1 -1
  1503. package/dist/utils/PermissionLevelToAccessType.js.map +1 -1
  1504. package/dist/utils/SynapseConstants.js.map +1 -1
  1505. package/dist/utils/analytics/sendAnalyticsEvent.js.map +1 -1
  1506. package/dist/utils/analytics/sendSearchEvent.js.map +1 -1
  1507. package/dist/utils/analytics/useGoogleAnalytics.js.map +1 -1
  1508. package/dist/utils/appendFinalQueryParamKey.js.map +1 -1
  1509. package/dist/utils/challenge/evaluation/EvaluationUtils.js.map +1 -1
  1510. package/dist/utils/context/AridhiaContext.js.map +1 -1
  1511. package/dist/utils/context/DocumentMetadataContext.js.map +1 -1
  1512. package/dist/utils/context/FullContextProvider.js.map +1 -1
  1513. package/dist/utils/context/GlobalIsEditingContext.js.map +1 -1
  1514. package/dist/utils/context/SynapseContext.js.map +1 -1
  1515. package/dist/utils/featureflag/FeatureFlags.d.ts +2 -1
  1516. package/dist/utils/featureflag/FeatureFlags.d.ts.map +1 -1
  1517. package/dist/utils/featureflag/FeatureFlags.js +1 -1
  1518. package/dist/utils/featureflag/FeatureFlags.js.map +1 -1
  1519. package/dist/utils/functions/AccessControlListUtils.js.map +1 -1
  1520. package/dist/utils/functions/ArrayUtils.js.map +1 -1
  1521. package/dist/utils/functions/DateFormatter.js.map +1 -1
  1522. package/dist/utils/functions/DateTimeUtils.js.map +1 -1
  1523. package/dist/utils/functions/EntityTypeUtils.js.map +1 -1
  1524. package/dist/utils/functions/FileHandleUtils.js.map +1 -1
  1525. package/dist/utils/functions/GridApiUtils.js.map +1 -1
  1526. package/dist/utils/functions/IsEqualTreatUndefinedAsMissing.js.map +1 -1
  1527. package/dist/utils/functions/IsExternalLink.js.map +1 -1
  1528. package/dist/utils/functions/ObjectUtils.js.map +1 -1
  1529. package/dist/utils/functions/QueryFilterUtils.js.map +1 -1
  1530. package/dist/utils/functions/RealmUtils.js.map +1 -1
  1531. package/dist/utils/functions/RegularExpressions.js.map +1 -1
  1532. package/dist/utils/functions/ResolveLinkEntity.js.map +1 -1
  1533. package/dist/utils/functions/SanitizeHtmlUtils.js.map +1 -1
  1534. package/dist/utils/functions/SanitizeHtmlUtils.test-utils.js.map +1 -1
  1535. package/dist/utils/functions/SqlFunctions.js.map +1 -1
  1536. package/dist/utils/functions/StringUtils.js.map +1 -1
  1537. package/dist/utils/functions/TableColumnSchemaUtils.js.map +1 -1
  1538. package/dist/utils/functions/calculateFriendlyFileSize.js.map +1 -1
  1539. package/dist/utils/functions/colorPalette.js.map +1 -1
  1540. package/dist/utils/functions/deepLinkingUtils.js.map +1 -1
  1541. package/dist/utils/functions/dispatchDownloadListChangeEvent.js.map +1 -1
  1542. package/dist/utils/functions/generateCsrfToken.js.map +1 -1
  1543. package/dist/utils/functions/getDataFromFromStorage.js.map +1 -1
  1544. package/dist/utils/functions/getEndpoint.js +3 -3
  1545. package/dist/utils/functions/getEndpoint.js.map +1 -1
  1546. package/dist/utils/functions/getPrincipalDisplayName.js.map +1 -1
  1547. package/dist/utils/functions/getSynapseEntityUrl.js.map +1 -1
  1548. package/dist/utils/functions/getSynapseWebClientLink.js.map +1 -1
  1549. package/dist/utils/functions/getUserData.js.map +1 -1
  1550. package/dist/utils/functions/queryUtils.js.map +1 -1
  1551. package/dist/utils/functions/testDownloadSpeed.js.map +1 -1
  1552. package/dist/utils/functions/unCamelCase.js.map +1 -1
  1553. package/dist/utils/hooks/useConfirmItems.js.map +1 -1
  1554. package/dist/utils/hooks/useCookiePreferences.d.ts.map +1 -1
  1555. package/dist/utils/hooks/useCookiePreferences.js +24 -23
  1556. package/dist/utils/hooks/useCookiePreferences.js.map +1 -1
  1557. package/dist/utils/hooks/useCreateShortUrl.js.map +1 -1
  1558. package/dist/utils/hooks/useDebouncedEffect.js.map +1 -1
  1559. package/dist/utils/hooks/useDetectSSOCode.js.map +1 -1
  1560. package/dist/utils/hooks/useDirectDownloadHandler.js.map +1 -1
  1561. package/dist/utils/hooks/useGetEntityMetadata.js.map +1 -1
  1562. package/dist/utils/hooks/useGetGoalData.js +2 -4
  1563. package/dist/utils/hooks/useGetGoalData.js.map +1 -1
  1564. package/dist/utils/hooks/useGetInfoFromIds.js.map +1 -1
  1565. package/dist/utils/hooks/useGetIsAllSelectedInfiniteList.js.map +1 -1
  1566. package/dist/utils/hooks/useImageUrlUtils.js.map +1 -1
  1567. package/dist/utils/hooks/useImmutableTableQuery/TableQueryReducerActions.js.map +1 -1
  1568. package/dist/utils/hooks/useImmutableTableQuery/useImmutableTableQuery.js.map +1 -1
  1569. package/dist/utils/hooks/useImmutableTableQuery/useTableQueryReducer.js.map +1 -1
  1570. package/dist/utils/hooks/useIsBot.js.map +1 -1
  1571. package/dist/utils/hooks/useJsonLdScriptElement.js.map +1 -1
  1572. package/dist/utils/hooks/useListState.js.map +1 -1
  1573. package/dist/utils/hooks/useLogin.js.map +1 -1
  1574. package/dist/utils/hooks/useMediaPrintOnly.js.map +1 -1
  1575. package/dist/utils/hooks/useMutuallyExclusiveState.js.map +1 -1
  1576. package/dist/utils/hooks/useNativeSearchParams.js.map +1 -1
  1577. package/dist/utils/hooks/useOneSageURL.js.map +1 -1
  1578. package/dist/utils/hooks/useOverlay.js.map +1 -1
  1579. package/dist/utils/hooks/usePreFetchResource.js.map +1 -1
  1580. package/dist/utils/hooks/useQuerySearchParam.js.map +1 -1
  1581. package/dist/utils/hooks/useScrollFadeTransition.js.map +1 -1
  1582. package/dist/utils/hooks/useSet.js.map +1 -1
  1583. package/dist/utils/hooks/useShowDesktop.js.map +1 -1
  1584. package/dist/utils/hooks/useSourceAppConfigs.js.map +1 -1
  1585. package/dist/utils/hooks/useTableImageUrl.js.map +1 -1
  1586. package/dist/utils/hooks/useTraceUpdate.js.map +1 -1
  1587. package/dist/utils/hooks/useTrackTransientListItems.js.map +1 -1
  1588. package/dist/utils/hooks/useUploadFileEntity/getActiveUploadCount.js.map +1 -1
  1589. package/dist/utils/hooks/useUploadFileEntity/getFileEntityIdWithSameName.js.map +1 -1
  1590. package/dist/utils/hooks/useUploadFileEntity/useCreateFolderPath.js.map +1 -1
  1591. package/dist/utils/hooks/useUploadFileEntity/useCreatePathsAndGetParentId.js.map +1 -1
  1592. package/dist/utils/hooks/useUploadFileEntity/useLinkFileEntityToURL.js.map +1 -1
  1593. package/dist/utils/hooks/useUploadFileEntity/usePrepareFileEntityUpload.js.map +1 -1
  1594. package/dist/utils/hooks/useUploadFileEntity/useTrackFileUploads.js.map +1 -1
  1595. package/dist/utils/hooks/useUploadFileEntity/useUploadFileEntities.js.map +1 -1
  1596. package/dist/utils/hooks/useUploadFileEntity/useUploadFiles.js.map +1 -1
  1597. package/dist/utils/hooks/useUploadFileEntity/willUploadsExceedStorageLimit.js.map +1 -1
  1598. package/dist/utils/html/TargetEnum.js.map +1 -1
  1599. package/dist/utils/jsonschema/SchemaAnnotationUtils.js.map +1 -1
  1600. package/dist/utils/jsonschema/getEnumeratedValues.js.map +1 -1
  1601. package/dist/utils/jsonschema/getOnlyNonNullOneOfOption.js.map +1 -1
  1602. package/dist/utils/jsonschema/getRequiredAttributes.js.map +1 -1
  1603. package/dist/utils/jsonschema/getSchemaForProperty.js.map +1 -1
  1604. package/dist/utils/jsonschema/getSchemaPropertyInfo.js.map +1 -1
  1605. package/dist/utils/jsonschema/getType.js.map +1 -1
  1606. package/dist/utils/searchDefaults.js.map +1 -1
  1607. package/dist/utils/slots/SlotUtils.js.map +1 -1
  1608. package/dist/utils/types/IsType.js.map +1 -1
  1609. package/package.json +67 -66
@@ -1 +1 @@
1
- {"version":3,"file":"applyModelChange.js","names":["DataGridRow","GridModel","ReplicaSelectionModel","SchemaPropertiesMap","s","isEqual","coerceModelCellValue","getEmptyValue","ModelChange","type","rowIndex","rowData","count","updatedData","replicaId","selection","getDefaultValueForProperty","row","property","schemaPropertyInfo","info","Object","hasOwn","isRequired","applyModelChange","model","change","rowsArr","api","arr","columnNames","getSnapshot","map","name","con","ins","obj","data","vec","metadata","del","currentRowData","rows","entries","forEach","key","value","startsWith","colIndex","indexOf","coercedValue","rowVec","String","set","has","add"],"sources":["../../../../src/components/DataGrid/utils/applyModelChange.ts"],"sourcesContent":["import {\n DataGridRow,\n GridModel,\n ReplicaSelectionModel,\n} from '@/components/DataGrid/DataGridTypes'\nimport { SchemaPropertiesMap } from '@/utils/jsonschema/getSchemaPropertyInfo'\nimport { s } from 'json-joy/lib/json-crdt-patch'\nimport isEqual from 'lodash-es/isEqual'\nimport { coerceModelCellValue } from './schemaAwarePasteValue'\nimport { getEmptyValue } from './getEmptyValue'\n\n/**\n * Represents a change operation on the GridModel.\n */\nexport type ModelChange =\n | { type: 'CREATE'; rowIndex: number; rowData: DataGridRow }\n | { type: 'DELETE'; rowIndex: number; count?: number }\n | { type: 'UPDATE'; rowIndex: number; updatedData: DataGridRow }\n | {\n type: 'SET_SELECTION'\n replicaId: string\n selection: ReplicaSelectionModel\n }\n\nexport function getDefaultValueForProperty(\n row: DataGridRow,\n property: string,\n schemaPropertyInfo: SchemaPropertiesMap,\n) {\n const info = schemaPropertyInfo[property]\n if (Object.hasOwn(row, property)) {\n return coerceModelCellValue(row[property], info)\n }\n // Property absent from the row: derive the schema-correct blank directly.\n return getEmptyValue(info?.isRequired)\n}\n\n/**\n * Applies a single change operation (create, delete, or update) to the GridModel.\n *\n * @param model - The grid model to modify\n * @param change - The change to apply\n */\nexport function applyModelChange(\n model: GridModel,\n change: ModelChange,\n schemaPropertyInfo: SchemaPropertiesMap,\n) {\n const rowsArr = model.api.arr(['rows'])\n const { columnNames } = model.api.getSnapshot()\n\n switch (change.type) {\n case 'CREATE': {\n // Convert rowData object into a CRDT vector\n const rowData = columnNames.map(name =>\n s.con(\n getDefaultValueForProperty(change.rowData, name, schemaPropertyInfo),\n ),\n )\n // Insert a new row object at the specified index\n rowsArr?.ins(change.rowIndex, [\n s.obj({ data: s.vec(...rowData), metadata: s.obj({}) }),\n ])\n break\n }\n\n case 'DELETE':\n rowsArr?.del(change.rowIndex, change.count ?? 1)\n break\n\n case 'UPDATE': {\n const currentRowData = model.api.getSnapshot().rows[change.rowIndex]?.data\n Object.entries(change.updatedData).forEach(([key, value]) => {\n if (key.startsWith('_')) return // Skip internal properties like _rowId\n const colIndex = columnNames.indexOf(key)\n if (colIndex !== -1) {\n // Coerce empty values (null/undefined/\"\") to the schema-correct blank\n // so any path that reaches the model — paste, programmatic edits,\n // etc. — produces a value the validator can describe with its\n // standard \"<value> is not a valid …\" message format.\n const coercedValue = coerceModelCellValue(\n value,\n schemaPropertyInfo[key],\n )\n // Only write cells whose value actually changed to avoid stamping\n // the local replica's SID on unmodified cells.\n if (isEqual(currentRowData?.[colIndex], coercedValue)) return\n // Get the CRDT array of cell values for this row\n const rowVec = model.api.vec([\n 'rows',\n String(change.rowIndex),\n 'data',\n ])\n // Update the specific column with the new value\n rowVec?.set([[colIndex, s.con(coercedValue)]])\n }\n })\n break\n }\n case 'SET_SELECTION': {\n if (!model.api.obj().has('selection')) {\n // Create if not exists\n model.api.obj().add(['selection'], s.obj({}))\n }\n model.api\n .obj(['selection'])\n .set({ [change.replicaId]: s.con(change.selection) })\n\n break\n }\n }\n}\n"],"mappings":";;;;;AAwBA,SAAgBgB,EACdC,GACAC,GACAC,GACA;CACA,IAAMC,IAAOD,EAAmBD;AAKhC,QAJIG,OAAOC,OAAOL,GAAKC,EAAS,GACvBZ,EAAqBW,EAAIC,IAAWE,EAAK,GAG3Cb,EAAca,GAAMG,WAAW;;AASxC,SAAgBC,EACdC,GACAC,GACAP,GACA;CACA,IAAMQ,IAAUF,EAAMG,IAAIC,IAAI,CAAC,OAAO,CAAC,EACjC,EAAEC,mBAAgBL,EAAMG,IAAIG,aAAa;AAE/C,SAAQL,EAAOjB,MAAf;EACE,KAAK,UAAU;GAEb,IAAME,IAAUmB,EAAYE,KAAIC,MAC9B7B,EAAE8B,IACAlB,EAA2BU,EAAOf,SAASsB,GAAMd,EACnD,CACF,CAAC;AAEDQ,MAASQ,IAAIT,EAAOhB,UAAU,CAC5BN,EAAEgC,IAAI;IAAEC,MAAMjC,EAAEkC,IAAI,GAAG3B,EAAQ;IAAE4B,UAAUnC,EAAEgC,IAAI,EAAE,CAAA;IAAG,CAAC,CACxD,CAAC;AACF;;EAGF,KAAK;AACHT,MAASa,IAAId,EAAOhB,UAAUgB,EAAOd,SAAS,EAAE;AAChD;EAEF,KAAK,UAAU;GACb,IAAM6B,IAAiBhB,EAAMG,IAAIG,aAAa,CAACW,KAAKhB,EAAOhB,WAAW2B;AACtEhB,UAAOsB,QAAQjB,EAAOb,YAAY,CAAC+B,SAAS,CAACC,GAAKC,OAAW;AAC3D,QAAID,EAAIE,WAAW,IAAI,CAAE;IACzB,IAAMC,IAAWlB,EAAYmB,QAAQJ,EAAI;AACzC,QAAIG,MAAa,IAAI;KAKnB,IAAME,IAAe5C,EACnBwC,GACA3B,EAAmB0B,GACpB;AAGD,SAAIxC,EAAQoC,IAAiBO,IAAWE,EAAa,CAAE;AAExCzB,OAAMG,IAAIU,IAAI;MAC3B;MACAc,OAAO1B,EAAOhB,SAAS;MACvB;MACD,CAEDyC,EAAQE,IAAI,CAAC,CAACL,GAAU5C,EAAE8B,IAAIgB,EAAa,CAAC,CAAC,CAAC;;KAEhD;AACF;;EAEF,KAAK;AAKHzB,GAJKA,EAAMG,IAAIQ,KAAK,CAACkB,IAAI,YAAY,IAEnC7B,EAAMG,IAAIQ,KAAK,CAACmB,IAAI,CAAC,YAAY,EAAEnD,EAAEgC,IAAI,EAAE,CAAC,CAAC,EAE/CX,EAAMG,IACHQ,IAAI,CAAC,YAAY,CAAC,CAClBiB,IAAI,GAAG3B,EAAOZ,YAAYV,EAAE8B,IAAIR,EAAOX,UAAS,EAAG,CAAC;AAEvD"}
1
+ {"version":3,"file":"applyModelChange.js","names":["DataGridRow","GridModel","ReplicaSelectionModel","SchemaPropertiesMap","s","isEqual","coerceModelCellValue","getEmptyValue","ModelChange","type","rowIndex","rowData","count","updatedData","replicaId","selection","getDefaultValueForProperty","row","property","schemaPropertyInfo","info","Object","hasOwn","isRequired","applyModelChange","model","change","rowsArr","api","arr","columnNames","getSnapshot","map","name","con","ins","obj","data","vec","metadata","del","currentRowData","rows","entries","forEach","key","value","startsWith","colIndex","indexOf","coercedValue","rowVec","String","set","has","add"],"sources":["../../../../src/components/DataGrid/utils/applyModelChange.ts"],"sourcesContent":["import {\n DataGridRow,\n GridModel,\n ReplicaSelectionModel,\n} from '@/components/DataGrid/DataGridTypes'\nimport { SchemaPropertiesMap } from '@/utils/jsonschema/getSchemaPropertyInfo'\nimport { s } from 'json-joy/lib/json-crdt-patch'\nimport isEqual from 'lodash-es/isEqual'\nimport { coerceModelCellValue } from './schemaAwarePasteValue'\nimport { getEmptyValue } from './getEmptyValue'\n\n/**\n * Represents a change operation on the GridModel.\n */\nexport type ModelChange =\n | { type: 'CREATE'; rowIndex: number; rowData: DataGridRow }\n | { type: 'DELETE'; rowIndex: number; count?: number }\n | { type: 'UPDATE'; rowIndex: number; updatedData: DataGridRow }\n | {\n type: 'SET_SELECTION'\n replicaId: string\n selection: ReplicaSelectionModel\n }\n\nexport function getDefaultValueForProperty(\n row: DataGridRow,\n property: string,\n schemaPropertyInfo: SchemaPropertiesMap,\n) {\n const info = schemaPropertyInfo[property]\n if (Object.hasOwn(row, property)) {\n return coerceModelCellValue(row[property], info)\n }\n // Property absent from the row: derive the schema-correct blank directly.\n return getEmptyValue(info?.isRequired)\n}\n\n/**\n * Applies a single change operation (create, delete, or update) to the GridModel.\n *\n * @param model - The grid model to modify\n * @param change - The change to apply\n */\nexport function applyModelChange(\n model: GridModel,\n change: ModelChange,\n schemaPropertyInfo: SchemaPropertiesMap,\n) {\n const rowsArr = model.api.arr(['rows'])\n const { columnNames } = model.api.getSnapshot()\n\n switch (change.type) {\n case 'CREATE': {\n // Convert rowData object into a CRDT vector\n const rowData = columnNames.map(name =>\n s.con(\n getDefaultValueForProperty(change.rowData, name, schemaPropertyInfo),\n ),\n )\n // Insert a new row object at the specified index\n rowsArr?.ins(change.rowIndex, [\n s.obj({ data: s.vec(...rowData), metadata: s.obj({}) }),\n ])\n break\n }\n\n case 'DELETE':\n rowsArr?.del(change.rowIndex, change.count ?? 1)\n break\n\n case 'UPDATE': {\n const currentRowData = model.api.getSnapshot().rows[change.rowIndex]?.data\n Object.entries(change.updatedData).forEach(([key, value]) => {\n if (key.startsWith('_')) return // Skip internal properties like _rowId\n const colIndex = columnNames.indexOf(key)\n if (colIndex !== -1) {\n // Coerce empty values (null/undefined/\"\") to the schema-correct blank\n // so any path that reaches the model — paste, programmatic edits,\n // etc. — produces a value the validator can describe with its\n // standard \"<value> is not a valid …\" message format.\n const coercedValue = coerceModelCellValue(\n value,\n schemaPropertyInfo[key],\n )\n // Only write cells whose value actually changed to avoid stamping\n // the local replica's SID on unmodified cells.\n if (isEqual(currentRowData?.[colIndex], coercedValue)) return\n // Get the CRDT array of cell values for this row\n const rowVec = model.api.vec([\n 'rows',\n String(change.rowIndex),\n 'data',\n ])\n // Update the specific column with the new value\n rowVec?.set([[colIndex, s.con(coercedValue)]])\n }\n })\n break\n }\n case 'SET_SELECTION': {\n if (!model.api.obj().has('selection')) {\n // Create if not exists\n model.api.obj().add(['selection'], s.obj({}))\n }\n model.api\n .obj(['selection'])\n .set({ [change.replicaId]: s.con(change.selection) })\n\n break\n }\n }\n}\n"],"mappings":";;;;;AAwBA,SAAgBgB,EACdC,GACAC,GACAC,GACA;CACA,IAAMC,IAAOD,EAAmBD;CAKhC,OAJIG,OAAOC,OAAOL,GAAKC,CAAQ,IACtBZ,EAAqBW,EAAIC,IAAWE,CAAI,IAG1Cb,EAAca,GAAMG,UAAU;AACvC;AAQA,SAAgBC,EACdC,GACAC,GACAP,GACA;CACA,IAAMQ,IAAUF,EAAMG,IAAIC,IAAI,CAAC,MAAM,CAAC,GAChC,EAAEC,mBAAgBL,EAAMG,IAAIG,YAAY;CAE9C,QAAQL,EAAOjB,MAAf;EACE,KAAK,UAAU;GAEb,IAAME,IAAUmB,EAAYE,KAAIC,MAC9B7B,EAAE8B,IACAlB,EAA2BU,EAAOf,SAASsB,GAAMd,CAAkB,CACrE,CACF;GAEAQ,GAASQ,IAAIT,EAAOhB,UAAU,CAC5BN,EAAEgC,IAAI;IAAEC,MAAMjC,EAAEkC,IAAI,GAAG3B,CAAO;IAAG4B,UAAUnC,EAAEgC,IAAI,CAAC,CAAC;GAAE,CAAC,CAAC,CACxD;GACD;EACF;EAEA,KAAK;GACHT,GAASa,IAAId,EAAOhB,UAAUgB,EAAOd,SAAS,CAAC;GAC/C;EAEF,KAAK,UAAU;GACb,IAAM6B,IAAiBhB,EAAMG,IAAIG,YAAY,EAAEW,KAAKhB,EAAOhB,WAAW2B;GACtEhB,OAAOsB,QAAQjB,EAAOb,WAAW,EAAE+B,SAAS,CAACC,GAAKC,OAAW;IAC3D,IAAID,EAAIE,WAAW,GAAG,GAAG;IACzB,IAAMC,IAAWlB,EAAYmB,QAAQJ,CAAG;IACxC,IAAIG,MAAa,IAAI;KAKnB,IAAME,IAAe5C,EACnBwC,GACA3B,EAAmB0B,EACrB;KAGA,IAAIxC,EAAQoC,IAAiBO,IAAWE,CAAY,GAAG;KAQvDC,EANqBvB,IAAIU,IAAI;MAC3B;MACAc,OAAO1B,EAAOhB,QAAQ;MACtB;KAAM,CAGRyC,GAAQE,IAAI,CAAC,CAACL,GAAU5C,EAAE8B,IAAIgB,CAAY,CAAC,CAAC,CAAC;IAC/C;GACF,CAAC;GACD;EACF;EACA,KAAK;GAKHzB,AAJKA,EAAMG,IAAIQ,IAAI,EAAEkB,IAAI,WAAW,KAElC7B,EAAMG,IAAIQ,IAAI,EAAEmB,IAAI,CAAC,WAAW,GAAGnD,EAAEgC,IAAI,CAAC,CAAC,CAAC,GAE9CX,EAAMG,IACHQ,IAAI,CAAC,WAAW,CAAC,EACjBiB,IAAI,GAAG3B,EAAOZ,YAAYV,EAAE8B,IAAIR,EAAOX,SAAS,EAAE,CAAC;GAEtD;CAEJ;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"calculateColumnWidth.js","names":["SchemaPropertyInfo","HEADER_ELEMENT_WIDTHS","pin","help","spacing","padding","const","HeaderOptions","showPinIcon","hasDescription","calculateDefaultColumnWidth","columnName","propertyInfo","headerOptions","minWidth","type","format","characterBasedWidth","length","additionalWidth","contentBasedWidth","Math","max"],"sources":["../../../../src/components/DataGrid/utils/calculateColumnWidth.ts"],"sourcesContent":["import { SchemaPropertyInfo } from '@/utils/jsonschema/getSchemaPropertyInfo'\n\n// Icon and spacing width constants for header content\nconst HEADER_ELEMENT_WIDTHS = {\n // Approximate effective width of each header IconButton (icon + padding)\n pin: 28,\n help: 28,\n spacing: 4, // gap between elements\n padding: 4, // container padding\n} as const\n\nexport type HeaderOptions = {\n showPinIcon?: boolean\n hasDescription?: boolean\n}\n\n/**\n * Calculates the default width for a column based on its name and schema property info.\n * The width is determined by:\n * - A base minimum width (175px for most columns, 215px for date-time columns)\n * - Character-based calculation (11px per character in the column name)\n * - Additional width for header icons (pin icon, help tooltip)\n *\n * @param columnName - The name of the column\n * @param propertyInfo - Optional schema property information for the column\n * @param headerOptions - Optional header content options that affect width\n * @returns The calculated column width in pixels\n */\nexport function calculateDefaultColumnWidth(\n columnName: string,\n propertyInfo?: SchemaPropertyInfo,\n headerOptions?: HeaderOptions,\n): number {\n // Determine minimum width based on column type\n const minWidth = propertyInfo?.type?.format === 'date-time' ? 215 : 175\n\n // Calculate width based on column name length (11px per character)\n const characterBasedWidth = columnName.length * 11\n\n // Calculate additional width needed for header icons\n let additionalWidth = 0\n if (headerOptions?.showPinIcon) {\n additionalWidth += HEADER_ELEMENT_WIDTHS.pin + HEADER_ELEMENT_WIDTHS.spacing\n }\n if (headerOptions?.hasDescription) {\n additionalWidth +=\n HEADER_ELEMENT_WIDTHS.help + HEADER_ELEMENT_WIDTHS.spacing\n }\n // Only add container padding if we have icons\n if (additionalWidth > 0) {\n additionalWidth += HEADER_ELEMENT_WIDTHS.padding\n }\n\n // Calculate total width needed for text + icons\n const contentBasedWidth = characterBasedWidth + additionalWidth\n\n // Return the larger of minimum width or content-based width\n return Math.max(minWidth, contentBasedWidth)\n}\n"],"mappings":";AAGA,IAAMC,IAAwB;CAE5BC,KAAK;CACLC,MAAM;CACNC,SAAS;CACTC,SAAS;CACV;AAmBD,SAAgBK,EACdC,GACAC,GACAC,GACQ;CAER,IAAMC,IAAWF,GAAcG,MAAMC,WAAW,cAAc,MAAM,KAG9DC,IAAsBN,EAAWO,SAAS,IAG5CC,IAAkB;AAStB,CARIN,GAAeL,gBACjBW,KAAmBlB,EAAsBC,MAAMD,EAAsBG,UAEnES,GAAeJ,mBACjBU,KACElB,EAAsBE,OAAOF,EAAsBG,UAGnDe,IAAkB,MACpBA,KAAmBlB,EAAsBI;CAI3C,IAAMe,IAAoBH,IAAsBE;AAGhD,QAAOE,KAAKC,IAAIR,GAAUM,EAAkB"}
1
+ {"version":3,"file":"calculateColumnWidth.js","names":["SchemaPropertyInfo","HEADER_ELEMENT_WIDTHS","pin","help","spacing","padding","const","HeaderOptions","showPinIcon","hasDescription","calculateDefaultColumnWidth","columnName","propertyInfo","headerOptions","minWidth","type","format","characterBasedWidth","length","additionalWidth","contentBasedWidth","Math","max"],"sources":["../../../../src/components/DataGrid/utils/calculateColumnWidth.ts"],"sourcesContent":["import { SchemaPropertyInfo } from '@/utils/jsonschema/getSchemaPropertyInfo'\n\n// Icon and spacing width constants for header content\nconst HEADER_ELEMENT_WIDTHS = {\n // Approximate effective width of each header IconButton (icon + padding)\n pin: 28,\n help: 28,\n spacing: 4, // gap between elements\n padding: 4, // container padding\n} as const\n\nexport type HeaderOptions = {\n showPinIcon?: boolean\n hasDescription?: boolean\n}\n\n/**\n * Calculates the default width for a column based on its name and schema property info.\n * The width is determined by:\n * - A base minimum width (175px for most columns, 215px for date-time columns)\n * - Character-based calculation (11px per character in the column name)\n * - Additional width for header icons (pin icon, help tooltip)\n *\n * @param columnName - The name of the column\n * @param propertyInfo - Optional schema property information for the column\n * @param headerOptions - Optional header content options that affect width\n * @returns The calculated column width in pixels\n */\nexport function calculateDefaultColumnWidth(\n columnName: string,\n propertyInfo?: SchemaPropertyInfo,\n headerOptions?: HeaderOptions,\n): number {\n // Determine minimum width based on column type\n const minWidth = propertyInfo?.type?.format === 'date-time' ? 215 : 175\n\n // Calculate width based on column name length (11px per character)\n const characterBasedWidth = columnName.length * 11\n\n // Calculate additional width needed for header icons\n let additionalWidth = 0\n if (headerOptions?.showPinIcon) {\n additionalWidth += HEADER_ELEMENT_WIDTHS.pin + HEADER_ELEMENT_WIDTHS.spacing\n }\n if (headerOptions?.hasDescription) {\n additionalWidth +=\n HEADER_ELEMENT_WIDTHS.help + HEADER_ELEMENT_WIDTHS.spacing\n }\n // Only add container padding if we have icons\n if (additionalWidth > 0) {\n additionalWidth += HEADER_ELEMENT_WIDTHS.padding\n }\n\n // Calculate total width needed for text + icons\n const contentBasedWidth = characterBasedWidth + additionalWidth\n\n // Return the larger of minimum width or content-based width\n return Math.max(minWidth, contentBasedWidth)\n}\n"],"mappings":";AAGA,IAAMC,IAAwB;CAE5BC,KAAK;CACLC,MAAM;CACNC,SAAS;CACTC,SAAS;AACX;AAmBA,SAAgBK,EACdC,GACAC,GACAC,GACQ;CAER,IAAMC,IAAWF,GAAcG,MAAMC,WAAW,cAAc,MAAM,KAG9DC,IAAsBN,EAAWO,SAAS,IAG5CC,IAAkB;CAStB,AARIN,GAAeL,gBACjBW,KAAmBlB,EAAsBC,MAAMD,EAAsBG,UAEnES,GAAeJ,mBACjBU,KACElB,EAAsBE,OAAOF,EAAsBG,UAGnDe,IAAkB,MACpBA,KAAmBlB,EAAsBI;CAI3C,IAAMe,IAAoBH,IAAsBE;CAGhD,OAAOE,KAAKC,IAAIR,GAAUM,CAAiB;AAC7C"}
@@ -1 +1 @@
1
- {"version":3,"file":"columnFactory.js","names":["dateTimeColumn","EnumeratedValue","FlatTypeInfo","SchemaPropertyInfo","CellComponent","CellProps","Column","createTextColumn","floatColumn","keyColumn","autocompleteColumn","autocompleteMultipleEnumColumn","calculateDefaultColumnWidth","HeaderOptions","ColumnHeaderWithTooltip","Tooltip","SmartToyTwoTone","DataGridRow","wrapPasteValueWithSchemaCoercion","getEmptyValue","withChangeIndicatorTooltip","OriginalComponent","T","C","colName","CellWithTooltip","props","$","_c","changeInfo","rowData","__cellChangeInfo","isAgent","category","t0","t1","tooltipText","position","top","right","width","height","zIndex","pointerEvents","t2","focus","fontSize","alignSelf","flexShrink","mr","color","backgroundColor","t3","displayName","ColumnConfig","columnName","description","disabled","typeInfo","enumeratedValues","isRequired","customWidth","showPinIcon","isPinned","onTogglePin","schemaPropertyInfo","getHeaderClassName","createDeleteValue","Record","createParseUserInput","value","trimmedValue","trim","createBaseColumn","config","columnImpl","headerOptions","hasDescription","undefined","keyed","component","title","headerClassName","minWidth","basis","grow","shrink","deleteValue","pasteValue","stickyLeft","COLUMN_FACTORIES","multipleEnum","choices","colType","type","limitTags","clearValue","boolean","number","enumerated","date-time","text","continuousUpdates","deletedValue","parseUserInput","cellClassName","getColumnType","length","format","isArray","createColumn","columnType"],"sources":["../../../../src/components/DataGrid/utils/columnFactory.tsx"],"sourcesContent":["import { dateTimeColumn } from '@/components/DataGrid/columns/DateTimeColumn'\nimport { EnumeratedValue } from '@/utils/jsonschema/getEnumeratedValues'\nimport { FlatTypeInfo } from '@/utils/jsonschema/getType'\nimport { SchemaPropertyInfo } from '@/utils/jsonschema/getSchemaPropertyInfo'\nimport {\n CellComponent,\n CellProps,\n Column,\n createTextColumn,\n floatColumn,\n keyColumn,\n} from '@sage-bionetworks/react-datasheet-grid'\nimport { autocompleteColumn } from '../columns/AutocompleteColumn'\nimport { autocompleteMultipleEnumColumn } from '../columns/AutocompleteMultipleEnumColumn'\nimport {\n calculateDefaultColumnWidth,\n HeaderOptions,\n} from './calculateColumnWidth'\nimport { ColumnHeaderWithTooltip } from '../components/ColumnHeaderWithTooltip'\nimport { Tooltip } from '@mui/material'\nimport { SmartToyTwoTone } from '@mui/icons-material'\nimport type { DataGridRow } from '../DataGridTypes'\nimport { wrapPasteValueWithSchemaCoercion } from './schemaAwarePasteValue'\nimport { getEmptyValue } from './getEmptyValue'\n\n/**\n * Wraps a column cell component to overlay change-attribution indicators:\n * - Non-agent changes: invisible 7×7px tooltip trigger over the CSS triangle (top-right).\n * - Agent changes: robot icon (1em, vertically centered on the right) with no triangle.\n */\nfunction withChangeIndicatorTooltip<T, C>(\n OriginalComponent: CellComponent<T, C>,\n colName: string,\n): CellComponent<T, C> {\n function CellWithTooltip(props: CellProps<T, C>) {\n const changeInfo = (props.rowData as DataGridRow).__cellChangeInfo?.[\n colName\n ]\n const isAgent =\n changeInfo?.category === 'own-agent' ||\n changeInfo?.category === 'other-agent'\n return (\n <>\n <OriginalComponent {...props} />\n {changeInfo && !isAgent && (\n <Tooltip title={changeInfo.tooltipText} placement=\"top-end\">\n <div\n style={{\n position: 'absolute',\n top: 0,\n right: 0,\n width: 7,\n height: 7,\n zIndex: 21,\n pointerEvents: 'auto',\n }}\n />\n </Tooltip>\n )}\n {isAgent && !props.focus && (\n <Tooltip title={changeInfo.tooltipText} placement=\"left\">\n <SmartToyTwoTone\n sx={{\n fontSize: '1em',\n alignSelf: 'center',\n flexShrink: 0,\n mr: 0.5,\n zIndex: 21,\n pointerEvents: 'auto',\n color: 'grey.400',\n backgroundColor: 'transparent',\n }}\n />\n </Tooltip>\n )}\n </>\n )\n }\n CellWithTooltip.displayName = `CellWithTooltip(${colName})`\n return CellWithTooltip\n}\n\ntype ColumnConfig = {\n columnName: string\n description?: string\n disabled?: boolean\n typeInfo: FlatTypeInfo | null\n enumeratedValues: EnumeratedValue[] | string[] | null\n isRequired: boolean\n customWidth?: number\n showPinIcon?: boolean\n isPinned?: boolean\n onTogglePin?: () => void\n /**\n * Optional column-level schema info. When provided, paste behavior coerces\n * empty pasted cells to the schema-correct blank (undefined for optional\n * columns, null for required columns). Omit to preserve the column impl's\n * default paste behavior.\n */\n schemaPropertyInfo?: SchemaPropertyInfo\n}\n\nfunction getHeaderClassName(isRequired: boolean): string {\n return isRequired ? 'header-cell-required' : 'header-cell'\n}\n\nfunction createDeleteValue(columnName: string, isRequired?: boolean) {\n return ({ rowData }: { rowData: Record<string, unknown> }) => ({\n ...rowData,\n [columnName]: getEmptyValue(isRequired),\n })\n}\n\nfunction createParseUserInput(isRequired?: boolean) {\n return (value: string) => {\n const trimmedValue = value.trim()\n if (trimmedValue === '') {\n return getEmptyValue(isRequired)\n }\n return trimmedValue\n }\n}\n\nfunction createBaseColumn(config: ColumnConfig, columnImpl: any) {\n const headerOptions: HeaderOptions = {\n showPinIcon: config.showPinIcon,\n hasDescription: !!config.description,\n }\n\n const width =\n config.customWidth ??\n calculateDefaultColumnWidth(\n config.columnName,\n undefined, // propertyInfo is not available here, passed from higher level\n headerOptions,\n )\n\n const keyed = keyColumn(config.columnName, columnImpl)\n return {\n ...keyed,\n component: withChangeIndicatorTooltip(keyed.component!, config.columnName),\n title: (\n <ColumnHeaderWithTooltip\n name={config.columnName}\n description={config.description}\n showPinIcon={config.showPinIcon}\n isPinned={config.isPinned}\n onTogglePin={config.onTogglePin}\n />\n ),\n headerClassName: getHeaderClassName(config.isRequired),\n minWidth: width,\n basis: width,\n grow: 0,\n shrink: 0,\n disabled: config.disabled,\n deleteValue: createDeleteValue(config.columnName, config.isRequired),\n pasteValue: wrapPasteValueWithSchemaCoercion(\n keyed.pasteValue,\n config.columnName,\n config.schemaPropertyInfo,\n ),\n stickyLeft: config.isPinned,\n }\n}\n\nconst COLUMN_FACTORIES = {\n multipleEnum: (config: ColumnConfig) => {\n return createBaseColumn(\n config,\n autocompleteMultipleEnumColumn({\n choices: config.enumeratedValues ?? [],\n colType: config.typeInfo?.type || null,\n limitTags: 3,\n clearValue: getEmptyValue(config.isRequired),\n }),\n )\n },\n\n boolean: (config: ColumnConfig) => {\n return createBaseColumn(\n config,\n autocompleteColumn({\n choices: [true, false],\n colType: 'boolean',\n clearValue: getEmptyValue(config.isRequired),\n }),\n )\n },\n\n number: (config: ColumnConfig) => {\n return createBaseColumn(config, floatColumn)\n },\n\n enumerated: (config: ColumnConfig) => {\n return createBaseColumn(\n config,\n autocompleteColumn({\n choices: config.enumeratedValues ?? [],\n colType: config.typeInfo?.type || null,\n clearValue: getEmptyValue(config.isRequired),\n }),\n )\n },\n\n 'date-time': (config: ColumnConfig) => {\n const columnImpl = dateTimeColumn({\n colType: config.typeInfo?.type || null,\n })\n\n // Date-time needs special width calculation\n const headerOptions: HeaderOptions = {\n showPinIcon: config.showPinIcon,\n hasDescription: !!config.description,\n }\n\n const width =\n config.customWidth ??\n calculateDefaultColumnWidth(\n config.columnName,\n {\n type: config.typeInfo ?? undefined,\n isRequired: config.isRequired,\n enumeratedValues: null,\n },\n headerOptions,\n )\n\n return {\n ...createBaseColumn(config, columnImpl),\n minWidth: width,\n basis: width,\n }\n },\n\n text: (config: ColumnConfig) => {\n const columnImpl = createTextColumn({\n continuousUpdates: false,\n deletedValue: undefined,\n parseUserInput: createParseUserInput(config.isRequired),\n })\n\n return {\n ...createBaseColumn(config, columnImpl),\n cellClassName: 'MuiInputBase-input',\n }\n },\n}\n\nfunction getColumnType(\n typeInfo: FlatTypeInfo | null,\n enumeratedValues?: EnumeratedValue[] | string[] | null,\n): keyof typeof COLUMN_FACTORIES {\n if (!typeInfo) {\n return enumeratedValues && enumeratedValues.length > 0\n ? 'enumerated'\n : 'text'\n }\n\n if (typeInfo.format === 'date-time') {\n return 'date-time'\n }\n\n // Handle arrays - check if it's an array of enums\n if (typeInfo.isArray) {\n return 'multipleEnum'\n }\n\n if (typeInfo.type === 'boolean') {\n return 'boolean'\n }\n\n if (typeInfo.type === 'number' || typeInfo.type === 'integer') {\n return 'number'\n }\n\n if (enumeratedValues && enumeratedValues.length > 0) {\n return 'enumerated'\n }\n\n return 'text'\n}\n\nexport function createColumn(config: ColumnConfig): Column {\n const columnType = getColumnType(config.typeInfo, config.enumeratedValues)\n return COLUMN_FACTORIES[columnType](config)\n}\n"],"mappings":";;;;;;;;;;;;;AA8BA,SAASoB,EACPC,GACAG,GACqB;CACrB,SAAAC,EAAAC,GAAA;EAAA,IAAAC,IAAAC,EAAA,GAAA,EACEC,IAAoBH,EAAKI,QAAuBC,mBAC9CP,IAEFQ,IACEH,GAAUI,aAAe,eACzBJ,GAAUI,aAAe,eAAaC;AAAA,EAAAP,EAAA,OAAAD,IAGJQ,IAAAP,EAAA,MAAhCO,IAAA,kBAAC,GAAD,EAAkB,GAAKR,GAAS,CAAA,EAAAC,EAAA,KAAAD,GAAAC,EAAA,KAAAO;EAAA,IAAAC;AAAA,EAAAR,EAAA,OAAAE,KAAAF,EAAA,OAAAK,KAC/BG,IAAAN,KAAA,CAAeG,KACd,kBAAC,GAAD;GAAgB,OAAAH,EAAUO;GAAwB,WAAA;aAChD,kBAAA,OAAA,EACS,OAAA;IAAAC,UACK;IAAUC,KACf;IAACC,OACC;IAACC,OACD;IAACC,QACA;IAACC,QACD;IAAEC,eACK;IACjB,EAEJ,CAAA;GACD,CAAA,EAAAhB,EAAA,KAAAE,GAAAF,EAAA,KAAAK,GAAAL,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;EAAA,IAAAiB;AAAA,EAAAjB,EAAA,OAAAE,KAAAF,EAAA,OAAAK,KAAAL,EAAA,OAAAD,EAAAmB,SACAD,IAAAZ,KAAA,CAAYN,EAAKmB,SAChB,kBAAC,GAAD;GAAgB,OAAAhB,EAAUO;GAAwB,WAAA;aAChD,kBAAC,GAAD,EACM,IAAA;IAAAU,UACQ;IAAKC,WACJ;IAAQC,YACP;IAACC,IACT;IAAGP,QACC;IAAEC,eACK;IAAMO,OACd;IAAUC,iBACA;IACnB,EAEJ,CAAA;GACD,CAAA,EAAAxB,EAAA,KAAAE,GAAAF,EAAA,KAAAK,GAAAL,EAAA,KAAAD,EAAAmB,OAAAlB,EAAA,KAAAiB,KAAAA,IAAAjB,EAAA;EAAA,IAAAyB;AACA,SADAzB,EAAA,OAAAO,KAAAP,EAAA,QAAAQ,KAAAR,EAAA,QAAAiB,KAhCHQ,IAAA,kBAAA,GAAA,EAAA,UAAA;GACElB;GACCC;GAeAS;GAgBA,EAAA,CAAA,EAAAjB,EAAA,KAAAO,GAAAP,EAAA,MAAAQ,GAAAR,EAAA,MAAAiB,GAAAjB,EAAA,MAAAyB,KAAAA,IAAAzB,EAAA,KAjCHyB;;AAqCJ,QADA3B,EAAgB4B,cAAc,mBAAmB7B,EAAO,IACjDC;;AAuBT,SAASyC,EAAmBN,GAA6B;AACvD,QAAOA,IAAa,yBAAyB;;AAG/C,SAASO,EAAkBZ,GAAoBK,GAAsB;AACnE,SAAQ,EAAE9B,kBAAqD;EAC7D,GAAGA;GACFyB,IAAapC,EAAcyC,EAAU;EACvC;;AAGH,SAASS,EAAqBT,GAAsB;AAClD,SAAQU,MAAkB;EACxB,IAAMC,IAAeD,EAAME,MAAM;AAIjC,SAHID,MAAiB,KACZpD,EAAcyC,EAAW,GAE3BW;;;AAIX,SAASE,EAAiBC,GAAsBC,GAAiB;CAC/D,IAAMC,IAA+B;EACnCd,aAAaY,EAAOZ;EACpBe,gBAAgB,CAAC,CAACH,EAAOlB;EAC1B,EAEKhB,IACJkC,EAAOb,eACPjD,EACE8D,EAAOnB,YACPuB,KAAAA,GACAF,EACD,EAEGG,IAAQtE,EAAUiE,EAAOnB,YAAYoB,EAAW;AACtD,QAAO;EACL,GAAGI;EACHC,WAAW5D,EAA2B2D,EAAMC,WAAYN,EAAOnB,WAAW;EAC1E0B,OACE,kBAAC,GAAD;GACE,MAAMP,EAAOnB;GACb,aAAamB,EAAOlB;GACpB,aAAakB,EAAOZ;GACpB,UAAUY,EAAOX;GACjB,aAAaW,EAAOV;GAEvB,CAAA;EACDkB,iBAAiBhB,EAAmBQ,EAAOd,WAAW;EACtDuB,UAAU3C;EACV4C,OAAO5C;EACP6C,MAAM;EACNC,QAAQ;EACR7B,UAAUiB,EAAOjB;EACjB8B,aAAapB,EAAkBO,EAAOnB,YAAYmB,EAAOd,WAAW;EACpE4B,YAAYtE,EACV6D,EAAMS,YACNd,EAAOnB,YACPmB,EAAOT,mBACR;EACDwB,YAAYf,EAAOX;EACpB;;AAGH,IAAM2B,IAAmB;CACvBC,eAAejB,MACND,EACLC,GACA/D,EAA+B;EAC7BiF,SAASlB,EAAOf,oBAAoB,EAAE;EACtCkC,SAASnB,EAAOhB,UAAUoC,QAAQ;EAClCC,WAAW;EACXC,YAAY7E,EAAcuD,EAAOd,WAAU;EAC5C,CACH,CAAC;CAGHqC,UAAUvB,MACDD,EACLC,GACAhE,EAAmB;EACjBkF,SAAS,CAAC,IAAM,GAAM;EACtBC,SAAS;EACTG,YAAY7E,EAAcuD,EAAOd,WAAU;EAC5C,CACH,CAAC;CAGHsC,SAASxB,MACAD,EAAiBC,GAAQlE,EAAY;CAG9C2F,aAAazB,MACJD,EACLC,GACAhE,EAAmB;EACjBkF,SAASlB,EAAOf,oBAAoB,EAAE;EACtCkC,SAASnB,EAAOhB,UAAUoC,QAAQ;EAClCE,YAAY7E,EAAcuD,EAAOd,WAAU;EAC5C,CACH,CAAC;CAGH,cAAcc,MAAyB;EACrC,IAAMC,IAAa3E,EAAe,EAChC6F,SAASnB,EAAOhB,UAAUoC,QAAQ,MACnC,CAAC,EAGIlB,IAA+B;GACnCd,aAAaY,EAAOZ;GACpBe,gBAAgB,CAAC,CAACH,EAAOlB;GAC1B,EAEKhB,IACJkC,EAAOb,eACPjD,EACE8D,EAAOnB,YACP;GACEuC,MAAMpB,EAAOhB,YAAYoB,KAAAA;GACzBlB,YAAYc,EAAOd;GACnBD,kBAAkB;GACnB,EACDiB,EACD;AAEH,SAAO;GACL,GAAGH,EAAiBC,GAAQC,EAAW;GACvCQ,UAAU3C;GACV4C,OAAO5C;GACR;;CAGH6D,OAAO3B,OAOE;EACL,GAAGD,EAAiBC,GAPHnE,EAAiB;GAClC+F,mBAAmB;GACnBC,cAAczB,KAAAA;GACd0B,gBAAgBnC,EAAqBK,EAAOd,WAAU;GACvD,CAG6Be,CAAW;EACvC8B,eAAe;EAChB;CAEJ;AAED,SAASC,EACPhD,GACAC,GAC+B;AA4B/B,QA3BKD,IAMDA,EAASkD,WAAW,cACf,cAILlD,EAASmD,UACJ,iBAGLnD,EAASoC,SAAS,YACb,YAGLpC,EAASoC,SAAS,YAAYpC,EAASoC,SAAS,YAC3C,WAGLnC,KAAoBA,EAAiBgD,SAAS,IACzC,eAGF,SA1BEhD,KAAoBA,EAAiBgD,SAAS,IACjD,eACA;;AA2BR,SAAgBG,EAAapC,GAA8B;AAEzD,QAAOgB,EADYgB,EAAchC,EAAOhB,UAAUgB,EAAOf,iBACjCoD,EAAYrC,EAAO"}
1
+ {"version":3,"file":"columnFactory.js","names":["dateTimeColumn","EnumeratedValue","FlatTypeInfo","SchemaPropertyInfo","CellComponent","CellProps","Column","createTextColumn","floatColumn","keyColumn","autocompleteColumn","autocompleteMultipleEnumColumn","calculateDefaultColumnWidth","HeaderOptions","ColumnHeaderWithTooltip","Tooltip","SmartToyTwoTone","DataGridRow","wrapPasteValueWithSchemaCoercion","getEmptyValue","withChangeIndicatorTooltip","OriginalComponent","T","C","colName","CellWithTooltip","props","$","_c","changeInfo","rowData","__cellChangeInfo","isAgent","category","t0","t1","tooltipText","position","top","right","width","height","zIndex","pointerEvents","t2","focus","fontSize","alignSelf","flexShrink","mr","color","backgroundColor","t3","displayName","ColumnConfig","columnName","description","disabled","typeInfo","enumeratedValues","isRequired","customWidth","showPinIcon","isPinned","onTogglePin","schemaPropertyInfo","getHeaderClassName","createDeleteValue","Record","createParseUserInput","value","trimmedValue","trim","createBaseColumn","config","columnImpl","headerOptions","hasDescription","undefined","keyed","component","title","headerClassName","minWidth","basis","grow","shrink","deleteValue","pasteValue","stickyLeft","COLUMN_FACTORIES","multipleEnum","choices","colType","type","limitTags","clearValue","boolean","number","enumerated","date-time","text","continuousUpdates","deletedValue","parseUserInput","cellClassName","getColumnType","length","format","isArray","createColumn","columnType"],"sources":["../../../../src/components/DataGrid/utils/columnFactory.tsx"],"sourcesContent":["import { dateTimeColumn } from '@/components/DataGrid/columns/DateTimeColumn'\nimport { EnumeratedValue } from '@/utils/jsonschema/getEnumeratedValues'\nimport { FlatTypeInfo } from '@/utils/jsonschema/getType'\nimport { SchemaPropertyInfo } from '@/utils/jsonschema/getSchemaPropertyInfo'\nimport {\n CellComponent,\n CellProps,\n Column,\n createTextColumn,\n floatColumn,\n keyColumn,\n} from '@sage-bionetworks/react-datasheet-grid'\nimport { autocompleteColumn } from '../columns/AutocompleteColumn'\nimport { autocompleteMultipleEnumColumn } from '../columns/AutocompleteMultipleEnumColumn'\nimport {\n calculateDefaultColumnWidth,\n HeaderOptions,\n} from './calculateColumnWidth'\nimport { ColumnHeaderWithTooltip } from '../components/ColumnHeaderWithTooltip'\nimport { Tooltip } from '@mui/material'\nimport { SmartToyTwoTone } from '@mui/icons-material'\nimport type { DataGridRow } from '../DataGridTypes'\nimport { wrapPasteValueWithSchemaCoercion } from './schemaAwarePasteValue'\nimport { getEmptyValue } from './getEmptyValue'\n\n/**\n * Wraps a column cell component to overlay change-attribution indicators:\n * - Non-agent changes: invisible 7×7px tooltip trigger over the CSS triangle (top-right).\n * - Agent changes: robot icon (1em, vertically centered on the right) with no triangle.\n */\nfunction withChangeIndicatorTooltip<T, C>(\n OriginalComponent: CellComponent<T, C>,\n colName: string,\n): CellComponent<T, C> {\n function CellWithTooltip(props: CellProps<T, C>) {\n const changeInfo = (props.rowData as DataGridRow).__cellChangeInfo?.[\n colName\n ]\n const isAgent =\n changeInfo?.category === 'own-agent' ||\n changeInfo?.category === 'other-agent'\n return (\n <>\n <OriginalComponent {...props} />\n {changeInfo && !isAgent && (\n <Tooltip title={changeInfo.tooltipText} placement=\"top-end\">\n <div\n style={{\n position: 'absolute',\n top: 0,\n right: 0,\n width: 7,\n height: 7,\n zIndex: 21,\n pointerEvents: 'auto',\n }}\n />\n </Tooltip>\n )}\n {isAgent && !props.focus && (\n <Tooltip title={changeInfo.tooltipText} placement=\"left\">\n <SmartToyTwoTone\n sx={{\n fontSize: '1em',\n alignSelf: 'center',\n flexShrink: 0,\n mr: 0.5,\n zIndex: 21,\n pointerEvents: 'auto',\n color: 'grey.400',\n backgroundColor: 'transparent',\n }}\n />\n </Tooltip>\n )}\n </>\n )\n }\n CellWithTooltip.displayName = `CellWithTooltip(${colName})`\n return CellWithTooltip\n}\n\ntype ColumnConfig = {\n columnName: string\n description?: string\n disabled?: boolean\n typeInfo: FlatTypeInfo | null\n enumeratedValues: EnumeratedValue[] | string[] | null\n isRequired: boolean\n customWidth?: number\n showPinIcon?: boolean\n isPinned?: boolean\n onTogglePin?: () => void\n /**\n * Optional column-level schema info. When provided, paste behavior coerces\n * empty pasted cells to the schema-correct blank (undefined for optional\n * columns, null for required columns). Omit to preserve the column impl's\n * default paste behavior.\n */\n schemaPropertyInfo?: SchemaPropertyInfo\n}\n\nfunction getHeaderClassName(isRequired: boolean): string {\n return isRequired ? 'header-cell-required' : 'header-cell'\n}\n\nfunction createDeleteValue(columnName: string, isRequired?: boolean) {\n return ({ rowData }: { rowData: Record<string, unknown> }) => ({\n ...rowData,\n [columnName]: getEmptyValue(isRequired),\n })\n}\n\nfunction createParseUserInput(isRequired?: boolean) {\n return (value: string) => {\n const trimmedValue = value.trim()\n if (trimmedValue === '') {\n return getEmptyValue(isRequired)\n }\n return trimmedValue\n }\n}\n\nfunction createBaseColumn(config: ColumnConfig, columnImpl: any) {\n const headerOptions: HeaderOptions = {\n showPinIcon: config.showPinIcon,\n hasDescription: !!config.description,\n }\n\n const width =\n config.customWidth ??\n calculateDefaultColumnWidth(\n config.columnName,\n undefined, // propertyInfo is not available here, passed from higher level\n headerOptions,\n )\n\n const keyed = keyColumn(config.columnName, columnImpl)\n return {\n ...keyed,\n component: withChangeIndicatorTooltip(keyed.component!, config.columnName),\n title: (\n <ColumnHeaderWithTooltip\n name={config.columnName}\n description={config.description}\n showPinIcon={config.showPinIcon}\n isPinned={config.isPinned}\n onTogglePin={config.onTogglePin}\n />\n ),\n headerClassName: getHeaderClassName(config.isRequired),\n minWidth: width,\n basis: width,\n grow: 0,\n shrink: 0,\n disabled: config.disabled,\n deleteValue: createDeleteValue(config.columnName, config.isRequired),\n pasteValue: wrapPasteValueWithSchemaCoercion(\n keyed.pasteValue,\n config.columnName,\n config.schemaPropertyInfo,\n ),\n stickyLeft: config.isPinned,\n }\n}\n\nconst COLUMN_FACTORIES = {\n multipleEnum: (config: ColumnConfig) => {\n return createBaseColumn(\n config,\n autocompleteMultipleEnumColumn({\n choices: config.enumeratedValues ?? [],\n colType: config.typeInfo?.type || null,\n limitTags: 3,\n clearValue: getEmptyValue(config.isRequired),\n }),\n )\n },\n\n boolean: (config: ColumnConfig) => {\n return createBaseColumn(\n config,\n autocompleteColumn({\n choices: [true, false],\n colType: 'boolean',\n clearValue: getEmptyValue(config.isRequired),\n }),\n )\n },\n\n number: (config: ColumnConfig) => {\n return createBaseColumn(config, floatColumn)\n },\n\n enumerated: (config: ColumnConfig) => {\n return createBaseColumn(\n config,\n autocompleteColumn({\n choices: config.enumeratedValues ?? [],\n colType: config.typeInfo?.type || null,\n clearValue: getEmptyValue(config.isRequired),\n }),\n )\n },\n\n 'date-time': (config: ColumnConfig) => {\n const columnImpl = dateTimeColumn({\n colType: config.typeInfo?.type || null,\n })\n\n // Date-time needs special width calculation\n const headerOptions: HeaderOptions = {\n showPinIcon: config.showPinIcon,\n hasDescription: !!config.description,\n }\n\n const width =\n config.customWidth ??\n calculateDefaultColumnWidth(\n config.columnName,\n {\n type: config.typeInfo ?? undefined,\n isRequired: config.isRequired,\n enumeratedValues: null,\n },\n headerOptions,\n )\n\n return {\n ...createBaseColumn(config, columnImpl),\n minWidth: width,\n basis: width,\n }\n },\n\n text: (config: ColumnConfig) => {\n const columnImpl = createTextColumn({\n continuousUpdates: false,\n deletedValue: undefined,\n parseUserInput: createParseUserInput(config.isRequired),\n })\n\n return {\n ...createBaseColumn(config, columnImpl),\n cellClassName: 'MuiInputBase-input',\n }\n },\n}\n\nfunction getColumnType(\n typeInfo: FlatTypeInfo | null,\n enumeratedValues?: EnumeratedValue[] | string[] | null,\n): keyof typeof COLUMN_FACTORIES {\n if (!typeInfo) {\n return enumeratedValues && enumeratedValues.length > 0\n ? 'enumerated'\n : 'text'\n }\n\n if (typeInfo.format === 'date-time') {\n return 'date-time'\n }\n\n // Handle arrays - check if it's an array of enums\n if (typeInfo.isArray) {\n return 'multipleEnum'\n }\n\n if (typeInfo.type === 'boolean') {\n return 'boolean'\n }\n\n if (typeInfo.type === 'number' || typeInfo.type === 'integer') {\n return 'number'\n }\n\n if (enumeratedValues && enumeratedValues.length > 0) {\n return 'enumerated'\n }\n\n return 'text'\n}\n\nexport function createColumn(config: ColumnConfig): Column {\n const columnType = getColumnType(config.typeInfo, config.enumeratedValues)\n return COLUMN_FACTORIES[columnType](config)\n}\n"],"mappings":";;;;;;;;;;;;;AA8BA,SAASoB,EACPC,GACAG,GACqB;CACrB,SAAAC,EAAAC,GAAA;EAAA,IAAAC,IAAAC,EAAA,EAAA,GACEC,IAAoBH,EAAKI,QAAuBC,mBAC9CP,IAEFQ,IACEH,GAAUI,aAAe,eACzBJ,GAAUI,aAAe,eAAaC;EAAA,AAAAP,EAAA,OAAAD,IAGJQ,IAAAP,EAAA,MAAhCO,IAAA,kBAAC,GAAD,EAAkB,GAAKR,EAAK,CAAA,GAAIC,EAAA,KAAAD,GAAAC,EAAA,KAAAO;EAAA,IAAAC;EAAA,AAAAR,EAAA,OAAAE,KAAAF,EAAA,OAAAK,KAC/BG,IAAAN,KAAA,CAAeG,KACd,kBAAC,GAAD;GAAgB,OAAAH,EAAUO;GAAwB,WAAA;aAChD,kBAAA,OAAA,EACS,OAAA;IAAAC,UACK;IAAUC,KACf;IAACC,OACC;IAACC,OACD;IAACC,QACA;IAACC,QACD;IAAEC,eACK;GACjB,EAAC,CAAA;EAVG,CAAA,GAaThB,EAAA,KAAAE,GAAAF,EAAA,KAAAK,GAAAL,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;EAAA,IAAAiB;EAAA,AAAAjB,EAAA,OAAAE,KAAAF,EAAA,OAAAK,KAAAL,EAAA,OAAAD,EAAAmB,SACAD,IAAAZ,KAAA,CAAYN,EAAKmB,SAChB,kBAAC,GAAD;GAAgB,OAAAhB,EAAUO;GAAwB,WAAA;aAChD,kBAAC,GAAD,EACM,IAAA;IAAAU,UACQ;IAAKC,WACJ;IAAQC,YACP;IAACC,IACT;IAAGP,QACC;IAAEC,eACK;IAAMO,OACd;IAAUC,iBACA;GACnB,EAAC,CAAA;EAXG,CAAA,GAcTxB,EAAA,KAAAE,GAAAF,EAAA,KAAAK,GAAAL,EAAA,KAAAD,EAAAmB,OAAAlB,EAAA,KAAAiB,KAAAA,IAAAjB,EAAA;EAAA,IAAAyB;EACA,OADAzB,EAAA,OAAAO,KAAAP,EAAA,QAAAQ,KAAAR,EAAA,QAAAiB,KAhCHQ,IAAA,kBAAA,GAAA,EAAA,UAAA;GACElB;GACCC;GAeAS;EAeA,EAAA,CAAA,GACAjB,EAAA,KAAAO,GAAAP,EAAA,MAAAQ,GAAAR,EAAA,MAAAiB,GAAAjB,EAAA,MAAAyB,KAAAA,IAAAzB,EAAA,KAjCHyB;CAiCG;CAIP,OADA3B,EAAgB4B,cAAc,mBAAmB7B,EAAO,IACjDC;AACT;AAsBA,SAASyC,EAAmBN,GAA6B;CACvD,OAAOA,IAAa,yBAAyB;AAC/C;AAEA,SAASO,EAAkBZ,GAAoBK,GAAsB;CACnE,QAAQ,EAAE9B,kBAAqD;EAC7D,GAAGA;GACFyB,IAAapC,EAAcyC,CAAU;CACxC;AACF;AAEA,SAASS,EAAqBT,GAAsB;CAClD,QAAQU,MAAkB;EACxB,IAAMC,IAAeD,EAAME,KAAK;EAIhC,OAHID,MAAiB,KACZpD,EAAcyC,CAAU,IAE1BW;CACT;AACF;AAEA,SAASE,EAAiBC,GAAsBC,GAAiB;CAC/D,IAAMC,IAA+B;EACnCd,aAAaY,EAAOZ;EACpBe,gBAAgB,CAAC,CAACH,EAAOlB;CAC3B,GAEMhB,IACJkC,EAAOb,eACPjD,EACE8D,EAAOnB,YACPuB,KAAAA,GACAF,CACF,GAEIG,IAAQtE,EAAUiE,EAAOnB,YAAYoB,CAAU;CACrD,OAAO;EACL,GAAGI;EACHC,WAAW5D,EAA2B2D,EAAMC,WAAYN,EAAOnB,UAAU;EACzE0B,OACE,kBAAC,GAAD;GACE,MAAMP,EAAOnB;GACb,aAAamB,EAAOlB;GACpB,aAAakB,EAAOZ;GACpB,UAAUY,EAAOX;GACjB,aAAaW,EAAOV;EAAY,CAAA;EAGpCkB,iBAAiBhB,EAAmBQ,EAAOd,UAAU;EACrDuB,UAAU3C;EACV4C,OAAO5C;EACP6C,MAAM;EACNC,QAAQ;EACR7B,UAAUiB,EAAOjB;EACjB8B,aAAapB,EAAkBO,EAAOnB,YAAYmB,EAAOd,UAAU;EACnE4B,YAAYtE,EACV6D,EAAMS,YACNd,EAAOnB,YACPmB,EAAOT,kBACT;EACAwB,YAAYf,EAAOX;CACrB;AACF;AAEA,IAAM2B,IAAmB;CACvBC,eAAejB,MACND,EACLC,GACA/D,EAA+B;EAC7BiF,SAASlB,EAAOf,oBAAoB,CAAA;EACpCkC,SAASnB,EAAOhB,UAAUoC,QAAQ;EAClCC,WAAW;EACXC,YAAY7E,EAAcuD,EAAOd,UAAU;CAC7C,CAAC,CACH;CAGFqC,UAAUvB,MACDD,EACLC,GACAhE,EAAmB;EACjBkF,SAAS,CAAC,IAAM,EAAK;EACrBC,SAAS;EACTG,YAAY7E,EAAcuD,EAAOd,UAAU;CAC7C,CAAC,CACH;CAGFsC,SAASxB,MACAD,EAAiBC,GAAQlE,CAAW;CAG7C2F,aAAazB,MACJD,EACLC,GACAhE,EAAmB;EACjBkF,SAASlB,EAAOf,oBAAoB,CAAA;EACpCkC,SAASnB,EAAOhB,UAAUoC,QAAQ;EAClCE,YAAY7E,EAAcuD,EAAOd,UAAU;CAC7C,CAAC,CACH;CAGF,cAAcc,MAAyB;EACrC,IAAMC,IAAa3E,EAAe,EAChC6F,SAASnB,EAAOhB,UAAUoC,QAAQ,KACpC,CAAC,GAGKlB,IAA+B;GACnCd,aAAaY,EAAOZ;GACpBe,gBAAgB,CAAC,CAACH,EAAOlB;EAC3B,GAEMhB,IACJkC,EAAOb,eACPjD,EACE8D,EAAOnB,YACP;GACEuC,MAAMpB,EAAOhB,YAAYoB,KAAAA;GACzBlB,YAAYc,EAAOd;GACnBD,kBAAkB;EACpB,GACAiB,CACF;EAEF,OAAO;GACL,GAAGH,EAAiBC,GAAQC,CAAU;GACtCQ,UAAU3C;GACV4C,OAAO5C;EACT;CACF;CAEA6D,OAAO3B,OAOE;EACL,GAAGD,EAAiBC,GAPHnE,EAAiB;GAClC+F,mBAAmB;GACnBC,cAAczB,KAAAA;GACd0B,gBAAgBnC,EAAqBK,EAAOd,UAAU;EACxD,CAG8Be,CAAU;EACtC8B,eAAe;CACjB;AAEJ;AAEA,SAASC,EACPhD,GACAC,GAC+B;CA4B/B,OA3BKD,IAMDA,EAASkD,WAAW,cACf,cAILlD,EAASmD,UACJ,iBAGLnD,EAASoC,SAAS,YACb,YAGLpC,EAASoC,SAAS,YAAYpC,EAASoC,SAAS,YAC3C,WAGLnC,KAAoBA,EAAiBgD,SAAS,IACzC,eAGF,SA1BEhD,KAAoBA,EAAiBgD,SAAS,IACjD,eACA;AAyBR;AAEA,SAAgBG,EAAapC,GAA8B;CAEzD,OAAOgB,EADYgB,EAAchC,EAAOhB,UAAUgB,EAAOf,gBACjCoD,GAAYrC,CAAM;AAC5C"}
@@ -1 +1 @@
1
- {"version":3,"file":"computeReplicaSelectionModel.js","names":["CrdtId","GridModel","ReplicaSelectionModel","ArrApi","SelectionWithId","computeReplicaSelectionModel","selection","model","replicaSelectionModel","modelSnapshot","api","getSnapshot","isSelectAll","rows","min","row","max","rowSelectAll","rowsArr","arr","rowSelection","getCrdtIdsForArrayRange","columnOrder","col","columnSelectAll","columnOrderArr","columnSelection","arrSnapshot","length","array","crdtIds","i","findChunkResult","node","findChunk","chunk","offset","push","rep","id","sid","seq","time","console","warn"],"sources":["../../../../src/components/DataGrid/utils/computeReplicaSelectionModel.ts"],"sourcesContent":["import {\n CrdtId,\n GridModel,\n ReplicaSelectionModel,\n} from '@/components/DataGrid/DataGridTypes'\nimport { ArrApi } from 'json-joy'\nimport { SelectionWithId } from '@sage-bionetworks/react-datasheet-grid'\n\n/**\n * Compute the ReplicaSelectionModel that should be attached to the grid model\n * @param selection the selection provided by react-datasheet-grid\n * @param model the current Data Grid CRDT Model\n */\nexport default function computeReplicaSelectionModel(\n selection: SelectionWithId,\n model: GridModel,\n): ReplicaSelectionModel {\n const replicaSelectionModel: ReplicaSelectionModel = {}\n const modelSnapshot = model.api.getSnapshot()\n if (isSelectAll(modelSnapshot.rows, selection.min.row, selection.max.row)) {\n replicaSelectionModel.rowSelectAll = true\n } else {\n // Get the arr element CrdtIds from the rows array\n const rowsArr = model.api.arr(['rows'])\n replicaSelectionModel.rowSelection = getCrdtIdsForArrayRange(\n rowsArr,\n selection.min.row,\n selection.max.row,\n )\n }\n\n if (\n isSelectAll(modelSnapshot.columnOrder, selection.min.col, selection.max.col)\n ) {\n replicaSelectionModel.columnSelectAll = true\n } else {\n // Get the arr element CrdtIds from the columnOrder array\n const columnOrderArr = model.api.arr(['columnOrder'])\n replicaSelectionModel.columnSelection = getCrdtIdsForArrayRange(\n columnOrderArr,\n selection.min.col,\n selection.max.col,\n )\n }\n\n return replicaSelectionModel\n}\n\nfunction isSelectAll(arrSnapshot: unknown[], min: number, max: number) {\n // If the min and max cover the entire array, it's a select all\n return min === 0 && max === arrSnapshot.length - 1\n}\n\nfunction getCrdtIdsForArrayRange(array: ArrApi, min: number, max: number) {\n const crdtIds: CrdtId[] = []\n for (let i = min; i <= max; i++) {\n const findChunkResult = array.node.findChunk(i)\n if (findChunkResult) {\n const [chunk, offset] = findChunkResult\n crdtIds.push({ rep: chunk.id.sid, seq: chunk.id.time + offset })\n } else {\n console.warn(\n `getCrdtIdsForArrayRange: No chunk found for array index ${i}. This may indicate an unexpected state.`,\n )\n }\n }\n return crdtIds\n}\n"],"mappings":";AAaA,SAAwBK,EACtBC,GACAC,GACuB;CACvB,IAAMC,IAA+C,EAAE,EACjDC,IAAgBF,EAAMG,IAAIC,aAAa;AA2B7C,QA1BIC,EAAYH,EAAcI,MAAMP,EAAUQ,IAAIC,KAAKT,EAAUU,IAAID,IAAI,GACvEP,EAAsBS,eAAe,KAIrCT,EAAsBY,eAAeC,EADrBd,EAAMG,IAAIS,IAAI,CAAC,OAAO,CAEpCD,EACAZ,EAAUQ,IAAIC,KACdT,EAAUU,IAAID,IACf,EAIDH,EAAYH,EAAca,aAAahB,EAAUQ,IAAIS,KAAKjB,EAAUU,IAAIO,IAAI,GAE5Ef,EAAsBgB,kBAAkB,KAIxChB,EAAsBkB,kBAAkBL,EADjBd,EAAMG,IAAIS,IAAI,CAAC,cAAc,CAElDM,EACAnB,EAAUQ,IAAIS,KACdjB,EAAUU,IAAIO,IACf,EAGIf;;AAGT,SAASI,EAAYe,GAAwBb,GAAaE,GAAa;AAErE,QAAOF,MAAQ,KAAKE,MAAQW,EAAYC,SAAS;;AAGnD,SAASP,EAAwBQ,GAAef,GAAaE,GAAa;CACxE,IAAMc,IAAoB,EAAE;AAC5B,MAAK,IAAIC,IAAIjB,GAAKiB,KAAKf,GAAKe,KAAK;EAC/B,IAAMC,IAAkBH,EAAMI,KAAKC,UAAUH,EAAE;AAC/C,MAAIC,GAAiB;GACnB,IAAM,CAACG,GAAOC,KAAUJ;AACxBF,KAAQO,KAAK;IAAEC,KAAKH,EAAMI,GAAGC;IAAKC,KAAKN,EAAMI,GAAGG,OAAON;IAAQ,CAAC;QAEhEO,SAAQC,KACN,2DAA2Db,EAAC,0CAC7D;;AAGL,QAAOD"}
1
+ {"version":3,"file":"computeReplicaSelectionModel.js","names":["CrdtId","GridModel","ReplicaSelectionModel","ArrApi","SelectionWithId","computeReplicaSelectionModel","selection","model","replicaSelectionModel","modelSnapshot","api","getSnapshot","isSelectAll","rows","min","row","max","rowSelectAll","rowsArr","arr","rowSelection","getCrdtIdsForArrayRange","columnOrder","col","columnSelectAll","columnOrderArr","columnSelection","arrSnapshot","length","array","crdtIds","i","findChunkResult","node","findChunk","chunk","offset","push","rep","id","sid","seq","time","console","warn"],"sources":["../../../../src/components/DataGrid/utils/computeReplicaSelectionModel.ts"],"sourcesContent":["import {\n CrdtId,\n GridModel,\n ReplicaSelectionModel,\n} from '@/components/DataGrid/DataGridTypes'\nimport { ArrApi } from 'json-joy'\nimport { SelectionWithId } from '@sage-bionetworks/react-datasheet-grid'\n\n/**\n * Compute the ReplicaSelectionModel that should be attached to the grid model\n * @param selection the selection provided by react-datasheet-grid\n * @param model the current Data Grid CRDT Model\n */\nexport default function computeReplicaSelectionModel(\n selection: SelectionWithId,\n model: GridModel,\n): ReplicaSelectionModel {\n const replicaSelectionModel: ReplicaSelectionModel = {}\n const modelSnapshot = model.api.getSnapshot()\n if (isSelectAll(modelSnapshot.rows, selection.min.row, selection.max.row)) {\n replicaSelectionModel.rowSelectAll = true\n } else {\n // Get the arr element CrdtIds from the rows array\n const rowsArr = model.api.arr(['rows'])\n replicaSelectionModel.rowSelection = getCrdtIdsForArrayRange(\n rowsArr,\n selection.min.row,\n selection.max.row,\n )\n }\n\n if (\n isSelectAll(modelSnapshot.columnOrder, selection.min.col, selection.max.col)\n ) {\n replicaSelectionModel.columnSelectAll = true\n } else {\n // Get the arr element CrdtIds from the columnOrder array\n const columnOrderArr = model.api.arr(['columnOrder'])\n replicaSelectionModel.columnSelection = getCrdtIdsForArrayRange(\n columnOrderArr,\n selection.min.col,\n selection.max.col,\n )\n }\n\n return replicaSelectionModel\n}\n\nfunction isSelectAll(arrSnapshot: unknown[], min: number, max: number) {\n // If the min and max cover the entire array, it's a select all\n return min === 0 && max === arrSnapshot.length - 1\n}\n\nfunction getCrdtIdsForArrayRange(array: ArrApi, min: number, max: number) {\n const crdtIds: CrdtId[] = []\n for (let i = min; i <= max; i++) {\n const findChunkResult = array.node.findChunk(i)\n if (findChunkResult) {\n const [chunk, offset] = findChunkResult\n crdtIds.push({ rep: chunk.id.sid, seq: chunk.id.time + offset })\n } else {\n console.warn(\n `getCrdtIdsForArrayRange: No chunk found for array index ${i}. This may indicate an unexpected state.`,\n )\n }\n }\n return crdtIds\n}\n"],"mappings":";AAaA,SAAwBK,EACtBC,GACAC,GACuB;CACvB,IAAMC,IAA+C,CAAC,GAChDC,IAAgBF,EAAMG,IAAIC,YAAY;CA2B5C,OA1BIC,EAAYH,EAAcI,MAAMP,EAAUQ,IAAIC,KAAKT,EAAUU,IAAID,GAAG,IACtEP,EAAsBS,eAAe,KAIrCT,EAAsBY,eAAeC,EADrBd,EAAMG,IAAIS,IAAI,CAAC,MAAM,CAEnCD,GACAZ,EAAUQ,IAAIC,KACdT,EAAUU,IAAID,GAChB,GAIAH,EAAYH,EAAca,aAAahB,EAAUQ,IAAIS,KAAKjB,EAAUU,IAAIO,GAAG,IAE3Ef,EAAsBgB,kBAAkB,KAIxChB,EAAsBkB,kBAAkBL,EADjBd,EAAMG,IAAIS,IAAI,CAAC,aAAa,CAEjDM,GACAnB,EAAUQ,IAAIS,KACdjB,EAAUU,IAAIO,GAChB,GAGKf;AACT;AAEA,SAASI,EAAYe,GAAwBb,GAAaE,GAAa;CAErE,OAAOF,MAAQ,KAAKE,MAAQW,EAAYC,SAAS;AACnD;AAEA,SAASP,EAAwBQ,GAAef,GAAaE,GAAa;CACxE,IAAMc,IAAoB,CAAA;CAC1B,KAAK,IAAIC,IAAIjB,GAAKiB,KAAKf,GAAKe,KAAK;EAC/B,IAAMC,IAAkBH,EAAMI,KAAKC,UAAUH,CAAC;EAC9C,IAAIC,GAAiB;GACnB,IAAM,CAACG,GAAOC,KAAUJ;GACxBF,EAAQO,KAAK;IAAEC,KAAKH,EAAMI,GAAGC;IAAKC,KAAKN,EAAMI,GAAGG,OAAON;GAAO,CAAC;EACjE,OACEO,QAAQC,KACN,2DAA2Db,EAAC,yCAC9D;CAEJ;CACA,OAAOD;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"convertActionToModelChange.js","names":["GridAction","ModelChange","convertActionToModelChange","action","direction","type","rowIndex","newValue","rowData","value","previousValue","updatedData"],"sources":["../../../../src/components/DataGrid/utils/convertActionToModelChange.ts"],"sourcesContent":["import { GridAction } from '../hooks/useGridUndoRedo'\nimport { ModelChange } from '../utils/applyModelChange'\n\n/**\n * Converts an GridAction to a ModelChange for either undo or redo operations.\n * @param action - The action to convert\n * @param direction - 'undo' applies the inverse, 'redo' applies the original\n */\nexport function convertActionToModelChange(\n action: GridAction,\n direction: 'undo' | 'redo',\n): ModelChange | null {\n switch (action.type) {\n case 'CREATE':\n if (direction === 'undo') {\n // Undo CREATE => DELETE the row\n return { type: 'DELETE', rowIndex: action.rowIndex }\n } else {\n // Redo CREATE => recreate the row\n if (!action.newValue) return null\n return {\n type: 'CREATE',\n rowIndex: action.rowIndex,\n rowData: action.newValue,\n }\n }\n\n case 'UPDATE': {\n // Undo UPDATE => restore previous value\n const value =\n direction === 'undo' ? action.previousValue : action.newValue\n if (!value) return null\n\n return {\n type: 'UPDATE',\n rowIndex: action.rowIndex,\n updatedData: value,\n }\n }\n\n case 'DELETE':\n if (direction === 'undo') {\n // Undo DELETE => recreate row\n if (!action.previousValue) return null\n return {\n type: 'CREATE',\n rowIndex: action.rowIndex,\n rowData: action.previousValue,\n }\n } else {\n // Redo DELETE => delete the row again\n return { type: 'DELETE', rowIndex: action.rowIndex }\n }\n\n default:\n return null\n }\n}\n"],"mappings":";AAQA,SAAgBE,EACdC,GACAC,GACoB;AACpB,SAAQD,EAAOE,MAAf;EACE,KAAK,SAOD,QANED,MAAc,SAET;GAAEC,MAAM;GAAUC,UAAUH,EAAOG;GAAU,GAG/CH,EAAOI,WACL;GACLF,MAAM;GACNC,UAAUH,EAAOG;GACjBE,SAASL,EAAOI;GACjB,GAL4B;EAQjC,KAAK,UAAU;GAEb,IAAME,IACJL,MAAc,SAASD,EAAOO,gBAAgBP,EAAOI;AAGvD,UAFKE,IAEE;IACLJ,MAAM;IACNC,UAAUH,EAAOG;IACjBK,aAAaF;IACd,GANkB;;EASrB,KAAK,SAWD,QAVEL,MAAc,SAEXD,EAAOO,gBACL;GACLL,MAAM;GACNC,UAAUH,EAAOG;GACjBE,SAASL,EAAOO;GACjB,GALiC,OAQ3B;GAAEL,MAAM;GAAUC,UAAUH,EAAOG;GAAU;EAGxD,QACE,QAAO"}
1
+ {"version":3,"file":"convertActionToModelChange.js","names":["GridAction","ModelChange","convertActionToModelChange","action","direction","type","rowIndex","newValue","rowData","value","previousValue","updatedData"],"sources":["../../../../src/components/DataGrid/utils/convertActionToModelChange.ts"],"sourcesContent":["import { GridAction } from '../hooks/useGridUndoRedo'\nimport { ModelChange } from '../utils/applyModelChange'\n\n/**\n * Converts an GridAction to a ModelChange for either undo or redo operations.\n * @param action - The action to convert\n * @param direction - 'undo' applies the inverse, 'redo' applies the original\n */\nexport function convertActionToModelChange(\n action: GridAction,\n direction: 'undo' | 'redo',\n): ModelChange | null {\n switch (action.type) {\n case 'CREATE':\n if (direction === 'undo') {\n // Undo CREATE => DELETE the row\n return { type: 'DELETE', rowIndex: action.rowIndex }\n } else {\n // Redo CREATE => recreate the row\n if (!action.newValue) return null\n return {\n type: 'CREATE',\n rowIndex: action.rowIndex,\n rowData: action.newValue,\n }\n }\n\n case 'UPDATE': {\n // Undo UPDATE => restore previous value\n const value =\n direction === 'undo' ? action.previousValue : action.newValue\n if (!value) return null\n\n return {\n type: 'UPDATE',\n rowIndex: action.rowIndex,\n updatedData: value,\n }\n }\n\n case 'DELETE':\n if (direction === 'undo') {\n // Undo DELETE => recreate row\n if (!action.previousValue) return null\n return {\n type: 'CREATE',\n rowIndex: action.rowIndex,\n rowData: action.previousValue,\n }\n } else {\n // Redo DELETE => delete the row again\n return { type: 'DELETE', rowIndex: action.rowIndex }\n }\n\n default:\n return null\n }\n}\n"],"mappings":";AAQA,SAAgBE,EACdC,GACAC,GACoB;CACpB,QAAQD,EAAOE,MAAf;EACE,KAAK,UAOD,OANED,MAAc,SAET;GAAEC,MAAM;GAAUC,UAAUH,EAAOG;EAAS,IAG9CH,EAAOI,WACL;GACLF,MAAM;GACNC,UAAUH,EAAOG;GACjBE,SAASL,EAAOI;EAClB,IAL6B;EAQjC,KAAK,UAAU;GAEb,IAAME,IACJL,MAAc,SAASD,EAAOO,gBAAgBP,EAAOI;GAGvD,OAFKE,IAEE;IACLJ,MAAM;IACNC,UAAUH,EAAOG;IACjBK,aAAaF;GACf,IANmB;EAOrB;EAEA,KAAK,UAWD,OAVEL,MAAc,SAEXD,EAAOO,gBACL;GACLL,MAAM;GACNC,UAAUH,EAAOG;GACjBE,SAASL,EAAOO;EAClB,IALkC,OAQ3B;GAAEL,MAAM;GAAUC,UAAUH,EAAOG;EAAS;EAGvD,SACE,OAAO;CACX;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"createTestModel.js","names":["GridModel","gridSchema","s","Model","createTestModel","nRows","nCols","sid","model","create","i","api","arr","push","con","vec","data","j","obj"],"sources":["../../../../src/components/DataGrid/utils/createTestModel.ts"],"sourcesContent":["import { GridModel, gridSchema } from '@/components/DataGrid/DataGridTypes'\nimport { s } from 'json-joy/lib/json-crdt-patch/index'\nimport { Model } from 'json-joy/lib/json-crdt/index'\n\nexport default function createTestModel(\n nRows: number,\n nCols: number,\n sid?: number,\n): GridModel {\n const model = Model.create(gridSchema, sid)\n\n for (let i = 0; i < nCols; i++) {\n model.api.arr(['columnOrder']).push(s.con(i))\n model.api.vec(['columnNames']).push(s.con(`c${i}`))\n }\n\n for (let i = 0; i < nRows; i++) {\n const data = []\n for (let j = 0; j < nCols; j++) {\n data.push(s.con(`r${i}c${j}`))\n }\n model.api.arr(['rows']).push(\n s.obj({\n data: s.vec(...data),\n }),\n )\n }\n\n return model\n}\n"],"mappings":";;;;AAIA,SAAwBI,EACtBC,GACAC,GACAC,GACW;CACX,IAAMC,IAAQL,EAAMM,OAAOR,GAAYM,EAAI;AAE3C,MAAK,IAAIG,IAAI,GAAGA,IAAIJ,GAAOI,IAEzBF,CADAA,EAAMG,IAAIC,IAAI,CAAC,cAAc,CAAC,CAACC,KAAKX,EAAEY,IAAIJ,EAAE,CAAC,EAC7CF,EAAMG,IAAII,IAAI,CAAC,cAAc,CAAC,CAACF,KAAKX,EAAEY,IAAI,IAAIJ,IAAI,CAAC;AAGrD,MAAK,IAAIA,IAAI,GAAGA,IAAIL,GAAOK,KAAK;EAC9B,IAAMM,IAAO,EAAE;AACf,OAAK,IAAIC,IAAI,GAAGA,IAAIX,GAAOW,IACzBD,GAAKH,KAAKX,EAAEY,IAAI,IAAIJ,EAAC,GAAIO,IAAI,CAAC;AAEhCT,IAAMG,IAAIC,IAAI,CAAC,OAAO,CAAC,CAACC,KACtBX,EAAEgB,IAAI,EACJF,MAAMd,EAAEa,IAAI,GAAGC,EAAI,EACpB,CACH,CAAC;;AAGH,QAAOR"}
1
+ {"version":3,"file":"createTestModel.js","names":["GridModel","gridSchema","s","Model","createTestModel","nRows","nCols","sid","model","create","i","api","arr","push","con","vec","data","j","obj"],"sources":["../../../../src/components/DataGrid/utils/createTestModel.ts"],"sourcesContent":["import { GridModel, gridSchema } from '@/components/DataGrid/DataGridTypes'\nimport { s } from 'json-joy/lib/json-crdt-patch/index'\nimport { Model } from 'json-joy/lib/json-crdt/index'\n\nexport default function createTestModel(\n nRows: number,\n nCols: number,\n sid?: number,\n): GridModel {\n const model = Model.create(gridSchema, sid)\n\n for (let i = 0; i < nCols; i++) {\n model.api.arr(['columnOrder']).push(s.con(i))\n model.api.vec(['columnNames']).push(s.con(`c${i}`))\n }\n\n for (let i = 0; i < nRows; i++) {\n const data = []\n for (let j = 0; j < nCols; j++) {\n data.push(s.con(`r${i}c${j}`))\n }\n model.api.arr(['rows']).push(\n s.obj({\n data: s.vec(...data),\n }),\n )\n }\n\n return model\n}\n"],"mappings":";;;;AAIA,SAAwBI,EACtBC,GACAC,GACAC,GACW;CACX,IAAMC,IAAQL,EAAMM,OAAOR,GAAYM,CAAG;CAE1C,KAAK,IAAIG,IAAI,GAAGA,IAAIJ,GAAOI,KAEzBF,AADAA,EAAMG,IAAIC,IAAI,CAAC,aAAa,CAAC,EAAEC,KAAKX,EAAEY,IAAIJ,CAAC,CAAC,GAC5CF,EAAMG,IAAII,IAAI,CAAC,aAAa,CAAC,EAAEF,KAAKX,EAAEY,IAAI,IAAIJ,GAAG,CAAC;CAGpD,KAAK,IAAIA,IAAI,GAAGA,IAAIL,GAAOK,KAAK;EAC9B,IAAMM,IAAO,CAAA;EACb,KAAK,IAAIC,IAAI,GAAGA,IAAIX,GAAOW,KACzBD,EAAKH,KAAKX,EAAEY,IAAI,IAAIJ,EAAC,GAAIO,GAAG,CAAC;EAE/BT,EAAMG,IAAIC,IAAI,CAAC,MAAM,CAAC,EAAEC,KACtBX,EAAEgB,IAAI,EACJF,MAAMd,EAAEa,IAAI,GAAGC,CAAI,EACrB,CAAC,CACH;CACF;CAEA,OAAOR;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"enrichRowsWithChangeInfo.js","names":["CellChangeInfo","DataGridRow","GridModel","GridModelSnapshot","ReplicaUserInfo","getCellAuthorSid","getChangeTooltipText","enrichRowsWithChangeInfo","rows","model","modelSnapshot","replicaUserMap","ReadonlyMap","size","columnNames","columnOrder","map","row","rowIndex","cellChangeInfo","Record","forEach","colArrayIndex","columnName","sid","info","get","category","tooltipText","Object","keys","length","__cellChangeInfo"],"sources":["../../../../src/components/DataGrid/utils/enrichRowsWithChangeInfo.ts"],"sourcesContent":["import type {\n CellChangeInfo,\n DataGridRow,\n GridModel,\n GridModelSnapshot,\n} from '../DataGridTypes'\nimport type { ReplicaUserInfo } from '../hooks/useGridReplicaUsers'\nimport { getCellAuthorSid } from './getCellAuthorSid'\nimport { getChangeTooltipText } from './getChangeTooltipText'\n\n/**\n * Enriches each row in `rows` with a `__cellChangeInfo` map that records the\n * change category and tooltip text for every cell whose last author is present\n * in `replicaUserMap`.\n *\n * Short-circuits (returning the original array reference) when the model or\n * snapshot is absent, or when no replica attribution data is available yet.\n * Rows with no attributed cells are returned by reference to preserve React\n * referential equality.\n */\nexport function enrichRowsWithChangeInfo(\n rows: DataGridRow[],\n model: GridModel | null,\n modelSnapshot: GridModelSnapshot | null,\n replicaUserMap: ReadonlyMap<number, ReplicaUserInfo>,\n): DataGridRow[] {\n if (!model || !modelSnapshot || replicaUserMap.size === 0) return rows\n\n const { columnNames, columnOrder } = modelSnapshot\n\n return rows.map((row, rowIndex) => {\n const cellChangeInfo: Record<string, CellChangeInfo> = {}\n\n columnOrder.forEach((colArrayIndex: number) => {\n const columnName = columnNames[colArrayIndex]\n if (!columnName) return\n\n const sid = getCellAuthorSid(model, rowIndex, colArrayIndex)\n if (sid === null) return\n\n const info = replicaUserMap.get(sid)\n if (!info) return\n\n cellChangeInfo[columnName] = {\n category: info.category,\n tooltipText: getChangeTooltipText(info),\n }\n })\n\n return Object.keys(cellChangeInfo).length > 0\n ? { ...row, __cellChangeInfo: cellChangeInfo }\n : row\n })\n}\n"],"mappings":";;;AAoBA,SAAgBO,EACdC,GACAC,GACAC,GACAC,GACe;AACf,KAAI,CAACF,KAAS,CAACC,KAAiBC,EAAeE,SAAS,EAAG,QAAOL;CAElE,IAAM,EAAEM,gBAAaC,mBAAgBL;AAErC,QAAOF,EAAKQ,KAAKC,GAAKC,MAAa;EACjC,IAAMC,IAAiD,EAAE;AAkBzD,SAhBAJ,EAAYM,SAASC,MAA0B;GAC7C,IAAMC,IAAaT,EAAYQ;AAC/B,OAAI,CAACC,EAAY;GAEjB,IAAMC,IAAMnB,EAAiBI,GAAOS,GAAUI,EAAc;AAC5D,OAAIE,MAAQ,KAAM;GAElB,IAAMC,IAAOd,EAAee,IAAIF,EAAI;AAC/BC,SAELN,EAAeI,KAAc;IAC3BI,UAAUF,EAAKE;IACfC,aAAatB,EAAqBmB,EAAI;IACvC;IACD,EAEKI,OAAOC,KAAKX,EAAe,CAACY,SAAS,IACxC;GAAE,GAAGd;GAAKe,kBAAkBb;GAAgB,GAC5CF;GACJ"}
1
+ {"version":3,"file":"enrichRowsWithChangeInfo.js","names":["CellChangeInfo","DataGridRow","GridModel","GridModelSnapshot","ReplicaUserInfo","getCellAuthorSid","getChangeTooltipText","enrichRowsWithChangeInfo","rows","model","modelSnapshot","replicaUserMap","ReadonlyMap","size","columnNames","columnOrder","map","row","rowIndex","cellChangeInfo","Record","forEach","colArrayIndex","columnName","sid","info","get","category","tooltipText","Object","keys","length","__cellChangeInfo"],"sources":["../../../../src/components/DataGrid/utils/enrichRowsWithChangeInfo.ts"],"sourcesContent":["import type {\n CellChangeInfo,\n DataGridRow,\n GridModel,\n GridModelSnapshot,\n} from '../DataGridTypes'\nimport type { ReplicaUserInfo } from '../hooks/useGridReplicaUsers'\nimport { getCellAuthorSid } from './getCellAuthorSid'\nimport { getChangeTooltipText } from './getChangeTooltipText'\n\n/**\n * Enriches each row in `rows` with a `__cellChangeInfo` map that records the\n * change category and tooltip text for every cell whose last author is present\n * in `replicaUserMap`.\n *\n * Short-circuits (returning the original array reference) when the model or\n * snapshot is absent, or when no replica attribution data is available yet.\n * Rows with no attributed cells are returned by reference to preserve React\n * referential equality.\n */\nexport function enrichRowsWithChangeInfo(\n rows: DataGridRow[],\n model: GridModel | null,\n modelSnapshot: GridModelSnapshot | null,\n replicaUserMap: ReadonlyMap<number, ReplicaUserInfo>,\n): DataGridRow[] {\n if (!model || !modelSnapshot || replicaUserMap.size === 0) return rows\n\n const { columnNames, columnOrder } = modelSnapshot\n\n return rows.map((row, rowIndex) => {\n const cellChangeInfo: Record<string, CellChangeInfo> = {}\n\n columnOrder.forEach((colArrayIndex: number) => {\n const columnName = columnNames[colArrayIndex]\n if (!columnName) return\n\n const sid = getCellAuthorSid(model, rowIndex, colArrayIndex)\n if (sid === null) return\n\n const info = replicaUserMap.get(sid)\n if (!info) return\n\n cellChangeInfo[columnName] = {\n category: info.category,\n tooltipText: getChangeTooltipText(info),\n }\n })\n\n return Object.keys(cellChangeInfo).length > 0\n ? { ...row, __cellChangeInfo: cellChangeInfo }\n : row\n })\n}\n"],"mappings":";;;AAoBA,SAAgBO,EACdC,GACAC,GACAC,GACAC,GACe;CACf,IAAI,CAACF,KAAS,CAACC,KAAiBC,EAAeE,SAAS,GAAG,OAAOL;CAElE,IAAM,EAAEM,gBAAaC,mBAAgBL;CAErC,OAAOF,EAAKQ,KAAKC,GAAKC,MAAa;EACjC,IAAMC,IAAiD,CAAC;EAkBxD,OAhBAJ,EAAYM,SAASC,MAA0B;GAC7C,IAAMC,IAAaT,EAAYQ;GAC/B,IAAI,CAACC,GAAY;GAEjB,IAAMC,IAAMnB,EAAiBI,GAAOS,GAAUI,CAAa;GAC3D,IAAIE,MAAQ,MAAM;GAElB,IAAMC,IAAOd,EAAee,IAAIF,CAAG;GAC9BC,MAELN,EAAeI,KAAc;IAC3BI,UAAUF,EAAKE;IACfC,aAAatB,EAAqBmB,CAAI;GACxC;EACF,CAAC,GAEMI,OAAOC,KAAKX,CAAc,EAAEY,SAAS,IACxC;GAAE,GAAGd;GAAKe,kBAAkBb;EAAe,IAC3CF;CACN,CAAC;AACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"extractColumnValidationMessages.js","names":["extractColumnValidationMessages","messages","Map","columnMap","regex","raw","str","trimStart","match","columnName","trim","message","requiredKeyMatch","has","set","get","push"],"sources":["../../../../src/components/DataGrid/utils/extractColumnValidationMessages.ts"],"sourcesContent":["/**\n * Extracts column name and validation message from validation message strings.\n *\n * Example:\n * extractColumnValidationMessages([\"#/platform: null is not a valid enum value\"])\n * -> Map { \"platform\" => [\"null is not a valid enum value\"] }\n *\n * extractColumnValidationMessages([\"#/requiredNumberArrayColumn/0: some error\"])\n * -> Map { \"requiredNumberArrayColumn\" => [\"some error\"] }\n *\n * extractColumnValidationMessages([\"#: row-level error\"])\n * -> Map { \"_row\" => [\"row-level error\"] }\n *\n * extractColumnValidationMessages([\"#: required key [missingColumn] not found\"])\n * -> Map { \"missingColumn\" => [\"required key [missingColumn] not found\"] }\n */\nexport function extractColumnValidationMessages(\n messages: string[],\n): Map<string, string[]> {\n const columnMap = new Map<string, string[]>()\n // Validation message format: \"#/columnName: message\"\n // or for array items: \"#/columnName/0: message\"\n // or for object (row) level: \"#: message\"\n const regex = /^#(?:\\/([^/:]+)(?:\\/\\d+)?)?:\\s*(.*)$/\n\n for (const raw of messages) {\n if (typeof raw !== 'string') continue\n const str = raw.trimStart()\n const match = str.match(regex)\n if (match) {\n let columnName = match[1]?.trim() ?? '_row'\n const message = match[2].trim()\n if (columnName === '_row') {\n const requiredKeyMatch = message.match(\n /^required key \\[([^\\]]+)\\] not found$/i,\n )\n if (requiredKeyMatch) {\n columnName = requiredKeyMatch[1]\n }\n }\n\n if (!columnMap.has(columnName)) {\n columnMap.set(columnName, [])\n }\n columnMap.get(columnName)!.push(message)\n }\n }\n\n return columnMap\n}\n"],"mappings":";AAgBA,SAAgBA,EACdC,GACuB;CACvB,IAAME,oBAAY,IAAID,KAAuB,EAIvCE,IAAQ;AAEd,MAAK,IAAMC,KAAOJ,GAAU;AAC1B,MAAI,OAAOI,KAAQ,SAAU;EAE7B,IAAMG,IADMH,EAAIE,WACFD,CAAIE,MAAMJ,EAAM;AAC9B,MAAII,GAAO;GACT,IAAIC,IAAaD,EAAM,IAAIE,MAAM,IAAI,QAC/BC,IAAUH,EAAM,GAAGE,MAAM;AAC/B,OAAID,MAAe,QAAQ;IACzB,IAAMG,IAAmBD,EAAQH,MAC/B,yCACD;AACD,IAAII,MACFH,IAAaG,EAAiB;;AAOlCT,GAHKA,EAAUU,IAAIJ,EAAW,IAC5BN,EAAUW,IAAIL,GAAY,EAAE,CAAC,EAE/BN,EAAUY,IAAIN,EAAW,CAAEO,KAAKL,EAAQ;;;AAI5C,QAAOR"}
1
+ {"version":3,"file":"extractColumnValidationMessages.js","names":["extractColumnValidationMessages","messages","Map","columnMap","regex","raw","str","trimStart","match","columnName","trim","message","requiredKeyMatch","has","set","get","push"],"sources":["../../../../src/components/DataGrid/utils/extractColumnValidationMessages.ts"],"sourcesContent":["/**\n * Extracts column name and validation message from validation message strings.\n *\n * Example:\n * extractColumnValidationMessages([\"#/platform: null is not a valid enum value\"])\n * -> Map { \"platform\" => [\"null is not a valid enum value\"] }\n *\n * extractColumnValidationMessages([\"#/requiredNumberArrayColumn/0: some error\"])\n * -> Map { \"requiredNumberArrayColumn\" => [\"some error\"] }\n *\n * extractColumnValidationMessages([\"#: row-level error\"])\n * -> Map { \"_row\" => [\"row-level error\"] }\n *\n * extractColumnValidationMessages([\"#: required key [missingColumn] not found\"])\n * -> Map { \"missingColumn\" => [\"required key [missingColumn] not found\"] }\n */\nexport function extractColumnValidationMessages(\n messages: string[],\n): Map<string, string[]> {\n const columnMap = new Map<string, string[]>()\n // Validation message format: \"#/columnName: message\"\n // or for array items: \"#/columnName/0: message\"\n // or for object (row) level: \"#: message\"\n const regex = /^#(?:\\/([^/:]+)(?:\\/\\d+)?)?:\\s*(.*)$/\n\n for (const raw of messages) {\n if (typeof raw !== 'string') continue\n const str = raw.trimStart()\n const match = str.match(regex)\n if (match) {\n let columnName = match[1]?.trim() ?? '_row'\n const message = match[2].trim()\n if (columnName === '_row') {\n const requiredKeyMatch = message.match(\n /^required key \\[([^\\]]+)\\] not found$/i,\n )\n if (requiredKeyMatch) {\n columnName = requiredKeyMatch[1]\n }\n }\n\n if (!columnMap.has(columnName)) {\n columnMap.set(columnName, [])\n }\n columnMap.get(columnName)!.push(message)\n }\n }\n\n return columnMap\n}\n"],"mappings":";AAgBA,SAAgBA,EACdC,GACuB;CACvB,IAAME,oBAAY,IAAID,IAAsB,GAItCE,IAAQ;CAEd,KAAK,IAAMC,KAAOJ,GAAU;EAC1B,IAAI,OAAOI,KAAQ,UAAU;EAE7B,IAAMG,IADMH,EAAIE,UACFD,EAAIE,MAAMJ,CAAK;EAC7B,IAAII,GAAO;GACT,IAAIC,IAAaD,EAAM,IAAIE,KAAK,KAAK,QAC/BC,IAAUH,EAAM,GAAGE,KAAK;GAC9B,IAAID,MAAe,QAAQ;IACzB,IAAMG,IAAmBD,EAAQH,MAC/B,wCACF;IACA,AAAII,MACFH,IAAaG,EAAiB;GAElC;GAKAT,AAHKA,EAAUU,IAAIJ,CAAU,KAC3BN,EAAUW,IAAIL,GAAY,CAAA,CAAE,GAE9BN,EAAUY,IAAIN,CAAU,EAAGO,KAAKL,CAAO;EACzC;CACF;CAEA,OAAOR;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"getCellAuthorSid.js","names":["GridModel","getCellAuthorSid","model","rowIndex","colIndex","api","vec","String","get","node","id","sid"],"sources":["../../../../src/components/DataGrid/utils/getCellAuthorSid.ts"],"sourcesContent":["import type { GridModel } from '@/components/DataGrid/DataGridTypes'\n\n/**\n * Returns the sid (replica ID) of the last writer for a given cell in the CRDT\n * model, or null if the cell is unreachable (e.g. out-of-bounds row/column).\n */\nexport function getCellAuthorSid(\n model: GridModel,\n rowIndex: number,\n colIndex: number,\n): number | null {\n try {\n return model.api.vec(['rows', String(rowIndex), 'data']).get(colIndex).node\n .id.sid\n } catch {\n return null\n }\n}\n"],"mappings":";AAMA,SAAgBC,EACdC,GACAC,GACAC,GACe;AACf,KAAI;AACF,SAAOF,EAAMG,IAAIC,IAAI;GAAC;GAAQC,OAAOJ,EAAS;GAAE;GAAO,CAAC,CAACK,IAAIJ,EAAS,CAACK,KACpEC,GAAGC;SACA;AACN,SAAO"}
1
+ {"version":3,"file":"getCellAuthorSid.js","names":["GridModel","getCellAuthorSid","model","rowIndex","colIndex","api","vec","String","get","node","id","sid"],"sources":["../../../../src/components/DataGrid/utils/getCellAuthorSid.ts"],"sourcesContent":["import type { GridModel } from '@/components/DataGrid/DataGridTypes'\n\n/**\n * Returns the sid (replica ID) of the last writer for a given cell in the CRDT\n * model, or null if the cell is unreachable (e.g. out-of-bounds row/column).\n */\nexport function getCellAuthorSid(\n model: GridModel,\n rowIndex: number,\n colIndex: number,\n): number | null {\n try {\n return model.api.vec(['rows', String(rowIndex), 'data']).get(colIndex).node\n .id.sid\n } catch {\n return null\n }\n}\n"],"mappings":";AAMA,SAAgBC,EACdC,GACAC,GACAC,GACe;CACf,IAAI;EACF,OAAOF,EAAMG,IAAIC,IAAI;GAAC;GAAQC,OAAOJ,CAAQ;GAAG;EAAM,CAAC,EAAEK,IAAIJ,CAAQ,EAAEK,KACpEC,GAAGC;CACR,QAAQ;EACN,OAAO;CACT;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"getCellClassName.js","names":["classNames","DataGridRow","SelectionWithId","Column","RemoteSelection","getCellClassName","params","rowData","rowIndex","columnId","selectedRowIndex","lastSelection","colValues","remoteSelections","isSelected","cellValidationResults","__cellValidationResults","validationStatus","__validationStatus","hasCellError","has","classList","push","isInSelection","min","row","max","findIndex","col","id","cellChangeInfo","__cellChangeInfo","undefined","category","remote","minRow","maxRow","columnNames","remoteColumnNames","range","colorIndex","length"],"sources":["../../../../src/components/DataGrid/utils/getCellClassName.ts"],"sourcesContent":["import classNames from 'classnames'\nimport { DataGridRow } from '../DataGridTypes'\nimport { SelectionWithId } from '@sage-bionetworks/react-datasheet-grid'\nimport { Column } from '@sage-bionetworks/react-datasheet-grid'\nimport type { RemoteSelection } from '../hooks/useRemoteSelections'\n\nexport function getCellClassName(params: {\n rowData: DataGridRow\n rowIndex: number\n columnId?: string\n selectedRowIndex: number | null\n lastSelection?: SelectionWithId | null\n colValues?: Column[]\n remoteSelections?: readonly RemoteSelection[]\n}): string | undefined {\n const {\n rowData,\n rowIndex,\n columnId,\n selectedRowIndex,\n lastSelection,\n colValues,\n remoteSelections,\n } = params\n\n const isSelected = selectedRowIndex === rowIndex\n const cellValidationResults = rowData.__cellValidationResults\n const validationStatus = rowData.__validationStatus\n const hasCellError =\n cellValidationResults != null &&\n columnId != null &&\n cellValidationResults.has(columnId)\n\n const classList: string[] = []\n\n if (isSelected) {\n classList.push('cell-row-selected')\n }\n\n // Add selection styling based on lastSelection\n let isInSelection = false\n if (lastSelection && columnId && colValues) {\n isInSelection =\n rowIndex >= lastSelection.min.row &&\n rowIndex <= lastSelection.max.row &&\n colValues.findIndex(col => col.id === columnId) >=\n lastSelection.min.col &&\n colValues.findIndex(col => col.id === columnId) <= lastSelection.max.col\n\n if (isInSelection) {\n classList.push('cell-selected')\n }\n }\n\n if (hasCellError) {\n // Confirmed invalid — full red cell background\n if (validationStatus === 'invalid') {\n classList.push('cell-invalid')\n }\n // Pending revalidation — yellow cell background to signal the prior error is unconfirmed\n if (validationStatus === 'pending') {\n classList.push('cell-unknown')\n }\n }\n\n // ── Cell change indicator ─────────────────────────────────────────────────\n const cellChangeInfo = columnId\n ? rowData.__cellChangeInfo?.[columnId]\n : undefined\n if (cellChangeInfo) {\n classList.push(`cell-changed--${cellChangeInfo.category}`)\n }\n\n // ── Remote selection tint ─────────────────────────────────────────────────\n if (remoteSelections && columnId) {\n for (const remote of remoteSelections) {\n const { minRow, maxRow, columnNames: remoteColumnNames } = remote.range\n if (rowIndex < minRow || rowIndex > maxRow) continue\n if (remoteColumnNames !== undefined && !remoteColumnNames.has(columnId))\n continue\n classList.push('cell-remote-selected')\n classList.push(`cell-remote-selected--color-${remote.colorIndex}`)\n break // apply the first matching remote selection only\n }\n }\n\n return classList.length ? classNames(classList) : undefined\n}\n"],"mappings":";;AAMA,SAAgBK,EAAiBC,GAQV;CACrB,IAAM,EACJC,YACAC,aACAC,aACAC,qBACAC,kBACAC,cACAC,wBACEP,GAEEQ,IAAaJ,MAAqBF,GAClCO,IAAwBR,EAAQS,yBAChCC,IAAmBV,EAAQW,oBAC3BC,IACJJ,KAAyB,QACzBN,KAAY,QACZM,EAAsBK,IAAIX,EAAS,EAE/BY,IAAsB,EAAE;AAE9B,CAAIP,KACFO,EAAUC,KAAK,oBAAoB;CAIrC,IAAIC,IAAgB;AAcpB,CAbIZ,KAAiBF,KAAYG,MAC/BW,IACEf,KAAYG,EAAca,IAAIC,OAC9BjB,KAAYG,EAAce,IAAID,OAC9Bb,EAAUe,WAAUC,MAAOA,EAAIC,OAAOpB,EAAS,IAC7CE,EAAca,IAAII,OACpBhB,EAAUe,WAAUC,MAAOA,EAAIC,OAAOpB,EAAS,IAAIE,EAAce,IAAIE,KAEnEL,KACFF,EAAUC,KAAK,gBAAgB,GAI/BH,MAEEF,MAAqB,aACvBI,EAAUC,KAAK,eAAe,EAG5BL,MAAqB,aACvBI,EAAUC,KAAK,eAAe;CAKlC,IAAMQ,IAAiBrB,IACnBF,EAAQwB,mBAAmBtB,KAC3BuB,KAAAA;AAMJ,KALIF,KACFT,EAAUC,KAAK,iBAAiBQ,EAAeG,WAAW,EAIxDpB,KAAoBJ,EACtB,MAAK,IAAMyB,KAAUrB,GAAkB;EACrC,IAAM,EAAEsB,WAAQC,WAAQC,aAAaC,MAAsBJ,EAAOK;AAC9D/B,YAAW2B,KAAU3B,IAAW4B,MAChCE,QAAsBN,KAAAA,KAAa,CAACM,EAAkBlB,IAAIX,EAAS,GAGvEY;GADAA,EAAUC,KAAK,uBAAuB,EACtCD,EAAUC,KAAK,+BAA+BY,EAAOM,aAAa;AAClE;;;AAIJ,QAAOnB,EAAUoB,SAASzC,EAAWqB,EAAU,GAAGW,KAAAA"}
1
+ {"version":3,"file":"getCellClassName.js","names":["classNames","DataGridRow","SelectionWithId","Column","RemoteSelection","getCellClassName","params","rowData","rowIndex","columnId","selectedRowIndex","lastSelection","colValues","remoteSelections","isSelected","cellValidationResults","__cellValidationResults","validationStatus","__validationStatus","hasCellError","has","classList","push","isInSelection","min","row","max","findIndex","col","id","cellChangeInfo","__cellChangeInfo","undefined","category","remote","minRow","maxRow","columnNames","remoteColumnNames","range","colorIndex","length"],"sources":["../../../../src/components/DataGrid/utils/getCellClassName.ts"],"sourcesContent":["import classNames from 'classnames'\nimport { DataGridRow } from '../DataGridTypes'\nimport { SelectionWithId } from '@sage-bionetworks/react-datasheet-grid'\nimport { Column } from '@sage-bionetworks/react-datasheet-grid'\nimport type { RemoteSelection } from '../hooks/useRemoteSelections'\n\nexport function getCellClassName(params: {\n rowData: DataGridRow\n rowIndex: number\n columnId?: string\n selectedRowIndex: number | null\n lastSelection?: SelectionWithId | null\n colValues?: Column[]\n remoteSelections?: readonly RemoteSelection[]\n}): string | undefined {\n const {\n rowData,\n rowIndex,\n columnId,\n selectedRowIndex,\n lastSelection,\n colValues,\n remoteSelections,\n } = params\n\n const isSelected = selectedRowIndex === rowIndex\n const cellValidationResults = rowData.__cellValidationResults\n const validationStatus = rowData.__validationStatus\n const hasCellError =\n cellValidationResults != null &&\n columnId != null &&\n cellValidationResults.has(columnId)\n\n const classList: string[] = []\n\n if (isSelected) {\n classList.push('cell-row-selected')\n }\n\n // Add selection styling based on lastSelection\n let isInSelection = false\n if (lastSelection && columnId && colValues) {\n isInSelection =\n rowIndex >= lastSelection.min.row &&\n rowIndex <= lastSelection.max.row &&\n colValues.findIndex(col => col.id === columnId) >=\n lastSelection.min.col &&\n colValues.findIndex(col => col.id === columnId) <= lastSelection.max.col\n\n if (isInSelection) {\n classList.push('cell-selected')\n }\n }\n\n if (hasCellError) {\n // Confirmed invalid — full red cell background\n if (validationStatus === 'invalid') {\n classList.push('cell-invalid')\n }\n // Pending revalidation — yellow cell background to signal the prior error is unconfirmed\n if (validationStatus === 'pending') {\n classList.push('cell-unknown')\n }\n }\n\n // ── Cell change indicator ─────────────────────────────────────────────────\n const cellChangeInfo = columnId\n ? rowData.__cellChangeInfo?.[columnId]\n : undefined\n if (cellChangeInfo) {\n classList.push(`cell-changed--${cellChangeInfo.category}`)\n }\n\n // ── Remote selection tint ─────────────────────────────────────────────────\n if (remoteSelections && columnId) {\n for (const remote of remoteSelections) {\n const { minRow, maxRow, columnNames: remoteColumnNames } = remote.range\n if (rowIndex < minRow || rowIndex > maxRow) continue\n if (remoteColumnNames !== undefined && !remoteColumnNames.has(columnId))\n continue\n classList.push('cell-remote-selected')\n classList.push(`cell-remote-selected--color-${remote.colorIndex}`)\n break // apply the first matching remote selection only\n }\n }\n\n return classList.length ? classNames(classList) : undefined\n}\n"],"mappings":";;AAMA,SAAgBK,EAAiBC,GAQV;CACrB,IAAM,EACJC,YACAC,aACAC,aACAC,qBACAC,kBACAC,cACAC,wBACEP,GAEEQ,IAAaJ,MAAqBF,GAClCO,IAAwBR,EAAQS,yBAChCC,IAAmBV,EAAQW,oBAC3BC,IACJJ,KAAyB,QACzBN,KAAY,QACZM,EAAsBK,IAAIX,CAAQ,GAE9BY,IAAsB,CAAA;CAE5B,AAAIP,KACFO,EAAUC,KAAK,mBAAmB;CAIpC,IAAIC,IAAgB;CAcpB,AAbIZ,KAAiBF,KAAYG,MAC/BW,IACEf,KAAYG,EAAca,IAAIC,OAC9BjB,KAAYG,EAAce,IAAID,OAC9Bb,EAAUe,WAAUC,MAAOA,EAAIC,OAAOpB,CAAQ,KAC5CE,EAAca,IAAII,OACpBhB,EAAUe,WAAUC,MAAOA,EAAIC,OAAOpB,CAAQ,KAAKE,EAAce,IAAIE,KAEnEL,KACFF,EAAUC,KAAK,eAAe,IAI9BH,MAEEF,MAAqB,aACvBI,EAAUC,KAAK,cAAc,GAG3BL,MAAqB,aACvBI,EAAUC,KAAK,cAAc;CAKjC,IAAMQ,IAAiBrB,IACnBF,EAAQwB,mBAAmBtB,KAC3BuB,KAAAA;CAMJ,IALIF,KACFT,EAAUC,KAAK,iBAAiBQ,EAAeG,UAAU,GAIvDpB,KAAoBJ,GACtB,KAAK,IAAMyB,KAAUrB,GAAkB;EACrC,IAAM,EAAEsB,WAAQC,WAAQC,aAAaC,MAAsBJ,EAAOK;EAC9D/B,UAAW2B,KAAU3B,IAAW4B,MAChCE,QAAsBN,KAAAA,KAAa,CAACM,EAAkBlB,IAAIX,CAAQ,IAGtEY;GADAA,EAAUC,KAAK,sBAAsB,GACrCD,EAAUC,KAAK,+BAA+BY,EAAOM,YAAY;GACjE;EADiE;CAEnE;CAGF,OAAOnB,EAAUoB,SAASzC,EAAWqB,CAAS,IAAIW,KAAAA;AACpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"getChangeTooltipText.js","names":["ReplicaUserInfo","getChangeTooltipText","info","category","profile","name","firstName","lastName","filter","Boolean","join","trim","userName"],"sources":["../../../../src/components/DataGrid/utils/getChangeTooltipText.ts"],"sourcesContent":["import type { ReplicaUserInfo } from '../hooks/useGridReplicaUsers'\n\n/**\n * Returns a human-readable tooltip string describing who last changed a cell,\n * based on the replica's category and (if available) the user's profile.\n */\nexport function getChangeTooltipText(info: ReplicaUserInfo): string {\n switch (info.category) {\n case 'self':\n return 'You changed this'\n case 'own-agent':\n return 'Changed by your agent'\n case 'other-agent':\n return 'Changed by an agent'\n case 'other-user': {\n const { profile } = info\n if (!profile) return 'Changed by another user'\n const name =\n [profile.firstName, profile.lastName]\n .filter(Boolean)\n .join(' ')\n .trim() || profile.userName\n return `Changed by ${name}`\n }\n }\n}\n"],"mappings":";AAMA,SAAgBC,EAAqBC,GAA+B;AAClE,SAAQA,EAAKC,UAAb;EACE,KAAK,OACH,QAAO;EACT,KAAK,YACH,QAAO;EACT,KAAK,cACH,QAAO;EACT,KAAK,cAAc;GACjB,IAAM,EAAEC,eAAYF;AAOpB,UANKE,IAME,cAJL,CAACA,EAAQE,WAAWF,EAAQG,SAAS,CAClCC,OAAOC,QAAQ,CACfC,KAAK,IAAI,CACTC,MAAM,IAAIP,EAAQQ,aALF"}
1
+ {"version":3,"file":"getChangeTooltipText.js","names":["ReplicaUserInfo","getChangeTooltipText","info","category","profile","name","firstName","lastName","filter","Boolean","join","trim","userName"],"sources":["../../../../src/components/DataGrid/utils/getChangeTooltipText.ts"],"sourcesContent":["import type { ReplicaUserInfo } from '../hooks/useGridReplicaUsers'\n\n/**\n * Returns a human-readable tooltip string describing who last changed a cell,\n * based on the replica's category and (if available) the user's profile.\n */\nexport function getChangeTooltipText(info: ReplicaUserInfo): string {\n switch (info.category) {\n case 'self':\n return 'You changed this'\n case 'own-agent':\n return 'Changed by your agent'\n case 'other-agent':\n return 'Changed by an agent'\n case 'other-user': {\n const { profile } = info\n if (!profile) return 'Changed by another user'\n const name =\n [profile.firstName, profile.lastName]\n .filter(Boolean)\n .join(' ')\n .trim() || profile.userName\n return `Changed by ${name}`\n }\n }\n}\n"],"mappings":";AAMA,SAAgBC,EAAqBC,GAA+B;CAClE,QAAQA,EAAKC,UAAb;EACE,KAAK,QACH,OAAO;EACT,KAAK,aACH,OAAO;EACT,KAAK,eACH,OAAO;EACT,KAAK,cAAc;GACjB,IAAM,EAAEC,eAAYF;GAOpB,OANKE,IAME,cAJL,CAACA,EAAQE,WAAWF,EAAQG,QAAQ,EACjCC,OAAOC,OAAO,EACdC,KAAK,GAAG,EACRC,KAAK,KAAKP,EAAQQ,aALF;EAOvB;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"getEmptyValue.js","names":[],"sources":["../../../../src/components/DataGrid/utils/getEmptyValue.ts"],"sourcesContent":["export function getEmptyValue(isRequired?: boolean) {\n return isRequired ? null : undefined\n}\n"],"mappings":";AAAA,SAAgB,EAAc,GAAsB;AAClD,QAAO,IAAa,OAAO,KAAA"}
1
+ {"version":3,"file":"getEmptyValue.js","names":[],"sources":["../../../../src/components/DataGrid/utils/getEmptyValue.ts"],"sourcesContent":["export function getEmptyValue(isRequired?: boolean) {\n return isRequired ? null : undefined\n}\n"],"mappings":";AAAA,SAAgB,EAAc,GAAsB;CAClD,OAAO,IAAa,OAAO,KAAA;AAC7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"getReplicaCategory.js","names":["GridReplicaInfo","ReplicaCategory","getReplicaCategory","replica","currentUserId","localReplicaId","replicaType","createdBy","replicaId","isOwnUser"],"sources":["../../../../src/components/DataGrid/utils/getReplicaCategory.ts"],"sourcesContent":["import type { GridReplicaInfo } from '@sage-bionetworks/synapse-client'\n\n/**\n * Categories used for attributing cell changes and coloring indicators.\n * SERVICE replica changes are excluded entirely.\n */\nexport type ReplicaCategory =\n | 'self' // this client's own replica\n | 'own-agent' // an AGENT replica created by this user\n | 'other-user' // a USER replica created by another user\n | 'other-agent' // an AGENT replica created by another user\n\n/**\n * Classify a replica relative to the current user.\n * Returns null for SERVICE replicas, which should be ignored for attribution.\n */\nexport function getReplicaCategory(\n replica: GridReplicaInfo,\n currentUserId: string,\n localReplicaId: number,\n): ReplicaCategory | null {\n const { replicaType, createdBy, replicaId } = replica\n\n if (replicaType === 'SERVICE') {\n return null\n }\n\n if (replicaId === localReplicaId) {\n return 'self'\n }\n\n const isOwnUser = createdBy === currentUserId\n\n if (replicaType === 'AGENT') {\n return isOwnUser ? 'own-agent' : 'other-agent'\n }\n\n // USER\n return isOwnUser ? 'self' : 'other-user'\n}\n"],"mappings":";AAgBA,SAAgBE,EACdC,GACAC,GACAC,GACwB;CACxB,IAAM,EAAEC,gBAAaC,cAAWC,iBAAcL;AAE9C,KAAIG,MAAgB,UAClB,QAAO;AAGT,KAAIE,MAAcH,EAChB,QAAO;CAGT,IAAMI,IAAYF,MAAcH;AAOhC,QALIE,MAAgB,UACXG,IAAY,cAAc,gBAI5BA,IAAY,SAAS"}
1
+ {"version":3,"file":"getReplicaCategory.js","names":["GridReplicaInfo","ReplicaCategory","getReplicaCategory","replica","currentUserId","localReplicaId","replicaType","createdBy","replicaId","isOwnUser"],"sources":["../../../../src/components/DataGrid/utils/getReplicaCategory.ts"],"sourcesContent":["import type { GridReplicaInfo } from '@sage-bionetworks/synapse-client'\n\n/**\n * Categories used for attributing cell changes and coloring indicators.\n * SERVICE replica changes are excluded entirely.\n */\nexport type ReplicaCategory =\n | 'self' // this client's own replica\n | 'own-agent' // an AGENT replica created by this user\n | 'other-user' // a USER replica created by another user\n | 'other-agent' // an AGENT replica created by another user\n\n/**\n * Classify a replica relative to the current user.\n * Returns null for SERVICE replicas, which should be ignored for attribution.\n */\nexport function getReplicaCategory(\n replica: GridReplicaInfo,\n currentUserId: string,\n localReplicaId: number,\n): ReplicaCategory | null {\n const { replicaType, createdBy, replicaId } = replica\n\n if (replicaType === 'SERVICE') {\n return null\n }\n\n if (replicaId === localReplicaId) {\n return 'self'\n }\n\n const isOwnUser = createdBy === currentUserId\n\n if (replicaType === 'AGENT') {\n return isOwnUser ? 'own-agent' : 'other-agent'\n }\n\n // USER\n return isOwnUser ? 'self' : 'other-user'\n}\n"],"mappings":";AAgBA,SAAgBE,EACdC,GACAC,GACAC,GACwB;CACxB,IAAM,EAAEC,gBAAaC,cAAWC,iBAAcL;CAE9C,IAAIG,MAAgB,WAClB,OAAO;CAGT,IAAIE,MAAcH,GAChB,OAAO;CAGT,IAAMI,IAAYF,MAAcH;CAOhC,OALIE,MAAgB,UACXG,IAAY,cAAc,gBAI5BA,IAAY,SAAS;AAC9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"isValidationUpToDateForRow.js","names":["GridModel","isValidationUpToDateForRow","model","rowIndex","validationStatusNode","api","con","String","e","validationStatusTimestamp","node","id","dataVec","vec","i","length","get","asCon","time"],"sources":["../../../../src/components/DataGrid/utils/isValidationUpToDateForRow.ts"],"sourcesContent":["import { GridModel } from '@/components/DataGrid/DataGridTypes'\n\n/**\n * Determines if the validation results for a given row are up to date by comparing the CRDT timestamps of the row validation\n * information and the row's data.\n */\nexport function isValidationUpToDateForRow(model: GridModel, rowIndex: number) {\n // We can see if validation is up to date by comparing the timestamp of the validation results constant to the data constants.\n // If the validation constant is newer than all data constants, then the validation is up to date.\n let validationStatusNode\n try {\n validationStatusNode = model.api.con([\n 'rows',\n String(rowIndex),\n 'metadata',\n 'rowValidation',\n ])\n } catch (e) {\n // There is no validation status node. It may be added after the first validation run, or there may not be a bound schema.\n return false\n }\n const validationStatusTimestamp = validationStatusNode?.node?.id\n\n try {\n const dataVec = model.api.vec(['rows', String(rowIndex), 'data'])\n for (let i = 0; i < dataVec?.length(); i++) {\n if (\n dataVec.get(i).asCon().node.id.time > validationStatusTimestamp?.time\n ) {\n // Data has been modified since last validation\n return false\n }\n }\n } catch (e) {\n // Retrieving the vector or constants could fail if the model is not what we expect, but this is not something we can handle here.\n }\n return true\n}\n"],"mappings":";AAMA,SAAgBC,EAA2BC,GAAkBC,GAAkB;CAG7E,IAAIC;AACJ,KAAI;AACFA,MAAuBF,EAAMG,IAAIC,IAAI;GACnC;GACAC,OAAOJ,EAAS;GAChB;GACA;GACD,CAAC;SACQ;AAEV,SAAO;;CAET,IAAMM,IAA4BL,GAAsBM,MAAMC;AAE9D,KAAI;EACF,IAAMC,IAAUV,EAAMG,IAAIQ,IAAI;GAAC;GAAQN,OAAOJ,EAAS;GAAE;GAAO,CAAC;AACjE,OAAK,IAAIW,IAAI,GAAGA,IAAIF,GAASG,QAAQ,EAAED,IACrC,KACEF,EAAQI,IAAIF,EAAE,CAACG,OAAO,CAACP,KAAKC,GAAGO,OAAOT,GAA2BS,KAGjE,QAAO;SAGD;AAGZ,QAAO"}
1
+ {"version":3,"file":"isValidationUpToDateForRow.js","names":["GridModel","isValidationUpToDateForRow","model","rowIndex","validationStatusNode","api","con","String","e","validationStatusTimestamp","node","id","dataVec","vec","i","length","get","asCon","time"],"sources":["../../../../src/components/DataGrid/utils/isValidationUpToDateForRow.ts"],"sourcesContent":["import { GridModel } from '@/components/DataGrid/DataGridTypes'\n\n/**\n * Determines if the validation results for a given row are up to date by comparing the CRDT timestamps of the row validation\n * information and the row's data.\n */\nexport function isValidationUpToDateForRow(model: GridModel, rowIndex: number) {\n // We can see if validation is up to date by comparing the timestamp of the validation results constant to the data constants.\n // If the validation constant is newer than all data constants, then the validation is up to date.\n let validationStatusNode\n try {\n validationStatusNode = model.api.con([\n 'rows',\n String(rowIndex),\n 'metadata',\n 'rowValidation',\n ])\n } catch (e) {\n // There is no validation status node. It may be added after the first validation run, or there may not be a bound schema.\n return false\n }\n const validationStatusTimestamp = validationStatusNode?.node?.id\n\n try {\n const dataVec = model.api.vec(['rows', String(rowIndex), 'data'])\n for (let i = 0; i < dataVec?.length(); i++) {\n if (\n dataVec.get(i).asCon().node.id.time > validationStatusTimestamp?.time\n ) {\n // Data has been modified since last validation\n return false\n }\n }\n } catch (e) {\n // Retrieving the vector or constants could fail if the model is not what we expect, but this is not something we can handle here.\n }\n return true\n}\n"],"mappings":";AAMA,SAAgBC,EAA2BC,GAAkBC,GAAkB;CAG7E,IAAIC;CACJ,IAAI;EACFA,IAAuBF,EAAMG,IAAIC,IAAI;GACnC;GACAC,OAAOJ,CAAQ;GACf;GACA;EAAe,CAChB;CACH,QAAY;EAEV,OAAO;CACT;CACA,IAAMM,IAA4BL,GAAsBM,MAAMC;CAE9D,IAAI;EACF,IAAMC,IAAUV,EAAMG,IAAIQ,IAAI;GAAC;GAAQN,OAAOJ,CAAQ;GAAG;EAAM,CAAC;EAChE,KAAK,IAAIW,IAAI,GAAGA,IAAIF,GAASG,OAAO,GAAGD,KACrC,IACEF,EAAQI,IAAIF,CAAC,EAAEG,MAAM,EAAEP,KAAKC,GAAGO,OAAOT,GAA2BS,MAGjE,OAAO;CAGb,QAAY,CACV;CAEF,OAAO;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"JsonRx.js","names":["JsonRxMessage","JsonRxNotification","NOTIFICATION_TYPE_CODE","JsonRxRequest","REQUEST_TYPE_CODE","JsonRxResponse","RESPONSE_TYPE_CODE","JsonRxResponseComplete","RESPONSE_COMPLETE_TYPE_CODE","JsonRxRequestComplete","REQUEST_COMPLETE_TYPE_CODE","JsonRx","fromJson","json","Array","isArray","Error","typeCode","_","requestId","methodName","payload","message"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRx.ts"],"sourcesContent":["import JsonRxMessage from '@/components/DataGrid/utils/json-rx/JsonRxMessage'\nimport JsonRxNotification, {\n NOTIFICATION_TYPE_CODE,\n} from '@/components/DataGrid/utils/json-rx/JsonRxNotification'\nimport JsonRxRequest, {\n REQUEST_TYPE_CODE,\n} from '@/components/DataGrid/utils/json-rx/JsonRxRequest'\nimport JsonRxResponse, {\n RESPONSE_TYPE_CODE,\n} from '@/components/DataGrid/utils/json-rx/JsonRxResponse'\nimport JsonRxResponseComplete, {\n RESPONSE_COMPLETE_TYPE_CODE,\n} from '@/components/DataGrid/utils/json-rx/JsonRxResponseComplete'\nimport JsonRxRequestComplete, {\n REQUEST_COMPLETE_TYPE_CODE,\n} from './JsonRxRequestComplete'\n\n/**\n * Static utility methods intended to implement the JSON-Rx communication protocol\n * Spec: https://jsonjoy.com/specs/json-rx\n */\nexport default class JsonRx {\n /**\n * Converts a JSON-encoded JSON-Rx message (which is always an array) into the appropriate JsonRxMessage subclass\n *\n * For more information, see the JSON-Rx specification: https://jsonjoy.com/specs/json-rx\n * @param json\n */\n static fromJson(json: unknown): JsonRxMessage {\n if (!Array.isArray(json)) {\n throw new Error('Invalid JSON-Rx message: not an array')\n }\n const typeCode = json[0]\n\n if (typeof typeCode !== 'number') {\n throw new Error(\n `Invalid JSON-Rx message: type code is not a number, received ${typeCode}`,\n )\n }\n\n switch (typeCode) {\n case REQUEST_TYPE_CODE: {\n // Request\n const [_, requestId, methodName, payload] = json\n return new JsonRxRequest(requestId, methodName, payload)\n }\n case REQUEST_COMPLETE_TYPE_CODE: {\n const [_, requestId, methodName, payload] = json\n const message = new JsonRxRequestComplete(\n requestId,\n methodName,\n payload,\n )\n return message\n }\n case RESPONSE_TYPE_CODE: {\n // Response\n const [_, requestId, payload] = json\n return new JsonRxResponse(requestId, payload)\n }\n case RESPONSE_COMPLETE_TYPE_CODE: {\n // ResponseComplete\n const [_, requestId, payload] = json\n return new JsonRxResponseComplete(requestId, payload)\n }\n case NOTIFICATION_TYPE_CODE: {\n // Notification\n const [_, methodName, payload] = json\n return new JsonRxNotification(methodName, payload)\n }\n default:\n throw new Error(\n `Invalid JSON-Rx message: unknown type code ${typeCode}`,\n )\n }\n }\n}\n"],"mappings":";;;;;;AAqBA,IAAqBW,IAArB,MAA4B;CAO1B,OAAOC,SAASC,GAA8B;AAC5C,MAAI,CAACC,MAAMC,QAAQF,EAAK,CACtB,OAAUG,MAAM,wCAAwC;EAE1D,IAAMC,IAAWJ,EAAK;AAEtB,MAAI,OAAOI,KAAa,SACtB,OAAUD,MACR,gEAAgEC,IACjE;AAGH,UAAQA,GAAR;GACE,KAAA,GAAwB;IAEtB,IAAM,CAACC,GAAGC,GAAWC,GAAYC,KAAWR;AAC5C,WAAO,IAAIV,EAAcgB,GAAWC,GAAYC,EAAQ;;GAE1D,KAAA,GAAiC;IAC/B,IAAM,CAACH,GAAGC,GAAWC,GAAYC,KAAWR;AAM5C,WAAOS,IALab,EAClBU,GACAC,GACAC,EAEKC;;GAET,KAAA,GAAyB;IAEvB,IAAM,CAACJ,GAAGC,GAAWE,KAAWR;AAChC,WAAO,IAAIR,EAAec,GAAWE,EAAQ;;GAE/C,KAAA,GAAkC;IAEhC,IAAM,CAACH,GAAGC,GAAWE,KAAWR;AAChC,WAAO,IAAIN,EAAuBY,GAAWE,EAAQ;;GAEvD,KAAA,GAA6B;IAE3B,IAAM,CAACH,GAAGE,GAAYC,KAAWR;AACjC,WAAO,IAAIZ,EAAmBmB,GAAYC,EAAQ;;GAEpD,QACE,OAAUL,MACR,8CAA8CC,IAC/C"}
1
+ {"version":3,"file":"JsonRx.js","names":["JsonRxMessage","JsonRxNotification","NOTIFICATION_TYPE_CODE","JsonRxRequest","REQUEST_TYPE_CODE","JsonRxResponse","RESPONSE_TYPE_CODE","JsonRxResponseComplete","RESPONSE_COMPLETE_TYPE_CODE","JsonRxRequestComplete","REQUEST_COMPLETE_TYPE_CODE","JsonRx","fromJson","json","Array","isArray","Error","typeCode","_","requestId","methodName","payload","message"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRx.ts"],"sourcesContent":["import JsonRxMessage from '@/components/DataGrid/utils/json-rx/JsonRxMessage'\nimport JsonRxNotification, {\n NOTIFICATION_TYPE_CODE,\n} from '@/components/DataGrid/utils/json-rx/JsonRxNotification'\nimport JsonRxRequest, {\n REQUEST_TYPE_CODE,\n} from '@/components/DataGrid/utils/json-rx/JsonRxRequest'\nimport JsonRxResponse, {\n RESPONSE_TYPE_CODE,\n} from '@/components/DataGrid/utils/json-rx/JsonRxResponse'\nimport JsonRxResponseComplete, {\n RESPONSE_COMPLETE_TYPE_CODE,\n} from '@/components/DataGrid/utils/json-rx/JsonRxResponseComplete'\nimport JsonRxRequestComplete, {\n REQUEST_COMPLETE_TYPE_CODE,\n} from './JsonRxRequestComplete'\n\n/**\n * Static utility methods intended to implement the JSON-Rx communication protocol\n * Spec: https://jsonjoy.com/specs/json-rx\n */\nexport default class JsonRx {\n /**\n * Converts a JSON-encoded JSON-Rx message (which is always an array) into the appropriate JsonRxMessage subclass\n *\n * For more information, see the JSON-Rx specification: https://jsonjoy.com/specs/json-rx\n * @param json\n */\n static fromJson(json: unknown): JsonRxMessage {\n if (!Array.isArray(json)) {\n throw new Error('Invalid JSON-Rx message: not an array')\n }\n const typeCode = json[0]\n\n if (typeof typeCode !== 'number') {\n throw new Error(\n `Invalid JSON-Rx message: type code is not a number, received ${typeCode}`,\n )\n }\n\n switch (typeCode) {\n case REQUEST_TYPE_CODE: {\n // Request\n const [_, requestId, methodName, payload] = json\n return new JsonRxRequest(requestId, methodName, payload)\n }\n case REQUEST_COMPLETE_TYPE_CODE: {\n const [_, requestId, methodName, payload] = json\n const message = new JsonRxRequestComplete(\n requestId,\n methodName,\n payload,\n )\n return message\n }\n case RESPONSE_TYPE_CODE: {\n // Response\n const [_, requestId, payload] = json\n return new JsonRxResponse(requestId, payload)\n }\n case RESPONSE_COMPLETE_TYPE_CODE: {\n // ResponseComplete\n const [_, requestId, payload] = json\n return new JsonRxResponseComplete(requestId, payload)\n }\n case NOTIFICATION_TYPE_CODE: {\n // Notification\n const [_, methodName, payload] = json\n return new JsonRxNotification(methodName, payload)\n }\n default:\n throw new Error(\n `Invalid JSON-Rx message: unknown type code ${typeCode}`,\n )\n }\n }\n}\n"],"mappings":";;;;;;AAqBA,IAAqBW,IAArB,MAA4B;CAO1B,OAAOC,SAASC,GAA8B;EAC5C,IAAI,CAACC,MAAMC,QAAQF,CAAI,GACrB,MAAUG,MAAM,uCAAuC;EAEzD,IAAMC,IAAWJ,EAAK;EAEtB,IAAI,OAAOI,KAAa,UACtB,MAAUD,MACR,gEAAgEC,GAClE;EAGF,QAAQA,GAAR;GACE,KAAA,GAAwB;IAEtB,IAAM,CAACC,GAAGC,GAAWC,GAAYC,KAAWR;IAC5C,OAAO,IAAIV,EAAcgB,GAAWC,GAAYC,CAAO;GACzD;GACA,KAAA,GAAiC;IAC/B,IAAM,CAACH,GAAGC,GAAWC,GAAYC,KAAWR;IAM5C,OAAOS,IALab,EAClBU,GACAC,GACAC,CAEKC;GACT;GACA,KAAA,GAAyB;IAEvB,IAAM,CAACJ,GAAGC,GAAWE,KAAWR;IAChC,OAAO,IAAIR,EAAec,GAAWE,CAAO;GAC9C;GACA,KAAA,GAAkC;IAEhC,IAAM,CAACH,GAAGC,GAAWE,KAAWR;IAChC,OAAO,IAAIN,EAAuBY,GAAWE,CAAO;GACtD;GACA,KAAA,GAA6B;IAE3B,IAAM,CAACH,GAAGE,GAAYC,KAAWR;IACjC,OAAO,IAAIZ,EAAmBmB,GAAYC,CAAO;GACnD;GACA,SACE,MAAUL,MACR,8CAA8CC,GAChD;EACJ;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"JsonRxMessage.js","names":["JsonRxMessage","typeCode","constructor","getJson"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxMessage.ts"],"sourcesContent":["export default abstract class JsonRxMessage {\n protected typeCode: number\n\n constructor(typeCode: number) {\n this.typeCode = typeCode\n }\n\n public abstract getJson(): unknown[]\n}\n"],"mappings":";AAAA,IAA8BA,IAA9B,MAA4C;CAC1C;CAEAE,YAAYD,GAAkB;AAC5B,OAAKA,WAAWA"}
1
+ {"version":3,"file":"JsonRxMessage.js","names":["JsonRxMessage","typeCode","constructor","getJson"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxMessage.ts"],"sourcesContent":["export default abstract class JsonRxMessage {\n protected typeCode: number\n\n constructor(typeCode: number) {\n this.typeCode = typeCode\n }\n\n public abstract getJson(): unknown[]\n}\n"],"mappings":";AAAA,IAA8BA,IAA9B,MAA4C;CAC1C;CAEAE,YAAYD,GAAkB;EAC5B,KAAKA,WAAWA;CAClB;AAGF"}
@@ -1 +1 @@
1
- {"version":3,"file":"JsonRxNotification.js","names":["JsonRxMessage","NOTIFICATION_TYPE_CODE","JsonRxNotification","methodName","payload","TPayload","getMethodName","getPayload","constructor","getJson","Array","json","typeCode","undefined","push"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxNotification.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const NOTIFICATION_TYPE_CODE = 8\n\nexport default class JsonRxNotification<\n TPayload = unknown,\n> extends JsonRxMessage {\n private methodName: string\n private payload?: TPayload\n\n public getMethodName() {\n return this.methodName\n }\n\n public getPayload() {\n return this.payload\n }\n\n constructor(methodName: string, payload?: TPayload) {\n super(NOTIFICATION_TYPE_CODE)\n this.methodName = methodName\n this.payload = payload\n }\n\n public getJson(): Array<unknown> {\n const json: Array<unknown> = [this.typeCode, this.methodName]\n if (this.payload !== undefined) {\n json.push(this.payload)\n }\n\n return json\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAAyB,GAEjBC,IAArB,cAEUF,EAAc;CACtB;CACA;CAEA,gBAAuB;AACrB,SAAO,KAAKG;;CAGd,aAAoB;AAClB,SAAO,KAAKC;;CAGdI,YAAYL,GAAoBC,GAAoB;AAGlD,EAFA,MAAA,EAA6B,EAC7B,KAAKD,aAAaA,GAClB,KAAKC,UAAUA;;CAGjB,UAAiC;EAC/B,IAAMO,IAAuB,CAAC,KAAKC,UAAU,KAAKT,WAAW;AAK7D,SAJI,KAAKC,YAAYS,KAAAA,KACnBF,EAAKG,KAAK,KAAKV,QAAQ,EAGlBO"}
1
+ {"version":3,"file":"JsonRxNotification.js","names":["JsonRxMessage","NOTIFICATION_TYPE_CODE","JsonRxNotification","methodName","payload","TPayload","getMethodName","getPayload","constructor","getJson","Array","json","typeCode","undefined","push"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxNotification.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const NOTIFICATION_TYPE_CODE = 8\n\nexport default class JsonRxNotification<\n TPayload = unknown,\n> extends JsonRxMessage {\n private methodName: string\n private payload?: TPayload\n\n public getMethodName() {\n return this.methodName\n }\n\n public getPayload() {\n return this.payload\n }\n\n constructor(methodName: string, payload?: TPayload) {\n super(NOTIFICATION_TYPE_CODE)\n this.methodName = methodName\n this.payload = payload\n }\n\n public getJson(): Array<unknown> {\n const json: Array<unknown> = [this.typeCode, this.methodName]\n if (this.payload !== undefined) {\n json.push(this.payload)\n }\n\n return json\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAAyB,GAEjBC,IAArB,cAEUF,EAAc;CACtB;CACA;CAEA,gBAAuB;EACrB,OAAO,KAAKG;CACd;CAEA,aAAoB;EAClB,OAAO,KAAKC;CACd;CAEAI,YAAYL,GAAoBC,GAAoB;EAGlD,AAFA,MAAA,CAA4B,GAC5B,KAAKD,aAAaA,GAClB,KAAKC,UAAUA;CACjB;CAEA,UAAiC;EAC/B,IAAMO,IAAuB,CAAC,KAAKC,UAAU,KAAKT,UAAU;EAK5D,OAJI,KAAKC,YAAYS,KAAAA,KACnBF,EAAKG,KAAK,KAAKV,OAAO,GAGjBO;CACT;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"JsonRxRequest.js","names":["JsonRxMessage","REQUEST_TYPE_CODE","JsonRxRequest","requestId","methodName","payload","TPayload","constructor","getJson","Array","json","typeCode","undefined","push"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxRequest.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const REQUEST_TYPE_CODE = 0\n\nexport default class JsonRxRequest<TPayload = unknown> extends JsonRxMessage {\n private requestId: number\n private methodName: string\n private payload?: TPayload\n\n constructor(requestId: number, methodName: string, payload?: TPayload) {\n super(REQUEST_TYPE_CODE)\n this.requestId = requestId\n this.methodName = methodName\n this.payload = payload\n }\n\n public getJson(): Array<unknown> {\n const json: Array<unknown> = [\n this.typeCode,\n this.requestId,\n this.methodName,\n ]\n if (this.payload !== undefined) {\n json.push(this.payload)\n }\n return json\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAAoB,GAEZC,IAArB,cAA+DF,EAAc;CAC3E;CACA;CACA;CAEAO,YAAYJ,GAAmBC,GAAoBC,GAAoB;AAIrE,EAHA,MAAA,EAAwB,EACxB,KAAKF,YAAYA,GACjB,KAAKC,aAAaA,GAClB,KAAKC,UAAUA;;CAGjB,UAAiC;EAC/B,IAAMK,IAAuB;GAC3B,KAAKC;GACL,KAAKR;GACL,KAAKC;GACN;AAID,SAHI,KAAKC,YAAYO,KAAAA,KACnBF,EAAKG,KAAK,KAAKR,QAAQ,EAElBK"}
1
+ {"version":3,"file":"JsonRxRequest.js","names":["JsonRxMessage","REQUEST_TYPE_CODE","JsonRxRequest","requestId","methodName","payload","TPayload","constructor","getJson","Array","json","typeCode","undefined","push"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxRequest.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const REQUEST_TYPE_CODE = 0\n\nexport default class JsonRxRequest<TPayload = unknown> extends JsonRxMessage {\n private requestId: number\n private methodName: string\n private payload?: TPayload\n\n constructor(requestId: number, methodName: string, payload?: TPayload) {\n super(REQUEST_TYPE_CODE)\n this.requestId = requestId\n this.methodName = methodName\n this.payload = payload\n }\n\n public getJson(): Array<unknown> {\n const json: Array<unknown> = [\n this.typeCode,\n this.requestId,\n this.methodName,\n ]\n if (this.payload !== undefined) {\n json.push(this.payload)\n }\n return json\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAAoB,GAEZC,IAArB,cAA+DF,EAAc;CAC3E;CACA;CACA;CAEAO,YAAYJ,GAAmBC,GAAoBC,GAAoB;EAIrE,AAHA,MAAA,CAAuB,GACvB,KAAKF,YAAYA,GACjB,KAAKC,aAAaA,GAClB,KAAKC,UAAUA;CACjB;CAEA,UAAiC;EAC/B,IAAMK,IAAuB;GAC3B,KAAKC;GACL,KAAKR;GACL,KAAKC;EAAU;EAKjB,OAHI,KAAKC,YAAYO,KAAAA,KACnBF,EAAKG,KAAK,KAAKR,OAAO,GAEjBK;CACT;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"JsonRxRequestComplete.js","names":["JsonRxMessage","REQUEST_COMPLETE_TYPE_CODE","JsonRxRequestComplete","requestId","methodName","payload","TPayload","constructor","setRequestId","getJson","Array","json","typeCode","undefined","push"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxRequestComplete.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const REQUEST_COMPLETE_TYPE_CODE = 1\n\nexport default class JsonRxRequestComplete<\n TPayload = unknown,\n> extends JsonRxMessage {\n private requestId: number\n private methodName: string\n private payload?: TPayload\n\n public constructor(\n requestId: number,\n methodName: string,\n payload?: TPayload,\n ) {\n super(REQUEST_COMPLETE_TYPE_CODE)\n this.requestId = requestId\n this.methodName = methodName\n this.payload = payload\n }\n\n public setRequestId(requestId: number) {\n this.requestId = requestId\n }\n\n public getJson(): Array<unknown> {\n const json: Array<unknown> = [\n this.typeCode,\n this.requestId,\n this.methodName,\n ]\n if (this.payload !== undefined) {\n json.push(this.payload)\n }\n return json\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAA6B,GAErBC,IAArB,cAEUF,EAAc;CACtB;CACA;CACA;CAEA,YACEG,GACAC,GACAC,GACA;AAIA,EAHA,MAAA,EAAiC,EACjC,KAAKF,YAAYA,GACjB,KAAKC,aAAaA,GAClB,KAAKC,UAAUA;;CAGjB,aAAoBF,GAAmB;AACrC,OAAKA,YAAYA;;CAGnB,UAAiC;EAC/B,IAAMQ,IAAuB;GAC3B,KAAKC;GACL,KAAKT;GACL,KAAKC;GACN;AAID,SAHI,KAAKC,YAAYQ,KAAAA,KACnBF,EAAKG,KAAK,KAAKT,QAAQ,EAElBM"}
1
+ {"version":3,"file":"JsonRxRequestComplete.js","names":["JsonRxMessage","REQUEST_COMPLETE_TYPE_CODE","JsonRxRequestComplete","requestId","methodName","payload","TPayload","constructor","setRequestId","getJson","Array","json","typeCode","undefined","push"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxRequestComplete.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const REQUEST_COMPLETE_TYPE_CODE = 1\n\nexport default class JsonRxRequestComplete<\n TPayload = unknown,\n> extends JsonRxMessage {\n private requestId: number\n private methodName: string\n private payload?: TPayload\n\n public constructor(\n requestId: number,\n methodName: string,\n payload?: TPayload,\n ) {\n super(REQUEST_COMPLETE_TYPE_CODE)\n this.requestId = requestId\n this.methodName = methodName\n this.payload = payload\n }\n\n public setRequestId(requestId: number) {\n this.requestId = requestId\n }\n\n public getJson(): Array<unknown> {\n const json: Array<unknown> = [\n this.typeCode,\n this.requestId,\n this.methodName,\n ]\n if (this.payload !== undefined) {\n json.push(this.payload)\n }\n return json\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAA6B,GAErBC,IAArB,cAEUF,EAAc;CACtB;CACA;CACA;CAEA,YACEG,GACAC,GACAC,GACA;EAIA,AAHA,MAAA,CAAgC,GAChC,KAAKF,YAAYA,GACjB,KAAKC,aAAaA,GAClB,KAAKC,UAAUA;CACjB;CAEA,aAAoBF,GAAmB;EACrC,KAAKA,YAAYA;CACnB;CAEA,UAAiC;EAC/B,IAAMQ,IAAuB;GAC3B,KAAKC;GACL,KAAKT;GACL,KAAKC;EAAU;EAKjB,OAHI,KAAKC,YAAYQ,KAAAA,KACnBF,EAAKG,KAAK,KAAKT,OAAO,GAEjBM;CACT;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"JsonRxResponse.js","names":["JsonRxMessage","RESPONSE_TYPE_CODE","JsonRxResponse","subscriptionId","payload","TPayload","getPayload","constructor","getJson","Array","typeCode"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxResponse.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const RESPONSE_TYPE_CODE = 4\n\nexport default class JsonRxResponse<TPayload = unknown> extends JsonRxMessage {\n private subscriptionId: number\n private payload: TPayload\n\n public getPayload(): TPayload {\n return this.payload\n }\n\n constructor(subscriptionId: number, payload: TPayload) {\n super(RESPONSE_TYPE_CODE)\n this.subscriptionId = subscriptionId\n this.payload = payload\n }\n\n public getJson(): Array<unknown> {\n return [this.typeCode, this.subscriptionId, this.payload]\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAAqB,GAEbC,IAArB,cAAgEF,EAAc;CAC5E;CACA;CAEA,aAA8B;AAC5B,SAAO,KAAKI;;CAGdG,YAAYJ,GAAwBC,GAAmB;AAGrD,EAFA,MAAA,EAAyB,EACzB,KAAKD,iBAAiBA,GACtB,KAAKC,UAAUA;;CAGjB,UAAiC;AAC/B,SAAO;GAAC,KAAKM;GAAU,KAAKP;GAAgB,KAAKC;GAAQ"}
1
+ {"version":3,"file":"JsonRxResponse.js","names":["JsonRxMessage","RESPONSE_TYPE_CODE","JsonRxResponse","subscriptionId","payload","TPayload","getPayload","constructor","getJson","Array","typeCode"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxResponse.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const RESPONSE_TYPE_CODE = 4\n\nexport default class JsonRxResponse<TPayload = unknown> extends JsonRxMessage {\n private subscriptionId: number\n private payload: TPayload\n\n public getPayload(): TPayload {\n return this.payload\n }\n\n constructor(subscriptionId: number, payload: TPayload) {\n super(RESPONSE_TYPE_CODE)\n this.subscriptionId = subscriptionId\n this.payload = payload\n }\n\n public getJson(): Array<unknown> {\n return [this.typeCode, this.subscriptionId, this.payload]\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAAqB,GAEbC,IAArB,cAAgEF,EAAc;CAC5E;CACA;CAEA,aAA8B;EAC5B,OAAO,KAAKI;CACd;CAEAG,YAAYJ,GAAwBC,GAAmB;EAGrD,AAFA,MAAA,CAAwB,GACxB,KAAKD,iBAAiBA,GACtB,KAAKC,UAAUA;CACjB;CAEA,UAAiC;EAC/B,OAAO;GAAC,KAAKM;GAAU,KAAKP;GAAgB,KAAKC;EAAO;CAC1D;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"JsonRxResponseComplete.js","names":["JsonRxMessage","RESPONSE_COMPLETE_TYPE_CODE","JsonRxResponseComplete","subscriptionId","payload","TPayload","getSubscriptionId","getPayload","constructor","getJson","Array","json","typeCode","undefined","push"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxResponseComplete.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const RESPONSE_COMPLETE_TYPE_CODE = 5\n\nexport default class JsonRxResponseComplete<\n TPayload = unknown,\n> extends JsonRxMessage {\n private subscriptionId: number\n private payload?: TPayload\n\n public getSubscriptionId(): number {\n return this.subscriptionId\n }\n\n public getPayload(): TPayload | undefined {\n return this.payload\n }\n constructor(subscriptionId: number, payload?: TPayload) {\n super(RESPONSE_COMPLETE_TYPE_CODE)\n this.subscriptionId = subscriptionId\n this.payload = payload\n }\n\n public getJson(): Array<unknown> {\n const json: Array<unknown> = [this.typeCode, this.subscriptionId]\n if (this.payload !== undefined) {\n json.push(this.payload)\n }\n return json\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAA8B,GAEtBC,IAArB,cAEUF,EAAc;CACtB;CACA;CAEA,oBAAmC;AACjC,SAAO,KAAKG;;CAGd,aAA0C;AACxC,SAAO,KAAKC;;CAEdI,YAAYL,GAAwBC,GAAoB;AAGtD,EAFA,MAAA,EAAkC,EAClC,KAAKD,iBAAiBA,GACtB,KAAKC,UAAUA;;CAGjB,UAAiC;EAC/B,IAAMO,IAAuB,CAAC,KAAKC,UAAU,KAAKT,eAAe;AAIjE,SAHI,KAAKC,YAAYS,KAAAA,KACnBF,EAAKG,KAAK,KAAKV,QAAQ,EAElBO"}
1
+ {"version":3,"file":"JsonRxResponseComplete.js","names":["JsonRxMessage","RESPONSE_COMPLETE_TYPE_CODE","JsonRxResponseComplete","subscriptionId","payload","TPayload","getSubscriptionId","getPayload","constructor","getJson","Array","json","typeCode","undefined","push"],"sources":["../../../../../src/components/DataGrid/utils/json-rx/JsonRxResponseComplete.ts"],"sourcesContent":["import JsonRxMessage from './JsonRxMessage'\n\nexport const RESPONSE_COMPLETE_TYPE_CODE = 5\n\nexport default class JsonRxResponseComplete<\n TPayload = unknown,\n> extends JsonRxMessage {\n private subscriptionId: number\n private payload?: TPayload\n\n public getSubscriptionId(): number {\n return this.subscriptionId\n }\n\n public getPayload(): TPayload | undefined {\n return this.payload\n }\n constructor(subscriptionId: number, payload?: TPayload) {\n super(RESPONSE_COMPLETE_TYPE_CODE)\n this.subscriptionId = subscriptionId\n this.payload = payload\n }\n\n public getJson(): Array<unknown> {\n const json: Array<unknown> = [this.typeCode, this.subscriptionId]\n if (this.payload !== undefined) {\n json.push(this.payload)\n }\n return json\n }\n}\n"],"mappings":";;AAEA,IAAaC,IAA8B,GAEtBC,IAArB,cAEUF,EAAc;CACtB;CACA;CAEA,oBAAmC;EACjC,OAAO,KAAKG;CACd;CAEA,aAA0C;EACxC,OAAO,KAAKC;CACd;CACAI,YAAYL,GAAwBC,GAAoB;EAGtD,AAFA,MAAA,CAAiC,GACjC,KAAKD,iBAAiBA,GACtB,KAAKC,UAAUA;CACjB;CAEA,UAAiC;EAC/B,IAAMO,IAAuB,CAAC,KAAKC,UAAU,KAAKT,cAAc;EAIhE,OAHI,KAAKC,YAAYS,KAAAA,KACnBF,EAAKG,KAAK,KAAKV,OAAO,GAEjBO;CACT;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"logicalTimestampToString.js","names":["ITimestampStruct","logicalTimestampToString","logicalTimestamp","sid","time"],"sources":["../../../../src/components/DataGrid/utils/logicalTimestampToString.ts"],"sourcesContent":["import { ITimestampStruct } from 'json-joy'\n\nexport default function logicalTimestampToString(\n logicalTimestamp: ITimestampStruct,\n): string {\n return `[${logicalTimestamp.sid},${logicalTimestamp.time}]`\n}\n"],"mappings":";AAEA,SAAwBC,EACtBC,GACQ;AACR,QAAO,IAAIA,EAAiBC,IAAG,GAAID,EAAiBE,KAAI"}
1
+ {"version":3,"file":"logicalTimestampToString.js","names":["ITimestampStruct","logicalTimestampToString","logicalTimestamp","sid","time"],"sources":["../../../../src/components/DataGrid/utils/logicalTimestampToString.ts"],"sourcesContent":["import { ITimestampStruct } from 'json-joy'\n\nexport default function logicalTimestampToString(\n logicalTimestamp: ITimestampStruct,\n): string {\n return `[${logicalTimestamp.sid},${logicalTimestamp.time}]`\n}\n"],"mappings":";AAEA,SAAwBC,EACtBC,GACQ;CACR,OAAO,IAAIA,EAAiBC,IAAG,GAAID,EAAiBE,KAAI;AAC1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"mapOperationsToModelChanges.js","names":["DataGridRow","Operation","ModelChange","mapOperationsToModelChanges","operations","newValue","modelChanges","forEach","operation","type","i","fromRowIndex","toRowIndex","push","rowIndex","rowData","updatedData","count"],"sources":["../../../../src/components/DataGrid/utils/mapOperationsToModelChanges.tsx"],"sourcesContent":["import { DataGridRow, Operation } from '../DataGridTypes'\nimport { ModelChange } from './applyModelChange'\n\nexport function mapOperationsToModelChanges(\n operations: Operation[],\n newValue: DataGridRow[],\n): ModelChange[] {\n const modelChanges: ModelChange[] = []\n\n operations.forEach(operation => {\n if (operation.type === 'CREATE') {\n // Add new rows to the model\n for (let i = operation.fromRowIndex; i < operation.toRowIndex; i++) {\n modelChanges.push({\n type: 'CREATE',\n rowIndex: i,\n rowData: newValue[i],\n })\n }\n }\n if (operation.type === 'UPDATE') {\n // Only update the specific rows and cells that changed\n for (\n let rowIndex = operation.fromRowIndex;\n rowIndex < operation.toRowIndex;\n rowIndex++\n ) {\n modelChanges.push({\n type: 'UPDATE',\n rowIndex: rowIndex,\n updatedData: newValue[rowIndex],\n })\n }\n }\n if (operation.type === 'DELETE') {\n modelChanges.push({\n type: 'DELETE',\n rowIndex: operation.fromRowIndex,\n count: operation.toRowIndex - operation.fromRowIndex,\n })\n }\n })\n return modelChanges\n}\n"],"mappings":";AAGA,SAAgBG,EACdC,GACAC,GACe;CACf,IAAMC,IAA8B,EAAE;AAmCtC,QAjCAF,EAAWG,SAAQC,MAAa;AAC9B,MAAIA,EAAUC,SAAS,SAErB,MAAK,IAAIC,IAAIF,EAAUG,cAAcD,IAAIF,EAAUI,YAAYF,IAC7DJ,GAAaO,KAAK;GAChBJ,MAAM;GACNK,UAAUJ;GACVK,SAASV,EAASK;GACnB,CAAC;AAGN,MAAIF,EAAUC,SAAS,SAErB,MACE,IAAIK,IAAWN,EAAUG,cACzBG,IAAWN,EAAUI,YACrBE,IAEAR,GAAaO,KAAK;GAChBJ,MAAM;GACIK;GACVE,aAAaX,EAASS;GACvB,CAAC;AAGN,EAAIN,EAAUC,SAAS,YACrBH,EAAaO,KAAK;GAChBJ,MAAM;GACNK,UAAUN,EAAUG;GACpBM,OAAOT,EAAUI,aAAaJ,EAAUG;GACzC,CAAC;GAEJ,EACKL"}
1
+ {"version":3,"file":"mapOperationsToModelChanges.js","names":["DataGridRow","Operation","ModelChange","mapOperationsToModelChanges","operations","newValue","modelChanges","forEach","operation","type","i","fromRowIndex","toRowIndex","push","rowIndex","rowData","updatedData","count"],"sources":["../../../../src/components/DataGrid/utils/mapOperationsToModelChanges.tsx"],"sourcesContent":["import { DataGridRow, Operation } from '../DataGridTypes'\nimport { ModelChange } from './applyModelChange'\n\nexport function mapOperationsToModelChanges(\n operations: Operation[],\n newValue: DataGridRow[],\n): ModelChange[] {\n const modelChanges: ModelChange[] = []\n\n operations.forEach(operation => {\n if (operation.type === 'CREATE') {\n // Add new rows to the model\n for (let i = operation.fromRowIndex; i < operation.toRowIndex; i++) {\n modelChanges.push({\n type: 'CREATE',\n rowIndex: i,\n rowData: newValue[i],\n })\n }\n }\n if (operation.type === 'UPDATE') {\n // Only update the specific rows and cells that changed\n for (\n let rowIndex = operation.fromRowIndex;\n rowIndex < operation.toRowIndex;\n rowIndex++\n ) {\n modelChanges.push({\n type: 'UPDATE',\n rowIndex: rowIndex,\n updatedData: newValue[rowIndex],\n })\n }\n }\n if (operation.type === 'DELETE') {\n modelChanges.push({\n type: 'DELETE',\n rowIndex: operation.fromRowIndex,\n count: operation.toRowIndex - operation.fromRowIndex,\n })\n }\n })\n return modelChanges\n}\n"],"mappings":";AAGA,SAAgBG,EACdC,GACAC,GACe;CACf,IAAMC,IAA8B,CAAA;CAmCpC,OAjCAF,EAAWG,SAAQC,MAAa;EAC9B,IAAIA,EAAUC,SAAS,UAErB,KAAK,IAAIC,IAAIF,EAAUG,cAAcD,IAAIF,EAAUI,YAAYF,KAC7DJ,EAAaO,KAAK;GAChBJ,MAAM;GACNK,UAAUJ;GACVK,SAASV,EAASK;EACpB,CAAC;EAGL,IAAIF,EAAUC,SAAS,UAErB,KACE,IAAIK,IAAWN,EAAUG,cACzBG,IAAWN,EAAUI,YACrBE,KAEAR,EAAaO,KAAK;GAChBJ,MAAM;GACIK;GACVE,aAAaX,EAASS;EACxB,CAAC;EAGL,AAAIN,EAAUC,SAAS,YACrBH,EAAaO,KAAK;GAChBJ,MAAM;GACNK,UAAUN,EAAUG;GACpBM,OAAOT,EAAUI,aAAaJ,EAAUG;EAC1C,CAAC;CAEL,CAAC,GACML;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"modelColsToGrid.js","names":["Column","createColumn","SchemaPropertiesMap","modelColsToGrid","columnNames","columnOrder","schemaPropertiesInfo","columnWidths","Record","pinnedColumns","Set","onTogglePin","columnIndex","map","index","arrayIndex","columnName","propertyInfo","showPinIcon","undefined","isPinned","has","description","typeInfo","type","enumeratedValues","isRequired","disabled","readOnly","customWidth","schemaPropertyInfo"],"sources":["../../../../src/components/DataGrid/utils/modelColsToGrid.ts"],"sourcesContent":["import { Column } from '@sage-bionetworks/react-datasheet-grid'\nimport { createColumn } from './columnFactory'\nimport { SchemaPropertiesMap } from '@/utils/jsonschema/getSchemaPropertyInfo'\n\nexport function modelColsToGrid(\n columnNames: string[],\n columnOrder: number[],\n schemaPropertiesInfo: SchemaPropertiesMap,\n columnWidths: Record<string, number> = {},\n pinnedColumns: Set<number> = new Set(),\n onTogglePin?: (columnIndex: number) => void,\n): Column[] {\n return columnOrder.map((index: number, arrayIndex: number) => {\n const columnName = columnNames[index]\n const propertyInfo = schemaPropertiesInfo[columnName]\n\n // Only show pin functionality for the first column and when toggle handler exists\n const showPinIcon = arrayIndex === 0 && onTogglePin !== undefined\n const isPinned = pinnedColumns.has(arrayIndex)\n\n return createColumn({\n columnName,\n description: propertyInfo?.description,\n typeInfo: propertyInfo?.type || null,\n enumeratedValues: propertyInfo?.enumeratedValues || [],\n isRequired: propertyInfo?.isRequired || false,\n disabled: propertyInfo?.type?.readOnly,\n customWidth: columnWidths[columnName],\n showPinIcon,\n isPinned,\n onTogglePin: onTogglePin ? () => onTogglePin(arrayIndex) : undefined,\n schemaPropertyInfo: propertyInfo,\n })\n })\n}\n"],"mappings":";;AAIA,SAAgBG,EACdC,GACAC,GACAC,GACAC,IAAuC,EAAE,EACzCE,oBAA6B,IAAIC,KAAK,EACtCC,GACU;AACV,QAAON,EAAYQ,KAAKC,GAAeC,MAAuB;EAC5D,IAAMC,IAAaZ,EAAYU,IACzBG,IAAeX,EAAqBU,IAGpCE,IAAcH,MAAe,KAAKJ,MAAgBQ,KAAAA,GAClDC,IAAWX,EAAcY,IAAIN,EAAW;AAE9C,SAAOd,EAAa;GAClBe;GACAM,aAAaL,GAAcK;GAC3BC,UAAUN,GAAcO,QAAQ;GAChCC,kBAAkBR,GAAcQ,oBAAoB,EAAE;GACtDC,YAAYT,GAAcS,cAAc;GACxCC,UAAUV,GAAcO,MAAMI;GAC9BC,aAAatB,EAAaS;GAC1BE;GACAE;GACAT,aAAaA,UAAoBA,EAAYI,EAAW,GAAGI,KAAAA;GAC3DW,oBAAoBb;GACrB,CAAC;GACF"}
1
+ {"version":3,"file":"modelColsToGrid.js","names":["Column","createColumn","SchemaPropertiesMap","modelColsToGrid","columnNames","columnOrder","schemaPropertiesInfo","columnWidths","Record","pinnedColumns","Set","onTogglePin","columnIndex","map","index","arrayIndex","columnName","propertyInfo","showPinIcon","undefined","isPinned","has","description","typeInfo","type","enumeratedValues","isRequired","disabled","readOnly","customWidth","schemaPropertyInfo"],"sources":["../../../../src/components/DataGrid/utils/modelColsToGrid.ts"],"sourcesContent":["import { Column } from '@sage-bionetworks/react-datasheet-grid'\nimport { createColumn } from './columnFactory'\nimport { SchemaPropertiesMap } from '@/utils/jsonschema/getSchemaPropertyInfo'\n\nexport function modelColsToGrid(\n columnNames: string[],\n columnOrder: number[],\n schemaPropertiesInfo: SchemaPropertiesMap,\n columnWidths: Record<string, number> = {},\n pinnedColumns: Set<number> = new Set(),\n onTogglePin?: (columnIndex: number) => void,\n): Column[] {\n return columnOrder.map((index: number, arrayIndex: number) => {\n const columnName = columnNames[index]\n const propertyInfo = schemaPropertiesInfo[columnName]\n\n // Only show pin functionality for the first column and when toggle handler exists\n const showPinIcon = arrayIndex === 0 && onTogglePin !== undefined\n const isPinned = pinnedColumns.has(arrayIndex)\n\n return createColumn({\n columnName,\n description: propertyInfo?.description,\n typeInfo: propertyInfo?.type || null,\n enumeratedValues: propertyInfo?.enumeratedValues || [],\n isRequired: propertyInfo?.isRequired || false,\n disabled: propertyInfo?.type?.readOnly,\n customWidth: columnWidths[columnName],\n showPinIcon,\n isPinned,\n onTogglePin: onTogglePin ? () => onTogglePin(arrayIndex) : undefined,\n schemaPropertyInfo: propertyInfo,\n })\n })\n}\n"],"mappings":";;AAIA,SAAgBG,EACdC,GACAC,GACAC,GACAC,IAAuC,CAAC,GACxCE,oBAA6B,IAAIC,IAAI,GACrCC,GACU;CACV,OAAON,EAAYQ,KAAKC,GAAeC,MAAuB;EAC5D,IAAMC,IAAaZ,EAAYU,IACzBG,IAAeX,EAAqBU,IAGpCE,IAAcH,MAAe,KAAKJ,MAAgBQ,KAAAA,GAClDC,IAAWX,EAAcY,IAAIN,CAAU;EAE7C,OAAOd,EAAa;GAClBe;GACAM,aAAaL,GAAcK;GAC3BC,UAAUN,GAAcO,QAAQ;GAChCC,kBAAkBR,GAAcQ,oBAAoB,CAAA;GACpDC,YAAYT,GAAcS,cAAc;GACxCC,UAAUV,GAAcO,MAAMI;GAC9BC,aAAatB,EAAaS;GAC1BE;GACAE;GACAT,aAAaA,UAAoBA,EAAYI,CAAU,IAAII,KAAAA;GAC3DW,oBAAoBb;EACtB,CAAC;CACH,CAAC;AACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"modelRowsToGrid.js","names":["DataGridRow","GridModel","GridModelSnapshot","isValidationUpToDateForRow","GRID_ROW_REACT_KEY_PROPERTY","logicalTimestampToString","extractColumnValidationMessages","modelRowsToGrid","model","modelSnapshot","columnNames","columnOrder","rows","gridRows","map","row","rowIndex","rowObj","forEach","index","columnName","data","api","obj","String","node","id","__validationResults","metadata","rowValidation","__validationStatus","isValid","allValidationMessages","__cellValidationResults"],"sources":["../../../../src/components/DataGrid/utils/modelRowsToGrid.ts"],"sourcesContent":["import {\n DataGridRow,\n GridModel,\n GridModelSnapshot,\n} from '@/components/DataGrid/DataGridTypes'\nimport { isValidationUpToDateForRow } from '@/components/DataGrid/utils/isValidationUpToDateForRow'\nimport { GRID_ROW_REACT_KEY_PROPERTY } from './DataGridUtils'\nimport logicalTimestampToString from '@/components/DataGrid/utils/logicalTimestampToString'\nimport { extractColumnValidationMessages } from './extractColumnValidationMessages'\n\n/**\n * Convert model rows to a format suitable for DataSheetGrid\n * @param model\n * @param modelSnapshot\n */\nexport default function modelRowsToGrid(\n model: GridModel | null,\n modelSnapshot: GridModelSnapshot,\n): DataGridRow[] {\n if (!model || !modelSnapshot) return []\n const { columnNames, columnOrder, rows } = modelSnapshot\n const gridRows = rows.map((row, rowIndex): DataGridRow => {\n const rowObj: DataGridRow = {}\n columnOrder.forEach((index: number) => {\n const columnName = columnNames[index]\n if (columnName) {\n rowObj[columnName] = row.data[index]\n }\n })\n\n // Embed the logical timestamp as a string for use as the React key (a stable value unique to each row)\n rowObj[GRID_ROW_REACT_KEY_PROPERTY] = logicalTimestampToString(\n model.api.obj(['rows', String(rowIndex)]).node.id,\n )\n\n rowObj.__validationResults = row.metadata?.rowValidation\n if (rowObj.__validationResults) {\n rowObj.__validationStatus = rowObj.__validationResults?.isValid\n ? 'valid'\n : 'invalid'\n }\n\n if (!isValidationUpToDateForRow(model, rowIndex)) {\n rowObj.__validationStatus = 'pending'\n }\n\n // Parse the validation messages into a Map of column name to messages\n if (rowObj.__validationResults?.allValidationMessages) {\n rowObj.__cellValidationResults = extractColumnValidationMessages(\n rowObj.__validationResults.allValidationMessages,\n )\n }\n\n return rowObj\n })\n return gridRows\n}\n"],"mappings":";;;;;AAeA,SAAwBO,EACtBC,GACAC,GACe;AACf,KAAI,CAACD,KAAS,CAACC,EAAe,QAAO,EAAE;CACvC,IAAM,EAAEC,gBAAaC,gBAAaC,YAASH;AAmC3C,QAlCiBG,EAAKE,KAAKC,GAAKC,MAA0B;EACxD,IAAMC,IAAsB,EAAE;AA+B9B,SA9BAN,EAAYO,SAASC,MAAkB;GACrC,IAAMC,IAAaV,EAAYS;AAC/B,GAAIC,MACFH,EAAOG,KAAcL,EAAIM,KAAKF;IAEhC,EAGFF,EAAOb,KAA+BC,EACpCG,EAAMc,IAAIC,IAAI,CAAC,QAAQC,OAAOR,EAAS,CAAC,CAAC,CAACS,KAAKC,GAChD,EAEDT,EAAOU,sBAAsBZ,EAAIa,UAAUC,eACvCZ,EAAOU,wBACTV,EAAOa,qBAAqBb,EAAOU,qBAAqBI,UACpD,UACA,YAGD5B,EAA2BK,GAAOQ,EAAS,KAC9CC,EAAOa,qBAAqB,YAI1Bb,EAAOU,qBAAqBK,0BAC9Bf,EAAOgB,0BAA0B3B,EAC/BW,EAAOU,oBAAoBK,sBAC5B,GAGIf;GAEFJ"}
1
+ {"version":3,"file":"modelRowsToGrid.js","names":["DataGridRow","GridModel","GridModelSnapshot","isValidationUpToDateForRow","GRID_ROW_REACT_KEY_PROPERTY","logicalTimestampToString","extractColumnValidationMessages","modelRowsToGrid","model","modelSnapshot","columnNames","columnOrder","rows","gridRows","map","row","rowIndex","rowObj","forEach","index","columnName","data","api","obj","String","node","id","__validationResults","metadata","rowValidation","__validationStatus","isValid","allValidationMessages","__cellValidationResults"],"sources":["../../../../src/components/DataGrid/utils/modelRowsToGrid.ts"],"sourcesContent":["import {\n DataGridRow,\n GridModel,\n GridModelSnapshot,\n} from '@/components/DataGrid/DataGridTypes'\nimport { isValidationUpToDateForRow } from '@/components/DataGrid/utils/isValidationUpToDateForRow'\nimport { GRID_ROW_REACT_KEY_PROPERTY } from './DataGridUtils'\nimport logicalTimestampToString from '@/components/DataGrid/utils/logicalTimestampToString'\nimport { extractColumnValidationMessages } from './extractColumnValidationMessages'\n\n/**\n * Convert model rows to a format suitable for DataSheetGrid\n * @param model\n * @param modelSnapshot\n */\nexport default function modelRowsToGrid(\n model: GridModel | null,\n modelSnapshot: GridModelSnapshot,\n): DataGridRow[] {\n if (!model || !modelSnapshot) return []\n const { columnNames, columnOrder, rows } = modelSnapshot\n const gridRows = rows.map((row, rowIndex): DataGridRow => {\n const rowObj: DataGridRow = {}\n columnOrder.forEach((index: number) => {\n const columnName = columnNames[index]\n if (columnName) {\n rowObj[columnName] = row.data[index]\n }\n })\n\n // Embed the logical timestamp as a string for use as the React key (a stable value unique to each row)\n rowObj[GRID_ROW_REACT_KEY_PROPERTY] = logicalTimestampToString(\n model.api.obj(['rows', String(rowIndex)]).node.id,\n )\n\n rowObj.__validationResults = row.metadata?.rowValidation\n if (rowObj.__validationResults) {\n rowObj.__validationStatus = rowObj.__validationResults?.isValid\n ? 'valid'\n : 'invalid'\n }\n\n if (!isValidationUpToDateForRow(model, rowIndex)) {\n rowObj.__validationStatus = 'pending'\n }\n\n // Parse the validation messages into a Map of column name to messages\n if (rowObj.__validationResults?.allValidationMessages) {\n rowObj.__cellValidationResults = extractColumnValidationMessages(\n rowObj.__validationResults.allValidationMessages,\n )\n }\n\n return rowObj\n })\n return gridRows\n}\n"],"mappings":";;;;;AAeA,SAAwBO,EACtBC,GACAC,GACe;CACf,IAAI,CAACD,KAAS,CAACC,GAAe,OAAO,CAAA;CACrC,IAAM,EAAEC,gBAAaC,gBAAaC,YAASH;CAmC3C,OAlCiBG,EAAKE,KAAKC,GAAKC,MAA0B;EACxD,IAAMC,IAAsB,CAAC;EA+B7B,OA9BAN,EAAYO,SAASC,MAAkB;GACrC,IAAMC,IAAaV,EAAYS;GAC/B,AAAIC,MACFH,EAAOG,KAAcL,EAAIM,KAAKF;EAElC,CAAC,GAGDF,EAAOb,KAA+BC,EACpCG,EAAMc,IAAIC,IAAI,CAAC,QAAQC,OAAOR,CAAQ,CAAC,CAAC,EAAES,KAAKC,EACjD,GAEAT,EAAOU,sBAAsBZ,EAAIa,UAAUC,eACvCZ,EAAOU,wBACTV,EAAOa,qBAAqBb,EAAOU,qBAAqBI,UACpD,UACA,YAGD5B,EAA2BK,GAAOQ,CAAQ,MAC7CC,EAAOa,qBAAqB,YAI1Bb,EAAOU,qBAAqBK,0BAC9Bf,EAAOgB,0BAA0B3B,EAC/BW,EAAOU,oBAAoBK,qBAC7B,IAGKf;CACT,CACOJ;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"parseFreeTextUsingJsonSchemaType.js","names":["JSONSchema7Type","parseFreeTextGivenJsonSchemaType","freeText","colType","String","trim","parsed","parseInt","Number","isNaN","toLowerCase","JSON","parse","e"],"sources":["../../../../src/components/DataGrid/utils/parseFreeTextUsingJsonSchemaType.ts"],"sourcesContent":["import { JSONSchema7Type } from 'json-schema'\n\nexport default function parseFreeTextGivenJsonSchemaType(\n freeText: string,\n colType?: JSONSchema7Type,\n): unknown {\n if (!colType || colType === 'string') {\n return String(freeText)\n } else if (colType === 'number' || colType === 'integer') {\n if (freeText.trim() === '') {\n // empty string parse result is 0, so treat it as empty\n return freeText\n }\n let parsed: number\n if (colType === 'integer') {\n parsed = parseInt(freeText, 10)\n } else {\n parsed = Number(freeText)\n }\n if (!isNaN(parsed)) {\n return parsed\n } else {\n return freeText\n }\n } else if (colType === 'boolean') {\n if (freeText.toLowerCase() === 'true') {\n return true\n } else if (freeText.toLowerCase() === 'false') {\n return false\n } else {\n return freeText\n }\n } else if (colType === 'object' || colType === 'array') {\n try {\n const parsed = JSON.parse(freeText)\n return parsed\n } catch (e) {\n // If we can't parse it, just set it to the input value\n return freeText\n }\n } else if (colType === 'null') {\n if (freeText.toLowerCase() === 'null' || freeText.trim() === '') {\n return null\n } else {\n return freeText\n }\n } else {\n // Unknown type, just set it to the input value\n return freeText\n }\n}\n"],"mappings":";AAEA,SAAwBC,EACtBC,GACAC,GACS;AACT,KAAI,CAACA,KAAWA,MAAY,SAC1B,QAAOC,OAAOF,EAAS;KACdC,MAAY,YAAYA,MAAY,WAAW;AACxD,MAAID,EAASG,MAAM,KAAK,GAEtB,QAAOH;EAET,IAAII;AAOF,SANF,AAGEA,IAHEH,MAAY,YACLI,SAASL,GAAU,GAAG,GAEtBM,OAAON,EAAS,EAEtBO,MAAMH,EAAO,GAGTJ,IAFAI;YAIAH,MAAY,UAMnB,QALED,EAASQ,aAAa,KAAK,SACtB,KACER,EAASQ,aAAa,KAAK,UAC7B,KAEAR;UAEAC,MAAY,YAAYA,MAAY,QAC7C,KAAI;AAEF,SADeQ,KAAKC,MAAMV,EACnBI;SACG;AAEV,SAAOJ;;UAEAC,MAAY,OAInB,QAHED,EAASQ,aAAa,KAAK,UAAUR,EAASG,MAAM,KAAK,KACpD,OAEAH;KAIT,QAAOA"}
1
+ {"version":3,"file":"parseFreeTextUsingJsonSchemaType.js","names":["JSONSchema7Type","parseFreeTextGivenJsonSchemaType","freeText","colType","String","trim","parsed","parseInt","Number","isNaN","toLowerCase","JSON","parse","e"],"sources":["../../../../src/components/DataGrid/utils/parseFreeTextUsingJsonSchemaType.ts"],"sourcesContent":["import { JSONSchema7Type } from 'json-schema'\n\nexport default function parseFreeTextGivenJsonSchemaType(\n freeText: string,\n colType?: JSONSchema7Type,\n): unknown {\n if (!colType || colType === 'string') {\n return String(freeText)\n } else if (colType === 'number' || colType === 'integer') {\n if (freeText.trim() === '') {\n // empty string parse result is 0, so treat it as empty\n return freeText\n }\n let parsed: number\n if (colType === 'integer') {\n parsed = parseInt(freeText, 10)\n } else {\n parsed = Number(freeText)\n }\n if (!isNaN(parsed)) {\n return parsed\n } else {\n return freeText\n }\n } else if (colType === 'boolean') {\n if (freeText.toLowerCase() === 'true') {\n return true\n } else if (freeText.toLowerCase() === 'false') {\n return false\n } else {\n return freeText\n }\n } else if (colType === 'object' || colType === 'array') {\n try {\n const parsed = JSON.parse(freeText)\n return parsed\n } catch (e) {\n // If we can't parse it, just set it to the input value\n return freeText\n }\n } else if (colType === 'null') {\n if (freeText.toLowerCase() === 'null' || freeText.trim() === '') {\n return null\n } else {\n return freeText\n }\n } else {\n // Unknown type, just set it to the input value\n return freeText\n }\n}\n"],"mappings":";AAEA,SAAwBC,EACtBC,GACAC,GACS;CACT,IAAI,CAACA,KAAWA,MAAY,UAC1B,OAAOC,OAAOF,CAAQ;CACjB,IAAIC,MAAY,YAAYA,MAAY,WAAW;EACxD,IAAID,EAASG,KAAK,MAAM,IAEtB,OAAOH;EAET,IAAII;EAOF,OANF,AAGEA,IAHEH,MAAY,YACLI,SAASL,GAAU,EAAE,IAErBM,OAAON,CAAQ,GAErBO,MAAMH,CAAM,IAGRJ,IAFAI;CAIX,OAAO,IAAIH,MAAY,WAMnB,OALED,EAASQ,YAAY,MAAM,SACtB,KACER,EAASQ,YAAY,MAAM,UAC7B,KAEAR;MAEJ,IAAIC,MAAY,YAAYA,MAAY,SAC7C,IAAI;EAEF,OADeQ,KAAKC,MAAMV,CACnBI;CACT,QAAY;EAEV,OAAOJ;CACT;MACK,IAAIC,MAAY,QAInB,OAHED,EAASQ,YAAY,MAAM,UAAUR,EAASG,KAAK,MAAM,KACpD,OAEAH;MAIT,OAAOA;AAEX"}
@@ -1 +1 @@
1
- {"version":3,"file":"replicaSelectionToGridSelection.js","names":["GridModel","ReplicaSelectionModel","CrdtId","GridSelectionRange","minRow","maxRow","columnNames","Set","crdtIdsToIndices","arrApi","ReturnType","ids","result","length","lookup","map","id","rep","seq","idx","chunk","node","chunks","del","offset","span","key","sid","time","has","add","replicaSelectionToGridSelection","selection","model","snapshot","api","getSnapshot","numRows","rows","numCols","rowSelectAll","rowIds","rowSelection","rowIndexSet","arr","size","reduce","a","b","Math","min","max","undefined","columnSelectAll","colIds","columnSelection","colIndexSet","colIdx","columnOrder","filter","name"],"sources":["../../../../src/components/DataGrid/utils/replicaSelectionToGridSelection.ts"],"sourcesContent":["import type { GridModel, ReplicaSelectionModel, CrdtId } from '../DataGridTypes'\n\nexport interface GridSelectionRange {\n minRow: number\n maxRow: number\n /** undefined means all columns are selected */\n columnNames: Set<string> | undefined\n}\n\n/**\n * Convert a flat array of CrdtIds to a Set of array indices by walking the\n * arr node's chunks.\n */\nfunction crdtIdsToIndices(\n arrApi: ReturnType<GridModel['api']['arr']>,\n ids: CrdtId[],\n): Set<number> {\n const result = new Set<number>()\n if (ids.length === 0) return result\n\n // Build a lookup set for O(1) membership test\n const lookup = new Set(ids.map(id => `${id.rep}:${id.seq}`))\n\n let idx = 0\n for (const chunk of arrApi.node.chunks()) {\n if (chunk.del) continue\n for (let offset = 0; offset < chunk.span; offset++) {\n const key = `${chunk.id.sid}:${chunk.id.time + offset}`\n if (lookup.has(key)) result.add(idx + offset)\n }\n idx += chunk.span\n }\n return result\n}\n\n/**\n * Converts a stored ReplicaSelectionModel (CRDT-stable IDs) back into a\n * plain grid selection range that can be used for cell class computation.\n *\n * This is the inverse of getCrdtIdsForArrayRange in computeReplicaSelectionModel.\n */\nexport function replicaSelectionToGridSelection(\n selection: ReplicaSelectionModel | null | undefined,\n model: GridModel,\n): GridSelectionRange | null {\n if (!selection) return null\n\n const snapshot = model.api.getSnapshot()\n const numRows = snapshot.rows.length\n const numCols = snapshot.columnNames.length\n\n if (numRows < 1 || numCols < 1) return null\n\n // ── Row range ────────────────────────────────────────────────────────────\n let minRow = 0\n let maxRow = numRows - 1\n\n if (!selection.rowSelectAll) {\n const rowIds = selection.rowSelection\n if (!rowIds || rowIds.length === 0) return null\n\n const rowIndexSet = crdtIdsToIndices(model.api.arr(['rows']), rowIds)\n if (rowIndexSet.size === 0) return null\n minRow = [...rowIndexSet].reduce((a, b) => Math.min(a, b))\n maxRow = [...rowIndexSet].reduce((a, b) => Math.max(a, b))\n }\n\n // ── Column range ─────────────────────────────────────────────────────────\n let columnNames: Set<string> | undefined = undefined // undefined = all columns\n\n if (!selection.columnSelectAll) {\n const colIds = selection.columnSelection\n if (!colIds || colIds.length === 0) return null\n\n const colIndexSet = crdtIdsToIndices(model.api.arr(['columnOrder']), colIds)\n if (colIndexSet.size === 0) return null\n columnNames = new Set(\n [...colIndexSet]\n .map(colIdx => snapshot.columnNames[snapshot.columnOrder[colIdx]])\n .filter((name): name is string => name !== undefined),\n )\n }\n\n return { minRow, maxRow, columnNames }\n}\n"],"mappings":";AAaA,SAASQ,EACPC,GACAE,GACa;CACb,IAAMC,oBAAS,IAAIL,KAAa;AAChC,KAAII,EAAIE,WAAW,EAAG,QAAOD;CAG7B,IAAME,IAAS,IAAIP,IAAII,EAAII,KAAIC,MAAM,GAAGA,EAAGC,IAAG,GAAID,EAAGE,MAAM,CAAC,EAExDC,IAAM;AACV,MAAK,IAAMC,KAASX,EAAOY,KAAKC,QAAQ,CAClCF,QAAMG,KACV;OAAK,IAAIC,IAAS,GAAGA,IAASJ,EAAMK,MAAMD,KAAU;GAClD,IAAME,IAAM,GAAGN,EAAMJ,GAAGW,IAAG,GAAIP,EAAMJ,GAAGY,OAAOJ;AAC/C,GAAIV,EAAOe,IAAIH,EAAI,IAAEd,EAAOkB,IAAIX,IAAMK,EAAO;;AAE/CL,OAAOC,EAAMK;;AAEf,QAAOb;;AAST,SAAgBmB,EACdC,GACAC,GAC2B;AAC3B,KAAI,CAACD,EAAW,QAAO;CAEvB,IAAME,IAAWD,EAAME,IAAIC,aAAa,EAClCC,IAAUH,EAASI,KAAKzB,QACxB0B,IAAUL,EAAS5B,YAAYO;AAErC,KAAIwB,IAAU,KAAKE,IAAU,EAAG,QAAO;CAGvC,IAAInC,IAAS,GACTC,IAASgC,IAAU;AAEvB,KAAI,CAACL,EAAUQ,cAAc;EAC3B,IAAMC,IAAST,EAAUU;AACzB,MAAI,CAACD,KAAUA,EAAO5B,WAAW,EAAG,QAAO;EAE3C,IAAM8B,IAAcnC,EAAiByB,EAAME,IAAIS,IAAI,CAAC,OAAO,CAAC,EAAEH,EAAO;AACrE,MAAIE,EAAYE,SAAS,EAAG,QAAO;AAEnCxC,EADAD,IAAS,CAAC,GAAGuC,EAAY,CAACG,QAAQC,GAAGC,MAAMC,KAAKC,IAAIH,GAAGC,EAAE,CAAC,EAC1D3C,IAAS,CAAC,GAAGsC,EAAY,CAACG,QAAQC,GAAGC,MAAMC,KAAKE,IAAIJ,GAAGC,EAAE,CAAC;;CAI5D,IAAI1C;AAEJ,KAAI,CAAC0B,EAAUqB,iBAAiB;EAC9B,IAAMC,IAAStB,EAAUuB;AACzB,MAAI,CAACD,KAAUA,EAAOzC,WAAW,EAAG,QAAO;EAE3C,IAAM2C,IAAchD,EAAiByB,EAAME,IAAIS,IAAI,CAAC,cAAc,CAAC,EAAEU,EAAO;AAC5E,MAAIE,EAAYX,SAAS,EAAG,QAAO;AACnCvC,MAAc,IAAIC,IAChB,CAAC,GAAGiD,EAAY,CACbzC,KAAI0C,MAAUvB,EAAS5B,YAAY4B,EAASwB,YAAYD,IAAS,CACjEE,QAAQC,MAAyBA,MAASR,KAAAA,EAC/C,CAAC;;AAGH,QAAO;EAAEhD;EAAQC;EAAQC;EAAa"}
1
+ {"version":3,"file":"replicaSelectionToGridSelection.js","names":["GridModel","ReplicaSelectionModel","CrdtId","GridSelectionRange","minRow","maxRow","columnNames","Set","crdtIdsToIndices","arrApi","ReturnType","ids","result","length","lookup","map","id","rep","seq","idx","chunk","node","chunks","del","offset","span","key","sid","time","has","add","replicaSelectionToGridSelection","selection","model","snapshot","api","getSnapshot","numRows","rows","numCols","rowSelectAll","rowIds","rowSelection","rowIndexSet","arr","size","reduce","a","b","Math","min","max","undefined","columnSelectAll","colIds","columnSelection","colIndexSet","colIdx","columnOrder","filter","name"],"sources":["../../../../src/components/DataGrid/utils/replicaSelectionToGridSelection.ts"],"sourcesContent":["import type { GridModel, ReplicaSelectionModel, CrdtId } from '../DataGridTypes'\n\nexport interface GridSelectionRange {\n minRow: number\n maxRow: number\n /** undefined means all columns are selected */\n columnNames: Set<string> | undefined\n}\n\n/**\n * Convert a flat array of CrdtIds to a Set of array indices by walking the\n * arr node's chunks.\n */\nfunction crdtIdsToIndices(\n arrApi: ReturnType<GridModel['api']['arr']>,\n ids: CrdtId[],\n): Set<number> {\n const result = new Set<number>()\n if (ids.length === 0) return result\n\n // Build a lookup set for O(1) membership test\n const lookup = new Set(ids.map(id => `${id.rep}:${id.seq}`))\n\n let idx = 0\n for (const chunk of arrApi.node.chunks()) {\n if (chunk.del) continue\n for (let offset = 0; offset < chunk.span; offset++) {\n const key = `${chunk.id.sid}:${chunk.id.time + offset}`\n if (lookup.has(key)) result.add(idx + offset)\n }\n idx += chunk.span\n }\n return result\n}\n\n/**\n * Converts a stored ReplicaSelectionModel (CRDT-stable IDs) back into a\n * plain grid selection range that can be used for cell class computation.\n *\n * This is the inverse of getCrdtIdsForArrayRange in computeReplicaSelectionModel.\n */\nexport function replicaSelectionToGridSelection(\n selection: ReplicaSelectionModel | null | undefined,\n model: GridModel,\n): GridSelectionRange | null {\n if (!selection) return null\n\n const snapshot = model.api.getSnapshot()\n const numRows = snapshot.rows.length\n const numCols = snapshot.columnNames.length\n\n if (numRows < 1 || numCols < 1) return null\n\n // ── Row range ────────────────────────────────────────────────────────────\n let minRow = 0\n let maxRow = numRows - 1\n\n if (!selection.rowSelectAll) {\n const rowIds = selection.rowSelection\n if (!rowIds || rowIds.length === 0) return null\n\n const rowIndexSet = crdtIdsToIndices(model.api.arr(['rows']), rowIds)\n if (rowIndexSet.size === 0) return null\n minRow = [...rowIndexSet].reduce((a, b) => Math.min(a, b))\n maxRow = [...rowIndexSet].reduce((a, b) => Math.max(a, b))\n }\n\n // ── Column range ─────────────────────────────────────────────────────────\n let columnNames: Set<string> | undefined = undefined // undefined = all columns\n\n if (!selection.columnSelectAll) {\n const colIds = selection.columnSelection\n if (!colIds || colIds.length === 0) return null\n\n const colIndexSet = crdtIdsToIndices(model.api.arr(['columnOrder']), colIds)\n if (colIndexSet.size === 0) return null\n columnNames = new Set(\n [...colIndexSet]\n .map(colIdx => snapshot.columnNames[snapshot.columnOrder[colIdx]])\n .filter((name): name is string => name !== undefined),\n )\n }\n\n return { minRow, maxRow, columnNames }\n}\n"],"mappings":";AAaA,SAASQ,EACPC,GACAE,GACa;CACb,IAAMC,oBAAS,IAAIL,IAAY;CAC/B,IAAII,EAAIE,WAAW,GAAG,OAAOD;CAG7B,IAAME,IAAS,IAAIP,IAAII,EAAII,KAAIC,MAAM,GAAGA,EAAGC,IAAG,GAAID,EAAGE,KAAK,CAAC,GAEvDC,IAAM;CACV,KAAK,IAAMC,KAASX,EAAOY,KAAKC,OAAO,GACjCF,OAAMG,KACV;OAAK,IAAIC,IAAS,GAAGA,IAASJ,EAAMK,MAAMD,KAAU;GAClD,IAAME,IAAM,GAAGN,EAAMJ,GAAGW,IAAG,GAAIP,EAAMJ,GAAGY,OAAOJ;GAC/C,AAAIV,EAAOe,IAAIH,CAAG,KAAGd,EAAOkB,IAAIX,IAAMK,CAAM;EAC9C;EACAL,KAAOC,EAAMK;CADb;CAGF,OAAOb;AACT;AAQA,SAAgBmB,EACdC,GACAC,GAC2B;CAC3B,IAAI,CAACD,GAAW,OAAO;CAEvB,IAAME,IAAWD,EAAME,IAAIC,YAAY,GACjCC,IAAUH,EAASI,KAAKzB,QACxB0B,IAAUL,EAAS5B,YAAYO;CAErC,IAAIwB,IAAU,KAAKE,IAAU,GAAG,OAAO;CAGvC,IAAInC,IAAS,GACTC,IAASgC,IAAU;CAEvB,IAAI,CAACL,EAAUQ,cAAc;EAC3B,IAAMC,IAAST,EAAUU;EACzB,IAAI,CAACD,KAAUA,EAAO5B,WAAW,GAAG,OAAO;EAE3C,IAAM8B,IAAcnC,EAAiByB,EAAME,IAAIS,IAAI,CAAC,MAAM,CAAC,GAAGH,CAAM;EACpE,IAAIE,EAAYE,SAAS,GAAG,OAAO;EAEnCxC,AADAD,IAAS,CAAC,GAAGuC,CAAW,EAAEG,QAAQC,GAAGC,MAAMC,KAAKC,IAAIH,GAAGC,CAAC,CAAC,GACzD3C,IAAS,CAAC,GAAGsC,CAAW,EAAEG,QAAQC,GAAGC,MAAMC,KAAKE,IAAIJ,GAAGC,CAAC,CAAC;CAC3D;CAGA,IAAI1C;CAEJ,IAAI,CAAC0B,EAAUqB,iBAAiB;EAC9B,IAAMC,IAAStB,EAAUuB;EACzB,IAAI,CAACD,KAAUA,EAAOzC,WAAW,GAAG,OAAO;EAE3C,IAAM2C,IAAchD,EAAiByB,EAAME,IAAIS,IAAI,CAAC,aAAa,CAAC,GAAGU,CAAM;EAC3E,IAAIE,EAAYX,SAAS,GAAG,OAAO;EACnCvC,IAAc,IAAIC,IAChB,CAAC,GAAGiD,CAAW,EACZzC,KAAI0C,MAAUvB,EAAS5B,YAAY4B,EAASwB,YAAYD,GAAQ,EAChEE,QAAQC,MAAyBA,MAASR,KAAAA,CAAS,CACxD;CACF;CAEA,OAAO;EAAEhD;EAAQC;EAAQC;CAAY;AACvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"schemaAwarePasteValue.js","names":["Column","SchemaPropertyInfo","getEmptyValue","coerceModelCellValue","value","schemaPropertyInfo","undefined","trim","isRequired","PasteValueFn","NonNullable","T","PasteValue","wrapPasteValueWithSchemaCoercion","Record","originalPasteValue","columnName","rowData","rowIndex","result","cellValue","coerced"],"sources":["../../../../src/components/DataGrid/utils/schemaAwarePasteValue.ts"],"sourcesContent":["import type { Column } from '@sage-bionetworks/react-datasheet-grid'\nimport type { SchemaPropertyInfo } from '@/utils/jsonschema/getSchemaPropertyInfo'\nimport { getEmptyValue } from './getEmptyValue'\n\n/**\n * Coerce an empty cell value to the schema-correct blank before it reaches\n * the model, regardless of how the edit originated (paste, free-typed commit,\n * programmatic CREATE/UPDATE, etc.).\n *\n * - Optional columns -> undefined (property is absent and passes validation\n * for any optional type).\n * - Required columns -> null (validator surfaces a substantive error the\n * user can act on).\n *\n * \"Empty\" means null, undefined, or a whitespace-only string. Spreadsheet\n * clipboard formats (text/html in particular) can encode visually empty\n * cells as runs of `\\n` from stacked `<br>` tags, so the trim check covers\n * those alongside literal \"\". Empty arrays are not coerced because some\n * columns (e.g. multi-enum) emit [] from their own paste logic and that is\n * the desired in-model representation.\n *\n * If schemaPropertyInfo is omitted, the original value is returned unchanged.\n */\nexport function coerceModelCellValue(\n value: unknown,\n schemaPropertyInfo?: SchemaPropertyInfo,\n): unknown {\n if (!schemaPropertyInfo) {\n return value\n }\n if (\n value === null ||\n value === undefined ||\n (typeof value === 'string' && value.trim() === '')\n ) {\n return getEmptyValue(schemaPropertyInfo.isRequired)\n }\n return value\n}\n\ntype PasteValueFn<T, PasteValue> = NonNullable<\n Column<T, unknown, PasteValue>['pasteValue']\n>\n\n/**\n * Wraps a keyed column's `pasteValue` so that an empty pasted cell is coerced\n * to the schema-correct blank for the column. If `schemaPropertyInfo` is\n * omitted (e.g. the grid is rendered without a JSON schema), the original\n * paste behavior is preserved.\n */\nexport function wrapPasteValueWithSchemaCoercion<\n T extends Record<string, unknown>,\n PasteValue,\n>(\n originalPasteValue: PasteValueFn<T, PasteValue> | undefined,\n columnName: string,\n schemaPropertyInfo?: SchemaPropertyInfo,\n): PasteValueFn<T, PasteValue> | undefined {\n if (!originalPasteValue || !schemaPropertyInfo) {\n return originalPasteValue\n }\n return ({ rowData, value, rowIndex }) => {\n const result = originalPasteValue({ rowData, value, rowIndex })\n const cellValue = result[columnName]\n const coerced = coerceModelCellValue(cellValue, schemaPropertyInfo)\n if (coerced === cellValue) {\n return result\n }\n return { ...result, [columnName]: coerced } as T\n }\n}\n"],"mappings":";;AAuBA,SAAgBG,EACdC,GACAC,GACS;AAWT,QAVKA,MAIHD,KAAU,QAET,OAAOA,KAAU,YAAYA,EAAMG,MAAM,KAAK,MAExCL,EAAcG,EAAmBG,WAAW,GAE9CJ;;AAaT,SAAgBS,EAIdE,GACAC,GACAX,GACyC;AAIzC,QAHI,CAACU,KAAsB,CAACV,IACnBU,KAED,EAAEE,YAASb,UAAOc,kBAAe;EACvC,IAAMC,IAASJ,EAAmB;GAAEE;GAASb;GAAOc;GAAU,CAAC,EACzDE,IAAYD,EAAOH,IACnBK,IAAUlB,EAAqBiB,GAAWf,EAAmB;AAInE,SAHIgB,MAAYD,IACPD,IAEF;GAAE,GAAGA;IAASH,IAAaK;GAAS"}
1
+ {"version":3,"file":"schemaAwarePasteValue.js","names":["Column","SchemaPropertyInfo","getEmptyValue","coerceModelCellValue","value","schemaPropertyInfo","undefined","trim","isRequired","PasteValueFn","NonNullable","T","PasteValue","wrapPasteValueWithSchemaCoercion","Record","originalPasteValue","columnName","rowData","rowIndex","result","cellValue","coerced"],"sources":["../../../../src/components/DataGrid/utils/schemaAwarePasteValue.ts"],"sourcesContent":["import type { Column } from '@sage-bionetworks/react-datasheet-grid'\nimport type { SchemaPropertyInfo } from '@/utils/jsonschema/getSchemaPropertyInfo'\nimport { getEmptyValue } from './getEmptyValue'\n\n/**\n * Coerce an empty cell value to the schema-correct blank before it reaches\n * the model, regardless of how the edit originated (paste, free-typed commit,\n * programmatic CREATE/UPDATE, etc.).\n *\n * - Optional columns -> undefined (property is absent and passes validation\n * for any optional type).\n * - Required columns -> null (validator surfaces a substantive error the\n * user can act on).\n *\n * \"Empty\" means null, undefined, or a whitespace-only string. Spreadsheet\n * clipboard formats (text/html in particular) can encode visually empty\n * cells as runs of `\\n` from stacked `<br>` tags, so the trim check covers\n * those alongside literal \"\". Empty arrays are not coerced because some\n * columns (e.g. multi-enum) emit [] from their own paste logic and that is\n * the desired in-model representation.\n *\n * If schemaPropertyInfo is omitted, the original value is returned unchanged.\n */\nexport function coerceModelCellValue(\n value: unknown,\n schemaPropertyInfo?: SchemaPropertyInfo,\n): unknown {\n if (!schemaPropertyInfo) {\n return value\n }\n if (\n value === null ||\n value === undefined ||\n (typeof value === 'string' && value.trim() === '')\n ) {\n return getEmptyValue(schemaPropertyInfo.isRequired)\n }\n return value\n}\n\ntype PasteValueFn<T, PasteValue> = NonNullable<\n Column<T, unknown, PasteValue>['pasteValue']\n>\n\n/**\n * Wraps a keyed column's `pasteValue` so that an empty pasted cell is coerced\n * to the schema-correct blank for the column. If `schemaPropertyInfo` is\n * omitted (e.g. the grid is rendered without a JSON schema), the original\n * paste behavior is preserved.\n */\nexport function wrapPasteValueWithSchemaCoercion<\n T extends Record<string, unknown>,\n PasteValue,\n>(\n originalPasteValue: PasteValueFn<T, PasteValue> | undefined,\n columnName: string,\n schemaPropertyInfo?: SchemaPropertyInfo,\n): PasteValueFn<T, PasteValue> | undefined {\n if (!originalPasteValue || !schemaPropertyInfo) {\n return originalPasteValue\n }\n return ({ rowData, value, rowIndex }) => {\n const result = originalPasteValue({ rowData, value, rowIndex })\n const cellValue = result[columnName]\n const coerced = coerceModelCellValue(cellValue, schemaPropertyInfo)\n if (coerced === cellValue) {\n return result\n }\n return { ...result, [columnName]: coerced } as T\n }\n}\n"],"mappings":";;AAuBA,SAAgBG,EACdC,GACAC,GACS;CAWT,OAVKA,MAIHD,KAAU,QAET,OAAOA,KAAU,YAAYA,EAAMG,KAAK,MAAM,MAExCL,EAAcG,EAAmBG,UAAU,IAE7CJ;AACT;AAYA,SAAgBS,EAIdE,GACAC,GACAX,GACyC;CAIzC,OAHI,CAACU,KAAsB,CAACV,IACnBU,KAED,EAAEE,YAASb,UAAOc,kBAAe;EACvC,IAAMC,IAASJ,EAAmB;GAAEE;GAASb;GAAOc;EAAS,CAAC,GACxDE,IAAYD,EAAOH,IACnBK,IAAUlB,EAAqBiB,GAAWf,CAAkB;EAIlE,OAHIgB,MAAYD,IACPD,IAEF;GAAE,GAAGA;IAASH,IAAaK;EAAQ;CAC5C;AACF"}