synapse-react-client 4.0.9 → 4.0.10

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 (543) hide show
  1. package/dist/SWC.index.d.ts +1 -0
  2. package/dist/SWC.index.d.ts.map +1 -1
  3. package/dist/SWC.index.js +2 -1
  4. package/dist/SWC.index.js.map +1 -1
  5. package/dist/aridhia-queries/aridhiaTokenExchange.js.map +1 -1
  6. package/dist/aridhia-queries/useGetAridhiaRequests.js.map +1 -1
  7. package/dist/assets/icons/TasksIcon.d.ts.map +1 -1
  8. package/dist/assets/icons/TasksIcon.js +6 -10
  9. package/dist/assets/icons/TasksIcon.js.map +1 -1
  10. package/dist/components/AccessRequirementAclEditor/AccessRequirementAclEditor.d.ts.map +1 -1
  11. package/dist/components/AccessRequirementAclEditor/AccessRequirementAclEditor.js +69 -63
  12. package/dist/components/AccessRequirementAclEditor/AccessRequirementAclEditor.js.map +1 -1
  13. package/dist/components/AccessRequirementList/AccessApprovalCheckMark.js.map +1 -1
  14. package/dist/components/AccessRequirementList/AccessRequirementList.js.map +1 -1
  15. package/dist/components/AccessRequirementList/AccessRequirementListUtils.js.map +1 -1
  16. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js.map +1 -1
  17. package/dist/components/AccessRequirementList/RequirementItem/SelfSignAccessRequirementItem.js.map +1 -1
  18. package/dist/components/AccessRequirementRelatedProjectsList/AccessRequirementRelatedProjectsList.js.map +1 -1
  19. package/dist/components/AccessTokenPage/AccessTokenCard/AccessTokenCard.js.map +1 -1
  20. package/dist/components/AcknowledgementsPage/StudyAcknowledgements.js.map +1 -1
  21. package/dist/components/AclEditor/PermissionLevelMenu.js.map +1 -1
  22. package/dist/components/AclEditor/ResourceAccessAndUserGroupHeader.js.map +1 -1
  23. package/dist/components/AclEditor/useSortResourceAccessList.js.map +1 -1
  24. package/dist/components/AclEditor/useUpdateAcl.js.map +1 -1
  25. package/dist/components/Aridhia/AridhiaAccessStatus.js.map +1 -1
  26. package/dist/components/Authentication/AuthenticationMethodSelection.d.ts.map +1 -1
  27. package/dist/components/Authentication/AuthenticationMethodSelection.js +38 -37
  28. package/dist/components/Authentication/AuthenticationMethodSelection.js.map +1 -1
  29. package/dist/components/Authentication/Constants.d.ts +1 -0
  30. package/dist/components/Authentication/Constants.d.ts.map +1 -1
  31. package/dist/components/Authentication/Constants.js +2 -2
  32. package/dist/components/Authentication/Constants.js.map +1 -1
  33. package/dist/components/Authentication/LastLoginInfo.js.map +1 -1
  34. package/dist/components/Authentication/RecoveryCodeForm.js.map +1 -1
  35. package/dist/components/Authentication/RecoveryCodeGrid.js.map +1 -1
  36. package/dist/components/Authentication/RegenerateBackupCodesWarning.js.map +1 -1
  37. package/dist/components/Authentication/Reset2FAWarning.js.map +1 -1
  38. package/dist/components/Authentication/StandaloneLoginForm.js +1 -1
  39. package/dist/components/Authentication/TwoFactorBackupCodes.js.map +1 -1
  40. package/dist/components/Authentication/TwoFactorEnrollmentForm.d.ts.map +1 -1
  41. package/dist/components/Authentication/TwoFactorEnrollmentForm.js +2 -1
  42. package/dist/components/Authentication/TwoFactorEnrollmentForm.js.map +1 -1
  43. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
  44. package/dist/components/CardContainer/CardContainer.js.map +1 -1
  45. package/dist/components/CardDeck/CardDeck.Mobile.js.map +1 -1
  46. package/dist/components/CardDeck/TableQueryCardDeck.js.map +1 -1
  47. package/dist/components/CertificationQuiz/CertificationQuiz.js.map +1 -1
  48. package/dist/components/ChallengeDataDownload/ChallengeDataDownload.js.map +1 -1
  49. package/dist/components/ChallengeSubmission/ChallengeSubmission.js.map +1 -1
  50. package/dist/components/ChallengeSubmission/ChallengeSubmissionStepper.js.map +1 -1
  51. package/dist/components/ChallengeSubmission/EvaluationQueueCurrentRoundInfo.js.map +1 -1
  52. package/dist/components/ChallengeSubmission/EvaluationQueueList.js.map +1 -1
  53. package/dist/components/ChallengeSubmission/SubmissionDirectoryList.js.map +1 -1
  54. package/dist/components/ChallengeTeamWizard/ChallengeTeamWizard.js.map +1 -1
  55. package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js.map +1 -1
  56. package/dist/components/ChangePassword/ChangePassword.js.map +1 -1
  57. package/dist/components/ChangePassword/ChangePasswordWithToken.js.map +1 -1
  58. package/dist/components/ChangePassword/useChangePasswordFormState.js +1 -1
  59. package/dist/components/ChangePassword/useChangePasswordFormState.js.map +1 -1
  60. package/dist/components/CitationPopover/CitationPopoverContent.js.map +1 -1
  61. package/dist/components/ColumnFilter/ColumnFilter.js.map +1 -1
  62. package/dist/components/ComponentCollapse.js.map +1 -1
  63. package/dist/components/CookiesNotification/CookiesNotification.js.map +1 -1
  64. package/dist/components/CreateProjectModal/CreateProjectModal.js.map +1 -1
  65. package/dist/components/CreateTableViewWizard/CreateTableViewWizardUtils.js.map +1 -1
  66. package/dist/components/DataGrid/DataGrid.d.ts +0 -1
  67. package/dist/components/DataGrid/DataGrid.d.ts.map +1 -1
  68. package/dist/components/DataGrid/DataGrid.js +72 -72
  69. package/dist/components/DataGrid/DataGrid.js.map +1 -1
  70. package/dist/components/DataGrid/DataGridWebSocket.d.ts +4 -0
  71. package/dist/components/DataGrid/DataGridWebSocket.d.ts.map +1 -1
  72. package/dist/components/DataGrid/DataGridWebSocket.js +9 -8
  73. package/dist/components/DataGrid/DataGridWebSocket.js.map +1 -1
  74. package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
  75. package/dist/components/DataGrid/SynapseGrid.js +326 -268
  76. package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
  77. package/dist/components/DataGrid/columns/AutocompleteColumn.d.ts +2 -0
  78. package/dist/components/DataGrid/columns/AutocompleteColumn.d.ts.map +1 -1
  79. package/dist/components/DataGrid/columns/AutocompleteColumn.js +113 -67
  80. package/dist/components/DataGrid/columns/AutocompleteColumn.js.map +1 -1
  81. package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.d.ts +2 -1
  82. package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.d.ts.map +1 -1
  83. package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.js +126 -122
  84. package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.js.map +1 -1
  85. package/dist/components/DataGrid/columns/useGridAutocompleteState.d.ts +58 -0
  86. package/dist/components/DataGrid/columns/useGridAutocompleteState.d.ts.map +1 -0
  87. package/dist/components/DataGrid/columns/useGridAutocompleteState.js +52 -0
  88. package/dist/components/DataGrid/columns/useGridAutocompleteState.js.map +1 -0
  89. package/dist/components/DataGrid/components/ValidationAlert.d.ts +5 -2
  90. package/dist/components/DataGrid/components/ValidationAlert.d.ts.map +1 -1
  91. package/dist/components/DataGrid/components/ValidationAlert.js +429 -24
  92. package/dist/components/DataGrid/components/ValidationAlert.js.map +1 -1
  93. package/dist/components/DataGrid/hooks/useColumnResizeHandles.js.map +1 -1
  94. package/dist/components/DataGrid/hooks/useGetSchemaForGrid.js.map +1 -1
  95. package/dist/components/DataGrid/hooks/useGridUndoRedo.js.map +1 -1
  96. package/dist/components/DataGrid/hooks/useStack.js.map +1 -1
  97. package/dist/components/DataGrid/useCRDTModelView.js.map +1 -1
  98. package/dist/components/DataGrid/useDataGridWebsocket.d.ts +7 -0
  99. package/dist/components/DataGrid/useDataGridWebsocket.d.ts.map +1 -1
  100. package/dist/components/DataGrid/useDataGridWebsocket.js +16 -2
  101. package/dist/components/DataGrid/useDataGridWebsocket.js.map +1 -1
  102. package/dist/components/DataGrid/useInitializeGridConnection.js.map +1 -1
  103. package/dist/components/DataGrid/useMergeGridWithRecordSet.js.map +1 -1
  104. package/dist/components/DataGrid/useMergeGridWithSource.js.map +1 -1
  105. package/dist/components/DataGrid/useMergeGridWithTable.js.map +1 -1
  106. package/dist/components/DataGrid/utils/DataGridUtils.js.map +1 -1
  107. package/dist/components/DataGrid/utils/applyModelChange.js.map +1 -1
  108. package/dist/components/DataGrid/utils/columnFactory.js.map +1 -1
  109. package/dist/components/DataGrid/utils/computeReplicaSelectionModel.js.map +1 -1
  110. package/dist/components/DataGrid/utils/extractColumnValidationMessages.js.map +1 -1
  111. package/dist/components/DataGrid/utils/getCellClassName.d.ts.map +1 -1
  112. package/dist/components/DataGrid/utils/getCellClassName.js +8 -8
  113. package/dist/components/DataGrid/utils/getCellClassName.js.map +1 -1
  114. package/dist/components/DataGrid/utils/json-rx/JsonRx.js.map +1 -1
  115. package/dist/components/DataGrid/utils/modelRowsToGrid.js.map +1 -1
  116. package/dist/components/DataGrid/utils/parseFreeTextUsingJsonSchemaType.js.map +1 -1
  117. package/dist/components/DataGrid/utils/splitPatch.js.map +1 -1
  118. package/dist/components/DateTimePicker/DateTimePicker.js.map +1 -1
  119. package/dist/components/DirectDownload/DirectDownload.js.map +1 -1
  120. package/dist/components/DirectDownloadButton.js.map +1 -1
  121. package/dist/components/DownloadCart/CreatePackageV2.js.map +1 -1
  122. package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js.map +1 -1
  123. package/dist/components/DownloadCart/DownloadListActionsRequired.js.map +1 -1
  124. package/dist/components/DownloadCart/DownloadListTable.js.map +1 -1
  125. package/dist/components/DownloadCart/fileNameUtils.js.map +1 -1
  126. package/dist/components/DraggableDialog/DraggableDialog.js.map +1 -1
  127. package/dist/components/DynamicForm/DynamicFormModal.js.map +1 -1
  128. package/dist/components/Ecosystem/TableQueryEcosystem.js.map +1 -1
  129. package/dist/components/EntityAclEditor/EntityAclEditor.d.ts.map +1 -1
  130. package/dist/components/EntityAclEditor/EntityAclEditor.js +103 -103
  131. package/dist/components/EntityAclEditor/EntityAclEditor.js.map +1 -1
  132. package/dist/components/EntityAclEditor/useNotifyNewACLUsers.js.map +1 -1
  133. package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js.map +1 -1
  134. package/dist/components/EntityCitation/EntityCitation.js.map +1 -1
  135. package/dist/components/EntityDownloadButton/EntityDownloadButton.js.map +1 -1
  136. package/dist/components/EntityDownloadConfirmation/EntityDownloadConfirmation.d.ts.map +1 -1
  137. package/dist/components/EntityDownloadConfirmation/EntityDownloadConfirmation.js +36 -30
  138. package/dist/components/EntityDownloadConfirmation/EntityDownloadConfirmation.js.map +1 -1
  139. package/dist/components/EntityFinder/EntityFinder.js.map +1 -1
  140. package/dist/components/EntityFinder/VersionSelectionType.js.map +1 -1
  141. package/dist/components/EntityFinder/details/configurations/EntityChildrenDetails.js.map +1 -1
  142. package/dist/components/EntityFinder/details/configurations/FavoritesDetails.js.map +1 -1
  143. package/dist/components/EntityFinder/details/configurations/ProjectListDetails.js.map +1 -1
  144. package/dist/components/EntityFinder/details/view/DetailsView.js.map +1 -1
  145. package/dist/components/EntityFinder/tree/EntityTree.js.map +1 -1
  146. package/dist/components/EntityFinder/tree/VirtualizedTree.js.map +1 -1
  147. package/dist/components/EntityFinder/useEntitySelection.js.map +1 -1
  148. package/dist/components/EntityForm/EntityForm.js.map +1 -1
  149. package/dist/components/EntityHeaderTable/EntityHeaderTable.js.map +1 -1
  150. package/dist/components/EntityHeaderTable/Filter.js.map +1 -1
  151. package/dist/components/EntityHeaderTable/useEntityHeaderTableState.js.map +1 -1
  152. package/dist/components/EntitySubjectsSelector/EntitySubjectsSelector.js.map +1 -1
  153. package/dist/components/EntityTreeTable/components/IdColumnHeader.js.map +1 -1
  154. package/dist/components/EntityTreeTable/hooks/useEntityTreeState.js.map +1 -1
  155. package/dist/components/EntityTreeTable/hooks/useTableColumns.js.map +1 -1
  156. package/dist/components/EntityTreeTable/hooks/useTableData.js.map +1 -1
  157. package/dist/components/EntityTreeTable/hooks/useTreeOperationsWithDirectFetch.js.map +1 -1
  158. package/dist/components/EntityUpload/EntityUpload.js.map +1 -1
  159. package/dist/components/ExperimentalMode/ExperimentalMode.js.map +1 -1
  160. package/dist/components/ExternalFileHandleLink/ExternalFileHandleLink.js.map +1 -1
  161. package/dist/components/FeaturedDataTabs/FacetPlotsCard.js.map +1 -1
  162. package/dist/components/FeaturedDataTabs/QueryPerFacetPlotsCard.js.map +1 -1
  163. package/dist/components/FeaturedDataTabs/SingleQueryFacetPlotsCards.js.map +1 -1
  164. package/dist/components/FeaturedResearch/FeaturedResearch.js.map +1 -1
  165. package/dist/components/FeaturedToolsList/FeaturedToolsList.js.map +1 -1
  166. package/dist/components/FilePreview/FileHandleContentRenderer.js.map +1 -1
  167. package/dist/components/FilePreview/HtmlPreview/HtmlPreview.js.map +1 -1
  168. package/dist/components/FilePreview/PreviewRendererType.js.map +1 -1
  169. package/dist/components/Forum/DiscussionReply.js.map +1 -1
  170. package/dist/components/Forum/DiscussionSearchResult.js.map +1 -1
  171. package/dist/components/Forum/ForumTable.js.map +1 -1
  172. package/dist/components/Forum/ForumThreadEditor.js.map +1 -1
  173. package/dist/components/FullTextSearch/FullTextSearchUtils.js.map +1 -1
  174. package/dist/components/GenericCard/GenericCard.d.ts.map +1 -1
  175. package/dist/components/GenericCard/GenericCard.js +12 -7
  176. package/dist/components/GenericCard/GenericCard.js.map +1 -1
  177. package/dist/components/GenericCard/Linkify.js.map +1 -1
  178. package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
  179. package/dist/components/GenericCard/TableRowGenericCard.js +105 -105
  180. package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
  181. package/dist/components/Goals/Goals.Mobile.js.map +1 -1
  182. package/dist/components/Goals/Goals.js.map +1 -1
  183. package/dist/components/GoalsV2/GoalsV2.Mobile.js.map +1 -1
  184. package/dist/components/GoalsV2/GoalsV2.js.map +1 -1
  185. package/dist/components/GoalsV3/GoalsV3.Mobile.js.map +1 -1
  186. package/dist/components/GoalsV3/GoalsV3.js.map +1 -1
  187. package/dist/components/GoogleMap/SynapseUserMarker.js.map +1 -1
  188. package/dist/components/HasAccess/AccessIcon.js.map +1 -1
  189. package/dist/components/HasAccess/useHasAccess.js.map +1 -1
  190. package/dist/components/HeaderCard/HeaderCardV2.js.map +1 -1
  191. package/dist/components/HeaderCard.d.ts +6 -1
  192. package/dist/components/HeaderCard.d.ts.map +1 -1
  193. package/dist/components/HeaderCard.js +107 -76
  194. package/dist/components/HeaderCard.js.map +1 -1
  195. package/dist/components/HexGrid/HexGrid.js.map +1 -1
  196. package/dist/components/IconList.js.map +1 -1
  197. package/dist/components/ImageCardGridWithLinks/ImageCardGridWithLinks.js.map +1 -1
  198. package/dist/components/ImageFromSynapseTable.js.map +1 -1
  199. package/dist/components/JSONArrayEditor/useParseCsv.js.map +1 -1
  200. package/dist/components/JsonSchemaForm/templates/ArrayFieldDescriptionTemplate.js.map +1 -1
  201. package/dist/components/JsonSchemaForm/templates/ArrayFieldItemTemplate.js.map +1 -1
  202. package/dist/components/JsonSchemaForm/templates/BaseInputTemplate.js.map +1 -1
  203. package/dist/components/JsonSchemaForm/templates/FieldTemplate.js.map +1 -1
  204. package/dist/components/JsonSchemaForm/templates/RJSFInputLabel.js.map +1 -1
  205. package/dist/components/Markdown/MarkdownGithub.js.map +1 -1
  206. package/dist/components/Markdown/MarkdownSynapse.js.map +1 -1
  207. package/dist/components/Markdown/MarkdownUtils.js.map +1 -1
  208. package/dist/components/Markdown/SynapseWikiContext.js.map +1 -1
  209. package/dist/components/Markdown/UserMentionModal.js.map +1 -1
  210. package/dist/components/Markdown/widget/MarkdownProvenanceGraph.js.map +1 -1
  211. package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js.map +1 -1
  212. package/dist/components/ModalDownload/ModalDownload.js.map +1 -1
  213. package/dist/components/OAuthClientAclEditor/OAuthClientAclEditor.d.ts.map +1 -1
  214. package/dist/components/OAuthClientAclEditor/OAuthClientAclEditor.js +45 -39
  215. package/dist/components/OAuthClientAclEditor/OAuthClientAclEditor.js.map +1 -1
  216. package/dist/components/OAuthClientManagement/OAuthManagement.js.map +1 -1
  217. package/dist/components/PageProgress/PageProgress.js.map +1 -1
  218. package/dist/components/Plot/DotPlot.js.map +1 -1
  219. package/dist/components/Plot/Plot.js.map +1 -1
  220. package/dist/components/Plot/SynapsePlot.js.map +1 -1
  221. package/dist/components/Plot/ThemesPlot.js.map +1 -1
  222. package/dist/components/Plot/UpsetPlot.js.map +1 -1
  223. package/dist/components/PortalAclEditor/PortalAclEditor.d.ts.map +1 -1
  224. package/dist/components/PortalAclEditor/PortalAclEditor.js +43 -41
  225. package/dist/components/PortalAclEditor/PortalAclEditor.js.map +1 -1
  226. package/dist/components/PortalFeaturedPartners/PortalFeaturedPartners.js.map +1 -1
  227. package/dist/components/PortalList/CreatePortalModal.js.map +1 -1
  228. package/dist/components/ProgrammaticInstructionsModal/ProgrammaticInstructionsModal.js.map +1 -1
  229. package/dist/components/ProgrammaticTableDownload/ProgrammaticTableDownload.js.map +1 -1
  230. package/dist/components/Programs/Programs.Mobile.js.map +1 -1
  231. package/dist/components/Programs/Programs.js.map +1 -1
  232. package/dist/components/ProvenanceGraph/ProvenanceExternalIcon.js.map +1 -1
  233. package/dist/components/ProvenanceGraph/ProvenanceGraph.js.map +1 -1
  234. package/dist/components/ProvenanceGraph/ProvenanceGraphUtils.js.map +1 -1
  235. package/dist/components/ProvenanceGraph/ProvenanceUtils.js.map +1 -1
  236. package/dist/components/QueryCount/QueryCount.js.map +1 -1
  237. package/dist/components/QueryCountButton/QueryCountButton.js.map +1 -1
  238. package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.js.map +1 -1
  239. package/dist/components/QueryWrapper/QueryWrapper.js.map +1 -1
  240. package/dist/components/QueryWrapper/TableQueryUseQueryOptions.js.map +1 -1
  241. package/dist/components/QueryWrapper/TableRowSelectionState.js.map +1 -1
  242. package/dist/components/QueryWrapper/generateEncodedPathAndQueryForSelectedFacetURL.js.map +1 -1
  243. package/dist/components/QueryWrapper/useGetQueryMetadata.js.map +1 -1
  244. package/dist/components/QueryWrapperErrorBoundary.js.map +1 -1
  245. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
  246. package/dist/components/QueryWrapperPlotNav/UseRowSet.js.map +1 -1
  247. package/dist/components/RecentPublicationsGrid/RecentPublicationsGrid.js.map +1 -1
  248. package/dist/components/ReleaseCard/ReleaseCardUtils.js.map +1 -1
  249. package/dist/components/ResizableContainer/hooks/useResizable.js.map +1 -1
  250. package/dist/components/Resources/Resources.Mobile.js.map +1 -1
  251. package/dist/components/Resources/Resources.js.map +1 -1
  252. package/dist/components/RowDataTable/RowDataTableWithQuery.js.map +1 -1
  253. package/dist/components/SageResourcesPopover/SageResourcesPopover.js.map +1 -1
  254. package/dist/components/SchemaDrivenAnnotationEditor/AnnotationEditorUtils.js.map +1 -1
  255. package/dist/components/SetAccessRequirementCommonFields/SetAccessRequirementCommonFields.js.map +1 -1
  256. package/dist/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.js.map +1 -1
  257. package/dist/components/SmartLink/SmartButton.js.map +1 -1
  258. package/dist/components/SmartLink/SmartLink.js.map +1 -1
  259. package/dist/components/SourceAppImage.js.map +1 -1
  260. package/dist/components/StandaloneQueryWrapper/StandaloneQueryWrapper.js.map +1 -1
  261. package/dist/components/StatisticsPlot.js.map +1 -1
  262. package/dist/components/StorybookComponentWrapper.js.map +1 -1
  263. package/dist/components/SubsectionRowRenderer/SubsectionRowRenderer.js.map +1 -1
  264. package/dist/components/SustainabilityScorecard/SustainabilityScorecard.js.map +1 -1
  265. package/dist/components/SynapseChat/GridAgentChat.js.map +1 -1
  266. package/dist/components/SynapseChat/SynapseChatInteraction.js.map +1 -1
  267. package/dist/components/SynapseChat/SynapseChatMessage.js.map +1 -1
  268. package/dist/components/SynapseChat/extractMessageFromTraceEvent.js.map +1 -1
  269. package/dist/components/SynapseForm/StepsSideNav.js.map +1 -1
  270. package/dist/components/SynapseForm/SummaryTable.js.map +1 -1
  271. package/dist/components/SynapseForm/SynapseForm.js +4 -2
  272. package/dist/components/SynapseForm/SynapseForm.js.map +1 -1
  273. package/dist/components/SynapseForm/SynapseFormWrapper.js.map +1 -1
  274. package/dist/components/SynapseHomepageV2/SynapseByTheNumbersItem.js.map +1 -1
  275. package/dist/components/SynapseHomepageV2/SynapseFeatureItem.js.map +1 -1
  276. package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.js.map +1 -1
  277. package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.js.map +1 -1
  278. package/dist/components/SynapseHomepageV2/SynapseInActionItem.js.map +1 -1
  279. package/dist/components/SynapseHomepageV2/SynapsePlans.js.map +1 -1
  280. package/dist/components/SynapseHomepageV2/SynapseTrendingProjects.js.map +1 -1
  281. package/dist/components/SynapseNavDrawer/SynapseNavDrawer.d.ts +8 -7
  282. package/dist/components/SynapseNavDrawer/SynapseNavDrawer.d.ts.map +1 -1
  283. package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js +173 -164
  284. package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js.map +1 -1
  285. package/dist/components/SynapsePortalBanners/SynapsePortalBanners.js.map +1 -1
  286. package/dist/components/SynapseSearchPageResults/SearchFacetPanel/SearchFacetPanel.js.map +1 -1
  287. package/dist/components/SynapseSearchPageResults/SearchFacetPanel/SearchFacetPanelUtils.js.map +1 -1
  288. package/dist/components/SynapseSearchPageResults/SynapseSearchPageResults.js.map +1 -1
  289. package/dist/components/SynapseTable/EntityIDColumnCopyIcon.js.map +1 -1
  290. package/dist/components/SynapseTable/NoContentPlaceholderType.js.map +1 -1
  291. package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js.map +1 -1
  292. package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js.map +1 -1
  293. package/dist/components/SynapseTable/SynapseTableRenderers.js.map +1 -1
  294. package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js.map +1 -1
  295. package/dist/components/SynapseTable/table-top/ColumnSelection.js.map +1 -1
  296. package/dist/components/SynapseTable/table-top/DownloadOptions.js.map +1 -1
  297. package/dist/components/SynapseTable/usePrefetchTableData.js.map +1 -1
  298. package/dist/components/TableColumnSchemaEditor/ColumnModelForm.js.map +1 -1
  299. package/dist/components/TableColumnSchemaEditor/ColumnModelFormFields/DefaultValueField.js.map +1 -1
  300. package/dist/components/TableColumnSchemaEditor/ImportTableColumnsButton.js.map +1 -1
  301. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.d.ts +1 -1
  302. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.d.ts.map +1 -1
  303. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.js.map +1 -1
  304. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js.map +1 -1
  305. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaFormReducer.js.map +1 -1
  306. package/dist/components/TableColumnSchemaEditor/Validators/ColumnModelValidator.js.map +1 -1
  307. package/dist/components/TableColumnSchemaEditor/Validators/DatetimeSchema.js.map +1 -1
  308. package/dist/components/TanStackTable/ColumnHeader.d.ts +1 -0
  309. package/dist/components/TanStackTable/ColumnHeader.d.ts.map +1 -1
  310. package/dist/components/TanStackTable/ColumnHeader.js +8 -8
  311. package/dist/components/TanStackTable/ColumnHeader.js.map +1 -1
  312. package/dist/components/TanStackTable/ColumnHeaderEnumFilter.js.map +1 -1
  313. package/dist/components/TanStackTable/TableBody.js.map +1 -1
  314. package/dist/components/TeamSubjectsSelector/TeamSubjectsSelector.js.map +1 -1
  315. package/dist/components/TextField/TextField.js.map +1 -1
  316. package/dist/components/TimelinePlot/TimelinePhase.js.map +1 -1
  317. package/dist/components/TimelinePlot/TimelinePlot.js.map +1 -1
  318. package/dist/components/TimelinePlot/TimelinePlotSpeciesSelector.js.map +1 -1
  319. package/dist/components/UserCard/Avatar.js.map +1 -1
  320. package/dist/components/UserCardList/UserCardList.js.map +1 -1
  321. package/dist/components/UserCardList/UserCardListGroups/UserCardListGroups.Mobile.js.map +1 -1
  322. package/dist/components/UserCardList/UserCardListRotate.js.map +1 -1
  323. package/dist/components/UserOrTeamBadge/useUserOrTeam.js.map +1 -1
  324. package/dist/components/UserProfileLinks/UserProjects.js.map +1 -1
  325. package/dist/components/UserSearchBox/UserSearchBox.js.map +1 -1
  326. package/dist/components/Webhook/WebhookDashboard.js.map +1 -1
  327. package/dist/components/WikiMarkdownEditor/WikiMarkdownEditor.js.map +1 -1
  328. package/dist/components/WikiMarkdownEditorButton/WikiMarkdownEditorButton.js.map +1 -1
  329. package/dist/components/dataaccess/AccessApprovalsTable.js.map +1 -1
  330. package/dist/components/dataaccess/AccessRequestSubmissionTable.js.map +1 -1
  331. package/dist/components/dataaccess/SubmissionPage/SubmissionPage.js.map +1 -1
  332. package/dist/components/dataaccess/UseAccessRequirementTable.js.map +1 -1
  333. package/dist/components/dataaccess/UserAccessRequestHistory/UserAccessRequestHistoryTable.js.map +1 -1
  334. package/dist/components/doi/CreateOrUpdateDoiModal.js.map +1 -1
  335. package/dist/components/entity/page/CreatedByModifiedBy.js.map +1 -1
  336. package/dist/components/entity/page/action_menu/EntityActionMenu.js.map +1 -1
  337. package/dist/components/entity/page/title_bar/useDataCiteUsage.js.map +1 -1
  338. package/dist/components/entity/page/title_bar/useGetMentions.js.map +1 -1
  339. package/dist/components/error/ErrorPage.js.map +1 -1
  340. package/dist/components/favorites/FavoritesPage.js.map +1 -1
  341. package/dist/components/file/upload/BasicFileHandleUpload.js.map +1 -1
  342. package/dist/components/layout/SWCHeader.d.ts +9 -0
  343. package/dist/components/layout/SWCHeader.d.ts.map +1 -0
  344. package/dist/components/layout/SWCHeader.js +19 -0
  345. package/dist/components/layout/SWCHeader.js.map +1 -0
  346. package/dist/components/layout/SWCPageLayout.d.ts +9 -0
  347. package/dist/components/layout/SWCPageLayout.d.ts.map +1 -0
  348. package/dist/components/layout/SWCPageLayout.js +14 -0
  349. package/dist/components/layout/SWCPageLayout.js.map +1 -0
  350. package/dist/components/menu/ComplexMenu.js.map +1 -1
  351. package/dist/components/row_renderers/utils/ChipContainer.js.map +1 -1
  352. package/dist/components/styled/StyledPopover.js.map +1 -1
  353. package/dist/components/table/CsvPreview/CsvPreview.js +2 -1
  354. package/dist/components/table/CsvPreview/CsvPreview.js.map +1 -1
  355. package/dist/components/table/CsvPreview/CsvPreviewDialog.js.map +1 -1
  356. package/dist/components/trash/TrashCanList.js.map +1 -1
  357. package/dist/components/widgets/FileHandleLink.js.map +1 -1
  358. package/dist/components/widgets/RangeSlider/RangeSlider.js.map +1 -1
  359. package/dist/components/widgets/SynapseVideo.js.map +1 -1
  360. package/dist/components/widgets/facet-nav/FacetNavPanel.js.map +1 -1
  361. package/dist/components/widgets/facet-nav/PlotsContainer.js.map +1 -1
  362. package/dist/components/widgets/facet-nav/SelectionCriteriaPills.js.map +1 -1
  363. package/dist/components/widgets/facet-nav/useFacetPlots.js.map +1 -1
  364. package/dist/components/widgets/query-filter/CombinedRangeFacetFilter.js.map +1 -1
  365. package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilter.js.map +1 -1
  366. package/dist/components/widgets/query-filter/FacetFilterControls.js.map +1 -1
  367. package/dist/components/widgets/query-filter/RangeFacetFilter.js.map +1 -1
  368. package/dist/components/widgets/query-filter/RangeFacetFilterUI.js.map +1 -1
  369. package/dist/features/curator/GridPage/components/GridPageTitle.d.ts.map +1 -1
  370. package/dist/features/curator/GridPage/components/GridPageTitle.js +23 -30
  371. package/dist/features/curator/GridPage/components/GridPageTitle.js.map +1 -1
  372. package/dist/features/curator/dashboard/CuratorDashboard.d.ts +2 -0
  373. package/dist/features/curator/dashboard/CuratorDashboard.d.ts.map +1 -0
  374. package/dist/features/curator/dashboard/CuratorDashboard.js +45 -0
  375. package/dist/features/curator/dashboard/CuratorDashboard.js.map +1 -0
  376. package/dist/features/curator/dashboard/components/CurationTaskCard.css +1 -0
  377. package/dist/features/curator/dashboard/components/CurationTaskCard.d.ts +9 -0
  378. package/dist/features/curator/dashboard/components/CurationTaskCard.d.ts.map +1 -0
  379. package/dist/features/curator/dashboard/components/CurationTaskCard.js +106 -0
  380. package/dist/features/curator/dashboard/components/CurationTaskCard.js.map +1 -0
  381. package/dist/features/curator/dashboard/components/CurationTaskCard.module.js +12 -0
  382. package/dist/features/curator/dashboard/components/CurationTaskCard.module.js.map +1 -0
  383. package/dist/features/curator/dashboard/components/CurationTaskCard.module.scss +52 -0
  384. package/dist/features/curator/dashboard/components/NextStepButton.css +1 -0
  385. package/dist/features/curator/dashboard/components/NextStepButton.d.ts +14 -0
  386. package/dist/features/curator/dashboard/components/NextStepButton.d.ts.map +1 -0
  387. package/dist/features/curator/dashboard/components/NextStepButton.js +35 -0
  388. package/dist/features/curator/dashboard/components/NextStepButton.js.map +1 -0
  389. package/dist/features/curator/dashboard/components/NextStepButton.module.js +11 -0
  390. package/dist/features/curator/dashboard/components/NextStepButton.module.js.map +1 -0
  391. package/dist/features/curator/dashboard/components/NextStepButton.module.scss +57 -0
  392. package/dist/features/curator/dashboard/components/UserOrTeamChip.css +1 -1
  393. package/dist/features/curator/dashboard/components/UserOrTeamChip.module.js +1 -1
  394. package/dist/features/curator/dashboard/components/UserOrTeamChip.module.js.map +1 -1
  395. package/dist/features/curator/dashboard/components/UserOrTeamChip.module.scss +5 -5
  396. package/dist/features/curator/dashboard/components/shared.css +1 -0
  397. package/dist/features/curator/dashboard/components/shared.module.js +5 -0
  398. package/dist/features/curator/dashboard/components/shared.module.js.map +1 -0
  399. package/dist/features/curator/dashboard/components/shared.module.scss +8 -0
  400. package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.d.ts +0 -2
  401. package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.d.ts.map +1 -1
  402. package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.js +16 -34
  403. package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.js.map +1 -1
  404. package/dist/features/entity/metadata-task/components/MetadataTasksTableAssigneeCell.js.map +1 -1
  405. package/dist/features/entity/metadata-task/hooks/useGetOrCreateGridSessionForSource.js.map +1 -1
  406. package/dist/features/entity/metadata-task/hooks/useGridSessionForCurationTask.js.map +1 -1
  407. package/dist/features/entity/metadata-task/hooks/useGridSessionForCurationTask_legacy.js.map +1 -1
  408. package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js +1 -1
  409. package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js.map +1 -1
  410. package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.d.ts +10 -0
  411. package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.d.ts.map +1 -0
  412. package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.js +37 -0
  413. package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.js.map +1 -0
  414. package/dist/features/entity/metadata-task/utils/constants.d.ts +5 -0
  415. package/dist/features/entity/metadata-task/utils/constants.d.ts.map +1 -0
  416. package/dist/features/entity/metadata-task/utils/constants.js +6 -0
  417. package/dist/features/entity/metadata-task/utils/constants.js.map +1 -0
  418. package/dist/mocks/challenge/mockChallenge.js.map +1 -1
  419. package/dist/mocks/entity/mockDataset.js.map +1 -1
  420. package/dist/mocks/entity/mockDatasetCollection.js.map +1 -1
  421. package/dist/mocks/entity/mockFileEntity.js.map +1 -1
  422. package/dist/mocks/entity/mockFileView.js.map +1 -1
  423. package/dist/mocks/entity/mockGeneratedEntityData.js.map +1 -1
  424. package/dist/mocks/entity/mockProject.js.map +1 -1
  425. package/dist/mocks/entity/mockProjectView.js.map +1 -1
  426. package/dist/mocks/entity/mockRootEntity.js.map +1 -1
  427. package/dist/mocks/entity/mockTableEntity.js.map +1 -1
  428. package/dist/mocks/mockWiki.js.map +1 -1
  429. package/dist/mocks/msw/handlers/asyncJobHandlers.js.map +1 -1
  430. package/dist/mocks/msw/handlers/challengeHandlers.js.map +1 -1
  431. package/dist/mocks/msw/handlers/changePasswordHandlers.js.map +1 -1
  432. package/dist/mocks/msw/handlers/discussionHandlers.js.map +1 -1
  433. package/dist/mocks/msw/handlers/entityHandlers.js.map +1 -1
  434. package/dist/mocks/msw/handlers/fileHandlers.js.map +1 -1
  435. package/dist/mocks/msw/handlers/gridHandlers.js.map +1 -1
  436. package/dist/mocks/msw/handlers/personalAccessTokenHandlers.js.map +1 -1
  437. package/dist/mocks/msw/handlers/subscriptionHandlers.js.map +1 -1
  438. package/dist/mocks/msw/handlers/teamHandlers.js.map +1 -1
  439. package/dist/mocks/msw/handlers/userProfileHandlers.js.map +1 -1
  440. package/dist/mocks/msw/handlers/wikiHandlers.js.map +1 -1
  441. package/dist/mocks/provenance/mockActivity.js.map +1 -1
  442. package/dist/mocks/query/mockReleaseCardsTableQueryResultBundle.js.map +1 -1
  443. package/dist/ror-client/index.js.map +1 -1
  444. package/dist/style/components/_cards.scss +4 -0
  445. package/dist/style/components/_data-grid-extra.css +1 -1
  446. package/dist/style/components/_data-grid-extra.scss +2 -0
  447. package/dist/style/main.css +1 -1
  448. package/dist/synapse-client/HttpClient.js.map +1 -1
  449. package/dist/synapse-client/SynapseClient.js.map +1 -1
  450. package/dist/synapse-queries/QueryMatching.test-utils.js.map +1 -1
  451. package/dist/synapse-queries/auth/useTwoFactorEnrollment.js.map +1 -1
  452. package/dist/synapse-queries/curation/task/useCurationTask.d.ts +1 -1
  453. package/dist/synapse-queries/curation/task/useCurationTask.d.ts.map +1 -1
  454. package/dist/synapse-queries/curation/task/useCurationTask.js +1 -1
  455. package/dist/synapse-queries/curation/task/useCurationTask.js.map +1 -1
  456. package/dist/synapse-queries/dataaccess/useRestrictionInformation.js.map +1 -1
  457. package/dist/synapse-queries/doi/useDOI.js.map +1 -1
  458. package/dist/synapse-queries/download/useDownloadList.js.map +1 -1
  459. package/dist/synapse-queries/entity/useEntity.js.map +1 -1
  460. package/dist/synapse-queries/entity/useEntityBundle.js.map +1 -1
  461. package/dist/synapse-queries/entity/useExportTableQueryToAnalysisPlatform.js.map +1 -1
  462. package/dist/synapse-queries/entity/useExportToTerra.js.map +1 -1
  463. package/dist/synapse-queries/entity/useGetQueryResultBundle.js.map +1 -1
  464. package/dist/synapse-queries/entity/useSchema.js.map +1 -1
  465. package/dist/synapse-queries/file/UploadToS3.js.map +1 -1
  466. package/dist/synapse-queries/file/useDirectUploadToS3.js.map +1 -1
  467. package/dist/synapse-queries/file/useFiles.js.map +1 -1
  468. package/dist/synapse-queries/forum/useReply.js.map +1 -1
  469. package/dist/synapse-queries/forum/useThread.js.map +1 -1
  470. package/dist/synapse-queries/grid/useEstablishWebsocketConnection.d.ts +2 -0
  471. package/dist/synapse-queries/grid/useEstablishWebsocketConnection.d.ts.map +1 -1
  472. package/dist/synapse-queries/grid/useEstablishWebsocketConnection.js.map +1 -1
  473. package/dist/synapse-queries/grid/useExportGrid.js.map +1 -1
  474. package/dist/synapse-queries/grid/useGridSession.js.map +1 -1
  475. package/dist/synapse-queries/grid/useImportCsvIntoGrid.js.map +1 -1
  476. package/dist/synapse-queries/subscription/useSubscription.js.map +1 -1
  477. package/dist/synapse-queries/table/useGetCsvPreview.js.map +1 -1
  478. package/dist/synapse-queries/table/useTableUpdateTransaction.js.map +1 -1
  479. package/dist/synapse-queries/team/useTeamMembers.js.map +1 -1
  480. package/dist/synapse-queries/user/useGetUserChallenges.js.map +1 -1
  481. package/dist/synapse-queries/user/useUserBundle.js.map +1 -1
  482. package/dist/synapse-queries/user/useUserGroupHeader.js.map +1 -1
  483. package/dist/testutils/ReactQueryMockUtils.js.map +1 -1
  484. package/dist/theme/ThemeProvider.js.map +1 -1
  485. package/dist/tsconfig.build.tsbuildinfo +1 -1
  486. package/dist/utils/AppUtils/session/SynapseSessionManager.js.map +1 -1
  487. package/dist/utils/AppUtils/session/useSessionManager.js.map +1 -1
  488. package/dist/utils/PermissionLevelToAccessType.js.map +1 -1
  489. package/dist/utils/challenge/evaluation/EvaluationUtils.js.map +1 -1
  490. package/dist/utils/context/SynapseContext.js.map +1 -1
  491. package/dist/utils/functions/AccessControlListUtils.d.ts +4 -0
  492. package/dist/utils/functions/AccessControlListUtils.d.ts.map +1 -1
  493. package/dist/utils/functions/AccessControlListUtils.js +12 -1
  494. package/dist/utils/functions/AccessControlListUtils.js.map +1 -1
  495. package/dist/utils/functions/GridApiUtils.js.map +1 -1
  496. package/dist/utils/functions/QueryFilterUtils.js.map +1 -1
  497. package/dist/utils/functions/RealmUtils.d.ts +4 -0
  498. package/dist/utils/functions/RealmUtils.d.ts.map +1 -1
  499. package/dist/utils/functions/RealmUtils.js +9 -3
  500. package/dist/utils/functions/RealmUtils.js.map +1 -1
  501. package/dist/utils/functions/SanitizeHtmlUtils.js.map +1 -1
  502. package/dist/utils/functions/SanitizeHtmlUtils.test-utils.js.map +1 -1
  503. package/dist/utils/functions/SqlFunctions.js.map +1 -1
  504. package/dist/utils/functions/StringUtils.js.map +1 -1
  505. package/dist/utils/functions/deepLinkingUtils.js.map +1 -1
  506. package/dist/utils/functions/getDataFromFromStorage.js.map +1 -1
  507. package/dist/utils/functions/getEndpoint.js.map +1 -1
  508. package/dist/utils/functions/getUserData.js.map +1 -1
  509. package/dist/utils/functions/queryUtils.js.map +1 -1
  510. package/dist/utils/functions/testDownloadSpeed.js.map +1 -1
  511. package/dist/utils/hooks/useConfirmItems.js.map +1 -1
  512. package/dist/utils/hooks/useCookiePreferences.js.map +1 -1
  513. package/dist/utils/hooks/useCreateShortUrl.js.map +1 -1
  514. package/dist/utils/hooks/useDetectSSOCode.js.map +1 -1
  515. package/dist/utils/hooks/useDirectDownloadHandler.js.map +1 -1
  516. package/dist/utils/hooks/useGetGoalData.js.map +1 -1
  517. package/dist/utils/hooks/useGetInfoFromIds.js.map +1 -1
  518. package/dist/utils/hooks/useImageUrlUtils.js.map +1 -1
  519. package/dist/utils/hooks/useImmutableTableQuery/useImmutableTableQuery.js.map +1 -1
  520. package/dist/utils/hooks/useImmutableTableQuery/useTableQueryReducer.js.map +1 -1
  521. package/dist/utils/hooks/useIsBot.js.map +1 -1
  522. package/dist/utils/hooks/useListState.js.map +1 -1
  523. package/dist/utils/hooks/useLogin.d.ts.map +1 -1
  524. package/dist/utils/hooks/useLogin.js +53 -52
  525. package/dist/utils/hooks/useLogin.js.map +1 -1
  526. package/dist/utils/hooks/useMutuallyExclusiveState.js.map +1 -1
  527. package/dist/utils/hooks/useOverlay.js.map +1 -1
  528. package/dist/utils/hooks/usePreFetchResource.js.map +1 -1
  529. package/dist/utils/hooks/useQuerySearchParam.js.map +1 -1
  530. package/dist/utils/hooks/useScrollFadeTransition.js.map +1 -1
  531. package/dist/utils/hooks/useSet.js.map +1 -1
  532. package/dist/utils/hooks/useSourceAppConfigs.js.map +1 -1
  533. package/dist/utils/hooks/useTableImageUrl.js.map +1 -1
  534. package/dist/utils/hooks/useUploadFileEntity/useCreatePathsAndGetParentId.js.map +1 -1
  535. package/dist/utils/hooks/useUploadFileEntity/useLinkFileEntityToURL.js.map +1 -1
  536. package/dist/utils/hooks/useUploadFileEntity/usePrepareFileEntityUpload.js.map +1 -1
  537. package/dist/utils/hooks/useUploadFileEntity/useTrackFileUploads.js.map +1 -1
  538. package/dist/utils/hooks/useUploadFileEntity/useUploadFileEntities.js.map +1 -1
  539. package/dist/utils/hooks/useUploadFileEntity/useUploadFiles.js.map +1 -1
  540. package/dist/utils/hooks/useUploadFileEntity/willUploadsExceedStorageLimit.js.map +1 -1
  541. package/dist/utils/html/TargetEnum.js.map +1 -1
  542. package/dist/utils/jsonschema/SchemaAnnotationUtils.js.map +1 -1
  543. package/package.json +4 -4
