@ynput/ayon-frontend-shared 0.2.44 → 0.3.0

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 (396) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +72 -65
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +104 -102
  6. package/dist/Slicer.cjs.js +1 -1
  7. package/dist/Slicer.es.js +113 -4
  8. package/dist/Slicer.es.js.map +1 -1
  9. package/dist/Views.cjs.js.map +1 -1
  10. package/dist/Views.es.js.map +1 -1
  11. package/dist/_virtual/index.cjs4.js +1 -1
  12. package/dist/_virtual/index.cjs5.js +1 -1
  13. package/dist/_virtual/index.es4.js +5 -2
  14. package/dist/_virtual/index.es4.js.map +1 -1
  15. package/dist/_virtual/index.es5.js +2 -5
  16. package/dist/_virtual/index.es5.js.map +1 -1
  17. package/dist/components.cjs.js +1 -1
  18. package/dist/components.es.js +141 -139
  19. package/dist/components.es.js.map +1 -1
  20. package/dist/index.cjs.js +1 -1
  21. package/dist/index.es.js +61 -54
  22. package/dist/index.es.js.map +1 -1
  23. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js +5 -5
  24. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js.map +1 -1
  25. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js +313 -305
  26. package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js.map +1 -1
  27. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  28. package/dist/node_modules/remove-accents/index.es.js +1 -1
  29. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  30. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  31. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  32. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  33. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  34. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  35. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
  36. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
  37. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +73 -68
  38. package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
  39. package/dist/shared/src/api/queries/views/updateViews.cjs.js +1 -1
  40. package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
  41. package/dist/shared/src/api/queries/views/updateViews.es.js +1 -1
  42. package/dist/shared/src/api/queries/views/updateViews.es.js.map +1 -1
  43. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  44. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  45. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +57 -50
  46. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  47. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  48. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  49. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +45 -38
  50. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  51. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  52. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  53. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +47 -40
  54. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  55. package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
  56. package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
  57. package/dist/shared/src/components/Menu/MenuItem.es.js +21 -21
  58. package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
  59. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  60. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  61. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +49 -42
  62. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  63. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  64. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  65. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +44 -37
  66. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  67. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  68. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  69. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +48 -41
  70. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  71. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +2 -0
  72. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -0
  73. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +279 -0
  74. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -0
  75. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  76. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  77. package/dist/shared/src/components/RenameForm/RenameForm.es.js +48 -41
  78. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  79. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  80. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  81. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +64 -57
  82. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  83. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  84. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  85. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +54 -47
  86. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  87. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  88. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  89. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +53 -46
  90. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  91. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  92. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  93. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +52 -45
  94. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  95. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +2 -2
  96. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  97. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +56 -49
  98. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  99. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  100. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  101. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +53 -46
  102. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  103. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  104. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  105. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +54 -47
  106. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  107. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  108. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  109. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +70 -63
  110. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  111. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  112. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  113. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +49 -42
  114. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  115. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  116. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  117. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +68 -61
  118. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  119. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  120. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  121. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +93 -86
  122. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  123. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
  124. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
  125. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +47 -40
  126. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
  127. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  128. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  129. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +46 -43
  130. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  131. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  132. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  133. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +49 -46
  134. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  135. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  136. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  137. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +49 -46
  138. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  139. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  140. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  141. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +49 -46
  142. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  143. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  144. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  145. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +50 -42
  146. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  147. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  148. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  149. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +55 -48
  150. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  151. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
  152. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  153. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +70 -63
  154. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  155. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  156. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  157. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +47 -40
  158. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  159. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  160. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  161. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +468 -448
  162. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  163. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  164. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  165. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +96 -89
  166. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  167. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  168. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  169. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +47 -40
  170. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  171. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  172. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  173. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +57 -50
  174. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  175. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  176. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  177. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +54 -47
  178. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  179. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
  180. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
  181. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
  182. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
  183. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +63 -68
  184. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
  185. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  186. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  187. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +49 -41
  188. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  189. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  190. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  191. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +51 -44
  192. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  193. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  194. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  195. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +48 -41
  196. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  197. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  198. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  199. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +55 -48
  200. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  201. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  202. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  203. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +54 -47
  204. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  205. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  206. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  207. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +51 -44
  208. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  209. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  210. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  211. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +51 -44
  212. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  213. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  214. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  215. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +51 -44
  216. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  217. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  218. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  219. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +54 -47
  220. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  221. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  222. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  223. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +46 -39
  224. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  225. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  226. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  227. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +46 -39
  228. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  229. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  230. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  231. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +48 -41
  232. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  233. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  234. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  235. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +62 -55
  236. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  237. package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.cjs.js +1 -1
  238. package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.cjs.js.map +1 -1
  239. package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.es.js +11 -6
  240. package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.es.js.map +1 -1
  241. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +2 -2
  242. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  243. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +16 -13
  244. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  245. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
  246. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  247. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +342 -116
  248. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  249. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js +2 -2
  250. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js.map +1 -1
  251. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js +47 -40
  252. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js.map +1 -1
  253. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js +2 -2
  254. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js.map +1 -1
  255. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js +7 -7
  256. package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js.map +1 -1
  257. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  258. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  259. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +69 -62
  260. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  261. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  262. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  263. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +51 -44
  264. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  265. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js +2 -2
  266. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js.map +1 -1
  267. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js +29 -33
  268. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js.map +1 -1
  269. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  270. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  271. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +118 -111
  272. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  273. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  274. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  275. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +49 -46
  276. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  277. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -0
  278. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -0
  279. package/dist/shared/src/containers/Slicer/components/Slicer.es.js +82 -0
  280. package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -0
  281. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +27 -0
  282. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -0
  283. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +71 -0
  284. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -0
  285. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +10 -0
  286. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -0
  287. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +294 -0
  288. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -0
  289. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +2 -0
  290. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -0
  291. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +215 -0
  292. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -0
  293. package/dist/shared/src/containers/Slicer/hooks/useFiltersWithHierarchy.cjs.js.map +1 -0
  294. package/dist/shared/src/containers/Slicer/hooks/useFiltersWithHierarchy.es.js.map +1 -0
  295. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +2 -0
  296. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -0
  297. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +25 -0
  298. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -0
  299. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +2 -0
  300. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -0
  301. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +28 -0
  302. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -0
  303. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +2 -0
  304. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -0
  305. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +304 -0
  306. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -0
  307. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +2 -0
  308. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -0
  309. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +99 -0
  310. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -0
  311. package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.cjs.js.map +1 -0
  312. package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.es.js.map +1 -0
  313. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  314. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  315. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +95 -88
  316. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  317. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +2 -2
  318. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  319. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +32 -31
  320. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  321. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  322. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  323. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +125 -121
  324. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  325. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
  326. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
  327. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +47 -49
  328. package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
  329. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  330. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  331. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +6 -5
  332. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  333. package/dist/shared/src/context/AddonContext.cjs.js.map +1 -1
  334. package/dist/shared/src/context/AddonContext.es.js.map +1 -1
  335. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  336. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  337. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  338. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  339. package/dist/shared/src/context/WebsocketContext.es.js +51 -44
  340. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  341. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  342. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  343. package/dist/shared/src/hooks/useLoadModules.cjs.js +1 -1
  344. package/dist/shared/src/hooks/useLoadModules.cjs.js.map +1 -1
  345. package/dist/shared/src/hooks/useLoadModules.es.js +7 -7
  346. package/dist/shared/src/hooks/useLoadModules.es.js.map +1 -1
  347. package/dist/shared/src/util/columnConfigConverter.cjs.js +1 -1
  348. package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -1
  349. package/dist/shared/src/util/columnConfigConverter.es.js +69 -46
  350. package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -1
  351. package/dist/shared/src/util/getGroupByDataType.cjs.js +1 -1
  352. package/dist/shared/src/util/getGroupByDataType.cjs.js.map +1 -1
  353. package/dist/shared/src/util/getGroupByDataType.es.js +4 -4
  354. package/dist/shared/src/util/getGroupByDataType.es.js.map +1 -1
  355. package/dist/types/api/queries/activities/getActivities.d.ts +1 -1
  356. package/dist/types/api/queries/entityLists/getLists.d.ts +183 -183
  357. package/dist/types/api/queries/links/getLinks.d.ts +1 -1
  358. package/dist/types/api/queries/overview/getOverview.d.ts +1 -1
  359. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +1 -0
  360. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +2 -2
  361. package/dist/types/components/RemotePage/RemotePageWrapper.d.ts +28 -0
  362. package/dist/types/components/RemotePage/index.d.ts +1 -0
  363. package/dist/types/components/index.d.ts +31 -30
  364. package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +0 -2
  365. package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +1 -4
  366. package/dist/types/containers/ProjectTreeTable/utils/restrictedEntity.d.ts +3 -3
  367. package/dist/types/containers/Slicer/components/Slicer.d.ts +9 -0
  368. package/dist/types/containers/Slicer/components/SlicerDropdownFallback.d.ts +7 -0
  369. package/dist/types/containers/Slicer/components/SlicerSearch.d.ts +6 -0
  370. package/dist/types/containers/Slicer/context/SlicerContext.d.ts +48 -0
  371. package/dist/types/containers/Slicer/hooks/index.d.ts +5 -0
  372. package/dist/types/containers/Slicer/{useFiltersWithHierarchy.d.ts → hooks/useFiltersWithHierarchy.d.ts} +1 -1
  373. package/dist/types/containers/Slicer/hooks/useProjectAnatomySlices.d.ts +51 -0
  374. package/dist/types/containers/Slicer/hooks/useSlicerAttributesData.d.ts +7 -0
  375. package/dist/types/containers/Slicer/hooks/useTableDataBySlice.d.ts +8 -0
  376. package/dist/types/containers/Slicer/hooks/useUsersTable.d.ts +10 -0
  377. package/dist/types/containers/Slicer/index.d.ts +4 -2
  378. package/dist/types/containers/Slicer/types.d.ts +35 -0
  379. package/dist/types/containers/Slicer/{createFilterFromSlicer.d.ts → util/createFilterFromSlicer.d.ts} +2 -2
  380. package/dist/types/containers/Slicer/util/index.d.ts +1 -0
  381. package/dist/types/containers/Views/ViewsMenuContainer/BaseViewsTags.d.ts +4 -1
  382. package/dist/types/containers/Views/hooks/pages/useOverviewViewSettings.d.ts +7 -1
  383. package/dist/types/containers/Views/index.d.ts +1 -1
  384. package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +1 -1
  385. package/dist/types/context/AddonContext.d.ts +10 -2
  386. package/dist/types/context/AddonProjectContext.d.ts +7 -12
  387. package/dist/types/hooks/useGroupByRemoteModules.d.ts +2 -1
  388. package/package.json +1 -1
  389. package/dist/shared/src/containers/Slicer/createFilterFromSlicer.cjs.js.map +0 -1
  390. package/dist/shared/src/containers/Slicer/createFilterFromSlicer.es.js.map +0 -1
  391. package/dist/shared/src/containers/Slicer/useFiltersWithHierarchy.cjs.js.map +0 -1
  392. package/dist/shared/src/containers/Slicer/useFiltersWithHierarchy.es.js.map +0 -1
  393. /package/dist/shared/src/containers/Slicer/{useFiltersWithHierarchy.cjs.js → hooks/useFiltersWithHierarchy.cjs.js} +0 -0
  394. /package/dist/shared/src/containers/Slicer/{useFiltersWithHierarchy.es.js → hooks/useFiltersWithHierarchy.es.js} +0 -0
  395. /package/dist/shared/src/containers/Slicer/{createFilterFromSlicer.cjs.js → util/createFilterFromSlicer.cjs.js} +0 -0
  396. /package/dist/shared/src/containers/Slicer/{createFilterFromSlicer.es.js → util/createFilterFromSlicer.es.js} +0 -0
@@ -13,10 +13,96 @@ import "../ContextMenu/ContextMenuContext.es.js";
13
13
  import "clsx";
14
14
  import { useCreateContextMenu as C } from "../ContextMenu/useCreateContextMenu.es.js";
15
15
  import "../../components/AddonLoadingScreen/AddonLoadingScreen.es.js";