@@ -1,58 +1,64 @@
1
1
  import e from "../utils/parseFreeTextUsingJsonSchemaType.js";
2
- import { castCellValueToString as t } from "./AutocompleteColumn.js";
3
- import { GridAutocompleteChip as n } from "./GridAutocompleteChip.js";
4
- import { memo as r, useEffect as i, useRef as a, useState as ee } from "react";
5
- import { Autocomplete as te, TextField as o, Tooltip as ne } from "@mui/material";
6
- import { jsx as s } from "react/jsx-runtime";
7
- import c from "lodash-es/isEqual";
8
- import { c as re } from "react/compiler-runtime";
9
- import ie from "lodash-es/isNil";
2
+ import { useGridAutocompleteState as t } from "./useGridAutocompleteState.js";
3
+ import { areAutocompleteCellPropsEqual as n, castCellValueToString as r } from "./AutocompleteColumn.js";
4
+ import { GridAutocompleteChip as i } from "./GridAutocompleteChip.js";
5
+ import { memo as a, useLayoutEffect as ee, useRef as te, useState as ne } from "react";
6
+ import { Autocomplete as re, TextField as ie, Tooltip as ae } from "@mui/material";
7
+ import { jsx as o } from "react/jsx-runtime";
8
+ import s from "lodash-es/isEqual";
9
+ import { c as oe } from "react/compiler-runtime";
10
+ import se from "lodash-es/isNil";
10
11
  //#region src/components/DataGrid/columns/AutocompleteMultipleEnumColumn.tsx
11
- var ae = {
12
+ var ce = {
12
13
  width: "100%",
13
14
  height: "100%",
14
15
  "& .MuiFormControl-root": { height: "100%" },
15
16
  "& .MuiAutocomplete-tag": { margin: "1px" },
16
17
  "&:hover .MuiAutocomplete-clearIndicator": { visibility: "visible" },
17
18
  "&:hover .MuiAutocomplete-popupIndicator": { visibility: "visible" }
18
- }, l = {
19
+ }, le = {
19
20
  height: "100%",
20
21
  padding: "0 10px",
21
22
  backgroundColor: "inherit",
22
23
  borderRadius: 0
23
24
  };
24
- function oe(e) {
25
+ function ue(e) {
25
26
  return {
26
- label: t(e),
27
+ label: r(e),
27
28
  value: e
28
29
  };
29
30
  }
30
- function u(e) {
31
- return Array.isArray(e) ? e : ie(e) ? [] : [e];
31
+ function c(e) {
32
+ return Array.isArray(e) ? e : se(e) ? [] : [e];
32
33
  }
33
- function d(t) {
34
- let r = re(66), { rowData: o, setRowData: c, choices: l, colType: d, limitTags: de, active: f, focus: fe, stopEditing: p, clearValue: pe } = t, m = de === void 0 ? 2 : de, h = pe === void 0 ? void 0 : pe, g = a(null), [_, v] = ee(!1), [y, b] = ee(""), x, S;
35
- r[0] === f ? (x = r[1], S = r[2]) : (x = () => {
36
- f ? g.current?.focus() : (v(!1), g.current?.blur());
37
- }, S = [f], r[0] = f, r[1] = x, r[2] = S), i(x, S);
38
- let C, w, T, E, D;
39
- if (r[3] !== f || r[4] !== l || r[5] !== m || r[6] !== o) {
40
- T = u(o);
34
+ function l(n) {
35
+ let r = oe(73), { rowData: a, setRowData: s, choices: l, colType: u, limitTags: d, active: f, focus: me, stopEditing: p, clearValue: he } = n, m = d === void 0 ? 2 : d, ge = he === void 0 ? void 0 : he, _e = te(s), h;
36
+ r[0] === s ? h = r[1] : (h = () => {
37
+ _e.current = s;
38
+ }, r[0] = s, r[1] = h), ee(h);
39
+ let [g, ve] = ne(""), _;
40
+ r[2] !== f || r[3] !== p ? (_ = {
41
+ active: f,
42
+ stopEditing: p
43
+ }, r[2] = f, r[3] = p, r[4] = _) : _ = r[4];
44
+ let { menuIsOpen: ye, setMenuIsOpen: be, inputRef: xe, activeRef: v, handleListboxMouseDown: y, notifyOptionCommitted: b, handleMenuOpen: x, handleClose: S } = t(_), C, w, T, E, D;
45
+ if (r[5] !== f || r[6] !== l || r[7] !== m || r[8] !== a) {
46
+ T = c(a);
41
47
  let e;
42
- r[12] === l ? e = r[13] : (e = l.map(oe), r[12] = l, r[13] = e), w = e, E = T.map(oe), C = f ? -1 : m, D = T.length > 0 ? T.map(ue).join(",") : "", r[3] = f, r[4] = l, r[5] = m, r[6] = o, r[7] = C, r[8] = w, r[9] = T, r[10] = E, r[11] = D;
43
- } else C = r[7], w = r[8], T = r[9], E = r[10], D = r[11];
48
+ r[14] === l ? e = r[15] : (e = l.map(ue), r[14] = l, r[15] = e), w = e, E = T.map(ue), C = f ? -1 : m, D = T.length > 0 ? T.map(pe).join(",") : "", r[5] = f, r[6] = l, r[7] = m, r[8] = a, r[9] = C, r[10] = w, r[11] = T, r[12] = E, r[13] = D;
49
+ } else C = r[9], w = r[10], T = r[11], E = r[12], D = r[13];
44
50
  let O = D, k;
45
- r[14] === o ? k = r[15] : (k = !ie(o) && o !== "", r[14] = o, r[15] = k);
46
- let me = k, A = fe ? void 0 : "none", j = f ? "wrap" : "nowrap", M = f ? "auto" : "hidden", N, P, F, I;
47
- r[16] === Symbol.for("react.memo_cache_sentinel") ? (N = {
51
+ r[16] === a ? k = r[17] : (k = !se(a) && a !== "", r[16] = a, r[17] = k);
52
+ let Se = k, A = me ? void 0 : "none", j = f ? "wrap" : "nowrap", M = f ? "auto" : "hidden", N, P, F, I;
53
+ r[18] === Symbol.for("react.memo_cache_sentinel") ? (N = {
48
54
  width: "6px",
49
55
  height: "6px"
50
56
  }, P = { background: "transparent" }, F = {
51
57
  background: "#888",
52
58
  borderRadius: "3px"
53
- }, I = { background: "#555" }, r[16] = N, r[17] = P, r[18] = F, r[19] = I) : (N = r[16], P = r[17], F = r[18], I = r[19]);
59
+ }, I = { background: "#555" }, r[18] = N, r[19] = P, r[20] = F, r[21] = I) : (N = r[18], P = r[19], F = r[20], I = r[21]);
54
60
  let L;
55
- r[20] !== A || r[21] !== j || r[22] !== M ? (L = {
61
+ r[22] !== A || r[23] !== j || r[24] !== M ? (L = {
56
62
  pointerEvents: A,
57
63
  padding: "0 10px",
58
64
  backgroundColor: "inherit",
@@ -65,142 +71,140 @@ function d(t) {
65
71
  "&::-webkit-scrollbar-track": P,
66
72
  "&::-webkit-scrollbar-thumb": F,
67
73
  "&::-webkit-scrollbar-thumb:hover": I
68
- }, r[20] = A, r[21] = j, r[22] = M, r[23] = L) : L = r[23];
74
+ }, r[22] = A, r[23] = j, r[24] = M, r[25] = L) : L = r[25];
69
75
  let R = f ? "visible" : "hidden", z;
70
- r[24] === R ? z = r[25] : (z = {
76
+ r[26] === R ? z = r[27] : (z = {
71
77
  visibility: R,
72
78
  pointerEvents: "auto"
73
- }, r[24] = R, r[25] = z);
74
- let he = f ? "visible" : "hidden", B;
75
- r[26] === he ? B = r[27] : (B = {
76
- visibility: he,
79
+ }, r[26] = R, r[27] = z);
80
+ let B = f ? "visible" : "hidden", V;
81
+ r[28] === B ? V = r[29] : (V = {
82
+ visibility: B,
77
83
  pointerEvents: "auto"
78
- }, r[26] = he, r[27] = B);
79
- let V;
80
- r[28] !== L || r[29] !== z || r[30] !== B ? (V = {
81
- ...ae,
84
+ }, r[28] = B, r[29] = V);
85
+ let H;
86
+ r[30] !== L || r[31] !== z || r[32] !== V ? (H = {
87
+ ...ce,
82
88
  "& .MuiAutocomplete-inputRoot": L,
83
89
  "& .MuiAutocomplete-clearIndicator": z,
84
- "& .MuiAutocomplete-popupIndicator": B
85
- }, r[28] = L, r[29] = z, r[30] = B, r[31] = V) : V = r[31];
86
- let H = V, U = f || T.length <= m, W;
87
- r[32] === Symbol.for("react.memo_cache_sentinel") ? (W = {
90
+ "& .MuiAutocomplete-popupIndicator": V
91
+ }, r[30] = L, r[31] = z, r[32] = V, r[33] = H) : H = r[33];
92
+ let U = H, W;
93
+ r[34] !== v || r[35] !== ge || r[36] !== u || r[37] !== b || r[38] !== be ? (W = (t, n, r) => {
94
+ b();
95
+ let i = n.map((t) => typeof t == "string" ? e(t, u) : t.value);
96
+ _e.current(i.length === 0 ? ge : i), ve(""), v.current || be(!1);
97
+ }, r[34] = v, r[35] = ge, r[36] = u, r[37] = b, r[38] = be, r[39] = W) : W = r[39];
98
+ let Ce = W, G;
99
+ r[40] !== u || r[41] !== g || r[42] !== T ? (G = () => {
100
+ if (g.trim()) {
101
+ let t = e(g, u);
102
+ _e.current([...T, t]), ve("");
103
+ }
104
+ }, r[40] = u, r[41] = g, r[42] = T, r[43] = G) : G = r[43];
105
+ let we = G, Te = f || T.length <= m, K;
106
+ r[44] === Symbol.for("react.memo_cache_sentinel") ? (K = {
88
107
  width: "100%",
89
108
  height: "100%",
90
109
  overflow: "hidden"
91
- }, r[32] = W) : W = r[32];
92
- let G = l.length > 0, ge = !me, K;
93
- r[33] === Symbol.for("react.memo_cache_sentinel") ? (K = () => {
94
- v(!0);
95
- }, r[33] = K) : K = r[33];
96
- let q;
97
- r[34] === Symbol.for("react.memo_cache_sentinel") ? (q = (e, t) => {
98
- b(t);
99
- }, r[34] = q) : q = r[34];
100
- let J;
101
- r[35] === p ? J = r[36] : (J = () => {
102
- v(!1), p({ nextRow: !1 });
103
- }, r[35] = p, r[36] = J);
104
- let Y;
105
- r[37] !== h || r[38] !== d || r[39] !== c ? (Y = (t, n, r) => {
106
- let i = (n || []).map((t) => typeof t == "string" ? e(t, d) : t.value);
107
- c(i.length === 0 ? h : i), b("");
108
- }, r[37] = h, r[38] = d, r[39] = c, r[40] = Y) : Y = r[40];
109
- let _e = l.length > 1, X;
110
- r[41] !== d || r[42] !== y || r[43] !== T || r[44] !== c ? (X = () => {
111
- if (y.trim()) {
112
- let t = e(y, d);
113
- c([...T, t]), b("");
114
- }
115
- }, r[41] = d, r[42] = y, r[43] = T, r[44] = c, r[45] = X) : X = r[45];
116
- let Z;
117
- r[46] === f ? Z = r[47] : (Z = (e, t) => e.map((e, r) => {
118
- let { key: i, ...a } = t({ index: r });
119
- return /* @__PURE__ */ s(n, {
110
+ }, r[44] = K) : K = r[44];
111
+ let Ee = l.length > 0, q = !Se, J;
112
+ r[45] === Symbol.for("react.memo_cache_sentinel") ? (J = (e, t) => {
113
+ ve(t);
114
+ }, r[45] = J) : J = r[45];
115
+ let De = l.length > 1, Y;
116
+ r[46] === y ? Y = r[47] : (Y = { listbox: { onMouseDown: y } }, r[46] = y, r[47] = Y);
117
+ let X;
118
+ r[48] === f ? X = r[49] : (X = (e, t) => e.map((e, n) => {
119
+ let { key: r, ...a } = t({ index: n });
120
+ return /* @__PURE__ */ o(i, {
120
121
  option: typeof e == "string" ? e : e.value,
121
122
  active: f,
122
123
  ...a
123
- }, i);
124
- }), r[46] = f, r[47] = Z);
124
+ }, r);
125
+ }), r[48] = f, r[49] = X);
126
+ let Z;
127
+ r[50] === xe ? Z = r[51] : (Z = (e) => /* @__PURE__ */ o(ie, {
128
+ ...e,
129
+ inputRef: xe,
130
+ slotProps: { input: {
131
+ ...e.InputProps,
132
+ disableUnderline: !0,
133
+ sx: le
134
+ } }
135
+ }), r[50] = xe, r[51] = Z);
125
136
  let Q;
126
- r[48] !== H || r[49] !== C || r[50] !== y || r[51] !== _ || r[52] !== w || r[53] !== E || r[54] !== G || r[55] !== ge || r[56] !== J || r[57] !== Y || r[58] !== _e || r[59] !== X || r[60] !== Z ? (Q = /* @__PURE__ */ s("div", {
127
- style: W,
128
- children: /* @__PURE__ */ s(te, {
129
- ref: g,
130
- forcePopupIcon: G,
131
- disableClearable: ge,
137
+ r[52] !== U || r[53] !== C || r[54] !== we || r[55] !== Ce || r[56] !== S || r[57] !== x || r[58] !== g || r[59] !== ye || r[60] !== w || r[61] !== E || r[62] !== Ee || r[63] !== q || r[64] !== De || r[65] !== Y || r[66] !== X || r[67] !== Z ? (Q = /* @__PURE__ */ o("div", {
138
+ style: K,
139
+ children: /* @__PURE__ */ o(re, {
140
+ forcePopupIcon: Ee,
141
+ disableClearable: q,
132
142
  multiple: !0,
133
143
  freeSolo: !0,
134
- open: _,
135
- onOpen: K,
144
+ open: ye,
145
+ onOpen: x,
136
146
  disablePortal: !1,
137
147
  limitTags: C,
138
148
  options: w,
139
- getOptionLabel: le,
140
- isOptionEqualToValue: ce,
149
+ getOptionLabel: fe,
150
+ isOptionEqualToValue: de,
141
151
  value: E,
142
- inputValue: y,
143
- onInputChange: q,
144
- onClose: J,
145
- onChange: Y,
146
- disableCloseOnSelect: _e,
147
- onBlur: X,
148
- renderValue: Z,
149
- renderInput: se,
150
- sx: H
152
+ inputValue: g,
153
+ onInputChange: J,
154
+ onClose: S,
155
+ onChange: Ce,
156
+ disableCloseOnSelect: De,
157
+ slotProps: Y,
158
+ onBlur: we,
159
+ renderValue: X,
160
+ renderInput: Z,
161
+ sx: U
151
162
  })
152
- }), r[48] = H, r[49] = C, r[50] = y, r[51] = _, r[52] = w, r[53] = E, r[54] = G, r[55] = ge, r[56] = J, r[57] = Y, r[58] = _e, r[59] = X, r[60] = Z, r[61] = Q) : Q = r[61];
163
+ }), r[52] = U, r[53] = C, r[54] = we, r[55] = Ce, r[56] = S, r[57] = x, r[58] = g, r[59] = ye, r[60] = w, r[61] = E, r[62] = Ee, r[63] = q, r[64] = De, r[65] = Y, r[66] = X, r[67] = Z, r[68] = Q) : Q = r[68];
153
164
  let $;
154
- return r[62] !== U || r[63] !== Q || r[64] !== O ? ($ = /* @__PURE__ */ s(ne, {
165
+ return r[69] !== Te || r[70] !== Q || r[71] !== O ? ($ = /* @__PURE__ */ o(ae, {
155
166
  title: O,
156
167
  placement: "top-start",
157
168
  arrow: !0,
158
169
  enterDelay: 500,
159
- disableHoverListener: U,
170
+ disableHoverListener: Te,
160
171
  children: Q
161
- }), r[62] = U, r[63] = Q, r[64] = O, r[65] = $) : $ = r[65], $;
172
+ }), r[69] = Te, r[70] = Q, r[71] = O, r[72] = $) : $ = r[72], $;
162
173
  }
163
- function se(e) {
164
- return /* @__PURE__ */ s(o, {
165
- ...e,
166
- slotProps: { input: {
167
- ...e.InputProps,
168
- disableUnderline: !0,
169
- sx: l
170
- } }
171
- });
172
- }
173
- function ce(e, t) {
174
- return c(typeof e == "string" ? e : e.value, typeof t == "string" ? t : t.value);
174
+ function de(e, t) {
175
+ return s(typeof e == "string" ? e : e.value, typeof t == "string" ? t : t.value);
175
176
  }
176
- function le(e) {
177
+ function fe(e) {
177
178
  return typeof e == "string" ? e : e.label;
178
179
  }
179
- function ue(e) {
180
- return t(e);
180
+ function pe(e) {
181
+ return r(e);
182
+ }
183
+ function u(e, t) {
184
+ return n(e, t) && e.limitTags === t.limitTags;
181
185
  }
182
- var de = r(d, (e, t) => e.active === t.active && e.focus === t.focus && e.rowData === t.rowData && e.choices === t.choices && e.colType === t.colType && e.limitTags === t.limitTags && e.clearValue === t.clearValue);
183
- function f({ choices: n, colType: r, limitTags: i = 2, dynamicHeight: a = !1, clearValue: ee = void 0 }) {
186
+ var d = a(l, u);
187
+ function f({ choices: t, colType: n, limitTags: i = 2, dynamicHeight: a = !1, clearValue: ee = void 0 }) {
184
188
  return {
185
- component: ((e) => /* @__PURE__ */ s(de, {
189
+ component: ((e) => /* @__PURE__ */ o(d, {
186
190
  ...e,
187
- choices: n,
188
- colType: r,
191
+ choices: t,
192
+ colType: n,
189
193
  limitTags: i,
190
194
  clearValue: ee
191
195
  })),
192
- copyValue: ({ rowData: e }) => u(e).map((e) => t(e)).join(","),
196
+ copyValue: ({ rowData: e }) => c(e).map((e) => r(e)).join(","),
193
197
  pasteValue: ({ value: t }) => {
194
198
  if (typeof t != "string") return t;
195
- let n = t.split(/[,\t]/).map((e) => e.trim()).filter((e) => e.length > 0).map((t) => e(t, r)).filter((e) => e != null);
196
- return n.length > 0 ? n : [];
199
+ let r = t.split(/[,\t]/).map((e) => e.trim()).filter((e) => e.length > 0).map((t) => e(t, n)).filter((e) => e != null);
200
+ return r.length > 0 ? r : [];
197
201
  },
198
202
  disableKeys: !0,
199
203
  keepFocus: !0,
200
- ...a && { cellClassName: ({ rowData: e }) => u(e).length > 3 ? "multi-value-cell-large" : "multi-value-cell" }
204
+ ...a && { cellClassName: ({ rowData: e }) => c(e).length > 3 ? "multi-value-cell-large" : "multi-value-cell" }
201
205
  };
202
206
  }
203
207
  //#endregion
204
- export { f as autocompleteMultipleEnumColumn };
208
+ export { u as areAutocompleteMultipleEnumCellPropsEqual, f as autocompleteMultipleEnumColumn };
205
209
 
206
210
  //# sourceMappingURL=AutocompleteMultipleEnumColumn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AutocompleteMultipleEnumColumn.js","names":["parseFreeTextGivenJsonSchemaType","Autocomplete","SxProps","TextField","Theme","Tooltip","JSONSchema7Type","memo","useEffect","useMemo","useRef","useState","CellComponent","Column","AutocompleteCellProps","castCellValueToString","AutocompleteOption","GridAutocompleteChip","isNil","isEqual","AUTOCOMPLETE_MULTIPLE_BASE_SX","width","height","margin","visibility","TEXT_FIELD_SX","padding","backgroundColor","borderRadius","AutocompleteMultipleEnumOption","AutocompleteMultipleEnumCellProps","Omit","choices","limitTags","clearValue","EnumOption","label","value","createOptionFromValue","createSafeRowData","rowData","Array","isArray","AutocompleteMultipleEnumCell","t0","$","_c","setRowData","colType","t1","active","focus","stopEditing","t2","undefined","ref","menuIsOpen","setMenuIsOpen","localInputState","setLocalInputState","t3","t4","current","blur","effectiveLimitTags","optionsWithLabels","safeRowData","selectedOptions","t5","t6","map","length","_temp","join","tooltipContent","hasValue","t7","t8","t9","t10","t11","t12","t13","Symbol","for","background","t14","pointerEvents","flexWrap","minHeight","maxHeight","overflowY","overflowX","t15","t16","t17","t18","t19","autocompleteSx","t20","t21","overflow","t22","t23","t24","t25","_","newInputValue","t26","nextRow","t27","_e","newVal","_reason","values","item_0","item","t28","t29","trim","parsedValue","t30","tagValue","getTagProps","option_1","index","key","tagProps","optionValue_0","option","optionValue","t31","_temp2","_temp3","_temp4","t32","params","input","InputProps","disableUnderline","sx","option_0","valueValue","MemoizedAutocompleteMultipleEnumCell","prevProps","nextProps","AutocompleteMultipleEnumColumnProps","dynamicHeight","autocompleteMultipleEnumColumn","Partial","component","props","copyValue","pasteValue","delimiters","parsedValues","split","filter","disableKeys","keepFocus","cellClassName"],"sources":["../../../../src/components/DataGrid/columns/AutocompleteMultipleEnumColumn.tsx"],"sourcesContent":["import parseFreeTextGivenJsonSchemaType from '@/components/DataGrid/utils/parseFreeTextUsingJsonSchemaType'\nimport { Autocomplete, SxProps, TextField, Theme, Tooltip } from '@mui/material'\nimport { JSONSchema7Type } from 'json-schema'\nimport { memo, useEffect, useMemo, useRef, useState } from 'react'\nimport { CellComponent, Column } from '@sage-bionetworks/react-datasheet-grid'\nimport {\n AutocompleteCellProps,\n castCellValueToString,\n AutocompleteOption,\n} from './AutocompleteColumn'\nimport { GridAutocompleteChip } from './GridAutocompleteChip'\nimport isNil from 'lodash-es/isNil'\nimport isEqual from 'lodash-es/isEqual'\n\n// Static styles extracted to avoid recreation on every render\nconst AUTOCOMPLETE_MULTIPLE_BASE_SX: SxProps<Theme> = {\n width: '100%',\n height: '100%',\n '& .MuiFormControl-root': {\n height: '100%',\n },\n '& .MuiAutocomplete-tag': {\n margin: '1px',\n },\n '&:hover .MuiAutocomplete-clearIndicator': {\n visibility: 'visible',\n },\n '&:hover .MuiAutocomplete-popupIndicator': {\n visibility: 'visible',\n },\n}\n\nconst TEXT_FIELD_SX: SxProps<Theme> = {\n height: '100%',\n padding: '0 10px',\n backgroundColor: 'inherit',\n borderRadius: 0,\n}\n\nexport type AutocompleteMultipleEnumOption =\n | AutocompleteOption\n | unknown\n | unknown[]\n\nexport type AutocompleteMultipleEnumCellProps = Omit<\n AutocompleteCellProps,\n 'choices'\n> & {\n choices: AutocompleteMultipleEnumOption[]\n limitTags?: number\n clearValue?: undefined | null\n}\n\ntype EnumOption = {\n label: string\n value: AutocompleteMultipleEnumOption\n}\n\nfunction createOptionFromValue(\n value: AutocompleteMultipleEnumOption,\n): EnumOption {\n return {\n label: castCellValueToString(value),\n value: value,\n }\n}\n\nfunction createSafeRowData(\n rowData: AutocompleteMultipleEnumOption,\n): AutocompleteMultipleEnumOption[] {\n if (Array.isArray(rowData)) {\n return rowData\n } else if (isNil(rowData)) {\n return []\n } else {\n return [rowData]\n }\n}\n\nfunction AutocompleteMultipleEnumCell({\n rowData,\n setRowData,\n choices,\n colType,\n limitTags = 2,\n active,\n focus,\n stopEditing,\n clearValue = undefined,\n}: AutocompleteMultipleEnumCellProps) {\n const ref = useRef<HTMLInputElement>(null)\n const [menuIsOpen, setMenuIsOpen] = useState(false)\n const [localInputState, setLocalInputState] = useState<string>('')\n\n useEffect(() => {\n // Treat `active` as the source of truth for focus/blur and menu state\n // If we listen to Autocomplete's onBlur, it will fire when selecting an option from the dropdown,\n // in which case we do not want to update rowData\n if (active) {\n ref.current?.focus()\n } else {\n setMenuIsOpen(false)\n ref.current?.blur()\n }\n }, [active])\n\n const safeRowData = createSafeRowData(rowData)\n const optionsWithLabels = choices.map(createOptionFromValue)\n const selectedOptions = safeRowData.map(createOptionFromValue)\n const effectiveLimitTags = active ? -1 : limitTags\n\n // Create tooltip content showing all values\n const tooltipContent =\n safeRowData.length > 0\n ? safeRowData.map(item => castCellValueToString(item)).join(',')\n : ''\n\n const hasValue = !isNil(rowData) && rowData !== ''\n\n // Memoize sx to avoid recreation - dynamic styles change based on active/focus state\n const autocompleteSx = useMemo<SxProps<Theme>>(\n () => ({\n ...AUTOCOMPLETE_MULTIPLE_BASE_SX,\n '& .MuiAutocomplete-inputRoot': {\n pointerEvents: focus ? undefined : 'none',\n padding: '0 10px',\n backgroundColor: 'inherit',\n // Allow tags to wrap and enable scrolling\n flexWrap: active ? 'wrap' : 'nowrap',\n minHeight: '100%',\n maxHeight: '100%',\n overflowY: active ? 'auto' : 'hidden',\n overflowX: 'hidden',\n '&::-webkit-scrollbar': {\n width: '6px',\n height: '6px',\n },\n '&::-webkit-scrollbar-track': {\n background: 'transparent',\n },\n '&::-webkit-scrollbar-thumb': {\n background: '#888',\n borderRadius: '3px',\n },\n '&::-webkit-scrollbar-thumb:hover': {\n background: '#555',\n },\n },\n '& .MuiAutocomplete-clearIndicator': {\n visibility: active ? 'visible' : 'hidden',\n pointerEvents: 'auto',\n },\n '& .MuiAutocomplete-popupIndicator': {\n visibility: active ? 'visible' : 'hidden',\n pointerEvents: 'auto',\n },\n }),\n [active, focus],\n )\n\n return (\n <Tooltip\n title={tooltipContent}\n placement=\"top-start\"\n arrow\n enterDelay={500}\n disableHoverListener={active || safeRowData.length <= limitTags}\n >\n <div\n style={{\n width: '100%',\n height: '100%',\n overflow: 'hidden',\n }}\n >\n <Autocomplete\n ref={ref}\n forcePopupIcon={choices.length > 0}\n disableClearable={!hasValue}\n multiple\n freeSolo\n open={menuIsOpen}\n onOpen={() => {\n setMenuIsOpen(true)\n }}\n disablePortal={false}\n limitTags={effectiveLimitTags}\n options={optionsWithLabels}\n getOptionLabel={option => {\n // Handle both string (for freeSolo) and object options\n return typeof option === 'string' ? option : option.label\n }}\n isOptionEqualToValue={(option, value) => {\n // Compare the actual values, not labels\n const optionValue =\n typeof option === 'string' ? option : option.value\n const valueValue = typeof value === 'string' ? value : value.value\n return isEqual(optionValue, valueValue)\n }}\n value={selectedOptions}\n inputValue={localInputState}\n onInputChange={(_, newInputValue) => {\n setLocalInputState(newInputValue)\n }}\n onClose={() => {\n setMenuIsOpen(false)\n stopEditing({ nextRow: false })\n }}\n onChange={(_e, newVal, _reason) => {\n // Handle both selection/deselection and free text creation the same way\n const values = (newVal || []).map(item => {\n return typeof item === 'string'\n ? parseFreeTextGivenJsonSchemaType(item, colType)\n : item.value\n })\n // Use clearValue when all items are removed\n setRowData(values.length === 0 ? clearValue : values)\n setLocalInputState('')\n }}\n disableCloseOnSelect={choices.length > 1}\n onBlur={() => {\n if (localInputState.trim()) {\n const parsedValue = parseFreeTextGivenJsonSchemaType(\n localInputState,\n colType,\n )\n setRowData([...safeRowData, parsedValue])\n setLocalInputState('')\n }\n }}\n renderValue={(tagValue, getTagProps) =>\n tagValue.map((option, index) => {\n const { key, ...tagProps } = getTagProps({ index })\n const optionValue =\n typeof option === 'string' ? option : option.value\n return (\n <GridAutocompleteChip\n key={key}\n option={optionValue}\n active={active}\n {...tagProps}\n />\n )\n })\n }\n renderInput={params => (\n <TextField\n {...params}\n slotProps={{\n input: {\n ...params.InputProps,\n disableUnderline: true,\n sx: TEXT_FIELD_SX,\n },\n }}\n />\n )}\n sx={autocompleteSx}\n />\n </div>\n </Tooltip>\n )\n}\n\n// Memoize the cell component to prevent unnecessary re-renders\n// Custom comparison function that ignores function prop identity changes\n// since the grid library recreates them on each render but their behavior is stable\nconst MemoizedAutocompleteMultipleEnumCell = memo(\n AutocompleteMultipleEnumCell,\n (prevProps, nextProps) => {\n // Compare all non-function props that represent actual state changes\n return (\n prevProps.active === nextProps.active &&\n prevProps.focus === nextProps.focus &&\n prevProps.rowData === nextProps.rowData &&\n prevProps.choices === nextProps.choices &&\n prevProps.colType === nextProps.colType &&\n prevProps.limitTags === nextProps.limitTags &&\n prevProps.clearValue === nextProps.clearValue\n // Note: We intentionally skip comparing stopEditing and setRowData\n // These are recreated by react-datasheet-grid on every render but their\n // behavior remains functionally identical for the same cell position.\n // Comparing them would defeat the purpose of memoization.\n )\n },\n)\n\nexport type AutocompleteMultipleEnumColumnProps = {\n choices: AutocompleteMultipleEnumOption[]\n colType?: JSONSchema7Type\n limitTags?: number\n dynamicHeight?: boolean\n clearValue?: undefined | null\n}\n\nexport function autocompleteMultipleEnumColumn({\n choices,\n colType,\n limitTags = 2,\n dynamicHeight = false,\n clearValue = undefined,\n}: AutocompleteMultipleEnumColumnProps): Partial<Column> {\n return {\n component: ((\n props: Omit<AutocompleteMultipleEnumCellProps, 'choices' | 'limitTags'>,\n ) => (\n <MemoizedAutocompleteMultipleEnumCell\n {...props}\n choices={choices}\n colType={colType}\n limitTags={limitTags}\n clearValue={clearValue}\n />\n )) as CellComponent,\n copyValue: ({ rowData }) => {\n // Convert array to comma-separated string\n const safeRowData = createSafeRowData(rowData)\n return safeRowData.map(item => castCellValueToString(item)).join(',')\n },\n pasteValue: ({ value }) => {\n if (typeof value !== 'string') {\n return value\n }\n\n // Split by comma or tab and clean up values\n const delimiters = /[,\\t]/\n const parsedValues = value\n .split(delimiters)\n .map(item => item.trim())\n .filter(item => item.length > 0)\n .map(item => parseFreeTextGivenJsonSchemaType(item, colType))\n .filter(item => item !== null && item !== undefined)\n\n return parsedValues.length > 0 ? parsedValues : []\n },\n disableKeys: true,\n keepFocus: true,\n ...(dynamicHeight && {\n cellClassName: ({ rowData }) => {\n const safeRowData = createSafeRowData(rowData)\n return safeRowData.length > 3\n ? 'multi-value-cell-large'\n : 'multi-value-cell'\n },\n }),\n }\n}\n"],"mappings":";;;;;;;;;;AAeA,IAAMoB,KAAgD;CACpDC,OAAO;CACPC,QAAQ;CACR,0BAA0B,EACxBA,QAAQ,QACT;CACD,0BAA0B,EACxBC,QAAQ,OACT;CACD,2CAA2C,EACzCC,YAAY,WACb;CACD,2CAA2C,EACzCA,YAAY,WACd;CACD,EAEKC,IAAgC;CACpCH,QAAQ;CACRI,SAAS;CACTC,iBAAiB;CACjBC,cAAc;CACf;AAqBD,SAASU,GACPD,GACY;AACZ,QAAO;EACLD,OAAOrB,EAAsBsB,EAAM;EAC5BA;EACR;;AAGH,SAASE,EACPC,GACkC;AAMhC,QALEC,MAAMC,QAAQF,EAAQ,GACjBA,IACEtB,GAAMsB,EAAQ,GAChB,EAAE,GAEF,CAACA,EAAQ;;AAIpB,SAAAG,EAAAC,GAAA;CAAA,IAAAC,IAAAC,GAAA,GAAA,EAAsC,EAAAN,YAAAO,eAAAf,YAAAgB,YAAAf,WAAAgB,IAAAC,WAAAC,WAAAC,gBAAAlB,YAAAmB,OAAAT,GAKpCX,IAAAgB,OAAAK,KAAAA,IAAA,IAAAL,IAIAf,IAAAmB,OAAAC,KAAAA,IAAAA,KAAAA,IAAAD,IAEAE,IAAY7C,EAAyB,KAAK,EAC1C,CAAA8C,GAAAC,KAAoC9C,GAAS,GAAM,EACnD,CAAA+C,GAAAC,KAA8ChD,GAAiB,GAAG,EAAAiD,GAAAC;AAElErD,CAFkEqC,EAAA,OAAAK,KAYvDU,IAAAf,EAAA,IAAAgB,IAAAhB,EAAA,OAVDe,UAAA;AAIR,EAAIV,IACFK,EAAGO,SAAeX,OAAE,IAEpBM,EAAc,GAAM,EACpBF,EAAGO,SAAcC,MAAE;IAEpBF,IAAA,CAACX,EAAO,EAAAL,EAAA,KAAAK,GAAAL,EAAA,KAAAe,GAAAf,EAAA,KAAAgB,IAVXrD,EAAUoD,GAUPC,EAAS;CAAA,IAAAG,GAAAC,GAAAC,GAAAC,GAAAC;AAAA,KAAAvB,EAAA,OAAAK,KAAAL,EAAA,OAAAb,KAAAa,EAAA,OAAAZ,KAAAY,EAAA,OAAAL,GAAA;AAEZ0B,MAAoB3B,EAAkBC,EAAQ;EAAA,IAAA6B;AAStCxB,EATsCA,EAAA,QAAAb,IACcqC,IAAAxB,EAAA,OAAlCwB,IAAArC,EAAOsC,IAAKhC,GAAsB,EAAAO,EAAA,MAAAb,GAAAa,EAAA,MAAAwB,IAA5DJ,IAA0BI,GAC1BF,IAAwBD,EAAWI,IAAKhC,GAAsB,EAC9D0B,IAA2Bd,IAAA,KAAAjB,GAIzBmC,IAAAF,EAAWK,SAAU,IACjBL,EAAWI,IAAKE,GAAoC,CAAAC,KAAM,IACxD,GAFN,IAEM5B,EAAA,KAAAK,GAAAL,EAAA,KAAAb,GAAAa,EAAA,KAAAZ,GAAAY,EAAA,KAAAL,GAAAK,EAAA,KAAAmB,GAAAnB,EAAA,KAAAoB,GAAApB,EAAA,KAAAqB,GAAArB,EAAA,MAAAsB,GAAAtB,EAAA,MAAAuB;OAAAA,CAAAJ,IAAAnB,EAAA,IAAAoB,IAAApB,EAAA,IAAAqB,IAAArB,EAAA,IAAAsB,IAAAtB,EAAA,KAAAuB,IAAAvB,EAAA;CAHR,IAAA6B,IACEN,GAEMC;AAAA,CAAAxB,EAAA,QAAAL,IAE0C6B,IAAAxB,EAAA,OAAjCwB,IAAA,CAACnD,GAAMsB,EAA0B,IAAdA,MAAY,IAAEK,EAAA,MAAAL,GAAAK,EAAA,MAAAwB;CAAlD,IAAAM,KAAiBN,GAOIO,IAAAzB,KAAAG,KAAAA,IAAA,QAILuB,IAAA3B,IAAA,SAAA,UAGC4B,IAAA5B,IAAA,SAAA,UAA0B6B,GAAAC,GAAAC,GAAAC;AAAA,CAAArC,EAAA,QAAAsC,OAAAC,IAAA,4BAAA,IAEbL,IAAA;EAAA1D,OACf;EAAKC,QACJ;EACT,EAC6B0D,IAAA,EAAAK,YAChB,eACb,EAC6BJ,IAAA;EAAAI,YAChB;EAAMzD,cACJ;EACf,EACmCsD,IAAA,EAAAG,YACtB,QACb,EAAAxC,EAAA,MAAAkC,GAAAlC,EAAA,MAAAmC,GAAAnC,EAAA,MAAAoC,GAAApC,EAAA,MAAAqC,MAAAH,IAAAlC,EAAA,KAAAmC,IAAAnC,EAAA,KAAAoC,IAAApC,EAAA,KAAAqC,IAAArC,EAAA;CAAA,IAAAyC;AAAA,CAAAzC,EAAA,QAAA+B,KAAA/B,EAAA,QAAAgC,KAAAhC,EAAA,QAAAiC,KAvB6BQ,IAAA;EAAAC,eACfX;EAA0BlD,SAChC;EAAQC,iBACA;EAAS6D,UAEhBX;EAA0BY,WACzB;EAAMC,WACN;EAAMC,WACNb;EAA0Bc,WAC1B;EAAQ,wBACKb;EAGvB,8BAC6BC;EAE7B,8BAC6BC;EAG7B,oCACmCC;EAGrC,EAAArC,EAAA,MAAA+B,GAAA/B,EAAA,MAAAgC,GAAAhC,EAAA,MAAAiC,GAAAjC,EAAA,MAAAyC,KAAAA,IAAAzC,EAAA;CAEa,IAAAgD,IAAA3C,IAAA,YAAA,UAA6B4C;AAAA,CAAAjD,EAAA,QAAAgD,IAE1CC,IAAAjD,EAAA,OAHoCiD,IAAA;EAAAtE,YACvBqE;EAA6BN,eAC1B;EAChB,EAAA1C,EAAA,MAAAgD,GAAAhD,EAAA,MAAAiD;CAEa,IAAAC,KAAA7C,IAAA,YAAA,UAA6B8C;AAAA,CAAAnD,EAAA,QAAAkD,KAE1CC,IAAAnD,EAAA,OAHoCmD,IAAA;EAAAxE,YACvBuE;EAA6BR,eAC1B;EAChB,EAAA1C,EAAA,MAAAkD,IAAAlD,EAAA,MAAAmD;CAAA,IAAAC;AAAA,CAAApD,EAAA,QAAAyC,KAAAzC,EAAA,QAAAiD,KAAAjD,EAAA,QAAAmD,KAlCIC,IAAA;EAAA,GACF7E;EAA6B,gCACAkE;EAwB/B,qCACoCQ;EAGpC,qCACoCE;EAItC,EAAAnD,EAAA,MAAAyC,GAAAzC,EAAA,MAAAiD,GAAAjD,EAAA,MAAAmD,GAAAnD,EAAA,MAAAoD,KAAAA,IAAApD,EAAA;CApCH,IAAAqD,IACSD,GA6CiBE,IAAAjD,KAAUgB,EAAWK,UAAWtC,GAASmE;AAAA,CAAAvD,EAAA,QAAAsC,OAAAC,IAAA,4BAAA,IAGtDgB,IAAA;EAAA/E,OACE;EAAMC,QACL;EAAM+E,UACJ;EACX,EAAAxD,EAAA,MAAAuD,KAAAA,IAAAvD,EAAA;CAIiB,IAAAyD,IAAAtE,EAAOuC,SAAU,GACfgC,KAAA,CAAC5B,IAAQ6B;AAAA,CAAA3D,EAAA,QAAAsC,OAAAC,IAAA,4BAAA,IAInBoB,UAAA;AACN/C,IAAc,GAAK;IACpBZ,EAAA,MAAA2D,KAAAA,IAAA3D,EAAA;CAAA,IAAA4D;AAAA,CAAA5D,EAAA,QAAAsC,OAAAC,IAAA,4BAAA,IAiBcqB,KAAAC,GAAAC,MAAA;AACbhD,IAAmBgD,EAAc;IAClC9D,EAAA,MAAA4D,KAAAA,IAAA5D,EAAA;CAAA,IAAA+D;AAAA,CAAA/D,EAAA,QAAAO,IAIAwD,IAAA/D,EAAA,OAHQ+D,UAAA;AAEPxD,EADAK,EAAc,GAAM,EACpBL,EAAY,EAAAyD,SAAW,IAAO,CAAC;IAChChE,EAAA,MAAAO,GAAAP,EAAA,MAAA+D;CAAA,IAAAE;AAAA,CAAAjE,EAAA,QAAAX,KAAAW,EAAA,QAAAG,KAAAH,EAAA,QAAAE,KACS+D,KAAAC,GAAAC,GAAAC,MAAA;EAER,IAAAC,KAAgBF,KAAA,EAAY,EAAA1C,KAAM6C,MACzB,OAAOC,KAAS,WACnBpH,EAAiCoH,GAAMpE,EAC7B,GAAVoE,EAAI/E,MACR;AAGFsB,EADAZ,EAAWmE,EAAM3C,WAAY,IAAlBrC,IAAAgF,EAA0C,EACrDvD,EAAmB,GAAG;IACvBd,EAAA,MAAAX,GAAAW,EAAA,MAAAG,GAAAH,EAAA,MAAAE,GAAAF,EAAA,MAAAiE,KAAAA,IAAAjE,EAAA;CACqB,IAAAwE,KAAArF,EAAOuC,SAAU,GAAC+C;AAAA,CAAAzE,EAAA,QAAAG,KAAAH,EAAA,QAAAa,KAAAb,EAAA,QAAAqB,KAAArB,EAAA,QAAAE,KAChCuE,UAAA;AACN,MAAI5D,EAAe6D,MAAO,EAAA;GACxB,IAAAC,IAAoBxH,EAClB0D,GACAV,EACD;AAEDW,GADAZ,EAAW,CAAA,GAAImB,GAAasD,EAAY,CAAC,EACzC7D,EAAmB,GAAG;;IAEzBd,EAAA,MAAAG,GAAAH,EAAA,MAAAa,GAAAb,EAAA,MAAAqB,GAAArB,EAAA,MAAAE,GAAAF,EAAA,MAAAyE,KAAAA,IAAAzE,EAAA;CAAA,IAAA4E;AAAA,CAAA5E,EAAA,QAAAK,IAcGuE,IAAA5E,EAAA,OAbS4E,KAAAC,GAAAC,MACXD,EAAQpD,KAAKsD,GAAAC,MAAA;EACX,IAAA,EAAAC,QAAA,GAAAC,MAA6BJ,EAAY,EAAAE,UAAS,CAAC;AAEC,SAElD,kBAAC,GAAD;GAEUK,QAJV,OAAOD,KAAW,WAAlBL,IAAsCK,EAAM5F;GAKlCa;GAAM,GACV6E;GACJ,EAJKD,EAIL;GAEJ,EAAAjF,EAAA,MAAAK,GAAAL,EAAA,MAAA4E;CAAA,IAAAU;AAAA,CAAAtF,EAAA,QAAAqD,KAAArD,EAAA,QAAAmB,KAAAnB,EAAA,QAAAa,KAAAb,EAAA,QAAAW,KAAAX,EAAA,QAAAoB,KAAApB,EAAA,QAAAsB,KAAAtB,EAAA,QAAAyD,KAAAzD,EAAA,QAAA0D,MAAA1D,EAAA,QAAA+D,KAAA/D,EAAA,QAAAiE,KAAAjE,EAAA,QAAAwE,MAAAxE,EAAA,QAAAyE,KAAAzE,EAAA,QAAA4E,KA3ERU,IAAA,kBAAA,OAAA;EACS,OAAA/B;YAMP,kBAAC,IAAD;GACO7C;GACW,gBAAA+C;GACE,kBAAAC;GAClB,UAAA;GACA,UAAA;GACM/C,MAAAA;GACE,QAAAgD;GAGO,eAAA;GACJxC,WAAAA;GACFC,SAAAA;GACO,gBAAAmE;GAIM,sBAAAC;GAOflE,OAAAA;GACKT,YAAAA;GACG,eAAA+C;GAGN,SAAAG;GAIC,UAAAE;GAWY,sBAAAO;GACd,QAAAC;GAUK,aAAAG;GAeA,aAAAa;GAYTpC,IAAAA;GAER,CAAA;EAAM,CAAA,EAAArD,EAAA,MAAAqD,GAAArD,EAAA,MAAAmB,GAAAnB,EAAA,MAAAa,GAAAb,EAAA,MAAAW,GAAAX,EAAA,MAAAoB,GAAApB,EAAA,MAAAsB,GAAAtB,EAAA,MAAAyD,GAAAzD,EAAA,MAAA0D,IAAA1D,EAAA,MAAA+D,GAAA/D,EAAA,MAAAiE,GAAAjE,EAAA,MAAAwE,IAAAxE,EAAA,MAAAyE,GAAAzE,EAAA,MAAA4E,GAAA5E,EAAA,MAAAsF,KAAAA,IAAAtF,EAAA;CAAA,IAAA0F;AACE,QADF1F,EAAA,QAAAsD,KAAAtD,EAAA,QAAAsF,KAAAtF,EAAA,QAAA6B,KAlGR6D,IAAA,kBAAC,IAAD;EACS7D,OAAAA;EACG,WAAA;EACV,OAAA;EACY,YAAA;EACU,sBAAAyB;YAEtBgC;EA4FQ,CAAA,EAAAtF,EAAA,MAAAsD,GAAAtD,EAAA,MAAAsF,GAAAtF,EAAA,MAAA6B,GAAA7B,EAAA,MAAA0F,KAAAA,IAAA1F,EAAA,KAnGV0F;;AAlFJ,SAAAD,GAAAE,GAAA;AAAA,QAuKY,kBAAC,GAAD;EAAU,GACJA;EACO,WAAA,EAAAC,OACF;GAAA,GACFD,EAAME;GAAWC,kBACF;GAAIC,IAClBnH;GACN,EACF;EACA,CAAA;;AAhLd,SAAA4G,GAAAQ,GAAAxG,GAAA;AAqH8E,QAC3DlB,EAFL,OAAO8G,KAAW,WAAlBY,IAAsCZ,EAAM5F,OAC3B,OAAOA,KAAU,WAAjBA,IAAoCA,EAAKA,MACrB;;AAtHnD,SAAA+F,GAAAH,GAAA;AAAA,QA+GmB,OAAOA,KAAW,WAAlBA,IAAsCA,EAAM7F;;AA/G/D,SAAAoC,GAAA4C,GAAA;AAAA,QAmCgCrG,EAAsBqG,EAAK;;AAyJ3D,IAAM2B,KAAuCxI,EAC3CoC,IACCqG,GAAWC,MAGRD,EAAU9F,WAAW+F,EAAU/F,UAC/B8F,EAAU7F,UAAU8F,EAAU9F,SAC9B6F,EAAUxG,YAAYyG,EAAUzG,WAChCwG,EAAUhH,YAAYiH,EAAUjH,WAChCgH,EAAUhG,YAAYiG,EAAUjG,WAChCgG,EAAU/G,cAAcgH,EAAUhH,aAClC+G,EAAU9G,eAAe+G,EAAU/G,WAOxC;AAUD,SAAgBkH,EAA+B,EAC7CpH,YACAgB,YACAf,eAAY,GACZkH,mBAAgB,IAChBjH,iBAAaoB,KAAAA,KAC0C;AACvD,QAAO;EACLgG,aACEC,MAEA,kBAAC,IAAD;GACE,GAAIA;GACKvH;GACAgB;GACEf;GACCC;GAEf,CAAA;EACDsH,YAAY,EAAEhH,iBAEQD,EAAkBC,EAAQ,CAC3B8B,KAAI8C,MAAQrG,EAAsBqG,EAAK,CAAC,CAAC3C,KAAK,IAAI;EAEvEgF,aAAa,EAAEpH,eAAY;AACzB,OAAI,OAAOA,KAAU,SACnB,QAAOA;GAKT,IAAMsH,IAAetH,EAClBuH,MAFgB,QAEC,CACjBtF,KAAI8C,MAAQA,EAAKG,MAAM,CAAC,CACxBsC,QAAOzC,MAAQA,EAAK7C,SAAS,EAAE,CAC/BD,KAAI8C,MAAQpH,EAAiCoH,GAAMpE,EAAQ,CAAC,CAC5D6G,QAAOzC,MAAQA,KAAS,KAA2B;AAEtD,UAAOuC,EAAapF,SAAS,IAAIoF,IAAe,EAAE;;EAEpDG,aAAa;EACbC,WAAW;EACX,GAAIZ,KAAiB,EACnBa,gBAAgB,EAAExH,iBACID,EAAkBC,EAAQ,CAC3B+B,SAAS,IACxB,2BACA,oBAEP;EACF"}
1
+ {"version":3,"file":"AutocompleteMultipleEnumColumn.js","names":["parseFreeTextGivenJsonSchemaType","Autocomplete","AutocompleteChangeReason","SxProps","TextField","Theme","Tooltip","JSONSchema7Type","memo","useCallback","useLayoutEffect","useMemo","useRef","useState","CellComponent","Column","areAutocompleteCellPropsEqual","AutocompleteCellProps","castCellValueToString","AutocompleteOption","GridAutocompleteChip","isNil","isEqual","useGridAutocompleteState","AUTOCOMPLETE_MULTIPLE_BASE_SX","width","height","margin","visibility","TEXT_FIELD_SX","padding","backgroundColor","borderRadius","AutocompleteMultipleEnumOption","AutocompleteMultipleEnumCellProps","Omit","choices","limitTags","clearValue","EnumOption","label","value","createOptionFromValue","createSafeRowData","rowData","Array","isArray","AutocompleteMultipleEnumCell","t0","$","_c","setRowData","colType","t1","active","focus","stopEditing","t2","undefined","setRowDataRef","t3","current","localInputState","setLocalInputState","t4","menuIsOpen","setMenuIsOpen","inputRef","activeRef","handleListboxMouseDown","notifyOptionCommitted","handleMenuOpen","handleClose","effectiveLimitTags","optionsWithLabels","safeRowData","selectedOptions","t5","t6","map","length","_temp","join","tooltipContent","hasValue","t7","t8","t9","t10","t11","t12","t13","Symbol","for","background","t14","pointerEvents","flexWrap","minHeight","maxHeight","overflowY","overflowX","t15","t16","t17","t18","t19","autocompleteSx","t20","_e","newVal","_reason","values","item_0","item","handleChange","t21","trim","parsedValue","handleBlur","t22","t23","overflow","t24","t25","t26","_","newInputValue","t27","t28","listbox","onMouseDown","t29","tagValue","getTagProps","option_1","index","key","tagProps","optionValue_0","option","optionValue","t30","params","input","InputProps","disableUnderline","sx","t31","_temp2","_temp3","t32","option_0","valueValue","areAutocompleteMultipleEnumCellPropsEqual","prevProps","nextProps","MemoizedAutocompleteMultipleEnumCell","AutocompleteMultipleEnumColumnProps","dynamicHeight","autocompleteMultipleEnumColumn","Partial","component","props","copyValue","pasteValue","delimiters","parsedValues","split","filter","disableKeys","keepFocus","cellClassName"],"sources":["../../../../src/components/DataGrid/columns/AutocompleteMultipleEnumColumn.tsx"],"sourcesContent":["import parseFreeTextGivenJsonSchemaType from '@/components/DataGrid/utils/parseFreeTextUsingJsonSchemaType'\nimport {\n Autocomplete,\n AutocompleteChangeReason,\n SxProps,\n TextField,\n Theme,\n Tooltip,\n} from '@mui/material'\nimport { JSONSchema7Type } from 'json-schema'\nimport {\n memo,\n useCallback,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react'\nimport { CellComponent, Column } from '@sage-bionetworks/react-datasheet-grid'\nimport {\n areAutocompleteCellPropsEqual,\n AutocompleteCellProps,\n castCellValueToString,\n AutocompleteOption,\n} from './AutocompleteColumn'\nimport { GridAutocompleteChip } from './GridAutocompleteChip'\nimport isNil from 'lodash-es/isNil'\nimport isEqual from 'lodash-es/isEqual'\nimport { useGridAutocompleteState } from './useGridAutocompleteState'\n\n// Static styles extracted to avoid recreation on every render\nconst AUTOCOMPLETE_MULTIPLE_BASE_SX: SxProps<Theme> = {\n width: '100%',\n height: '100%',\n '& .MuiFormControl-root': {\n height: '100%',\n },\n '& .MuiAutocomplete-tag': {\n margin: '1px',\n },\n '&:hover .MuiAutocomplete-clearIndicator': {\n visibility: 'visible',\n },\n '&:hover .MuiAutocomplete-popupIndicator': {\n visibility: 'visible',\n },\n}\n\nconst TEXT_FIELD_SX: SxProps<Theme> = {\n height: '100%',\n padding: '0 10px',\n backgroundColor: 'inherit',\n borderRadius: 0,\n}\n\nexport type AutocompleteMultipleEnumOption = AutocompleteOption\n\nexport type AutocompleteMultipleEnumCellProps = Omit<\n AutocompleteCellProps,\n 'choices'\n> & {\n choices: AutocompleteMultipleEnumOption[]\n limitTags?: number\n clearValue?: undefined | null\n}\n\ntype EnumOption = {\n label: string\n value: AutocompleteMultipleEnumOption\n}\n\nfunction createOptionFromValue(\n value: AutocompleteMultipleEnumOption,\n): EnumOption {\n return {\n label: castCellValueToString(value),\n value: value,\n }\n}\n\nfunction createSafeRowData(\n rowData: AutocompleteMultipleEnumOption,\n): AutocompleteMultipleEnumOption[] {\n if (Array.isArray(rowData)) {\n return rowData as AutocompleteMultipleEnumOption[]\n } else if (isNil(rowData)) {\n return []\n } else {\n return [rowData]\n }\n}\n\nfunction AutocompleteMultipleEnumCell({\n rowData,\n setRowData,\n choices,\n colType,\n limitTags = 2,\n active,\n focus,\n stopEditing,\n clearValue = undefined,\n}: AutocompleteMultipleEnumCellProps) {\n // Stable refs so memo(AutocompleteMultipleEnumCell) can use default shallow\n // comparison — react-datasheet-grid recreates these functions on every render,\n // but their behavior is stable for a given cell position.\n const setRowDataRef = useRef(setRowData)\n useLayoutEffect(() => {\n setRowDataRef.current = setRowData\n })\n const [localInputState, setLocalInputState] = useState<string>('')\n\n const {\n menuIsOpen,\n setMenuIsOpen,\n inputRef,\n activeRef,\n handleListboxMouseDown,\n notifyOptionCommitted,\n handleMenuOpen,\n handleClose,\n } = useGridAutocompleteState({ active, stopEditing })\n\n const safeRowData = createSafeRowData(rowData)\n const optionsWithLabels = choices.map(createOptionFromValue)\n const selectedOptions = safeRowData.map(createOptionFromValue)\n const effectiveLimitTags = active ? -1 : limitTags\n\n // Create tooltip content showing all values\n const tooltipContent =\n safeRowData.length > 0\n ? safeRowData.map(item => castCellValueToString(item)).join(',')\n : ''\n\n const hasValue = !isNil(rowData) && rowData !== ''\n\n // Memoize sx to avoid recreation — dynamic styles change based on active/focus state\n const autocompleteSx = useMemo<SxProps<Theme>>(\n () => ({\n ...AUTOCOMPLETE_MULTIPLE_BASE_SX,\n '& .MuiAutocomplete-inputRoot': {\n pointerEvents: focus ? undefined : 'none',\n padding: '0 10px',\n backgroundColor: 'inherit',\n // Allow tags to wrap and enable scrolling\n flexWrap: active ? 'wrap' : 'nowrap',\n minHeight: '100%',\n maxHeight: '100%',\n overflowY: active ? 'auto' : 'hidden',\n overflowX: 'hidden',\n '&::-webkit-scrollbar': {\n width: '6px',\n height: '6px',\n },\n '&::-webkit-scrollbar-track': {\n background: 'transparent',\n },\n '&::-webkit-scrollbar-thumb': {\n background: '#888',\n borderRadius: '3px',\n },\n '&::-webkit-scrollbar-thumb:hover': {\n background: '#555',\n },\n },\n '& .MuiAutocomplete-clearIndicator': {\n visibility: active ? 'visible' : 'hidden',\n pointerEvents: 'auto',\n },\n '& .MuiAutocomplete-popupIndicator': {\n visibility: active ? 'visible' : 'hidden',\n pointerEvents: 'auto',\n },\n }),\n [active, focus],\n )\n\n const handleChange = useCallback(\n (\n _e: React.SyntheticEvent,\n newVal: (EnumOption | string)[],\n _reason: AutocompleteChangeReason,\n ) => {\n notifyOptionCommitted()\n const values = newVal.map(item => {\n return typeof item === 'string'\n ? parseFreeTextGivenJsonSchemaType(item, colType)\n : item.value\n })\n // Use clearValue when all items are removed\n setRowDataRef.current(values.length === 0 ? clearValue : values)\n setLocalInputState('')\n if (!activeRef.current) {\n // The cell was deactivated while the option click was in progress (portal\n // click was seen as an outside click by the grid). Now that the value is\n // committed, close the menu.\n setMenuIsOpen(false)\n }\n },\n [activeRef, clearValue, colType, notifyOptionCommitted, setMenuIsOpen],\n )\n\n const handleBlur = useCallback(() => {\n if (localInputState.trim()) {\n const parsedValue = parseFreeTextGivenJsonSchemaType(\n localInputState,\n colType,\n )\n setRowDataRef.current([...safeRowData, parsedValue])\n setLocalInputState('')\n }\n }, [localInputState, colType, safeRowData])\n\n return (\n <Tooltip\n title={tooltipContent}\n placement=\"top-start\"\n arrow\n enterDelay={500}\n disableHoverListener={active || safeRowData.length <= limitTags}\n >\n <div\n style={{\n width: '100%',\n height: '100%',\n overflow: 'hidden',\n }}\n >\n <Autocomplete\n forcePopupIcon={choices.length > 0}\n disableClearable={!hasValue}\n multiple\n freeSolo\n open={menuIsOpen}\n onOpen={handleMenuOpen}\n disablePortal={false}\n limitTags={effectiveLimitTags}\n options={optionsWithLabels}\n getOptionLabel={option => {\n // Handle both string (for freeSolo) and object options\n return typeof option === 'string' ? option : option.label\n }}\n isOptionEqualToValue={(option, value) => {\n // Compare the actual values, not labels\n const optionValue =\n typeof option === 'string' ? option : option.value\n const valueValue = typeof value === 'string' ? value : value.value\n return isEqual(optionValue, valueValue)\n }}\n value={selectedOptions}\n inputValue={localInputState}\n onInputChange={(_, newInputValue) => {\n setLocalInputState(newInputValue)\n }}\n onClose={handleClose}\n onChange={handleChange}\n disableCloseOnSelect={choices.length > 1}\n slotProps={{\n listbox: { onMouseDown: handleListboxMouseDown },\n }}\n onBlur={handleBlur}\n renderValue={(tagValue, getTagProps) =>\n tagValue.map((option, index) => {\n const { key, ...tagProps } = getTagProps({ index })\n const optionValue =\n typeof option === 'string' ? option : option.value\n return (\n <GridAutocompleteChip\n key={key}\n option={optionValue}\n active={active}\n {...tagProps}\n />\n )\n })\n }\n renderInput={params => (\n <TextField\n {...params}\n inputRef={inputRef}\n slotProps={{\n input: {\n ...params.InputProps,\n disableUnderline: true,\n sx: TEXT_FIELD_SX,\n },\n }}\n />\n )}\n sx={autocompleteSx}\n />\n </div>\n </Tooltip>\n )\n}\n\n// Memoize the cell component to prevent unnecessary re-renders.\n// react-datasheet-grid provides new setRowData/stopEditing function instances\n// on each render, so we must ignore those callback identities here and only\n// compare the props that affect rendering.\nexport function areAutocompleteMultipleEnumCellPropsEqual(\n prevProps: AutocompleteMultipleEnumCellProps,\n nextProps: AutocompleteMultipleEnumCellProps,\n) {\n return (\n areAutocompleteCellPropsEqual(prevProps, nextProps) &&\n prevProps.limitTags === nextProps.limitTags\n )\n}\n\nconst MemoizedAutocompleteMultipleEnumCell = memo(\n AutocompleteMultipleEnumCell,\n areAutocompleteMultipleEnumCellPropsEqual,\n)\n\nexport type AutocompleteMultipleEnumColumnProps = {\n choices: AutocompleteMultipleEnumOption[]\n colType?: JSONSchema7Type\n limitTags?: number\n dynamicHeight?: boolean\n clearValue?: undefined | null\n}\n\nexport function autocompleteMultipleEnumColumn({\n choices,\n colType,\n limitTags = 2,\n dynamicHeight = false,\n clearValue = undefined,\n}: AutocompleteMultipleEnumColumnProps): Partial<Column> {\n return {\n component: ((\n props: Omit<AutocompleteMultipleEnumCellProps, 'choices' | 'limitTags'>,\n ) => (\n <MemoizedAutocompleteMultipleEnumCell\n {...props}\n choices={choices}\n colType={colType}\n limitTags={limitTags}\n clearValue={clearValue}\n />\n )) as CellComponent,\n copyValue: ({ rowData }) => {\n // Convert array to comma-separated string\n const safeRowData = createSafeRowData(rowData)\n return safeRowData.map(item => castCellValueToString(item)).join(',')\n },\n pasteValue: ({ value }) => {\n if (typeof value !== 'string') {\n return value\n }\n\n // Split by comma or tab and clean up values\n const delimiters = /[,\\t]/\n const parsedValues = value\n .split(delimiters)\n .map(item => item.trim())\n .filter(item => item.length > 0)\n .map(item => parseFreeTextGivenJsonSchemaType(item, colType))\n .filter(item => item !== null && item !== undefined)\n\n return parsedValues.length > 0 ? parsedValues : []\n },\n disableKeys: true,\n keepFocus: true,\n ...(dynamicHeight && {\n cellClassName: ({ rowData }) => {\n const safeRowData = createSafeRowData(rowData)\n return safeRowData.length > 3\n ? 'multi-value-cell-large'\n : 'multi-value-cell'\n },\n }),\n }\n}\n"],"mappings":";;;;;;;;;;;AA+BA,IAAMwB,KAAgD;CACpDC,OAAO;CACPC,QAAQ;CACR,0BAA0B,EACxBA,QAAQ,QACT;CACD,0BAA0B,EACxBC,QAAQ,OACT;CACD,2CAA2C,EACzCC,YAAY,WACb;CACD,2CAA2C,EACzCA,YAAY,WACd;CACD,EAEKC,KAAgC;CACpCH,QAAQ;CACRI,SAAS;CACTC,iBAAiB;CACjBC,cAAc;CACf;AAkBD,SAASU,GACPD,GACY;AACZ,QAAO;EACLD,OAAOtB,EAAsBuB,EAAM;EAC5BA;EACR;;AAGH,SAASE,EACPC,GACkC;AAMhC,QALEC,MAAMC,QAAQF,EAAQ,GACjBA,IACEvB,GAAMuB,EAAQ,GAChB,EAAE,GAEF,CAACA,EAAQ;;AAIpB,SAAAG,EAAAC,GAAA;CAAA,IAAAC,IAAAC,GAAA,GAAA,EAAsC,EAAAN,YAAAO,eAAAf,YAAAgB,YAAAf,WAAAgB,GAAAC,WAAAC,WAAAC,gBAAAlB,YAAAmB,OAAAT,GAKpCX,IAAAgB,MAAAK,KAAAA,IAAA,IAAAL,GAIAf,KAAAmB,OAAAC,KAAAA,IAAAA,KAAAA,IAAAD,IAKAE,KAAsB/C,GAAOuC,EAAW,EAAAS;AACxClD,CADwCuC,EAAA,OAAAE,IAGvCS,IAAAX,EAAA,MAFeW,UAAA;AACdD,KAAaE,UAAWV;IACzBF,EAAA,KAAAE,GAAAF,EAAA,KAAAW,IAFDlD,GAAgBkD,EAEd;CACF,IAAA,CAAAE,GAAAC,MAA8ClD,GAAiB,GAAG,EAAAmD;AAAA,CAAAf,EAAA,OAAAK,KAAAL,EAAA,OAAAO,KAWrCQ,IAAA;EAAAV;EAAAE;EAAuB,EAAAP,EAAA,KAAAK,GAAAL,EAAA,KAAAO,GAAAP,EAAA,KAAAe,KAAAA,IAAAf,EAAA;CATpD,IAAA,EAAAgB,gBAAAC,mBAAAC,cAAAC,cAAAC,2BAAAC,0BAAAC,mBAAAC,mBASIjD,EAAyByC,EAAwB,EAAAS,GAAAC,GAAAC,GAAAC,GAAAC;AAAA,KAAA5B,EAAA,OAAAK,KAAAL,EAAA,OAAAb,KAAAa,EAAA,OAAAZ,KAAAY,EAAA,OAAAL,GAAA;AAErD+B,MAAoBhC,EAAkBC,EAAQ;EAAA,IAAAkC;AAStC7B,EATsCA,EAAA,QAAAb,IACc0C,IAAA7B,EAAA,OAAlC6B,IAAA1C,EAAO2C,IAAKrC,GAAsB,EAAAO,EAAA,MAAAb,GAAAa,EAAA,MAAA6B,IAA5DJ,IAA0BI,GAC1BF,IAAwBD,EAAWI,IAAKrC,GAAsB,EAC9D+B,IAA2BnB,IAAA,KAAAjB,GAIzBwC,IAAAF,EAAWK,SAAU,IACjBL,EAAWI,IAAKE,GAAoC,CAAAC,KAAM,IACxD,GAFN,IAEMjC,EAAA,KAAAK,GAAAL,EAAA,KAAAb,GAAAa,EAAA,KAAAZ,GAAAY,EAAA,KAAAL,GAAAK,EAAA,KAAAwB,GAAAxB,EAAA,MAAAyB,GAAAzB,EAAA,MAAA0B,GAAA1B,EAAA,MAAA2B,GAAA3B,EAAA,MAAA4B;OAAAA,CAAAJ,IAAAxB,EAAA,IAAAyB,IAAAzB,EAAA,KAAA0B,IAAA1B,EAAA,KAAA2B,IAAA3B,EAAA,KAAA4B,IAAA5B,EAAA;CAHR,IAAAkC,IACEN,GAEMC;AAAA,CAAA7B,EAAA,QAAAL,IAE0CkC,IAAA7B,EAAA,OAAjC6B,IAAA,CAACzD,GAAMuB,EAA0B,IAAdA,MAAY,IAAEK,EAAA,MAAAL,GAAAK,EAAA,MAAA6B;CAAlD,IAAAM,KAAiBN,GAOIO,IAAA9B,KAAAG,KAAAA,IAAA,QAIL4B,IAAAhC,IAAA,SAAA,UAGCiC,IAAAjC,IAAA,SAAA,UAA0BkC,GAAAC,GAAAC,GAAAC;AAAA,CAAA1C,EAAA,QAAA2C,OAAAC,IAAA,4BAAA,IAEbL,IAAA;EAAA/D,OACf;EAAKC,QACJ;EACT,EAC6B+D,IAAA,EAAAK,YAChB,eACb,EAC6BJ,IAAA;EAAAI,YAChB;EAAM9D,cACJ;EACf,EACmC2D,IAAA,EAAAG,YACtB,QACb,EAAA7C,EAAA,MAAAuC,GAAAvC,EAAA,MAAAwC,GAAAxC,EAAA,MAAAyC,GAAAzC,EAAA,MAAA0C,MAAAH,IAAAvC,EAAA,KAAAwC,IAAAxC,EAAA,KAAAyC,IAAAzC,EAAA,KAAA0C,IAAA1C,EAAA;CAAA,IAAA8C;AAAA,CAAA9C,EAAA,QAAAoC,KAAApC,EAAA,QAAAqC,KAAArC,EAAA,QAAAsC,KAvB6BQ,IAAA;EAAAC,eACfX;EAA0BvD,SAChC;EAAQC,iBACA;EAASkE,UAEhBX;EAA0BY,WACzB;EAAMC,WACN;EAAMC,WACNb;EAA0Bc,WAC1B;EAAQ,wBACKb;EAGvB,8BAC6BC;EAE7B,8BAC6BC;EAG7B,oCACmCC;EAGrC,EAAA1C,EAAA,MAAAoC,GAAApC,EAAA,MAAAqC,GAAArC,EAAA,MAAAsC,GAAAtC,EAAA,MAAA8C,KAAAA,IAAA9C,EAAA;CAEa,IAAAqD,IAAAhD,IAAA,YAAA,UAA6BiD;AAAA,CAAAtD,EAAA,QAAAqD,IAE1CC,IAAAtD,EAAA,OAHoCsD,IAAA;EAAA3E,YACvB0E;EAA6BN,eAC1B;EAChB,EAAA/C,EAAA,MAAAqD,GAAArD,EAAA,MAAAsD;CAEa,IAAAC,IAAAlD,IAAA,YAAA,UAA6BmD;AAAA,CAAAxD,EAAA,QAAAuD,IAE1CC,IAAAxD,EAAA,OAHoCwD,IAAA;EAAA7E,YACvB4E;EAA6BR,eAC1B;EAChB,EAAA/C,EAAA,MAAAuD,GAAAvD,EAAA,MAAAwD;CAAA,IAAAC;AAAA,CAAAzD,EAAA,QAAA8C,KAAA9C,EAAA,QAAAsD,KAAAtD,EAAA,QAAAwD,KAlCIC,IAAA;EAAA,GACFlF;EAA6B,gCACAuE;EAwB/B,qCACoCQ;EAGpC,qCACoCE;EAItC,EAAAxD,EAAA,MAAA8C,GAAA9C,EAAA,MAAAsD,GAAAtD,EAAA,MAAAwD,GAAAxD,EAAA,MAAAyD,KAAAA,IAAAzD,EAAA;CApCH,IAAA0D,IACSD,GAqCRE;AAAA,CAAA3D,EAAA,QAAAmB,KAAAnB,EAAA,QAAAX,MAAAW,EAAA,QAAAG,KAAAH,EAAA,QAAAqB,KAAArB,EAAA,QAAAiB,MAGC0C,KAAAC,GAAAC,GAAAC,MAAA;AAKEzC,KAAuB;EACvB,IAAA0C,IAAeF,EAAM/B,KAAKkC,MACjB,OAAOC,KAAS,WACnBlH,EAAiCkH,GAAM9D,EAC7B,GAAV8D,EAAIzE,MACR;AAIF,EAFAkB,GAAaE,QAASmD,EAAMhC,WAAY,IAAlB1C,KAAA0E,EAA0C,EAChEjD,GAAmB,GAAG,EACjBK,EAASP,WAIZK,GAAc,GAAM;IAEvBjB,EAAA,MAAAmB,GAAAnB,EAAA,MAAAX,IAAAW,EAAA,MAAAG,GAAAH,EAAA,MAAAqB,GAAArB,EAAA,MAAAiB,IAAAjB,EAAA,MAAA2D,KAAAA,IAAA3D,EAAA;CArBH,IAAAkE,KAAqBP,GAuBpBQ;AAAA,CAAAnE,EAAA,QAAAG,KAAAH,EAAA,QAAAa,KAAAb,EAAA,QAAA0B,KAE8ByC,UAAA;AAC7B,MAAItD,EAAeuD,MAAO,EAAA;GACxB,IAAAC,IAAoBtH,EAClB8D,GACAV,EACD;AAEDW,GADAJ,GAAaE,QAAS,CAAA,GAAIc,GAAa2C,EAAY,CAAC,EACpDvD,GAAmB,GAAG;;IAEzBd,EAAA,MAAAG,GAAAH,EAAA,MAAAa,GAAAb,EAAA,MAAA0B,GAAA1B,EAAA,MAAAmE,KAAAA,IAAAnE,EAAA;CATD,IAAAsE,KAAmBH,GAiBOI,KAAAlE,KAAUqB,EAAWK,UAAW3C,GAASoF;AAAA,CAAAxE,EAAA,QAAA2C,OAAAC,IAAA,4BAAA,IAGtD4B,IAAA;EAAAhG,OACE;EAAMC,QACL;EAAMgG,UACJ;EACX,EAAAzE,EAAA,MAAAwE,KAAAA,IAAAxE,EAAA;CAGiB,IAAA0E,KAAAvF,EAAO4C,SAAU,GACf4C,IAAA,CAACxC,IAAQyC;AAAA,CAAA5E,EAAA,QAAA2C,OAAAC,IAAA,4BAAA,IAqBZgC,KAAAC,GAAAC,MAAA;AACbhE,KAAmBgE,EAAc;IAClC9E,EAAA,MAAA4E,KAAAA,IAAA5E,EAAA;CAGqB,IAAA+E,KAAA5F,EAAO4C,SAAU,GAACiD;AAAA,CAAAhF,EAAA,QAAAoB,IAGvC4D,IAAAhF,EAAA,OAFUgF,IAAA,EAAAC,SACA,EAAAC,aAAe9D,GAAuB,EAChD,EAAApB,EAAA,MAAAoB,GAAApB,EAAA,MAAAgF;CAAA,IAAAG;AAAA,CAAAnF,EAAA,QAAAK,IAeG8E,IAAAnF,EAAA,OAbSmF,KAAAC,GAAAC,MACXD,EAAQtD,KAAKwD,GAAAC,MAAA;EACX,IAAA,EAAAC,QAAA,GAAAC,MAA6BJ,EAAY,EAAAE,UAAS,CAAC;AAEC,SAElD,kBAAC,GAAD;GAEUK,QAJV,OAAOD,KAAW,WAAlBL,IAAsCK,EAAMnG;GAKlCa;GAAM,GACVoF;GACJ,EAJKD,EAIL;GAEJ,EAAAxF,EAAA,MAAAK,GAAAL,EAAA,MAAAmF;CAAA,IAAAU;AAAA,CAAA7F,EAAA,QAAAkB,KAcH2E,IAAA7F,EAAA,OAZY6F,KAAAC,MACX,kBAAC,IAAD;EAAU,GACJA;EACM5E;EACC,WAAA,EAAA6E,OACF;GAAA,GACFD,EAAME;GAAWC,kBACF;GAAIC,IAClBtH;GACN,EACF;EAEH,CAAA,EAAAoB,EAAA,MAAAkB,IAAAlB,EAAA,MAAA6F;CAAA,IAAAM;AAAA,CAAAnG,EAAA,QAAA0D,KAAA1D,EAAA,QAAAwB,KAAAxB,EAAA,QAAAsE,MAAAtE,EAAA,QAAAkE,MAAAlE,EAAA,QAAAuB,KAAAvB,EAAA,QAAAsB,KAAAtB,EAAA,QAAAa,KAAAb,EAAA,QAAAgB,MAAAhB,EAAA,QAAAyB,KAAAzB,EAAA,QAAA2B,KAAA3B,EAAA,QAAA0E,MAAA1E,EAAA,QAAA2E,KAAA3E,EAAA,QAAA+E,MAAA/E,EAAA,QAAAgF,KAAAhF,EAAA,QAAAmF,KAAAnF,EAAA,QAAA6F,KAnELM,IAAA,kBAAA,OAAA;EACS,OAAA3B;YAMP,kBAAC,IAAD;GACkB,gBAAAE;GACE,kBAAAC;GAClB,UAAA;GACA,UAAA;GACM3D,MAAAA;GACEM,QAAAA;GACO,eAAA;GACJE,WAAAA;GACFC,SAAAA;GACO,gBAAA2E;GAIM,sBAAAC;GAOf1E,OAAAA;GACKd,YAAAA;GACG,eAAA+D;GAGNrD,SAAAA;GACC2C,UAAAA;GACY,sBAAAa;GACX,WAAAC;GAGHV,QAAAA;GACK,aAAAa;GAeA,aAAAU;GAaTnC,IAAAA;GAER,CAAA;EAAM,CAAA,EAAA1D,EAAA,MAAA0D,GAAA1D,EAAA,MAAAwB,GAAAxB,EAAA,MAAAsE,IAAAtE,EAAA,MAAAkE,IAAAlE,EAAA,MAAAuB,GAAAvB,EAAA,MAAAsB,GAAAtB,EAAA,MAAAa,GAAAb,EAAA,MAAAgB,IAAAhB,EAAA,MAAAyB,GAAAzB,EAAA,MAAA2B,GAAA3B,EAAA,MAAA0E,IAAA1E,EAAA,MAAA2E,GAAA3E,EAAA,MAAA+E,IAAA/E,EAAA,MAAAgF,GAAAhF,EAAA,MAAAmF,GAAAnF,EAAA,MAAA6F,GAAA7F,EAAA,MAAAmG,KAAAA,IAAAnG,EAAA;CAAA,IAAAsG;AACE,QADFtG,EAAA,QAAAuE,MAAAvE,EAAA,QAAAmG,KAAAnG,EAAA,QAAAkC,KA7ERoE,IAAA,kBAAC,IAAD;EACSpE,OAAAA;EACG,WAAA;EACV,OAAA;EACY,YAAA;EACU,sBAAAqC;YAEtB4B;EAuEQ,CAAA,EAAAnG,EAAA,MAAAuE,IAAAvE,EAAA,MAAAmG,GAAAnG,EAAA,MAAAkC,GAAAlC,EAAA,MAAAsG,KAAAA,IAAAtG,EAAA,KA9EVsG;;AA1HJ,SAAAD,GAAAE,GAAA/G,GAAA;AA0J8E,QAC3DnB,EAFL,OAAOsH,KAAW,WAAlBY,IAAsCZ,EAAMnG,OAC3B,OAAOA,KAAU,WAAjBA,IAAoCA,EAAKA,MACrB;;AA3JnD,SAAA4G,GAAAT,GAAA;AAAA,QAoJmB,OAAOA,KAAW,WAAlBA,IAAsCA,EAAMpG;;AApJ/D,SAAAyC,GAAAiC,GAAA;AAAA,QAuCgChG,EAAsBgG,EAAK;;AAyK3D,SAAgBwC,EACdC,GACAC,GACA;AACA,QACE5I,EAA8B2I,GAAWC,EAAU,IACnDD,EAAUtH,cAAcuH,EAAUvH;;AAItC,IAAMwH,IAAuCrJ,EAC3CuC,GACA2G,EACD;AAUD,SAAgBM,EAA+B,EAC7C5H,YACAgB,YACAf,eAAY,GACZ0H,mBAAgB,IAChBzH,iBAAaoB,KAAAA,KAC0C;AACvD,QAAO;EACLwG,aACEC,MAEA,kBAAC,GAAD;GACE,GAAIA;GACK/H;GACAgB;GACEf;GACCC;GAEf,CAAA;EACD8H,YAAY,EAAExH,iBAEQD,EAAkBC,EAC/B+B,CAAYI,KAAImC,MAAQhG,EAAsBgG,EAAK,CAAC,CAAChC,KAAK,IAAI;EAEvEmF,aAAa,EAAE5H,eAAY;AACzB,OAAI,OAAOA,KAAU,SACnB,QAAOA;GAKT,IAAM8H,IAAe9H,EAClB+H,MAAMF,QAAW,CACjBvF,KAAImC,MAAQA,EAAKG,MAAM,CAAC,CACxBoD,QAAOvD,MAAQA,EAAKlC,SAAS,EAAE,CAC/BD,KAAImC,MAAQlH,EAAiCkH,GAAM9D,EAAQ,CAAC,CAC5DqH,QAAOvD,MAAQA,KAAS,KAA2B;AAEtD,UAAOqD,EAAavF,SAAS,IAAIuF,IAAe,EAAE;;EAEpDG,aAAa;EACbC,WAAW;EACX,GAAIZ,KAAiB,EACnBa,gBAAgB,EAAEhI,iBACID,EAAkBC,EAC/B+B,CAAYK,SAAS,IACxB,2BACA,oBAEP;EACF"}
@@ -0,0 +1,58 @@
1
+ export type UseGridAutocompleteStateProps = {
2
+ active: boolean;
3
+ /**
4
+ * `stopEditing` from react-datasheet-grid's CellProps. The hook ref-stabilizes
5
+ * this internally, so callers can pass it directly without memoizing.
6
+ */
7
+ stopEditing?: (opts?: {
8
+ nextRow: boolean;
9
+ }) => void;
10
+ /**
11
+ * Called when the cell transitions from active to inactive and there is no
12
+ * pending option click in progress (i.e. the portal-click guard is not set).
13
+ * Store any free-text commit logic here. The callback is ref-stabilized inside
14
+ * the hook, so it may freely capture local state without becoming a stale closure.
15
+ */
16
+ onDeactivate?: () => void;
17
+ };
18
+ export type UseGridAutocompleteStateReturn = {
19
+ menuIsOpen: boolean;
20
+ setMenuIsOpen: (open: boolean) => void;
21
+ /** Ref to attach to the focusable input element for programmatic focus/blur. */
22
+ inputRef: React.RefObject<HTMLInputElement | null>;
23
+ /**
24
+ * Always reflects the current `active` value. Safe to read inside event
25
+ * handler closures (e.g. onChange) without a stale capture.
26
+ */
27
+ activeRef: React.RefObject<boolean>;
28
+ /** Pass to `slotProps.listbox.onMouseDown` on the MUI Autocomplete. */
29
+ handleListboxMouseDown: (event: React.MouseEvent) => void;
30
+ /**
31
+ * Call at the top of every `onChange` handler to signal that a pending
32
+ * option click has been committed. Clears the portal-click guard so that
33
+ * subsequent active→false transitions can proceed normally.
34
+ */
35
+ notifyOptionCommitted: () => void;
36
+ /** Pass to the Autocomplete `onOpen` prop. */
37
+ handleMenuOpen: () => void;
38
+ /**
39
+ * Pass to the Autocomplete `onClose` prop. Clears the portal-click guard and
40
+ * closes the menu, then stops editing without advancing to the next row.
41
+ */
42
+ handleClose: () => void;
43
+ };
44
+ /**
45
+ * Manages the shared focus/blur/menu state needed by grid autocomplete cell
46
+ * components that are built on top of react-datasheet-grid.
47
+ *
48
+ * Both AutocompleteColumn and AutocompleteMultipleEnumColumn use the same
49
+ * three-part pattern:
50
+ * 1. When `active` becomes true → focus the input.
51
+ * 2. When `active` becomes false with no pending option click → blur + close menu.
52
+ * 3. The dropdown renders in a portal outside the grid cell. react-datasheet-grid
53
+ * sees the mousedown as an outside click and fires active=false before onClick
54
+ * → onChange. The `optionMouseDownRef` guard defers step 2 until the click
55
+ * completes and onChange resets the ref.
56
+ */
57
+ export declare function useGridAutocompleteState({ active, stopEditing, onDeactivate, }: UseGridAutocompleteStateProps): UseGridAutocompleteStateReturn;
58
+ //# sourceMappingURL=useGridAutocompleteState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGridAutocompleteState.d.ts","sourceRoot":"","sources":["../../../../src/components/DataGrid/columns/useGridAutocompleteState.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,OAAO,CAAA;IACf;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IACnD;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG;IAC3C,UAAU,EAAE,OAAO,CAAA;IACnB,aAAa,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,gFAAgF;IAChF,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;IAClD;;;OAGG;IACH,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;IACnC,uEAAuE;IACvE,sBAAsB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;IACzD;;;;OAIG;IACH,qBAAqB,EAAE,MAAM,IAAI,CAAA;IACjC,8CAA8C;IAC9C,cAAc,EAAE,MAAM,IAAI,CAAA;IAC1B;;;OAGG;IACH,WAAW,EAAE,MAAM,IAAI,CAAA;CACxB,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,MAAM,EACN,WAAW,EACX,YAAY,GACb,EAAE,6BAA6B,GAAG,8BAA8B,CA2EhE"}
@@ -0,0 +1,52 @@
1
+ import { useEffect as e, useLayoutEffect as t, useRef as n, useState as r } from "react";
2
+ import { c as i } from "react/compiler-runtime";
3
+ //#region src/components/DataGrid/columns/useGridAutocompleteState.ts
4
+ function a(a) {
5
+ let o = i(15), { active: s, stopEditing: c, onDeactivate: l } = a, u = n(null), [d, f] = r(!1), p = n(!1), m = n(s), h;
6
+ o[0] === s ? h = o[1] : (h = () => {
7
+ m.current = s;
8
+ }, o[0] = s, o[1] = h), t(h);
9
+ let g = n(l), _;
10
+ o[2] === l ? _ = o[3] : (_ = () => {
11
+ g.current = l;
12
+ }, o[2] = l, o[3] = _), t(_);
13
+ let v = n(c), y;
14
+ o[4] === c ? y = o[5] : (y = () => {
15
+ v.current = c;
16
+ }, o[4] = c, o[5] = y), t(y);
17
+ let b, x;
18
+ o[6] === s ? (b = o[7], x = o[8]) : (b = () => {
19
+ s ? u.current?.focus() : p.current || (f(!1), u.current?.blur(), g.current?.());
20
+ }, x = [s], o[6] = s, o[7] = b, o[8] = x), e(b, x);
21
+ let S;
22
+ o[9] === Symbol.for("react.memo_cache_sentinel") ? (S = (e) => {
23
+ e.preventDefault(), e.target.closest("[role=\"option\"]") && (p.current = !0);
24
+ }, o[9] = S) : S = o[9];
25
+ let C = S, w;
26
+ o[10] === Symbol.for("react.memo_cache_sentinel") ? (w = () => {
27
+ p.current = !1;
28
+ }, o[10] = w) : w = o[10];
29
+ let T = w, E;
30
+ o[11] === Symbol.for("react.memo_cache_sentinel") ? (E = () => {
31
+ f(!0);
32
+ }, o[11] = E) : E = o[11];
33
+ let D = E, O;
34
+ o[12] === Symbol.for("react.memo_cache_sentinel") ? (O = () => {
35
+ p.current = !1, f(!1), v.current?.({ nextRow: !1 });
36
+ }, o[12] = O) : O = o[12];
37
+ let k = O, A;
38
+ return o[13] === d ? A = o[14] : (A = {
39
+ menuIsOpen: d,
40
+ setMenuIsOpen: f,
41
+ inputRef: u,
42
+ activeRef: m,
43
+ handleListboxMouseDown: C,
44
+ notifyOptionCommitted: T,
45
+ handleMenuOpen: D,
46
+ handleClose: k
47
+ }, o[13] = d, o[14] = A), A;
48
+ }
49
+ //#endregion
50
+ export { a as useGridAutocompleteState };
51
+
52
+ //# sourceMappingURL=useGridAutocompleteState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGridAutocompleteState.js","names":["useCallback","useEffect","useLayoutEffect","useRef","useState","UseGridAutocompleteStateProps","active","stopEditing","opts","nextRow","onDeactivate","UseGridAutocompleteStateReturn","menuIsOpen","setMenuIsOpen","open","inputRef","React","RefObject","HTMLInputElement","activeRef","handleListboxMouseDown","event","MouseEvent","notifyOptionCommitted","handleMenuOpen","handleClose","useGridAutocompleteState","t0","$","_c","optionMouseDownRef","t1","current","onDeactivateRef","t2","stopEditingRef","t3","t4","t5","focus","blur","t6","Symbol","for","preventDefault","target","Element","closest","t7","t8","t9","t10"],"sources":["../../../../src/components/DataGrid/columns/useGridAutocompleteState.ts"],"sourcesContent":["import {\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react'\n\nexport type UseGridAutocompleteStateProps = {\n active: boolean\n /**\n * `stopEditing` from react-datasheet-grid's CellProps. The hook ref-stabilizes\n * this internally, so callers can pass it directly without memoizing.\n */\n stopEditing?: (opts?: { nextRow: boolean }) => void\n /**\n * Called when the cell transitions from active to inactive and there is no\n * pending option click in progress (i.e. the portal-click guard is not set).\n * Store any free-text commit logic here. The callback is ref-stabilized inside\n * the hook, so it may freely capture local state without becoming a stale closure.\n */\n onDeactivate?: () => void\n}\n\nexport type UseGridAutocompleteStateReturn = {\n menuIsOpen: boolean\n setMenuIsOpen: (open: boolean) => void\n /** Ref to attach to the focusable input element for programmatic focus/blur. */\n inputRef: React.RefObject<HTMLInputElement | null>\n /**\n * Always reflects the current `active` value. Safe to read inside event\n * handler closures (e.g. onChange) without a stale capture.\n */\n activeRef: React.RefObject<boolean>\n /** Pass to `slotProps.listbox.onMouseDown` on the MUI Autocomplete. */\n handleListboxMouseDown: (event: React.MouseEvent) => void\n /**\n * Call at the top of every `onChange` handler to signal that a pending\n * option click has been committed. Clears the portal-click guard so that\n * subsequent active→false transitions can proceed normally.\n */\n notifyOptionCommitted: () => void\n /** Pass to the Autocomplete `onOpen` prop. */\n handleMenuOpen: () => void\n /**\n * Pass to the Autocomplete `onClose` prop. Clears the portal-click guard and\n * closes the menu, then stops editing without advancing to the next row.\n */\n handleClose: () => void\n}\n\n/**\n * Manages the shared focus/blur/menu state needed by grid autocomplete cell\n * components that are built on top of react-datasheet-grid.\n *\n * Both AutocompleteColumn and AutocompleteMultipleEnumColumn use the same\n * three-part pattern:\n * 1. When `active` becomes true → focus the input.\n * 2. When `active` becomes false with no pending option click → blur + close menu.\n * 3. The dropdown renders in a portal outside the grid cell. react-datasheet-grid\n * sees the mousedown as an outside click and fires active=false before onClick\n * → onChange. The `optionMouseDownRef` guard defers step 2 until the click\n * completes and onChange resets the ref.\n */\nexport function useGridAutocompleteState({\n active,\n stopEditing,\n onDeactivate,\n}: UseGridAutocompleteStateProps): UseGridAutocompleteStateReturn {\n const inputRef = useRef<HTMLInputElement>(null)\n const [menuIsOpen, setMenuIsOpen] = useState(false)\n const optionMouseDownRef = useRef(false)\n\n // Always reflects the latest `active` value — safe to read in closures.\n const activeRef = useRef(active)\n useLayoutEffect(() => {\n activeRef.current = active\n })\n\n // Ref-stabilize callbacks so effects/handlers never need them in deps arrays,\n // yet always call the latest versions (avoiding stale closures).\n const onDeactivateRef = useRef(onDeactivate)\n useLayoutEffect(() => {\n onDeactivateRef.current = onDeactivate\n })\n const stopEditingRef = useRef(stopEditing)\n useLayoutEffect(() => {\n stopEditingRef.current = stopEditing\n })\n\n useEffect(() => {\n if (active) {\n inputRef.current?.focus()\n } else if (!optionMouseDownRef.current) {\n // Only close when there is no pending option click; if there is one,\n // onChange will reset optionMouseDownRef and handle cleanup itself.\n setMenuIsOpen(false)\n inputRef.current?.blur()\n onDeactivateRef.current?.()\n }\n // Intentionally only re-runs when `active` changes.\n }, [active])\n\n const handleListboxMouseDown = useCallback((event: React.MouseEvent) => {\n // Prevent the input from blurring when clicking inside the listbox. MUI's\n // internal listbox onMouseDown does the same, but our slotProps replaces it,\n // so we must call preventDefault() here to preserve that behavior.\n event.preventDefault()\n // Only signal a pending option click when the mousedown actually targets an\n // option element. Clicks on scrollbars or listbox padding would otherwise\n // leave the guard stuck true (onChange never fires for non-selections),\n // causing later active→false transitions to skip blur/onDeactivate cleanup.\n if ((event.target as Element).closest('[role=\"option\"]')) {\n optionMouseDownRef.current = true\n }\n }, [])\n\n const notifyOptionCommitted = useCallback(() => {\n optionMouseDownRef.current = false\n }, [])\n\n const handleMenuOpen = useCallback(() => {\n setMenuIsOpen(true)\n }, [])\n\n const handleClose = useCallback(() => {\n // Clear the guard in case a mousedown on an option was abandoned before\n // onChange could fire (e.g. drag-off).\n optionMouseDownRef.current = false\n setMenuIsOpen(false)\n stopEditingRef.current?.({ nextRow: false })\n }, [])\n\n return {\n menuIsOpen,\n setMenuIsOpen,\n inputRef,\n activeRef,\n handleListboxMouseDown,\n notifyOptionCommitted,\n handleMenuOpen,\n handleClose,\n }\n}\n"],"mappings":";;;AAgEA,SAAO0B,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAkC,EAAAvB,WAAAC,gBAAAG,oBAAAiB,GAKvCZ,IAAiBZ,EAAyB,KAAK,EAC/C,CAAAS,GAAAC,KAAoCT,EAAS,GAAM,EACnD0B,IAA2B3B,EAAO,GAAM,EAGxCgB,IAAkBhB,EAAOG,EAAO,EAAAyB;AAChC7B,CADgC0B,EAAA,OAAAtB,IAG/ByB,IAAAH,EAAA,MAFeG,UAAA;AACdZ,IAASa,UAAW1B;IACrBsB,EAAA,KAAAtB,GAAAsB,EAAA,KAAAG,IAFD7B,EAAgB6B,EAEd;CAIF,IAAAE,IAAwB9B,EAAOO,EAAa,EAAAwB;AAC5ChC,CAD4C0B,EAAA,OAAAlB,IAG3CwB,IAAAN,EAAA,MAFeM,UAAA;AACdD,IAAeD,UAAWtB;IAC3BkB,EAAA,KAAAlB,GAAAkB,EAAA,KAAAM,IAFDhC,EAAgBgC,EAEd;CACF,IAAAC,IAAuBhC,EAAOI,EAAY,EAAA6B;AAC1ClC,CAD0C0B,EAAA,OAAArB,IAGzC6B,IAAAR,EAAA,MAFeQ,UAAA;AACdD,IAAcH,UAAWzB;IAC1BqB,EAAA,KAAArB,GAAAqB,EAAA,KAAAQ,IAFDlC,EAAgBkC,EAEd;CAAA,IAAAC,GAAAC;AAEFrC,CAFE2B,EAAA,OAAAtB,KAaS+B,IAAAT,EAAA,IAAAU,IAAAV,EAAA,OAXDS,UAAA;AACR,EAAI/B,IACFS,EAAQiB,SAAeO,OAAE,GACfT,EAAkBE,YAG5BnB,EAAc,GAAM,EACpBE,EAAQiB,SAAcQ,MAAE,EACxBP,EAAeD,WAAY;IAG5BM,IAAA,CAAChC,EAAO,EAAAsB,EAAA,KAAAtB,GAAAsB,EAAA,KAAAS,GAAAT,EAAA,KAAAU,IAXXrC,EAAUoC,GAWPC,EAAS;CAAA,IAAAG;AAAA,CAAAb,EAAA,OAAAc,OAAAC,IAAA,4BAAA,IAE+BF,KAAApB,MAAA;AASzC,EALAA,EAAKuB,gBAAiB,EAKjBvB,EAAKwB,OAAkBE,QAAU,oBAAkB,KACtDjB,EAAkBE,UAAW;IAEhCJ,EAAA,KAAAa,KAAAA,IAAAb,EAAA;CAZD,IAAAR,IAA+BqB,GAYzBO;AAAA,CAAApB,EAAA,QAAAc,OAAAC,IAAA,4BAAA,IAEoCK,UAAA;AACxClB,IAAkBE,UAAW;IAC9BJ,EAAA,MAAAoB,KAAAA,IAAApB,EAAA;CAFD,IAAAL,IAA8ByB,GAExBC;AAAA,CAAArB,EAAA,QAAAc,OAAAC,IAAA,4BAAA,IAE6BM,UAAA;AACjCpC,IAAc,GAAK;IACpBe,EAAA,MAAAqB,KAAAA,IAAArB,EAAA;CAFD,IAAAJ,IAAuByB,GAEjBC;AAAA,CAAAtB,EAAA,QAAAc,OAAAC,IAAA,4BAAA,IAE0BO,UAAA;AAK9Bf,EAFAL,EAAkBE,UAAW,IAC7BnB,EAAc,GAAM,EACpBsB,EAAcH,UAAW,EAAAvB,SAAW,IAAO,CAAC;IAC7CmB,EAAA,MAAAsB,KAAAA,IAAAtB,EAAA;CAND,IAAAH,IAAoByB,GAMdC;AAWL,QAXKvB,EAAA,QAAAhB,IAWLuC,IAAAvB,EAAA,OATMuB,IAAA;EAAAvC;EAAAC;EAAAE;EAAAI;EAAAC;EAAAG;EAAAC;EAAAC;EASN,EAAAG,EAAA,MAAAhB,GAAAgB,EAAA,MAAAuB,IATMA"}
@@ -1,8 +1,11 @@
1
1
  import { DataGridRow } from '../DataGridTypes';
2
2
  type ValidationAlertProps = {
3
- selectedRowIndex: number | null;
4
3
  rowValues: DataGridRow[];
4
+ columnNames: string[];
5
+ columnOrder: number[];
6
+ onNavigateToCell: (rowIndex: number, colIndex: number) => void;
7
+ isLoading?: boolean;
5
8
  };
6
- export declare const ValidationAlert: ({ selectedRowIndex, rowValues, }: ValidationAlertProps) => import("react/jsx-runtime").JSX.Element | null;
9
+ export declare const ValidationAlert: ({ rowValues, columnNames, columnOrder, onNavigateToCell, isLoading, }: ValidationAlertProps) => import("react/jsx-runtime").JSX.Element;
7
10
  export {};
8
11
  //# sourceMappingURL=ValidationAlert.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationAlert.d.ts","sourceRoot":"","sources":["../../../../src/components/DataGrid/components/ValidationAlert.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,KAAK,oBAAoB,GAAG;IAC1B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,SAAS,EAAE,WAAW,EAAE,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,kCAG7B,oBAAoB,mDA6BtB,CAAA"}
1
+ {"version":3,"file":"ValidationAlert.d.ts","sourceRoot":"","sources":["../../../../src/components/DataGrid/components/ValidationAlert.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AA0B9C,KAAK,oBAAoB,GAAG;IAC1B,SAAS,EAAE,WAAW,EAAE,CAAA;IACxB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA;AAiOD,eAAO,MAAM,eAAe,GAAI,uEAM7B,oBAAoB,4CAwOtB,CAAA"}