16
- import "../../components/ThumbnailSimple/ThumbnailSimple.es.js";
16
+ import "../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
17
+ import "../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
18
+ import "../../components/AccessUser/AccessUser.es.js";
19
+ import "../../components/AttributeEditor/components/MinMaxField.es.js";
20
+ import "react-dom";
21
+ import "@dnd-kit/core";
22
+ import "@dnd-kit/sortable";
23
+ import "../../components/EnumEditor/EnumEditor.styled.es.js";
24
+ import "../../components/Badge/Badge.es.js";
25
+ import "../../components/Chips/Chips.es.js";
26
+ import { DetailsDialog as N } from "../../components/DetailsDialog/DetailsDialog.es.js";
27
+ import "../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js";
28
+ import "../../components/DetailsPanelDetails/DetailsPanelDetails.es.js";
29
+ import "../../components/DetailsPanelDetails/DetailsSection.es.js";
30
+ import "../../components/DetailsPanelDetails/FieldLabel.es.js";
31
+ import "../../components/EarlyPreview/EarlyPreview.es.js";
17
32
  import "../../components/EmptyPlaceholder/EmptyPlaceholder.es.js";
18
33
  import "../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
19
- import { DetailsDialog as N } from "../../components/DetailsDialog/DetailsDialog.es.js";
34
+ import "../Feed/context/FeedContext.es.js";
35
+ import "../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.es.js";
36
+ import "../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.es.js";
37
+ import "../../context/RemoteModulesContext.es.js";
38
+ import "../../context/DetailsPanelContext.es.js";
39
+ import "../../context/ThumbnailUploaderContext.es.js";
40
+ import "../../context/SettingsPanelContext.es.js";
41
+ import "../../context/pip/PiPProvider.es.js";
42
+ import "../../context/pip/PiPWrapper.es.js";
43
+ import "../../context/AddonProjectContext.es.js";
44
+ import "../../context/AddonContext.es.js";
45
+ import "../../context/PowerpackContext.es.js";
46
+ import "../../context/MoveEntityContext.es.js";
47
+ import "../../context/MenuContext.es.js";
48
+ import "../../context/WebsocketContext.es.js";
49
+ import "../../context/GlobalContext.es.js";
50
+ import "../../context/ProjectContext.es.js";
51
+ import "../../context/ProjectFoldersContext.es.js";
52
+ import "../../context/UriContext.es.js";
53
+ import "../Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js";
54
+ import "../Feed/components/FileUploadPreview/Mimes/TextMime.es.js";
55
+ import "react-markdown";
56
+ import "remark-emoji";
57
+ import "remark-gfm";
58
+ import "remark-directive";
59
+ import "remark-directive-rehype";
60
+ import "../Feed/components/CommentInput/CommentInput.es.js";
61
+ import "../Feed/components/ReactionContainer/Reactions.styled.es.js";
62
+ import "../Feed/components/FilesGrid/FilesGrid.styled.es.js";
63
+ import "../Feed/components/FileUploadCard/FileUploadCard.styled.es.js";
64
+ import "../Feed/components/CommentInput/quillToMarkdown.es.js";
65
+ import "../Feed/components/ActivityComment/ActivityComment.styled.es.js";
66
+ import "../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.es.js";
67
+ import "../Feed/components/ActivityReference/ActivityReference.styled.es.js";
68
+ import "react-router-dom";
69
+ import "../Feed/components/ActivityStatus/ActivityStatus.es.js";
70
+ import "../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
71
+ import "../Feed/components/ActivityDate.es.js";
72
+ import "../Feed/components/ActivityCategorySelect/CategoryTag.es.js";
73
+ import "../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
74
+ import "../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
75
+ import "../Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
76
+ import "../Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
77
+ import "../Feed/Feed.styled.es.js";
78
+ import "date-fns";
79
+ import "../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
80
+ import "../Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
81
+ import "@tanstack/react-virtual";
82
+ import "@tanstack/react-table";
83
+ import "../ProjectTreeTable/widgets/CollapsedWidget.es.js";
84
+ import "../ProjectTreeTable/widgets/DateWidget.es.js";
85
+ import "../ProjectTreeTable/widgets/EnumWidget.es.js";
86
+ import "../ProjectTreeTable/widgets/TextWidget.es.js";
87
+ import "../ProjectTreeTable/widgets/BooleanWidget.es.js";
88
+ import "../ProjectTreeTable/widgets/CellWidget.es.js";
89
+ import "../ProjectTreeTable/widgets/EntityNameWidget.es.js";
90
+ import "../ProjectTreeTable/widgets/GroupHeaderWidget.es.js";
91
+ import "../ProjectTreeTable/widgets/ThumbnailWidget.es.js";
92
+ import "../../components/LinksManager/CellEditingDialog.es.js";
93
+ import "../ProjectTreeTable/context/DetailsPanelEntityContext.es.js";
94
+ import "../ProjectTreeTable/context/SelectedRowsContext.es.js";
95
+ import "../../components/LinksManager/LinksManager.styled.es.js";
96
+ import "../ProjectTreeTable/widgets/EmptyWidget.es.js";
97
+ import "../ProjectTreeTable/widgets/ErrorWidget.es.js";
98
+ import "../ProjectTreeTable/context/CellEditingContext.es.js";
99
+ import "short-uuid";
100
+ import "../ProjectTreeTable/context/SelectionCellsContext.es.js";
101
+ import "../ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
102
+ import "../ProjectTreeTable/context/ProjectTableContext.es.js";
103
+ import "../ProjectTreeTable/context/ClipboardContext.es.js";
104
+ import "../ProjectTreeTable/context/ColumnSettingsContext.es.js";
105
+ import "../ProjectTreeTable/context/ProjectDataContext.es.js";
20
106
  import "../../api/base/client.es.js";
21
107
  import "../../api/generated/graphql.es.js";
22
108
  import "../../api/generated/graphqlLinks.es.js";
@@ -102,89 +188,6 @@ import "../../api/queries/views/getViews.es.js";
102
188
  import "../../api/queries/views/updateViews.es.js";
103
189
  import "../../api/queries/watchers/getWatchers.es.js";
104
190
  import "../../api/queries/uris/getUris.es.js";
105
- import "@dnd-kit/core";
106
- import "@dnd-kit/sortable";
107
- import "../../components/ReviewablesList/ReviewablesList.styled.es.js";
108
- import "../../components/ReviewablesList/ReviewablesUpload.styled.es.js";
109
- import "axios";
110
- import "../../context/RemoteModulesContext.es.js";
111
- import "../../context/DetailsPanelContext.es.js";
112
- import "../../context/ThumbnailUploaderContext.es.js";
113
- import "../../context/SettingsPanelContext.es.js";
114
- import "../../context/pip/PiPProvider.es.js";
115
- import "react-dom";
116
- import "../../context/pip/PiPWrapper.es.js";
117
- import "../../context/AddonProjectContext.es.js";
118
- import "../../context/AddonContext.es.js";
119
- import "../../context/PowerpackContext.es.js";
120
- import "../../context/MoveEntityContext.es.js";
121
- import "../../context/MenuContext.es.js";
122
- import "../../context/WebsocketContext.es.js";
123
- import "../../context/GlobalContext.es.js";
124
- import "../../context/ProjectContext.es.js";
125
- import "../../context/ProjectFoldersContext.es.js";
126
- import "../../context/UriContext.es.js";
127
- import "../../components/ReviewableCard/ReviewableCard.es.js";
128
- import "../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
129
- import "../../components/FileThumbnail/FileThumbnail.es.js";
130
- import "../../components/Thumbnail/Thumbnail.styled.es.js";
131
- import "../../components/Thumbnail/StackedThumbnails.es.js";
132
- import "../Feed/context/FeedContext.es.js";
133
- import "../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.es.js";
134
- import "../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.es.js";
135
- import "../Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js";
136
- import "../Feed/components/FileUploadPreview/Mimes/TextMime.es.js";
137
- import "react-markdown";
138
- import "remark-emoji";
139
- import "remark-gfm";
140
- import "remark-directive";
141
- import "remark-directive-rehype";
142
- import "../Feed/components/CommentInput/CommentInput.es.js";
143
- import "../Feed/components/ReactionContainer/Reactions.styled.es.js";
144
- import "../Feed/components/FilesGrid/FilesGrid.styled.es.js";
145
- import "../Feed/components/FileUploadCard/FileUploadCard.styled.es.js";
146
- import "../Feed/components/CommentInput/quillToMarkdown.es.js";
147
- import "../Feed/components/ActivityComment/ActivityComment.styled.es.js";
148
- import "../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.es.js";
149
- import "../Feed/components/ActivityReference/ActivityReference.styled.es.js";
150
- import "react-router-dom";
151
- import "../Feed/components/ActivityStatus/ActivityStatus.es.js";
152
- import "../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
153
- import "../Feed/components/ActivityDate.es.js";
154
- import "../Feed/components/ActivityCategorySelect/CategoryTag.es.js";
155
- import "../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
156
- import "../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
157
- import "../Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
158
- import "../Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
159
- import "../Feed/Feed.styled.es.js";
160
- import "date-fns";
161
- import "../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
162
- import "../Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
163
- import "@tanstack/react-virtual";
164
- import "@tanstack/react-table";
165
- import "../ProjectTreeTable/widgets/CollapsedWidget.es.js";
166
- import "../ProjectTreeTable/widgets/DateWidget.es.js";
167
- import "../ProjectTreeTable/widgets/EnumWidget.es.js";
168
- import "../ProjectTreeTable/widgets/TextWidget.es.js";
169
- import "../ProjectTreeTable/widgets/BooleanWidget.es.js";
170
- import "../ProjectTreeTable/widgets/CellWidget.es.js";
171
- import "../ProjectTreeTable/widgets/EntityNameWidget.es.js";
172
- import "../ProjectTreeTable/widgets/GroupHeaderWidget.es.js";
173
- import "../ProjectTreeTable/widgets/ThumbnailWidget.es.js";
174
- import "../../components/LinksManager/CellEditingDialog.es.js";
175
- import "../ProjectTreeTable/context/DetailsPanelEntityContext.es.js";
176
- import "../ProjectTreeTable/context/SelectedRowsContext.es.js";
177
- import "../../components/LinksManager/LinksManager.styled.es.js";
178
- import "../ProjectTreeTable/widgets/EmptyWidget.es.js";
179
- import "../ProjectTreeTable/widgets/ErrorWidget.es.js";
180
- import "../ProjectTreeTable/context/CellEditingContext.es.js";
181
- import "short-uuid";
182
- import "../ProjectTreeTable/context/SelectionCellsContext.es.js";
183
- import "../ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
184
- import "../ProjectTreeTable/context/ProjectTableContext.es.js";
185
- import "../ProjectTreeTable/context/ClipboardContext.es.js";
186
- import "../ProjectTreeTable/context/ColumnSettingsContext.es.js";
187
- import "../ProjectTreeTable/context/ProjectDataContext.es.js";
188
191
  import "../../../../_virtual/runtime.es.js";
189
192
  import "../../../../_virtual/semver.es.js";
190
193
  import "react-redux";
@@ -198,6 +201,13 @@ import "../ProjectTreeTable/components/HeaderActionButton.es.js";
198
201
  import "../ProjectTreeTable/components/ColumnHeaderMenu.es.js";
199
202
  import "../EntityPickerDialog/EntityPickerDialog.es.js";
200
203
  import R from "./versionsToRepresentations.es.js";
204
+ import "../SimpleTable/SimpleTable.styled.es.js";
205
+ import "@tanstack/match-sorter-utils";
206
+ import "../SimpleTable/context/SimpleTableContext.es.js";
207
+ import "../SimpleTable/SimpleTableRowTemplate.es.js";
208
+ import "../Slicer/hooks/useTableDataBySlice.es.js";
209
+ import "../Slicer/components/SlicerSearch.es.js";
210
+ import "../Slicer/context/SlicerContext.es.js";
201
211
  import "../DetailsPanel/DetailsPanel.styled.es.js";
202
212
  import "../DetailsPanel/FeedFilters/FeedFilters.styled.es.js";
203
213
  import "../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
@@ -213,42 +223,39 @@ import "../Views/Views.styled.es.js";
213
223
  import "../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
214
224
  import "../Views/ViewsMenu/ViewsMenu.es.js";
215
225
  import "../../components/EntityPanelUploader/EntityPanelUploader.styled.es.js";
216
- import "../../components/SimpleFormDialog/SimpleFormDialog.es.js";
226
+ import "axios";
227
+ import "../../components/ReviewablesList/ReviewablesList.styled.es.js";
228
+ import "../../components/ReviewablesList/ReviewablesUpload.styled.es.js";
217
229
  import "../../components/EntityPath/EntityPath.styled.es.js";
218
230
  import "../../components/EntityPath/SegmentProvider.es.js";
219
- import "../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js";
220
- import "../../components/DetailsPanelDetails/DetailsPanelDetails.es.js";
221
- import "../../components/DetailsPanelDetails/DetailsSection.es.js";
222
- import "../../components/DetailsPanelDetails/FieldLabel.es.js";
223
- import "../../components/Watchers/Watchers.es.js";
224
- import "../../components/ProjectTableSettings/ProjectTableSettings.es.js";
231
+ import "../../components/FeaturedVersionOrder/FeaturedVersionOrder.es.js";
232
+ import "../../components/Feedback/FeedbackContext.es.js";
233
+ import "../../components/Feedback/SupportBubble.es.js";
234
+ import "../../components/FileThumbnail/FileThumbnail.es.js";
235
+ import "../../components/LegacyBadge/LegacyBadge.es.js";
225
236
  import "../../components/Powerpack/PowerpackButton.es.js";
226
237
  import "../../components/Powerpack/PricingLink.es.js";
227
238
  import "../../components/Powerpack/PowerpackDialog.styled.es.js";
228
239
  import "../../components/Powerpack/CTAButton.es.js";
229
240
  import "../../components/Powerpack/RequiredAddonVersion.es.js";
241
+ import "../../components/ProjectTableSettings/ProjectTableSettings.es.js";
230
242
  import "../../components/SizeSlider/SizeSlider.es.js";
243
+ import "../../components/ReviewableCard/ReviewableCard.es.js";
244
+ import "../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
245
+ import "../../components/SearchFilter/filterDates.es.js";
231
246
  import "../../components/SettingsPanel/SettingsPanel.es.js";
232
247
  import "../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
233
- import "../../components/AttributeEditor/components/MinMaxField.es.js";
234
- import "../../components/EnumEditor/EnumEditor.styled.es.js";
235
- import "../../components/SearchFilter/filterDates.es.js";
236
- import "../../components/FeaturedVersionOrder/FeaturedVersionOrder.es.js";
237
- import "../../components/Badge/Badge.es.js";
238
- import "../../components/VersionUploader/components/UploadVersionDialog.es.js";
239
- import "../../components/VersionUploader/context/VersionUploadContext.es.js";
240
- import "../../components/Feedback/FeedbackContext.es.js";
241
- import "../../components/Feedback/SupportBubble.es.js";
242
- import "../../components/Chips/Chips.es.js";
243
- import "../../components/StyledLink/StyledLink.es.js";
244
248
  import "../../components/ShareOptionIcon/ShareOptionIcon.es.js";
245
- import "../../components/AccessUser/AccessUser.es.js";
246
- import "../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
247
- import "../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
248
- import "../../components/TableGridSwitch/TableGridSwitch.es.js";
249
+ import "../../components/SimpleFormDialog/SimpleFormDialog.es.js";
249
250
  import "../../components/SortingSetting/SortingSetting.styled.es.js";
250
- import "../../components/EarlyPreview/EarlyPreview.es.js";
251
- import "../../components/LegacyBadge/LegacyBadge.es.js";
251
+ import "../../components/StyledLink/StyledLink.es.js";
252
+ import "../../components/TableGridSwitch/TableGridSwitch.es.js";
253
+ import "../../components/Thumbnail/Thumbnail.styled.es.js";
254
+ import "../../components/Thumbnail/StackedThumbnails.es.js";
255
+ import "../../components/ThumbnailSimple/ThumbnailSimple.es.js";
256
+ import "../../components/VersionUploader/components/UploadVersionDialog.es.js";
257
+ import "../../components/VersionUploader/context/VersionUploadContext.es.js";
258
+ import "../../components/Watchers/Watchers.es.js";
252
259
  import "../../components/Menu/Menu.styled.es.js";
253
260
  import "../../components/Menu/MenuItem.es.js";
254
261
  const b = [
@@ -273,7 +280,7 @@ const b = [
273
280
  header: "productType",
274
281
  width: 110
275
282
  }
276
- ], dm = ({ entities: p = [] }) => {
283
+ ], wm = ({ entities: p = [] }) => {
277
284
  const i = s(() => R(p) || [], [p]), [r, e] = a(!1), d = i.find((t) => t.id === r)?.projectName, [l, c] = a([]), u = s(() => M(i, "name"), [i]), n = (t) => {
278
285
  c([t]);
279
286
  }, f = (t) => {
@@ -325,6 +332,6 @@ const b = [
325
332
  ] });
326
333
  };
327
334
  export {
328
- dm as RepresentationsList
335
+ wm as RepresentationsList
329
336
  };
330
337
  //# sourceMappingURL=RepresentationsList.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RepresentationsList.es.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["columns","RepresentationsList","entities","representations","useMemo","versionsToRepresentations","showDetail","setShowDetail","useState","showDetailProjectName","rep","selected","setSelected","data","groupResult","onRepSelectionChange","entityId","onRowClick","e","ctxMenuItems","id","ctxMenuShow","useCreateContextMenu","handleContextMenu","jsxs","Fragment","jsx","TablePanel","TreeTable","col","Column","DetailsDialog"],"mappings":"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"}
1
+ {"version":3,"file":"RepresentationsList.es.js","sources":["../../../../../src/containers/RepresentationsList/RepresentationsList.tsx"],"sourcesContent":["import { useMemo, useState } from 'react'\nimport { TablePanel } from '@ynput/ayon-react-components'\n\nimport { TreeTable } from 'primereact/treetable'\nimport { Column } from 'primereact/column'\n\nimport { groupResult } from '@shared/util'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { DetailsDialog } from '@shared/components'\nimport versionsToRepresentations from './versionsToRepresentations'\nimport { DetailsPanelEntityData } from '@shared/api'\n\nconst columns = [\n {\n field: 'name',\n header: 'Name',\n width: 90,\n expander: true,\n },\n {\n field: 'folderName',\n header: 'Folder',\n width: 130,\n },\n {\n field: 'productName',\n header: 'Product',\n width: 130,\n },\n {\n field: 'Product type',\n header: 'productType',\n width: 110,\n },\n]\n\ntype Props = {\n entities: DetailsPanelEntityData[]\n}\n\nexport const RepresentationsList = ({ entities = [] }: Props) => {\n // merge all entities data into one array of entities\n const representations = useMemo(() => versionsToRepresentations(entities) || [], [entities])\n\n const [showDetail, setShowDetail] = useState<false | string>(false)\n const showDetailProjectName = representations.find((rep) => rep.id === showDetail)?.projectName\n\n const [selected, setSelected] = useState<string[]>([])\n\n const data = useMemo(() => {\n // @ts-expect-error - groupResult is not typed\n return groupResult(representations, 'name')\n }, [representations])\n\n const onRepSelectionChange = (entityId: string) => {\n // set focused state\n setSelected([entityId])\n }\n\n const onRowClick = (e: any) => {\n onRepSelectionChange(e.node.data.id)\n }\n\n const ctxMenuItems = (id: string) => [\n {\n label: 'Representation detail',\n command: () => setShowDetail(id),\n icon: 'database',\n },\n ]\n\n const [ctxMenuShow] = useCreateContextMenu([])\n\n const handleContextMenu = (e: any) => {\n const id = e.node.data.id\n\n if (id) {\n // update focused representations\n onRepSelectionChange(id)\n // open context menu\n ctxMenuShow(e.originalEvent, ctxMenuItems(id))\n }\n }\n\n return (\n <>\n <TablePanel>\n <TreeTable\n scrollable\n scrollHeight=\"100%\"\n value={data}\n emptyMessage=\"No representation found\"\n selectionMode=\"single\"\n selectionKeys={selected[0]}\n onRowClick={onRowClick}\n onContextMenu={handleContextMenu}\n >\n {columns.map((col) => {\n return (\n <Column\n key={col.field}\n field={col.field}\n header={col.header}\n expander={col.expander}\n style={{ width: col.width }}\n />\n )\n })}\n </TreeTable>\n </TablePanel>\n\n {showDetail && (\n <DetailsDialog\n projectName={showDetailProjectName}\n entityType={'representation'}\n entityIds={[showDetail]}\n visible={!!showDetail}\n onHide={() => setShowDetail(false)}\n />\n )}\n </>\n )\n}\n"],"names":["columns","RepresentationsList","entities","representations","useMemo","versionsToRepresentations","showDetail","setShowDetail","useState","showDetailProjectName","rep","selected","setSelected","data","groupResult","onRepSelectionChange","entityId","onRowClick","e","ctxMenuItems","id","ctxMenuShow","useCreateContextMenu","handleContextMenu","jsxs","Fragment","jsx","TablePanel","TreeTable","col","Column","DetailsDialog"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const x=require("../../../../_virtual/jsx-runtime.cjs.js"),c=require("react"),ue=require("./SimpleTable.styled.cjs.js"),m=require("@tanstack/react-table"),te=require("@tanstack/react-virtual"),L=require("clsx"),ne=require("./hooks/useRowKeydown.cjs.js"),B=require("@tanstack/match-sorter-utils"),le=require("./context/SimpleTableContext.cjs.js"),qe=require("./SimpleTableRowTemplate.cjs.js");require("../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("@ynput/ayon-react-components");require("../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");const oe=require("../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("react-toastify");require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/updateActivities.cjs.js");require("../../api/queries/activities/updateReaction.cjs.js");require("../../api/queries/activities/getMentions.cjs.js");require("../../api/queries/activities/getCategories.cjs.js");require("../../api/queries/addons/getAddons.cjs.js");require("../../api/queries/addons/updateAddons.cjs.js");require("../../api/queries/attributes/getAttributes.cjs.js");require("../../api/queries/attributes/updateAttributes.cjs.js");require("../../api/queries/authentication/getAuthentication.cjs.js");require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/review/getReview.cjs.js");require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../util/pubsub.cjs.js");require("../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../context/RemoteModulesContext.cjs.js");require("../../context/DetailsPanelContext.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/PowerpackContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("../../context/UriContext.cjs.js");require("../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../components/Thumbnail/StackedThumbnails.cjs.js");require("../Feed/context/FeedContext.cjs.js");require("../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../Feed/components/CommentInput/CommentInput.cjs.js");require("../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../Feed/components/ActivityDate.cjs.js");require("../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../Feed/Feed.styled.cjs.js");require("date-fns");require("../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../ProjectTreeTable/widgets/DateWidget.cjs.js");require("../ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../ProjectTreeTable/widgets/TextWidget.cjs.js");require("../ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../ProjectTreeTable/widgets/CellWidget.cjs.js");require("../ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../components/LinksManager/CellEditingDialog.cjs.js");require("../ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../../components/LinksManager/LinksManager.styled.cjs.js");require("../ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../ProjectTreeTable/context/CellEditingContext.cjs.js");require("short-uuid");require("../ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../ProjectTreeTable/context/ClipboardContext.cjs.js");require("../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../../../_virtual/runtime.cjs.js");require("../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../ProjectTreeTable/components/SelectionCell.cjs.js");require("../ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../ProjectTreeTable/components/ColumnHeaderMenu.cjs.js");require("../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../DetailsPanel/DetailsPanel.styled.cjs.js");require("../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../components/PlayableIcon/PlayableIcon.cjs.js");require("../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../Actions/Actions.styled.cjs.js");require("../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../Actions/ActionIcon.cjs.js");require("../Views/context/ViewsContext.cjs.js");require("../Views/Views.styled.cjs.js");require("../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../components/EntityPath/EntityPath.styled.cjs.js");require("../../components/EntityPath/SegmentProvider.cjs.js");require("../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../components/Watchers/Watchers.cjs.js");require("../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../components/Powerpack/PowerpackButton.cjs.js");require("../../components/Powerpack/PricingLink.cjs.js");require("../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../components/Powerpack/CTAButton.cjs.js");require("../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../components/SizeSlider/SizeSlider.cjs.js");require("../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../components/SearchFilter/filterDates.cjs.js");require("../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../components/Badge/Badge.cjs.js");require("../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../components/Feedback/FeedbackContext.cjs.js");require("../../components/Feedback/SupportBubble.cjs.js");require("../../components/Chips/Chips.cjs.js");require("../../components/StyledLink/StyledLink.cjs.js");require("../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../components/AccessUser/AccessUser.cjs.js");require("../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../components/SortingSetting/SortingSetting.styled.cjs.js");require("../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../components/Menu/Menu.styled.cjs.js");require("../../components/Menu/MenuItem.cjs.js");const ae=(t,n,d,f)=>{const o=t.getValue(n);let g=typeof o=="string"?o:Array.isArray(o)?o.join(" "):JSON.stringify(o);n==="label"&&(g=[t.original.label,t.original.name,...t.original.parents||[]].join(" "));const R=B.rankItem(g,d);return f({itemRank:R}),R.passed},se=(t,n,d)=>{let f=0;return t.columnFiltersMeta[d]&&(f=B.compareItems(t.columnFiltersMeta[d]?.itemRank,n.columnFiltersMeta[d]?.itemRank)),f===0?m.sortingFns.alphanumeric(t,n,d):f};function ce(t,n,d){const f=[];if(n===d){const a=t.find(F=>F.id===n);return a?[a]:[]}let o=-1,g=-1;for(let a=0;a<t.length&&(t[a].id===n&&(o=a),t[a].id===d&&(g=a),!(o!==-1&&g!==-1));a++);if(o===-1||g===-1)return[];const R=Math.min(o,g),w=Math.max(o,g);for(let a=R;a<=w;a++)f.push(t[a]);return f}const de=({data:t=[],isLoading:n,error:d,isExpandable:f,isMultiSelect:o=!0,enableClickToDeselect:g=!0,enableNonFolderIndent:R=!0,forceUpdateTable:w,globalFilter:a,meta:F,rowHeight:k,imgRatio:z,onScrollBottom:T,children:O,pt:E})=>{const{rowSelection:P,expanded:U,setExpanded:V,onExpandedChange:_,onRowSelectionChange:H,rowPinning:D,onRowPinningChange:j}=le.useSimpleTableContext(),b=c.useRef(null),h=c.useRef(null),J=c.useMemo(()=>n?Array.from({length:10},(e,u)=>({id:`placeholder-${u}`,name:`placeholder-${u}`,label:`placeholder-${u}`,icon:null,img:null,subRows:[],data:{id:`placeholder-${u}`}})):t,[n,t,w]),p=c.useCallback((e,u,i,l)=>{const s=u,q=e.getFilteredRowModel().flatRows,r=q.find(C=>C.id===s);if(r&&!r.original.isDisabled){if(g&&!i&&!l&&Object.keys(e.getState().rowSelection).length===1&&e.getState().rowSelection[s]){e.setRowSelection({}),b.current=null;return}if(o&&i&&b.current){const C=b.current;if(!q.find(K=>K.id===C))e.setRowSelection({[s]:!0});else{const K=ce(q,s,C),I={};K.forEach(ie=>I[ie.id]=!0),e.setRowSelection(I)}}else o&&l?r.toggleSelected():e.setRowSelection({[s]:!0});b.current=s}},[o,g]),Y=c.useCallback((e,u)=>{if(!h.current){console.warn("tableRef not yet available in handleRowSelectForKeydown");return}const i=e.shiftKey,l=e.ctrlKey||e.metaKey;p(h.current,u.id,i,l)},[p]),G=c.useCallback((e,u,i)=>{if(!h.current)return;const l=h.current.getRowModel().rows,s=l.findIndex(r=>r.id===u.id);if(s===-1)return;let q=e==="down"?s+1:s-1;if(!(q<0||q>=l.length))for(;q>=0&&q<l.length;){const r=l[q];if(!r.original.isDisabled){p(h.current,r.id,i.shiftKey,i.ctrlKey||i.metaKey),requestAnimationFrame(()=>{const M=document.getElementById(r.id)?.querySelector('[tabindex="0"]');M&&(M.focus(),M.scrollIntoView({block:"nearest",behavior:"smooth"}))});return}q=e==="down"?q+1:q-1}},[p]),{handleRowKeyDown:$}=ne({handleRowSelect:Y,handleArrowNavigation:G}),Q=c.useMemo(()=>[{accessorKey:"label",header:void 0,filterFn:"fuzzy",sortingFn:se,cell:({row:e,getValue:u,table:i})=>{const l=i.options.meta,s=r=>{r.target instanceof HTMLInputElement||r.target instanceof HTMLButtonElement||r.target instanceof HTMLTextAreaElement||r.target instanceof HTMLSelectElement||r.target instanceof HTMLAnchorElement||r.target.closest("button, a, input, textarea, select")||p(i,e.id,r.shiftKey,r.ctrlKey||r.metaKey)},q={className:L({selected:e.getIsSelected(),loading:l?.isLoading,disabled:e.original.isDisabled,inactive:e.original.inactive}),onKeyDown:r=>{r.target instanceof HTMLInputElement||$(r,e)},depth:e.depth,tabIndex:0,value:u(),parents:e.original.parents,icon:e.original.icon||void 0,iconColor:e.original.iconColor,iconFilled:e.original.iconFilled,img:e.original.img,imgShape:e.original.imgShape,imgRatio:z,isRowExpandable:e.getCanExpand(),enableNonFolderIndent:R,isRowExpanded:e.getIsExpanded(),isTableExpandable:l?.isExpandable,onExpandClick:e.getToggleExpandedHandler(),startContent:e.original.startContent,endContent:e.original.endContent,isDisabled:e.original.isDisabled,disabledMessage:e.original.disabledMessage,...E?.cell,onClick:s};return l?.children?l.children(q,e,i):x.jsxRuntimeExports.jsx(qe.SimpleTableCellTemplate,{...q,...E?.cell})}}],[w,p,$,g,R,z]),W=c.useCallback(e=>{H(m.functionalUpdate(e,P))},[H]),X=c.useCallback(e=>{j?.(m.functionalUpdate(e,D||{}))},[j]),Z=c.useCallback(e=>{V?.(u=>{const i=e instanceof Function?e(u):e;return _?.(i),i})},[V]),S=m.useReactTable({data:J,columns:Q,state:{expanded:U,rowSelection:P,globalFilter:a,rowPinning:D},onRowSelectionChange:W,onRowPinningChange:X,filterFns:{fuzzy:ae},globalFilterFn:"fuzzy",enableRowSelection:!0,enableRowPinning:!!j,getRowId:e=>e.id,enableSubRowSelection:!1,onExpandedChange:Z,getSubRows:e=>e.subRows,getCoreRowModel:m.getCoreRowModel(),getFilteredRowModel:m.getFilteredRowModel(),getExpandedRowModel:m.getExpandedRowModel(),filterFromLeafRows:!0,meta:{isExpandable:!!f,isLoading:n,children:O,...F}});c.useEffect(()=>{h.current=S},[S]);const{rows:A}=S.getRowModel(),N=c.useRef(null),y=te.useVirtualizer({count:A.length,estimateSize:()=>k||34,getScrollElement:()=>N.current,measureElement:k?()=>k:typeof window<"u"&&navigator.userAgent.indexOf("Firefox")===-1?e=>e?.getBoundingClientRect().height:void 0,overscan:5}),v=c.useCallback(e=>{e&&y.measureElement(e)},[y]),ee=c.useCallback(e=>{if(!T)return;const u=e.currentTarget,{scrollTop:i,scrollHeight:l,clientHeight:s}=u;l-i-s<100&&!n&&T()},[T,n]),re=e=>{g&&!e.target.closest("tr")&&(S.setRowSelection({}),b.current=null)};return x.jsxRuntimeExports.jsxs(ue.TableContainer,{ref:N,className:L({isLoading:n}),onScroll:ee,onClick:re,children:[!d&&x.jsxRuntimeExports.jsx("table",{children:x.jsxRuntimeExports.jsx("tbody",{style:{height:`${y?.getTotalSize()}px`},children:y?.getVirtualItems().map(e=>{const u=A[e.index];return x.jsxRuntimeExports.jsx("tr",{"data-index":e.index,ref:v,id:u.id,...E?.row,style:{transform:`translateY(${e.start}px)`,...E?.row?.style},children:u.getVisibleCells().map(i=>x.jsxRuntimeExports.jsx("td",{children:m.flexRender(i.column.columnDef.cell,i.getContext())},i.id))},u.id)})})}),!!d&&x.jsxRuntimeExports.jsx(oe.EmptyPlaceholder,{error:d})]})};module.exports=de;
1
+ "use strict";const x=require("../../../../_virtual/jsx-runtime.cjs.js"),c=require("react"),ue=require("./SimpleTable.styled.cjs.js"),m=require("@tanstack/react-table"),te=require("@tanstack/react-virtual"),L=require("clsx"),ne=require("./hooks/useRowKeydown.cjs.js"),B=require("@tanstack/match-sorter-utils"),le=require("./context/SimpleTableContext.cjs.js"),qe=require("./SimpleTableRowTemplate.cjs.js");require("../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("@ynput/ayon-react-components");require("../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../components/AccessUser/AccessUser.cjs.js");require("lodash");require("../../components/AttributeEditor/components/MinMaxField.cjs.js");require("react-dom");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../components/Badge/Badge.cjs.js");require("../../components/Chips/Chips.cjs.js");require("react-toastify");require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/updateActivities.cjs.js");require("../../api/queries/activities/updateReaction.cjs.js");require("../../api/queries/activities/getMentions.cjs.js");require("../../api/queries/activities/getCategories.cjs.js");require("../../api/queries/addons/getAddons.cjs.js");require("../../api/queries/addons/updateAddons.cjs.js");require("../../api/queries/attributes/getAttributes.cjs.js");require("../../api/queries/attributes/updateAttributes.cjs.js");require("../../api/queries/authentication/getAuthentication.cjs.js");require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/review/getReview.cjs.js");require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");require("../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../components/EarlyPreview/EarlyPreview.cjs.js");const oe=require("../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../Feed/context/FeedContext.cjs.js");require("../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../context/RemoteModulesContext.cjs.js");require("../../context/DetailsPanelContext.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/PowerpackContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("../../context/UriContext.cjs.js");require("../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../Feed/components/CommentInput/CommentInput.cjs.js");require("../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("uuid");require("../../util/pubsub.cjs.js");require("react-router-dom");require("../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../Feed/components/ActivityDate.cjs.js");require("../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../Feed/Feed.styled.cjs.js");require("date-fns");require("../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../ProjectTreeTable/widgets/DateWidget.cjs.js");require("../ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../ProjectTreeTable/widgets/TextWidget.cjs.js");require("../ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../ProjectTreeTable/widgets/CellWidget.cjs.js");require("../ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../components/LinksManager/CellEditingDialog.cjs.js");require("../ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../../components/LinksManager/LinksManager.styled.cjs.js");require("../ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../ProjectTreeTable/context/CellEditingContext.cjs.js");require("short-uuid");require("../ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../ProjectTreeTable/context/ClipboardContext.cjs.js");require("../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../../../_virtual/runtime.cjs.js");require("../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../ProjectTreeTable/components/SelectionCell.cjs.js");require("../ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../ProjectTreeTable/components/ColumnHeaderMenu.cjs.js");require("../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../Slicer/hooks/useTableDataBySlice.cjs.js");require("../Slicer/components/SlicerSearch.cjs.js");require("../Slicer/context/SlicerContext.cjs.js");require("../DetailsPanel/DetailsPanel.styled.cjs.js");require("../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../components/PlayableIcon/PlayableIcon.cjs.js");require("../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../Actions/Actions.styled.cjs.js");require("../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../Actions/ActionIcon.cjs.js");require("../Views/context/ViewsContext.cjs.js");require("../Views/Views.styled.cjs.js");require("../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../../components/EntityPath/EntityPath.styled.cjs.js");require("../../components/EntityPath/SegmentProvider.cjs.js");require("../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../components/Feedback/FeedbackContext.cjs.js");require("../../components/Feedback/SupportBubble.cjs.js");require("../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../components/Powerpack/PowerpackButton.cjs.js");require("../../components/Powerpack/PricingLink.cjs.js");require("../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../components/Powerpack/CTAButton.cjs.js");require("../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../components/SizeSlider/SizeSlider.cjs.js");require("../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../components/SearchFilter/filterDates.cjs.js");require("../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../components/SortingSetting/SortingSetting.styled.cjs.js");require("../../components/StyledLink/StyledLink.cjs.js");require("../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../components/Watchers/Watchers.cjs.js");require("../../components/Menu/Menu.styled.cjs.js");require("../../components/Menu/MenuItem.cjs.js");const ae=(t,n,d,f)=>{const o=t.getValue(n);let g=typeof o=="string"?o:Array.isArray(o)?o.join(" "):JSON.stringify(o);n==="label"&&(g=[t.original.label,t.original.name,...t.original.parents||[]].join(" "));const R=B.rankItem(g,d);return f({itemRank:R}),R.passed},se=(t,n,d)=>{let f=0;return t.columnFiltersMeta[d]&&(f=B.compareItems(t.columnFiltersMeta[d]?.itemRank,n.columnFiltersMeta[d]?.itemRank)),f===0?m.sortingFns.alphanumeric(t,n,d):f};function ce(t,n,d){const f=[];if(n===d){const a=t.find(F=>F.id===n);return a?[a]:[]}let o=-1,g=-1;for(let a=0;a<t.length&&(t[a].id===n&&(o=a),t[a].id===d&&(g=a),!(o!==-1&&g!==-1));a++);if(o===-1||g===-1)return[];const R=Math.min(o,g),w=Math.max(o,g);for(let a=R;a<=w;a++)f.push(t[a]);return f}const de=({data:t=[],isLoading:n,error:d,isExpandable:f,isMultiSelect:o=!0,enableClickToDeselect:g=!0,enableNonFolderIndent:R=!0,forceUpdateTable:w,globalFilter:a,meta:F,rowHeight:k,imgRatio:z,onScrollBottom:T,children:O,pt:E})=>{const{rowSelection:P,expanded:U,setExpanded:V,onExpandedChange:_,onRowSelectionChange:H,rowPinning:D,onRowPinningChange:j}=le.useSimpleTableContext(),b=c.useRef(null),h=c.useRef(null),J=c.useMemo(()=>n?Array.from({length:10},(e,u)=>({id:`placeholder-${u}`,name:`placeholder-${u}`,label:`placeholder-${u}`,icon:null,img:null,subRows:[],data:{id:`placeholder-${u}`}})):t,[n,t,w]),p=c.useCallback((e,u,i,l)=>{const s=u,q=e.getFilteredRowModel().flatRows,r=q.find(C=>C.id===s);if(r&&!r.original.isDisabled){if(g&&!i&&!l&&Object.keys(e.getState().rowSelection).length===1&&e.getState().rowSelection[s]){e.setRowSelection({}),b.current=null;return}if(o&&i&&b.current){const C=b.current;if(!q.find(K=>K.id===C))e.setRowSelection({[s]:!0});else{const K=ce(q,s,C),I={};K.forEach(ie=>I[ie.id]=!0),e.setRowSelection(I)}}else o&&l?r.toggleSelected():e.setRowSelection({[s]:!0});b.current=s}},[o,g]),Y=c.useCallback((e,u)=>{if(!h.current){console.warn("tableRef not yet available in handleRowSelectForKeydown");return}const i=e.shiftKey,l=e.ctrlKey||e.metaKey;p(h.current,u.id,i,l)},[p]),G=c.useCallback((e,u,i)=>{if(!h.current)return;const l=h.current.getRowModel().rows,s=l.findIndex(r=>r.id===u.id);if(s===-1)return;let q=e==="down"?s+1:s-1;if(!(q<0||q>=l.length))for(;q>=0&&q<l.length;){const r=l[q];if(!r.original.isDisabled){p(h.current,r.id,i.shiftKey,i.ctrlKey||i.metaKey),requestAnimationFrame(()=>{const M=document.getElementById(r.id)?.querySelector('[tabindex="0"]');M&&(M.focus(),M.scrollIntoView({block:"nearest",behavior:"smooth"}))});return}q=e==="down"?q+1:q-1}},[p]),{handleRowKeyDown:$}=ne({handleRowSelect:Y,handleArrowNavigation:G}),Q=c.useMemo(()=>[{accessorKey:"label",header:void 0,filterFn:"fuzzy",sortingFn:se,cell:({row:e,getValue:u,table:i})=>{const l=i.options.meta,s=r=>{r.target instanceof HTMLInputElement||r.target instanceof HTMLButtonElement||r.target instanceof HTMLTextAreaElement||r.target instanceof HTMLSelectElement||r.target instanceof HTMLAnchorElement||r.target.closest("button, a, input, textarea, select")||p(i,e.id,r.shiftKey,r.ctrlKey||r.metaKey)},q={className:L({selected:e.getIsSelected(),loading:l?.isLoading,disabled:e.original.isDisabled,inactive:e.original.inactive}),onKeyDown:r=>{r.target instanceof HTMLInputElement||$(r,e)},depth:e.depth,tabIndex:0,value:u(),parents:e.original.parents,icon:e.original.icon||void 0,iconColor:e.original.iconColor,iconFilled:e.original.iconFilled,img:e.original.img,imgShape:e.original.imgShape,imgRatio:z,isRowExpandable:e.getCanExpand(),enableNonFolderIndent:R,isRowExpanded:e.getIsExpanded(),isTableExpandable:l?.isExpandable,onExpandClick:e.getToggleExpandedHandler(),startContent:e.original.startContent,endContent:e.original.endContent,isDisabled:e.original.isDisabled,disabledMessage:e.original.disabledMessage,...E?.cell,onClick:s};return l?.children?l.children(q,e,i):x.jsxRuntimeExports.jsx(qe.SimpleTableCellTemplate,{...q,...E?.cell})}}],[w,p,$,g,R,z]),W=c.useCallback(e=>{H(m.functionalUpdate(e,P))},[H]),X=c.useCallback(e=>{j?.(m.functionalUpdate(e,D||{}))},[j]),Z=c.useCallback(e=>{V?.(u=>{const i=e instanceof Function?e(u):e;return _?.(i),i})},[V]),S=m.useReactTable({data:J,columns:Q,state:{expanded:U,rowSelection:P,globalFilter:a,rowPinning:D},onRowSelectionChange:W,onRowPinningChange:X,filterFns:{fuzzy:ae},globalFilterFn:"fuzzy",enableRowSelection:!0,enableRowPinning:!!j,getRowId:e=>e.id,enableSubRowSelection:!1,onExpandedChange:Z,getSubRows:e=>e.subRows,getCoreRowModel:m.getCoreRowModel(),getFilteredRowModel:m.getFilteredRowModel(),getExpandedRowModel:m.getExpandedRowModel(),filterFromLeafRows:!0,meta:{isExpandable:!!f,isLoading:n,children:O,...F}});c.useEffect(()=>{h.current=S},[S]);const{rows:A}=S.getRowModel(),N=c.useRef(null),y=te.useVirtualizer({count:A.length,estimateSize:()=>k||34,getScrollElement:()=>N.current,measureElement:k?()=>k:typeof window<"u"&&navigator.userAgent.indexOf("Firefox")===-1?e=>e?.getBoundingClientRect().height:void 0,overscan:5}),v=c.useCallback(e=>{e&&y.measureElement(e)},[y]),ee=c.useCallback(e=>{if(!T)return;const u=e.currentTarget,{scrollTop:i,scrollHeight:l,clientHeight:s}=u;l-i-s<100&&!n&&T()},[T,n]),re=e=>{g&&!e.target.closest("tr")&&(S.setRowSelection({}),b.current=null)};return x.jsxRuntimeExports.jsxs(ue.TableContainer,{ref:N,className:L({isLoading:n}),onScroll:ee,onClick:re,children:[!d&&x.jsxRuntimeExports.jsx("table",{children:x.jsxRuntimeExports.jsx("tbody",{style:{height:`${y?.getTotalSize()}px`},children:y?.getVirtualItems().map(e=>{const u=A[e.index];return x.jsxRuntimeExports.jsx("tr",{"data-index":e.index,ref:v,id:u.id,...E?.row,style:{transform:`translateY(${e.start}px)`,...E?.row?.style},children:u.getVisibleCells().map(i=>x.jsxRuntimeExports.jsx("td",{children:m.flexRender(i.column.columnDef.cell,i.getContext())},i.id))},u.id)})})}),!!d&&x.jsxRuntimeExports.jsx(oe.EmptyPlaceholder,{error:d})]})};module.exports=de;
2
2
  //# sourceMappingURL=SimpleTable.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SimpleTable.cjs.js","sources":["../../../../../src/containers/SimpleTable/SimpleTable.tsx"],"sourcesContent":["import { FC, useMemo, useRef, MouseEvent as ReactMouseEvent, useCallback, useEffect } from 'react'\nimport * as Styled from './SimpleTable.styled'\nimport {\n useReactTable,\n getCoreRowModel,\n getFilteredRowModel,\n getExpandedRowModel,\n ColumnDef,\n flexRender,\n Row,\n FilterFn,\n SortingFn,\n sortingFns,\n RowData,\n Table,\n OnChangeFn,\n RowSelectionState,\n functionalUpdate,\n} from '@tanstack/react-table'\nimport { useVirtualizer } from '@tanstack/react-virtual'\n\nimport clsx from 'clsx'\nimport useRowKeydown, { RowKeyboardEvent } from './hooks/useRowKeydown'\n\nimport { RankingInfo, rankItem, compareItems } from '@tanstack/match-sorter-utils'\nimport { useSimpleTableContext } from './context/SimpleTableContext'\nimport { SimpleTableCellTemplate, SimpleTableCellTemplateProps } from './SimpleTableRowTemplate'\nimport { EmptyPlaceholder } from '@shared/components'\nimport { RowPinningState } from '@tanstack/react-table'\n\ndeclare module '@tanstack/react-table' {\n //add fuzzy filter to the filterFns\n interface FilterFns {\n fuzzy: FilterFn<unknown>\n }\n interface FilterMeta {\n itemRank: RankingInfo\n }\n\n interface TableMeta<TData extends RowData> {\n isExpandable?: boolean\n isLoading?: boolean\n children?: (\n props: SimpleTableCellTemplateProps,\n row: Row<TData>,\n table: Table<SimpleTableRow>,\n ) => JSX.Element\n [key: string]: any\n }\n}\n\n// Define a custom fuzzy filter function that will apply ranking info to rows (using match-sorter utils)\nconst fuzzyFilter: FilterFn<any> = (row, columnId, searchValue, addMeta) => {\n const cellValue = row.getValue(columnId)\n // convert non-string cell values to string\n let searchString =\n typeof cellValue === 'string'\n ? cellValue\n : Array.isArray(cellValue)\n ? cellValue.join(' ')\n : JSON.stringify(cellValue)\n\n // combine label and parents into a single string for searching if columnId is 'label'\n if (columnId === 'label') {\n searchString = [row.original.label, row.original.name, ...(row.original.parents || [])].join(\n ' ',\n )\n }\n\n // Rank the item\n const itemRank = rankItem(searchString, searchValue)\n\n // Store the itemRank info\n addMeta({\n itemRank,\n })\n\n // Return if the item should be filtered in/out\n return itemRank.passed\n}\n\n// Define a custom fuzzy sort function that will sort by rank if the row has ranking information\nconst fuzzySort: SortingFn<any> = (rowA, rowB, columnId) => {\n let dir = 0\n\n // Only sort by rank if the column has ranking information\n if (rowA.columnFiltersMeta[columnId]) {\n dir = compareItems(\n rowA.columnFiltersMeta[columnId]?.itemRank!,\n rowB.columnFiltersMeta[columnId]?.itemRank!,\n )\n }\n\n // Provide an alphanumeric fallback for when the item ranks are equal\n return dir === 0 ? sortingFns.alphanumeric(rowA, rowB, columnId) : dir\n}\n\nexport type RowItemData = {\n id: string\n name?: string | null\n label?: string | null\n subType?: string | null\n [key: string]: any\n}\n\nexport type SimpleTableRow = {\n id: string\n parentId?: string\n name: string\n label: string\n parents?: string[]\n icon?: string | null\n iconColor?: string\n iconFilled?: boolean\n img?: string | null\n imgShape?: 'square' | 'circle'\n startContent?: JSX.Element\n endContent?: JSX.Element\n subRows: SimpleTableRow[]\n data: RowItemData\n isDisabled?: boolean\n disabledMessage?: string\n inactive?: boolean\n}\n\nexport interface SimpleTableProps {\n data: SimpleTableRow[]\n isLoading: boolean\n error?: string\n isExpandable?: boolean // show expand/collapse icons\n isMultiSelect?: boolean // enable multi-select with shift+click and ctrl/cmd+click\n enableClickToDeselect?: boolean // allow deselecting a single selected row by clicking it again & clicking outside clears selection\n enableNonFolderIndent?: boolean // indent non-folder rows to align with folder rows\n forceUpdateTable?: any\n globalFilter?: string\n meta?: Record<string, any>\n rowHeight?: number // height of each row, used for virtual scrolling\n imgRatio?: number\n onScrollBottom?: () => void // callback fired when scrolled to the bottom of the table\n children?: (\n props: SimpleTableCellTemplateProps,\n row: Row<SimpleTableRow>,\n table: Table<SimpleTableRow>,\n ) => JSX.Element\n pt?: {\n cell?: Partial<SimpleTableCellTemplateProps>\n row?: Partial<React.HTMLAttributes<HTMLTableRowElement>>\n }\n}\n\n// Helper function to get row range for shift-selection\n// Operates on the provided list of rows (e.g., filtered and sorted rows)\nfunction getRowRange<TData extends RowData>(\n rows: Array<Row<TData>>,\n idA: string,\n idB: string,\n): Array<Row<TData>> {\n const range: Array<Row<TData>> = []\n // If idA and idB are the same, or one is not found, handle appropriately\n if (idA === idB) {\n const singleRow = rows.find((row) => row.id === idA)\n return singleRow ? [singleRow] : []\n }\n\n let indexA = -1\n let indexB = -1\n\n for (let i = 0; i < rows.length; i++) {\n if (rows[i].id === idA) indexA = i\n if (rows[i].id === idB) indexB = i\n if (indexA !== -1 && indexB !== -1) break\n }\n\n if (indexA === -1 || indexB === -1) return [] // One or both IDs not found\n\n const start = Math.min(indexA, indexB)\n const end = Math.max(indexA, indexB)\n\n for (let i = start; i <= end; i++) {\n range.push(rows[i])\n }\n return range\n}\n\nconst SimpleTable: FC<SimpleTableProps> = ({\n data = [],\n isLoading,\n error,\n isExpandable,\n isMultiSelect = true,\n enableClickToDeselect = true,\n enableNonFolderIndent = true,\n forceUpdateTable,\n globalFilter,\n meta,\n rowHeight,\n imgRatio,\n onScrollBottom,\n children,\n pt,\n}) => {\n const {\n rowSelection,\n expanded,\n setExpanded,\n onExpandedChange,\n onRowSelectionChange,\n rowPinning,\n onRowPinningChange,\n } = useSimpleTableContext()\n const lastSelectedIdRef = useRef<string | null>(null)\n const tableRef = useRef<Table<SimpleTableRow> | null>(null)\n\n // stable data reference\n const tableData = useMemo(() => {\n if (!isLoading) return data\n\n // show loading placeholders\n return Array.from({ length: 10 }, (_, i) => ({\n id: `placeholder-${i}`,\n name: `placeholder-${i}`,\n label: `placeholder-${i}`,\n icon: null,\n img: null,\n subRows: [],\n data: {\n id: `placeholder-${i}`,\n },\n }))\n }, [isLoading, data, forceUpdateTable])\n\n // Define the core selection logic using useCallback for stability\n const handleSelectionLogic = useCallback(\n (\n tableInstance: Table<SimpleTableRow>,\n rowId: string,\n isShift: boolean,\n isCtrlOrMeta: boolean,\n ) => {\n const currentId = rowId\n const allProcessableRows = tableInstance.getFilteredRowModel().flatRows\n const currentRow = allProcessableRows.find((r) => r.id === currentId)\n\n if (!currentRow) return\n\n // Prevent selection of disabled rows\n if (currentRow.original.isDisabled) return\n\n // If click-to-deselect is enabled and only one row is selected and it's the current row\n if (\n enableClickToDeselect &&\n !isShift &&\n !isCtrlOrMeta &&\n Object.keys(tableInstance.getState().rowSelection).length === 1 &&\n tableInstance.getState().rowSelection[currentId]\n ) {\n tableInstance.setRowSelection({})\n lastSelectedIdRef.current = null\n return\n }\n\n if (isMultiSelect && isShift && lastSelectedIdRef.current) {\n const lastId = lastSelectedIdRef.current\n const anchorRow = allProcessableRows.find((r) => r.id === lastId)\n\n if (!anchorRow) {\n tableInstance.setRowSelection({ [currentId]: true })\n } else {\n const rowsToToggle = getRowRange(allProcessableRows, currentId, lastId)\n const newSelection: RowSelectionState = {}\n rowsToToggle.forEach((r) => (newSelection[r.id] = true))\n tableInstance.setRowSelection(newSelection)\n }\n } else if (isMultiSelect && isCtrlOrMeta) {\n currentRow.toggleSelected()\n } else {\n tableInstance.setRowSelection({ [currentId]: true })\n }\n lastSelectedIdRef.current = currentId\n },\n [isMultiSelect, enableClickToDeselect],\n )\n\n // Callback for useRowKeydown's handleRowSelect prop\n // Uses tableRef to access the table instance, avoiding direct dependency on 'table' variable at definition time\n const handleRowSelectForKeydown = useCallback(\n (\n event: RowKeyboardEvent, // Use the specific keyboard event type from the hook\n selectedRow: Row<SimpleTableRow>,\n ) => {\n if (!tableRef.current) {\n console.warn('tableRef not yet available in handleRowSelectForKeydown')\n return\n }\n\n // Extract modifier keys from the event\n const isShiftKey = event.shiftKey\n const isCtrlKey = event.ctrlKey || event.metaKey\n\n handleSelectionLogic(\n tableRef.current, // Pass the main table instance\n selectedRow.id,\n isShiftKey,\n isCtrlKey,\n )\n },\n [handleSelectionLogic], // Depends only on handleSelectionLogic\n )\n\n // Handle arrow key navigation\n const handleArrowNavigation = useCallback(\n (direction: 'up' | 'down', currentRow: Row<SimpleTableRow>, event: RowKeyboardEvent) => {\n if (!tableRef.current) return\n\n // Use the row model which respects expanded state, not filtered model\n const visibleRows = tableRef.current.getRowModel().rows\n const currentIndex = visibleRows.findIndex((r) => r.id === currentRow.id)\n\n if (currentIndex === -1) return\n\n let nextIndex = direction === 'down' ? currentIndex + 1 : currentIndex - 1\n\n // Check bounds\n if (nextIndex < 0 || nextIndex >= visibleRows.length) return\n\n // Skip disabled rows\n while (nextIndex >= 0 && nextIndex < visibleRows.length) {\n const nextRow = visibleRows[nextIndex]\n if (!nextRow.original.isDisabled) {\n // Found a valid row\n // Select the next row\n handleSelectionLogic(\n tableRef.current,\n nextRow.id,\n event.shiftKey,\n event.ctrlKey || event.metaKey,\n )\n\n // Focus the next row's cell\n requestAnimationFrame(() => {\n const nextRowElement = document.getElementById(nextRow.id)\n const nextCell = nextRowElement?.querySelector('[tabindex=\"0\"]') as HTMLElement\n if (nextCell) {\n nextCell.focus()\n nextCell.scrollIntoView({ block: 'nearest', behavior: 'smooth' })\n }\n })\n return\n }\n // Move to next row if current is disabled\n nextIndex = direction === 'down' ? nextIndex + 1 : nextIndex - 1\n }\n },\n [handleSelectionLogic],\n )\n\n const { handleRowKeyDown } = useRowKeydown<SimpleTableRow>({\n handleRowSelect: handleRowSelectForKeydown,\n handleArrowNavigation,\n })\n\n const columns = useMemo<ColumnDef<SimpleTableRow>[]>(\n () => [\n {\n accessorKey: 'label',\n header: undefined,\n filterFn: 'fuzzy',\n sortingFn: fuzzySort, //sort by fuzzy rank (falls back to alphanumeric)\n cell: ({ row, getValue, table: cellTableInstance }) => {\n const cellMeta = cellTableInstance.options.meta\n\n const handleCellClick = (event: ReactMouseEvent<HTMLElement, MouseEvent>) => {\n // Prevent row selection if clicking on an interactive element within the cell\n if (\n event.target instanceof HTMLInputElement ||\n event.target instanceof HTMLButtonElement ||\n event.target instanceof HTMLTextAreaElement ||\n event.target instanceof HTMLSelectElement ||\n event.target instanceof HTMLAnchorElement ||\n (event.target as HTMLElement).closest('button, a, input, textarea, select')\n ) {\n return\n }\n handleSelectionLogic(\n cellTableInstance, // Pass the cell's table instance\n row.id,\n event.shiftKey,\n event.ctrlKey || event.metaKey,\n )\n }\n\n const props: SimpleTableCellTemplateProps & {\n onClick?: (event: ReactMouseEvent<HTMLElement, MouseEvent>) => void\n } = {\n className: clsx({\n selected: row.getIsSelected(),\n loading: cellMeta?.isLoading,\n disabled: row.original.isDisabled, // you can't select disabled rows\n inactive: row.original.inactive, // false: archived items but still selectable\n }),\n onKeyDown: (e) => {\n if (e.target instanceof HTMLInputElement) return\n // Corrected typo: handleRowKeydown -> handleRowKeyDown\n handleRowKeyDown(e, row)\n },\n depth: row.depth,\n tabIndex: 0,\n value: getValue<string>(),\n parents: row.original.parents,\n icon: row.original.icon || undefined,\n iconColor: row.original.iconColor,\n iconFilled: row.original.iconFilled,\n img: row.original.img,\n imgShape: row.original.imgShape,\n imgRatio: imgRatio,\n isRowExpandable: row.getCanExpand(),\n enableNonFolderIndent,\n isRowExpanded: row.getIsExpanded(),\n isTableExpandable: cellMeta?.isExpandable,\n onExpandClick: row.getToggleExpandedHandler(),\n startContent: row.original.startContent,\n endContent: row.original.endContent,\n isDisabled: row.original.isDisabled,\n disabledMessage: row.original.disabledMessage,\n ...pt?.cell,\n onClick: handleCellClick, // Added onClick handler\n }\n\n // Use children function if provided, otherwise default to SimpleTableCellTemplate\n return cellMeta?.children ? (\n cellMeta.children(props, row, cellTableInstance)\n ) : (\n <SimpleTableCellTemplate {...props} {...pt?.cell} />\n )\n },\n },\n ],\n [\n forceUpdateTable,\n handleSelectionLogic,\n handleRowKeyDown,\n enableClickToDeselect,\n enableNonFolderIndent,\n imgRatio,\n ], // include enableClickToDeselect for completeness\n )\n\n const handleRowSelectionChangeCallback: OnChangeFn<RowSelectionState> = useCallback(\n (updater) => {\n onRowSelectionChange(functionalUpdate(updater, rowSelection))\n },\n [onRowSelectionChange],\n )\n\n const handleRowPinningChangeCallback: OnChangeFn<RowPinningState> = useCallback(\n (updater) => {\n onRowPinningChange?.(functionalUpdate(updater, rowPinning || {}))\n },\n [onRowPinningChange],\n )\n\n const handleExpandedChange = useCallback(\n (updater: any) => {\n setExpanded?.((old) => {\n const newExpanded = updater instanceof Function ? updater(old) : updater\n onExpandedChange?.(newExpanded)\n return newExpanded\n })\n },\n [setExpanded],\n )\n\n const table = useReactTable({\n data: tableData,\n columns,\n state: {\n expanded,\n rowSelection,\n globalFilter,\n rowPinning,\n },\n onRowSelectionChange: handleRowSelectionChangeCallback,\n onRowPinningChange: handleRowPinningChangeCallback,\n filterFns: {\n fuzzy: fuzzyFilter,\n },\n globalFilterFn: 'fuzzy',\n enableRowSelection: true, //enable row selection for all rows\n enableRowPinning: !!onRowPinningChange,\n getRowId: (row) => row.id,\n enableSubRowSelection: false, //disable sub row selection\n onExpandedChange: handleExpandedChange,\n getSubRows: (row) => row.subRows,\n getCoreRowModel: getCoreRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n filterFromLeafRows: true,\n // debugTable: true,\n meta: {\n isExpandable: !!isExpandable,\n isLoading: isLoading,\n children: children,\n ...meta,\n },\n })\n\n // Update tableRef whenever the table instance changes.\n // This ensures handleRowSelectForKeydown uses the current table instance.\n useEffect(() => {\n tableRef.current = table\n }, [table])\n\n const { rows } = table.getRowModel()\n\n //The virtualizer needs to know the scrollable container element\n const tableContainerRef = useRef<HTMLDivElement>(null)\n\n const rowVirtualizer = useVirtualizer({\n count: rows.length,\n estimateSize: () => rowHeight || 34, //estimate row height for accurate scrollbar dragging\n getScrollElement: () => tableContainerRef.current,\n //measure dynamic row height, except in firefox because it measures table border height incorrectly\n measureElement: rowHeight\n ? () => rowHeight\n : typeof window !== 'undefined' && navigator.userAgent.indexOf('Firefox') === -1\n ? (element) => element?.getBoundingClientRect().height\n : undefined,\n overscan: 5,\n })\n\n // Memoize the ref callback to prevent infinite re-renders\n const measureElementRef = useCallback(\n (node: HTMLElement | null) => {\n if (node) {\n rowVirtualizer.measureElement(node)\n }\n },\n [rowVirtualizer],\n )\n\n // Handle scroll to bottom detection\n const handleScroll = useCallback(\n (event: React.UIEvent<HTMLDivElement>) => {\n if (!onScrollBottom) return\n\n const target = event.currentTarget\n const { scrollTop, scrollHeight, clientHeight } = target\n\n // Check if we're near the bottom (within 100px)\n const isNearBottom = scrollHeight - scrollTop - clientHeight < 100\n\n if (isNearBottom && !isLoading) {\n onScrollBottom()\n }\n },\n [onScrollBottom, isLoading],\n )\n\n const handleContainerClick = (e: React.MouseEvent<HTMLDivElement>) => {\n // if the click is outside of any row, clear selection\n if (enableClickToDeselect && !(e.target as HTMLElement).closest('tr')) {\n table.setRowSelection({})\n lastSelectedIdRef.current = null\n }\n }\n\n return (\n <Styled.TableContainer\n ref={tableContainerRef}\n className={clsx({ isLoading })}\n onScroll={handleScroll}\n onClick={handleContainerClick}\n >\n {!error && (\n <table>\n <tbody\n style={{\n height: `${rowVirtualizer?.getTotalSize()}px`, //tells scrollbar how big the table is\n }}\n >\n {rowVirtualizer?.getVirtualItems().map((virtualRow) => {\n const row = rows[virtualRow.index] as Row<SimpleTableRow>\n return (\n <tr\n data-index={virtualRow.index} //needed for dynamic row height measurement\n ref={measureElementRef} //measure dynamic row height\n key={row.id}\n id={row.id}\n {...pt?.row}\n style={{\n transform: `translateY(${virtualRow.start}px)`, //this should always be a `style` as it changes on scroll\n ...pt?.row?.style, // custom styles to be passed\n }}\n >\n {row.getVisibleCells().map((cell) => {\n return (\n <td key={cell.id}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </td>\n )\n })}\n </tr>\n )\n })}\n </tbody>\n </table>\n )}\n {!!error && <EmptyPlaceholder error={error} />}\n </Styled.TableContainer>\n )\n}\n\nexport default SimpleTable\n"],"names":["fuzzyFilter","row","columnId","searchValue","addMeta","cellValue","searchString","itemRank","rankItem","fuzzySort","rowA","rowB","dir","compareItems","sortingFns","getRowRange","rows","idA","idB","range","singleRow","indexA","indexB","i","start","end","SimpleTable","data","isLoading","error","isExpandable","isMultiSelect","enableClickToDeselect","enableNonFolderIndent","forceUpdateTable","globalFilter","meta","rowHeight","imgRatio","onScrollBottom","children","pt","rowSelection","expanded","setExpanded","onExpandedChange","onRowSelectionChange","rowPinning","onRowPinningChange","useSimpleTableContext","lastSelectedIdRef","useRef","tableRef","tableData","useMemo","_","handleSelectionLogic","useCallback","tableInstance","rowId","isShift","isCtrlOrMeta","currentId","allProcessableRows","currentRow","r","lastId","rowsToToggle","newSelection","handleRowSelectForKeydown","event","selectedRow","isShiftKey","isCtrlKey","handleArrowNavigation","direction","visibleRows","currentIndex","nextIndex","nextRow","nextCell","handleRowKeyDown","useRowKeydown","columns","getValue","cellTableInstance","cellMeta","handleCellClick","props","clsx","e","jsx","SimpleTableCellTemplate","handleRowSelectionChangeCallback","updater","functionalUpdate","handleRowPinningChangeCallback","handleExpandedChange","old","newExpanded","table","useReactTable","getCoreRowModel","getFilteredRowModel","getExpandedRowModel","useEffect","tableContainerRef","rowVirtualizer","useVirtualizer","element","measureElementRef","node","handleScroll","target","scrollTop","scrollHeight","clientHeight","handleContainerClick","jsxs","Styled.TableContainer","virtualRow","cell","flexRender","EmptyPlaceholder"],"mappings":"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"}
1
+ {"version":3,"file":"SimpleTable.cjs.js","sources":["../../../../../src/containers/SimpleTable/SimpleTable.tsx"],"sourcesContent":["import { FC, useMemo, useRef, MouseEvent as ReactMouseEvent, useCallback, useEffect } from 'react'\nimport * as Styled from './SimpleTable.styled'\nimport {\n useReactTable,\n getCoreRowModel,\n getFilteredRowModel,\n getExpandedRowModel,\n ColumnDef,\n flexRender,\n Row,\n FilterFn,\n SortingFn,\n sortingFns,\n RowData,\n Table,\n OnChangeFn,\n RowSelectionState,\n functionalUpdate,\n} from '@tanstack/react-table'\nimport { useVirtualizer } from '@tanstack/react-virtual'\n\nimport clsx from 'clsx'\nimport useRowKeydown, { RowKeyboardEvent } from './hooks/useRowKeydown'\n\nimport { RankingInfo, rankItem, compareItems } from '@tanstack/match-sorter-utils'\nimport { useSimpleTableContext } from './context/SimpleTableContext'\nimport { SimpleTableCellTemplate, SimpleTableCellTemplateProps } from './SimpleTableRowTemplate'\nimport { EmptyPlaceholder } from '@shared/components'\nimport { RowPinningState } from '@tanstack/react-table'\n\ndeclare module '@tanstack/react-table' {\n //add fuzzy filter to the filterFns\n interface FilterFns {\n fuzzy: FilterFn<unknown>\n }\n interface FilterMeta {\n itemRank: RankingInfo\n }\n\n interface TableMeta<TData extends RowData> {\n isExpandable?: boolean\n isLoading?: boolean\n children?: (\n props: SimpleTableCellTemplateProps,\n row: Row<TData>,\n table: Table<SimpleTableRow>,\n ) => JSX.Element\n [key: string]: any\n }\n}\n\n// Define a custom fuzzy filter function that will apply ranking info to rows (using match-sorter utils)\nconst fuzzyFilter: FilterFn<any> = (row, columnId, searchValue, addMeta) => {\n const cellValue = row.getValue(columnId)\n // convert non-string cell values to string\n let searchString =\n typeof cellValue === 'string'\n ? cellValue\n : Array.isArray(cellValue)\n ? cellValue.join(' ')\n : JSON.stringify(cellValue)\n\n // combine label and parents into a single string for searching if columnId is 'label'\n if (columnId === 'label') {\n searchString = [row.original.label, row.original.name, ...(row.original.parents || [])].join(\n ' ',\n )\n }\n\n // Rank the item\n const itemRank = rankItem(searchString, searchValue)\n\n // Store the itemRank info\n addMeta({\n itemRank,\n })\n\n // Return if the item should be filtered in/out\n return itemRank.passed\n}\n\n// Define a custom fuzzy sort function that will sort by rank if the row has ranking information\nconst fuzzySort: SortingFn<any> = (rowA, rowB, columnId) => {\n let dir = 0\n\n // Only sort by rank if the column has ranking information\n if (rowA.columnFiltersMeta[columnId]) {\n dir = compareItems(\n rowA.columnFiltersMeta[columnId]?.itemRank!,\n rowB.columnFiltersMeta[columnId]?.itemRank!,\n )\n }\n\n // Provide an alphanumeric fallback for when the item ranks are equal\n return dir === 0 ? sortingFns.alphanumeric(rowA, rowB, columnId) : dir\n}\n\nexport type RowItemData = {\n id: string\n name?: string | null\n label?: string | null\n subType?: string | null\n [key: string]: any\n}\n\nexport type SimpleTableRow = {\n id: string\n parentId?: string\n name: string\n label: string\n parents?: string[]\n icon?: string | null\n iconColor?: string\n iconFilled?: boolean\n img?: string | null\n imgShape?: 'square' | 'circle'\n startContent?: JSX.Element\n endContent?: JSX.Element\n subRows: SimpleTableRow[]\n data: RowItemData\n isDisabled?: boolean\n disabledMessage?: string\n inactive?: boolean\n}\n\nexport interface SimpleTableProps {\n data: SimpleTableRow[]\n isLoading: boolean\n error?: string\n isExpandable?: boolean // show expand/collapse icons\n isMultiSelect?: boolean // enable multi-select with shift+click and ctrl/cmd+click\n enableClickToDeselect?: boolean // allow deselecting a single selected row by clicking it again & clicking outside clears selection\n enableNonFolderIndent?: boolean // indent non-folder rows to align with folder rows\n forceUpdateTable?: any\n globalFilter?: string\n meta?: Record<string, any>\n rowHeight?: number // height of each row, used for virtual scrolling\n imgRatio?: number\n onScrollBottom?: () => void // callback fired when scrolled to the bottom of the table\n children?: (\n props: SimpleTableCellTemplateProps,\n row: Row<SimpleTableRow>,\n table: Table<SimpleTableRow>,\n ) => JSX.Element\n pt?: {\n cell?: Partial<SimpleTableCellTemplateProps>\n row?: Partial<React.HTMLAttributes<HTMLTableRowElement>>\n }\n}\n\n// Helper function to get row range for shift-selection\n// Operates on the provided list of rows (e.g., filtered and sorted rows)\nfunction getRowRange<TData extends RowData>(\n rows: Array<Row<TData>>,\n idA: string,\n idB: string,\n): Array<Row<TData>> {\n const range: Array<Row<TData>> = []\n // If idA and idB are the same, or one is not found, handle appropriately\n if (idA === idB) {\n const singleRow = rows.find((row) => row.id === idA)\n return singleRow ? [singleRow] : []\n }\n\n let indexA = -1\n let indexB = -1\n\n for (let i = 0; i < rows.length; i++) {\n if (rows[i].id === idA) indexA = i\n if (rows[i].id === idB) indexB = i\n if (indexA !== -1 && indexB !== -1) break\n }\n\n if (indexA === -1 || indexB === -1) return [] // One or both IDs not found\n\n const start = Math.min(indexA, indexB)\n const end = Math.max(indexA, indexB)\n\n for (let i = start; i <= end; i++) {\n range.push(rows[i])\n }\n return range\n}\n\nconst SimpleTable: FC<SimpleTableProps> = ({\n data = [],\n isLoading,\n error,\n isExpandable,\n isMultiSelect = true,\n enableClickToDeselect = true,\n enableNonFolderIndent = true,\n forceUpdateTable,\n globalFilter,\n meta,\n rowHeight,\n imgRatio,\n onScrollBottom,\n children,\n pt,\n}) => {\n const {\n rowSelection,\n expanded,\n setExpanded,\n onExpandedChange,\n onRowSelectionChange,\n rowPinning,\n onRowPinningChange,\n } = useSimpleTableContext()\n const lastSelectedIdRef = useRef<string | null>(null)\n const tableRef = useRef<Table<SimpleTableRow> | null>(null)\n\n // stable data reference\n const tableData = useMemo(() => {\n if (!isLoading) return data\n\n // show loading placeholders\n return Array.from({ length: 10 }, (_, i) => ({\n id: `placeholder-${i}`,\n name: `placeholder-${i}`,\n label: `placeholder-${i}`,\n icon: null,\n img: null,\n subRows: [],\n data: {\n id: `placeholder-${i}`,\n },\n }))\n }, [isLoading, data, forceUpdateTable])\n\n // Define the core selection logic using useCallback for stability\n const handleSelectionLogic = useCallback(\n (\n tableInstance: Table<SimpleTableRow>,\n rowId: string,\n isShift: boolean,\n isCtrlOrMeta: boolean,\n ) => {\n const currentId = rowId\n const allProcessableRows = tableInstance.getFilteredRowModel().flatRows\n const currentRow = allProcessableRows.find((r) => r.id === currentId)\n\n if (!currentRow) return\n\n // Prevent selection of disabled rows\n if (currentRow.original.isDisabled) return\n\n // If click-to-deselect is enabled and only one row is selected and it's the current row\n if (\n enableClickToDeselect &&\n !isShift &&\n !isCtrlOrMeta &&\n Object.keys(tableInstance.getState().rowSelection).length === 1 &&\n tableInstance.getState().rowSelection[currentId]\n ) {\n tableInstance.setRowSelection({})\n lastSelectedIdRef.current = null\n return\n }\n\n if (isMultiSelect && isShift && lastSelectedIdRef.current) {\n const lastId = lastSelectedIdRef.current\n const anchorRow = allProcessableRows.find((r) => r.id === lastId)\n\n if (!anchorRow) {\n tableInstance.setRowSelection({ [currentId]: true })\n } else {\n const rowsToToggle = getRowRange(allProcessableRows, currentId, lastId)\n const newSelection: RowSelectionState = {}\n rowsToToggle.forEach((r) => (newSelection[r.id] = true))\n tableInstance.setRowSelection(newSelection)\n }\n } else if (isMultiSelect && isCtrlOrMeta) {\n currentRow.toggleSelected()\n } else {\n tableInstance.setRowSelection({ [currentId]: true })\n }\n lastSelectedIdRef.current = currentId\n },\n [isMultiSelect, enableClickToDeselect],\n )\n\n // Callback for useRowKeydown's handleRowSelect prop\n // Uses tableRef to access the table instance, avoiding direct dependency on 'table' variable at definition time\n const handleRowSelectForKeydown = useCallback(\n (\n event: RowKeyboardEvent, // Use the specific keyboard event type from the hook\n selectedRow: Row<SimpleTableRow>,\n ) => {\n if (!tableRef.current) {\n console.warn('tableRef not yet available in handleRowSelectForKeydown')\n return\n }\n\n // Extract modifier keys from the event\n const isShiftKey = event.shiftKey\n const isCtrlKey = event.ctrlKey || event.metaKey\n\n handleSelectionLogic(\n tableRef.current, // Pass the main table instance\n selectedRow.id,\n isShiftKey,\n isCtrlKey,\n )\n },\n [handleSelectionLogic], // Depends only on handleSelectionLogic\n )\n\n // Handle arrow key navigation\n const handleArrowNavigation = useCallback(\n (direction: 'up' | 'down', currentRow: Row<SimpleTableRow>, event: RowKeyboardEvent) => {\n if (!tableRef.current) return\n\n // Use the row model which respects expanded state, not filtered model\n const visibleRows = tableRef.current.getRowModel().rows\n const currentIndex = visibleRows.findIndex((r) => r.id === currentRow.id)\n\n if (currentIndex === -1) return\n\n let nextIndex = direction === 'down' ? currentIndex + 1 : currentIndex - 1\n\n // Check bounds\n if (nextIndex < 0 || nextIndex >= visibleRows.length) return\n\n // Skip disabled rows\n while (nextIndex >= 0 && nextIndex < visibleRows.length) {\n const nextRow = visibleRows[nextIndex]\n if (!nextRow.original.isDisabled) {\n // Found a valid row\n // Select the next row\n handleSelectionLogic(\n tableRef.current,\n nextRow.id,\n event.shiftKey,\n event.ctrlKey || event.metaKey,\n )\n\n // Focus the next row's cell\n requestAnimationFrame(() => {\n const nextRowElement = document.getElementById(nextRow.id)\n const nextCell = nextRowElement?.querySelector('[tabindex=\"0\"]') as HTMLElement\n if (nextCell) {\n nextCell.focus()\n nextCell.scrollIntoView({ block: 'nearest', behavior: 'smooth' })\n }\n })\n return\n }\n // Move to next row if current is disabled\n nextIndex = direction === 'down' ? nextIndex + 1 : nextIndex - 1\n }\n },\n [handleSelectionLogic],\n )\n\n const { handleRowKeyDown } = useRowKeydown<SimpleTableRow>({\n handleRowSelect: handleRowSelectForKeydown,\n handleArrowNavigation,\n })\n\n const columns = useMemo<ColumnDef<SimpleTableRow>[]>(\n () => [\n {\n accessorKey: 'label',\n header: undefined,\n filterFn: 'fuzzy',\n sortingFn: fuzzySort, //sort by fuzzy rank (falls back to alphanumeric)\n cell: ({ row, getValue, table: cellTableInstance }) => {\n const cellMeta = cellTableInstance.options.meta\n\n const handleCellClick = (event: ReactMouseEvent<HTMLElement, MouseEvent>) => {\n // Prevent row selection if clicking on an interactive element within the cell\n if (\n event.target instanceof HTMLInputElement ||\n event.target instanceof HTMLButtonElement ||\n event.target instanceof HTMLTextAreaElement ||\n event.target instanceof HTMLSelectElement ||\n event.target instanceof HTMLAnchorElement ||\n (event.target as HTMLElement).closest('button, a, input, textarea, select')\n ) {\n return\n }\n handleSelectionLogic(\n cellTableInstance, // Pass the cell's table instance\n row.id,\n event.shiftKey,\n event.ctrlKey || event.metaKey,\n )\n }\n\n const props: SimpleTableCellTemplateProps & {\n onClick?: (event: ReactMouseEvent<HTMLElement, MouseEvent>) => void\n } = {\n className: clsx({\n selected: row.getIsSelected(),\n loading: cellMeta?.isLoading,\n disabled: row.original.isDisabled, // you can't select disabled rows\n inactive: row.original.inactive, // false: archived items but still selectable\n }),\n onKeyDown: (e) => {\n if (e.target instanceof HTMLInputElement) return\n // Corrected typo: handleRowKeydown -> handleRowKeyDown\n handleRowKeyDown(e, row)\n },\n depth: row.depth,\n tabIndex: 0,\n value: getValue<string>(),\n parents: row.original.parents,\n icon: row.original.icon || undefined,\n iconColor: row.original.iconColor,\n iconFilled: row.original.iconFilled,\n img: row.original.img,\n imgShape: row.original.imgShape,\n imgRatio: imgRatio,\n isRowExpandable: row.getCanExpand(),\n enableNonFolderIndent,\n isRowExpanded: row.getIsExpanded(),\n isTableExpandable: cellMeta?.isExpandable,\n onExpandClick: row.getToggleExpandedHandler(),\n startContent: row.original.startContent,\n endContent: row.original.endContent,\n isDisabled: row.original.isDisabled,\n disabledMessage: row.original.disabledMessage,\n ...pt?.cell,\n onClick: handleCellClick, // Added onClick handler\n }\n\n // Use children function if provided, otherwise default to SimpleTableCellTemplate\n return cellMeta?.children ? (\n cellMeta.children(props, row, cellTableInstance)\n ) : (\n <SimpleTableCellTemplate {...props} {...pt?.cell} />\n )\n },\n },\n ],\n [\n forceUpdateTable,\n handleSelectionLogic,\n handleRowKeyDown,\n enableClickToDeselect,\n enableNonFolderIndent,\n imgRatio,\n ], // include enableClickToDeselect for completeness\n )\n\n const handleRowSelectionChangeCallback: OnChangeFn<RowSelectionState> = useCallback(\n (updater) => {\n onRowSelectionChange(functionalUpdate(updater, rowSelection))\n },\n [onRowSelectionChange],\n )\n\n const handleRowPinningChangeCallback: OnChangeFn<RowPinningState> = useCallback(\n (updater) => {\n onRowPinningChange?.(functionalUpdate(updater, rowPinning || {}))\n },\n [onRowPinningChange],\n )\n\n const handleExpandedChange = useCallback(\n (updater: any) => {\n setExpanded?.((old) => {\n const newExpanded = updater instanceof Function ? updater(old) : updater\n onExpandedChange?.(newExpanded)\n return newExpanded\n })\n },\n [setExpanded],\n )\n\n const table = useReactTable({\n data: tableData,\n columns,\n state: {\n expanded,\n rowSelection,\n globalFilter,\n rowPinning,\n },\n onRowSelectionChange: handleRowSelectionChangeCallback,\n onRowPinningChange: handleRowPinningChangeCallback,\n filterFns: {\n fuzzy: fuzzyFilter,\n },\n globalFilterFn: 'fuzzy',\n enableRowSelection: true, //enable row selection for all rows\n enableRowPinning: !!onRowPinningChange,\n getRowId: (row) => row.id,\n enableSubRowSelection: false, //disable sub row selection\n onExpandedChange: handleExpandedChange,\n getSubRows: (row) => row.subRows,\n getCoreRowModel: getCoreRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n filterFromLeafRows: true,\n // debugTable: true,\n meta: {\n isExpandable: !!isExpandable,\n isLoading: isLoading,\n children: children,\n ...meta,\n },\n })\n\n // Update tableRef whenever the table instance changes.\n // This ensures handleRowSelectForKeydown uses the current table instance.\n useEffect(() => {\n tableRef.current = table\n }, [table])\n\n const { rows } = table.getRowModel()\n\n //The virtualizer needs to know the scrollable container element\n const tableContainerRef = useRef<HTMLDivElement>(null)\n\n const rowVirtualizer = useVirtualizer({\n count: rows.length,\n estimateSize: () => rowHeight || 34, //estimate row height for accurate scrollbar dragging\n getScrollElement: () => tableContainerRef.current,\n //measure dynamic row height, except in firefox because it measures table border height incorrectly\n measureElement: rowHeight\n ? () => rowHeight\n : typeof window !== 'undefined' && navigator.userAgent.indexOf('Firefox') === -1\n ? (element) => element?.getBoundingClientRect().height\n : undefined,\n overscan: 5,\n })\n\n // Memoize the ref callback to prevent infinite re-renders\n const measureElementRef = useCallback(\n (node: HTMLElement | null) => {\n if (node) {\n rowVirtualizer.measureElement(node)\n }\n },\n [rowVirtualizer],\n )\n\n // Handle scroll to bottom detection\n const handleScroll = useCallback(\n (event: React.UIEvent<HTMLDivElement>) => {\n if (!onScrollBottom) return\n\n const target = event.currentTarget\n const { scrollTop, scrollHeight, clientHeight } = target\n\n // Check if we're near the bottom (within 100px)\n const isNearBottom = scrollHeight - scrollTop - clientHeight < 100\n\n if (isNearBottom && !isLoading) {\n onScrollBottom()\n }\n },\n [onScrollBottom, isLoading],\n )\n\n const handleContainerClick = (e: React.MouseEvent<HTMLDivElement>) => {\n // if the click is outside of any row, clear selection\n if (enableClickToDeselect && !(e.target as HTMLElement).closest('tr')) {\n table.setRowSelection({})\n lastSelectedIdRef.current = null\n }\n }\n\n return (\n <Styled.TableContainer\n ref={tableContainerRef}\n className={clsx({ isLoading })}\n onScroll={handleScroll}\n onClick={handleContainerClick}\n >\n {!error && (\n <table>\n <tbody\n style={{\n height: `${rowVirtualizer?.getTotalSize()}px`, //tells scrollbar how big the table is\n }}\n >\n {rowVirtualizer?.getVirtualItems().map((virtualRow) => {\n const row = rows[virtualRow.index] as Row<SimpleTableRow>\n return (\n <tr\n data-index={virtualRow.index} //needed for dynamic row height measurement\n ref={measureElementRef} //measure dynamic row height\n key={row.id}\n id={row.id}\n {...pt?.row}\n style={{\n transform: `translateY(${virtualRow.start}px)`, //this should always be a `style` as it changes on scroll\n ...pt?.row?.style, // custom styles to be passed\n }}\n >\n {row.getVisibleCells().map((cell) => {\n return (\n <td key={cell.id}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </td>\n )\n })}\n </tr>\n )\n })}\n </tbody>\n </table>\n )}\n {!!error && <EmptyPlaceholder error={error} />}\n </Styled.TableContainer>\n )\n}\n\nexport default SimpleTable\n"],"names":["fuzzyFilter","row","columnId","searchValue","addMeta","cellValue","searchString","itemRank","rankItem","fuzzySort","rowA","rowB","dir","compareItems","sortingFns","getRowRange","rows","idA","idB","range","singleRow","indexA","indexB","i","start","end","SimpleTable","data","isLoading","error","isExpandable","isMultiSelect","enableClickToDeselect","enableNonFolderIndent","forceUpdateTable","globalFilter","meta","rowHeight","imgRatio","onScrollBottom","children","pt","rowSelection","expanded","setExpanded","onExpandedChange","onRowSelectionChange","rowPinning","onRowPinningChange","useSimpleTableContext","lastSelectedIdRef","useRef","tableRef","tableData","useMemo","_","handleSelectionLogic","useCallback","tableInstance","rowId","isShift","isCtrlOrMeta","currentId","allProcessableRows","currentRow","r","lastId","rowsToToggle","newSelection","handleRowSelectForKeydown","event","selectedRow","isShiftKey","isCtrlKey","handleArrowNavigation","direction","visibleRows","currentIndex","nextIndex","nextRow","nextCell","handleRowKeyDown","useRowKeydown","columns","getValue","cellTableInstance","cellMeta","handleCellClick","props","clsx","e","jsx","SimpleTableCellTemplate","handleRowSelectionChangeCallback","updater","functionalUpdate","handleRowPinningChangeCallback","handleExpandedChange","old","newExpanded","table","useReactTable","getCoreRowModel","getFilteredRowModel","getExpandedRowModel","useEffect","tableContainerRef","rowVirtualizer","useVirtualizer","element","measureElementRef","node","handleScroll","target","scrollTop","scrollHeight","clientHeight","handleContainerClick","jsxs","Styled.TableContainer","virtualRow","cell","flexRender","EmptyPlaceholder"],"mappings":"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"}