@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.
- package/dist/DetailsPanel.cjs.js +1 -1
- package/dist/DetailsPanel.es.js +72 -65
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +104 -102
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +113 -4
- package/dist/Slicer.es.js.map +1 -1
- package/dist/Views.cjs.js.map +1 -1
- package/dist/Views.es.js.map +1 -1
- package/dist/_virtual/index.cjs4.js +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.es4.js +5 -2
- package/dist/_virtual/index.es4.js.map +1 -1
- package/dist/_virtual/index.es5.js +2 -5
- package/dist/_virtual/index.es5.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +141 -139
- package/dist/components.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +61 -54
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js +5 -5
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js.map +1 -1
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js +313 -305
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js.map +1 -1
- package/dist/node_modules/remove-accents/index.cjs.js +1 -1
- package/dist/node_modules/remove-accents/index.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +73 -68
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
- package/dist/shared/src/api/queries/views/updateViews.cjs.js +1 -1
- package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/views/updateViews.es.js +1 -1
- package/dist/shared/src/api/queries/views/updateViews.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +57 -50
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +45 -38
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +47 -40
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.es.js +21 -21
- package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +49 -42
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +44 -37
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +48 -41
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +2 -0
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -0
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +279 -0
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -0
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.es.js +48 -41
- package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +64 -57
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +54 -47
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +53 -46
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +52 -45
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +2 -2
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +56 -49
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +53 -46
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +54 -47
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +70 -63
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +49 -42
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +68 -61
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +93 -86
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +47 -40
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +46 -43
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +49 -46
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +49 -46
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +49 -46
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +50 -42
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +55 -48
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +70 -63
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +47 -40
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +468 -448
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +96 -89
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +47 -40
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +57 -50
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +54 -47
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +63 -68
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +49 -41
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +51 -44
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +48 -41
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +55 -48
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +54 -47
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +51 -44
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +51 -44
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +51 -44
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +54 -47
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +46 -39
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +46 -39
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +48 -41
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +62 -55
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.es.js +11 -6
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +16 -13
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +342 -116
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js +47 -40
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js +7 -7
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +69 -62
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +51 -44
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js +29 -33
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +118 -111
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +49 -46
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/Slicer.es.js +82 -0
- package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +27 -0
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +71 -0
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +10 -0
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +294 -0
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +215 -0
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useFiltersWithHierarchy.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useFiltersWithHierarchy.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +25 -0
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +28 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +304 -0
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +99 -0
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.es.js.map +1 -0
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +95 -88
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +2 -2
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +32 -31
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js +125 -121
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +47 -49
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +6 -5
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
- package/dist/shared/src/context/AddonContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonContext.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.es.js +51 -44
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
- package/dist/shared/src/hooks/useLoadModules.cjs.js +1 -1
- package/dist/shared/src/hooks/useLoadModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useLoadModules.es.js +7 -7
- package/dist/shared/src/hooks/useLoadModules.es.js.map +1 -1
- package/dist/shared/src/util/columnConfigConverter.cjs.js +1 -1
- package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -1
- package/dist/shared/src/util/columnConfigConverter.es.js +69 -46
- package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -1
- package/dist/shared/src/util/getGroupByDataType.cjs.js +1 -1
- package/dist/shared/src/util/getGroupByDataType.cjs.js.map +1 -1
- package/dist/shared/src/util/getGroupByDataType.es.js +4 -4
- package/dist/shared/src/util/getGroupByDataType.es.js.map +1 -1
- package/dist/types/api/queries/activities/getActivities.d.ts +1 -1
- package/dist/types/api/queries/entityLists/getLists.d.ts +183 -183
- package/dist/types/api/queries/links/getLinks.d.ts +1 -1
- package/dist/types/api/queries/overview/getOverview.d.ts +1 -1
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +1 -0
- package/dist/types/api/queries/versions/getVersionsProducts.d.ts +2 -2
- package/dist/types/components/RemotePage/RemotePageWrapper.d.ts +28 -0
- package/dist/types/components/RemotePage/index.d.ts +1 -0
- package/dist/types/components/index.d.ts +31 -30
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +0 -2
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +1 -4
- package/dist/types/containers/ProjectTreeTable/utils/restrictedEntity.d.ts +3 -3
- package/dist/types/containers/Slicer/components/Slicer.d.ts +9 -0
- package/dist/types/containers/Slicer/components/SlicerDropdownFallback.d.ts +7 -0
- package/dist/types/containers/Slicer/components/SlicerSearch.d.ts +6 -0
- package/dist/types/containers/Slicer/context/SlicerContext.d.ts +48 -0
- package/dist/types/containers/Slicer/hooks/index.d.ts +5 -0
- package/dist/types/containers/Slicer/{useFiltersWithHierarchy.d.ts → hooks/useFiltersWithHierarchy.d.ts} +1 -1
- package/dist/types/containers/Slicer/hooks/useProjectAnatomySlices.d.ts +51 -0
- package/dist/types/containers/Slicer/hooks/useSlicerAttributesData.d.ts +7 -0
- package/dist/types/containers/Slicer/hooks/useTableDataBySlice.d.ts +8 -0
- package/dist/types/containers/Slicer/hooks/useUsersTable.d.ts +10 -0
- package/dist/types/containers/Slicer/index.d.ts +4 -2
- package/dist/types/containers/Slicer/types.d.ts +35 -0
- package/dist/types/containers/Slicer/{createFilterFromSlicer.d.ts → util/createFilterFromSlicer.d.ts} +2 -2
- package/dist/types/containers/Slicer/util/index.d.ts +1 -0
- package/dist/types/containers/Views/ViewsMenuContainer/BaseViewsTags.d.ts +4 -1
- package/dist/types/containers/Views/hooks/pages/useOverviewViewSettings.d.ts +7 -1
- package/dist/types/containers/Views/index.d.ts +1 -1
- package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +1 -1
- package/dist/types/context/AddonContext.d.ts +10 -2
- package/dist/types/context/AddonProjectContext.d.ts +7 -12
- package/dist/types/hooks/useGroupByRemoteModules.d.ts +2 -1
- package/package.json +1 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.cjs.js.map +0 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.es.js.map +0 -1
- package/dist/shared/src/containers/Slicer/useFiltersWithHierarchy.cjs.js.map +0 -1
- package/dist/shared/src/containers/Slicer/useFiltersWithHierarchy.es.js.map +0 -1
- /package/dist/shared/src/containers/Slicer/{useFiltersWithHierarchy.cjs.js → hooks/useFiltersWithHierarchy.cjs.js} +0 -0
- /package/dist/shared/src/containers/Slicer/{useFiltersWithHierarchy.es.js → hooks/useFiltersWithHierarchy.es.js} +0 -0
- /package/dist/shared/src/containers/Slicer/{createFilterFromSlicer.cjs.js → util/createFilterFromSlicer.cjs.js} +0 -0
- /package/dist/shared/src/containers/Slicer/{createFilterFromSlicer.es.js → util/createFilterFromSlicer.es.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCellContextMenu.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useCellContextMenu.ts"],"sourcesContent":["import { ContextMenuItemType, useCreateContextMenu } from '../../ContextMenu/useCreateContextMenu'\nimport useDeleteEntities from './useDeleteEntities'\nimport { getPlatformShortcutKey, KeyMode } from '../../../util/platform'\nimport { getCellId, parseCellId } from '../utils/cellUtils'\nimport { useClipboard } from '../context/ClipboardContext'\nimport { ROW_SELECTION_COLUMN_ID, useSelectionCellsContext } from '../context/SelectionCellsContext'\nimport { useProjectTableContext } from '../context/ProjectTableContext'\nimport { useProjectDataContext } from '../context/ProjectDataContext'\nimport { useCellEditing } from '../context/CellEditingContext'\nimport { InheritFromParentEntity } from './useUpdateTableData'\nimport { ProjectTableAttribute, TableRow } from '../types'\nimport { UseHistoryReturn } from './useHistory'\nimport { GROUP_BY_ID } from './useBuildGroupByTableData'\nimport { ColumnDef } from '@tanstack/react-table'\nimport { EntityMap, getEntityViewierIds } from '../utils'\nimport { isEntityRestricted } from '../utils/restrictedEntity'\nimport { useMemo } from 'react'\nimport { useProjectContext } from '@shared/context'\n\ntype ContextEvent = React.MouseEvent<HTMLTableSectionElement, MouseEvent>\n\nexport type HeaderLabel = { id: string; label: string }\n\nexport type TableCellContextData = {\n cellId: string\n columnId: string\n entityId: string\n entityType: 'folder' | 'task' | 'product' | 'version' | 'unknown' | undefined\n parentId?: string\n attribField: ProjectTableAttribute | undefined // the attribute field if any (fps, custom attribs, etc.)\n column: {\n id: string\n label: string\n }\n isGroup: boolean // if the cell is a group header\n data?: EntityMap | undefined\n}\ntype DefaultMenuItem =\n | 'copy-paste'\n | 'show-details'\n | 'rename'\n | 'expand-collapse'\n | 'inherit'\n | 'delete'\n | 'export'\n | 'create-folder'\n | 'create-task'\n | 'open-viewer'\nexport type ContextMenuItemConstructor = (\n e: ContextEvent,\n cell: TableCellContextData,\n selectedCells: TableCellContextData[],\n meta: {\n selectedCells: string[] // minus row selection cells\n selectedRows: string[]\n selectedColumns: string[]\n selectedFullRows: string[] // if the full row is selected\n selectedGroups: string[] // groups if any\n },\n context: {\n history: UseHistoryReturn\n },\n) => ContextMenuItemType | ContextMenuItemType[] | undefined\nexport type ContextMenuItemConstructors = (DefaultMenuItem | ContextMenuItemConstructor)[]\n\ntype CellContextMenuProps = {\n attribs: ProjectTableAttribute[]\n columns?: ColumnDef<TableRow>[]\n headerLabels: HeaderLabel[]\n onOpenNew?: (type: 'folder' | 'task') => void\n contextMenuItems?: ContextMenuItemConstructors\n}\n\nconst useCellContextMenu = ({\n attribs,\n headerLabels = [],\n onOpenNew,\n contextMenuItems: propsContextMenuItems,\n}: CellContextMenuProps) => {\n const { projectName } = useProjectContext()\n // context hooks\n const {\n showHierarchy,\n getEntityById,\n toggleExpandAll,\n toggleExpands,\n expanded,\n contextMenuItems: contextContextMenuItems = [],\n powerpack,\n onOpenPlayer,\n } = useProjectTableContext()\n\n // Merge context menu items from props and context\n const contextMenuItems = useMemo(\n () => [...contextContextMenuItems, ...(propsContextMenuItems || [])],\n [contextContextMenuItems, propsContextMenuItems],\n )\n const { canWriteLabelPermission, canWriteNamePermission } = useProjectDataContext()\n const { copyToClipboard, exportCSV, pasteFromClipboard } = useClipboard()\n const { selectedCells, clearSelection, selectCell, focusCell } = useSelectionCellsContext()\n const { inheritFromParent, history, setEditingCellId } = useCellEditing()\n\n // update entity context\n\n // data mutations\n const deleteEntities = useDeleteEntities({})\n\n const [cellContextMenuShow] = useCreateContextMenu([], powerpack)\n\n // Helper function to identify attributes that can be inherited\n const getEntitiesToInherit = (selected: string[]): InheritFromParentEntity[] => {\n return selected.reduce((acc, cellId) => {\n const { rowId, colId } = parseCellId(cellId) || {}\n if (!rowId || !colId || !colId.startsWith('attrib_')) return acc\n\n const entity = getEntityById(rowId)\n if (!entity) return acc\n const entityId = entity.entityId || entity.id\n\n const attribName = colId.replace('attrib_', '')\n // get attrib model\n const attribModel = attribs.find((attrib) => attrib.name === attribName)\n // is the attrib inheritable?\n const isInheritable = attribModel?.data.inherit\n\n // Check if this attribute is owned by the entity (not inherited)\n if (entity.ownAttrib?.includes(attribName) && isInheritable) {\n // Find existing entry or create new one\n const existingIndex = acc.findIndex((item) => item.entityId === entityId)\n\n if (existingIndex >= 0) {\n // Add to existing entity's attribs if not already there\n if (!acc[existingIndex].attribs.includes(attribName)) {\n acc[existingIndex].attribs.push(attribName)\n }\n } else {\n // Create new entity entry\n acc.push({\n rowId: entityId,\n entityId: entityId,\n entityType: 'folderId' in entity ? 'task' : 'folder',\n attribs: [attribName],\n ownAttrib: entity.ownAttrib || [],\n // @ts-ignore\n folderId: entity.parentId ?? entity.folderId,\n })\n }\n }\n\n return acc\n }, [] as InheritFromParentEntity[])\n }\n\n const copyAndPasteItems: ContextMenuItemConstructor = (e, cell, selected, meta) => {\n return [\n {\n label: 'Copy',\n icon: 'content_copy',\n shortcut: getPlatformShortcutKey('c', [KeyMode.Ctrl]),\n command: () => copyToClipboard(meta.selectedCells),\n hidden: cell.isGroup || cell.columnId === 'thumbnail',\n },\n {\n label: `Copy row${meta.selectedFullRows.length > 1 ? 's' : ''}`,\n icon: 'content_copy',\n command: () => copyToClipboard(meta.selectedFullRows, true),\n hidden:\n cell.columnId !== 'name' ||\n !meta.selectedFullRows.some(\n (cellId) => parseCellId(cellId)?.rowId === parseCellId(cell.cellId)?.rowId,\n ),\n },\n {\n label: 'Paste',\n icon: 'content_paste',\n shortcut: getPlatformShortcutKey('v', [KeyMode.Ctrl]),\n command: () => pasteFromClipboard(meta.selectedCells),\n hidden: cell.columnId === 'name' || cell.columnId === 'thumbnail' || cell.isGroup,\n disabled: cell.attribField?.readOnly,\n },\n ]\n }\n\n const showDetailsItem: ContextMenuItemConstructor = (e, cell, selected, meta) => ({\n label: 'Show details',\n icon: 'dock_to_left',\n shortcut: 'Double click',\n command: () => {\n const rowSelectionCellId = getCellId(cell.entityId, ROW_SELECTION_COLUMN_ID)\n // select the row to open the details\n selectCell(rowSelectionCellId, false, false)\n },\n hidden:\n cell.columnId !== 'name' ||\n meta.selectedRows.length > 1 ||\n cell.isGroup ||\n isEntityRestricted(cell.entityType),\n })\n\n const openViewerItem: ContextMenuItemConstructor = (e, cell, selected, meta) => ({\n label: 'Open in viewer',\n icon: 'play_circle',\n shortcut: 'Spacebar',\n command: () => {\n if (onOpenPlayer) {\n const entity = getEntityById(cell.entityId)\n if (entity) {\n const targetIds = getEntityViewierIds(entity)\n onOpenPlayer(targetIds, { quickView: true })\n }\n }\n },\n hidden:\n (cell.columnId !== 'thumbnail' && cell.columnId !== 'name') ||\n cell.isGroup ||\n cell.entityType === 'unknown',\n })\n\n const expandCollapseChildrenItems: ContextMenuItemConstructor = (e, cell, selected, meta) => [\n {\n label: 'Expand children',\n icon: 'expand_all',\n shortcut: getPlatformShortcutKey('click', [KeyMode.Alt]),\n command: () => toggleExpandAll(meta.selectedRows, true),\n hidden: cell.columnId !== 'name' || cell.entityType !== 'folder',\n },\n {\n label: 'Collapse children',\n icon: 'collapse_all',\n shortcut: getPlatformShortcutKey('click', [KeyMode.Alt]),\n command: () => toggleExpandAll(meta.selectedRows, false),\n hidden: cell.columnId !== 'name' || cell.entityType !== 'folder',\n },\n {\n label: 'Expand',\n icon: 'expand_all',\n command: () => toggleExpands(meta.selectedRows, true),\n hidden:\n cell.columnId !== 'name' ||\n !cell.isGroup ||\n expanded[cell.entityId as keyof typeof expanded],\n },\n {\n label: 'Collapse',\n icon: 'collapse_all',\n command: () => toggleExpands(meta.selectedRows, false),\n hidden:\n cell.columnId !== 'name' ||\n !cell.isGroup ||\n !expanded[cell.entityId as keyof typeof expanded],\n },\n ]\n\n const deleteItem: ContextMenuItemConstructor = (e, cell, selected, meta) => ({\n label: 'Delete',\n icon: 'delete',\n danger: true,\n command: () => deleteEntities(meta.selectedRows),\n hidden: cell.columnId !== 'name' || cell.isGroup,\n })\n\n const inheritItem: ContextMenuItemConstructor = (e, cell, selected, meta) => {\n const entitiesToInherit = getEntitiesToInherit(meta.selectedCells)\n const canInheritFromParent =\n entitiesToInherit.length > 0 &&\n showHierarchy &&\n !(meta.selectedRows.length > 1 && meta.selectedColumns.length > 1)\n\n return {\n label: 'Inherit from parent',\n icon: 'disabled_by_default',\n command: () => inheritFromParent(entitiesToInherit),\n hidden: !canInheritFromParent,\n }\n }\n\n const exportItem: ContextMenuItemConstructor = (e, cell) => ({\n label: 'Export selection',\n icon: 'download',\n command: () => exportCSV(Array.from(selectedCells), projectName),\n hidden: cell.isGroup,\n })\n\n const createFolderItems: ContextMenuItemConstructor = (e, cell) => [\n {\n label: 'Create folder',\n icon: 'create_new_folder',\n command: () => onOpenNew?.('folder'),\n hidden: cell.columnId !== 'name' || !showHierarchy || !onOpenNew,\n },\n {\n label: 'Create root folder',\n icon: 'create_new_folder',\n command: () => {\n clearSelection()\n onOpenNew?.('folder')\n },\n hidden: cell.columnId !== 'name' || !showHierarchy || !onOpenNew,\n },\n ]\n\n const createTaskItem: ContextMenuItemConstructor = (e, cell) => ({\n label: 'Create task',\n icon: 'add_task',\n command: () => onOpenNew?.('task'),\n hidden: cell.columnId !== 'name' || !showHierarchy || !onOpenNew,\n })\n\n const renameItem: ContextMenuItemConstructor = (e, cell) => ({\n label: 'Rename',\n icon: 'titlecase',\n shortcut: 'R',\n command: () => {\n const nameCellId = getCellId(cell.entityId, 'name')\n setEditingCellId(nameCellId)\n },\n hidden:\n cell.columnId !== 'name' ||\n cell.isGroup ||\n (cell.entityType !== 'folder' && cell.entityType !== 'task'),\n disabled: !(canWriteNamePermission || canWriteLabelPermission),\n })\n\n const builtInMenuItems: Record<DefaultMenuItem, ContextMenuItemConstructor> = {\n ['copy-paste']: copyAndPasteItems,\n ['show-details']: showDetailsItem,\n ['rename']: renameItem,\n ['expand-collapse']: expandCollapseChildrenItems,\n ['delete']: deleteItem,\n ['inherit']: inheritItem,\n ['export']: exportItem,\n ['create-folder']: createFolderItems,\n ['create-task']: createTaskItem,\n ['open-viewer']: openViewerItem,\n }\n\n const getCellData = (cellId: string): TableCellContextData | undefined => {\n const { rowId, colId } = parseCellId(cellId) || {}\n if (!rowId || !colId) return undefined\n const cellEntityData = getEntityById(rowId)\n const attribField = attribs.find((attrib) => attrib.name === colId?.replace('attrib_', ''))\n const column = headerLabels.find((header) => header.id === colId)\n const parentId = cellEntityData\n ? 'parentId' in cellEntityData\n ? cellEntityData.parentId\n : 'folderId' in cellEntityData\n ? cellEntityData.folderId\n : undefined\n : undefined\n return {\n cellId: cellId,\n columnId: colId,\n entityId: cellEntityData?.entityId || cellEntityData?.id || rowId,\n entityType: cellEntityData?.entityType,\n parentId: parentId,\n attribField: attribField,\n isGroup: rowId.startsWith(GROUP_BY_ID),\n column: {\n id: colId,\n label: column?.label || '',\n },\n data: cellEntityData,\n }\n }\n\n const handleTableBodyContextMenu = (e: ContextEvent) => {\n const target = e.target as HTMLElement\n const tdEl = target.closest('td')\n // get id of first child of td\n const cellId = tdEl?.firstElementChild?.id\n\n if (!cellId) return\n\n const cellData = getCellData(cellId)\n\n if (!cellData) return\n\n let currentSelectedCells = Array.from(selectedCells)\n // if selecting a cell outside of the current selection\n if (!currentSelectedCells.includes(cellId) || !currentSelectedCells.length) {\n currentSelectedCells = [cellId]\n // update selection\n selectCell(cellId, false, false)\n focusCell(cellId)\n }\n // selected cells without row selection cells\n const selectedRealCells = currentSelectedCells.filter(\n (id) => parseCellId(id)?.colId !== ROW_SELECTION_COLUMN_ID,\n )\n\n const selectedCellsData = currentSelectedCells.flatMap((cellId) => getCellData(cellId) || [])\n\n // Remove duplicates based on entityId - prioritize full row selection over individual cells\n const filteredSelectedCellsData = [\n ...new Map(selectedCellsData.map((e) => [e.entityId, e])).values(),\n ]\n\n const selectedCellRows: string[] = []\n const selectedCellColumns: string[] = []\n const selectedCellFullRows: string[] = []\n const selectedCellsGroups: string[] = [] // find cells that are group headers\n for (const { entityId, columnId } of filteredSelectedCellsData) {\n if (entityId && !selectedCellRows.includes(entityId)) selectedCellRows.push(entityId)\n if (columnId && !selectedCellColumns.includes(columnId)) selectedCellColumns.push(columnId)\n if (columnId === ROW_SELECTION_COLUMN_ID && !selectedCellFullRows.includes(entityId))\n selectedCellFullRows.push(entityId)\n if (entityId.startsWith(GROUP_BY_ID)) selectedCellsGroups.push(entityId)\n }\n\n const constructedMenuItems = contextMenuItems.flatMap((constructor) =>\n typeof constructor === 'function'\n ? constructor(\n e,\n cellData,\n filteredSelectedCellsData,\n {\n selectedCells: selectedRealCells, // selected cells without row selection\n selectedRows: selectedCellRows,\n selectedColumns: selectedCellColumns,\n selectedFullRows: selectedCellFullRows,\n selectedGroups: selectedCellsGroups, // groups if any\n },\n {\n history,\n },\n )\n : builtInMenuItems[constructor]?.(\n e,\n cellData,\n filteredSelectedCellsData,\n {\n selectedCells: selectedRealCells, // selected cells without row selection\n selectedRows: selectedCellRows,\n selectedColumns: selectedCellColumns,\n selectedFullRows: selectedCellFullRows,\n selectedGroups: selectedCellsGroups, // groups if any\n },\n { history },\n ),\n )\n\n cellContextMenuShow(e, constructedMenuItems)\n }\n\n return { handleTableBodyContextMenu }\n}\n\nexport default useCellContextMenu\n"],"names":["useCellContextMenu","attribs","headerLabels","onOpenNew","propsContextMenuItems","projectName","useProjectContext","showHierarchy","getEntityById","toggleExpandAll","toggleExpands","expanded","contextContextMenuItems","powerpack","onOpenPlayer","useProjectTableContext","contextMenuItems","useMemo","canWriteLabelPermission","canWriteNamePermission","useProjectDataContext","copyToClipboard","exportCSV","pasteFromClipboard","useClipboard","selectedCells","clearSelection","selectCell","focusCell","useSelectionCellsContext","inheritFromParent","history","setEditingCellId","useCellEditing","deleteEntities","useDeleteEntities","cellContextMenuShow","useCreateContextMenu","getEntitiesToInherit","selected","acc","cellId","rowId","colId","parseCellId","entity","entityId","attribName","isInheritable","attrib","existingIndex","item","builtInMenuItems","e","cell","meta","getPlatformShortcutKey","KeyMode","rowSelectionCellId","getCellId","ROW_SELECTION_COLUMN_ID","isEntityRestricted","nameCellId","entitiesToInherit","canInheritFromParent","targetIds","getEntityViewierIds","getCellData","cellEntityData","attribField","column","header","parentId","GROUP_BY_ID","cellData","currentSelectedCells","selectedRealCells","id","selectedCellsData","filteredSelectedCellsData","selectedCellRows","selectedCellColumns","selectedCellFullRows","selectedCellsGroups","columnId","constructedMenuItems","constructor"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useCellContextMenu.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useCellContextMenu.ts"],"sourcesContent":["import { ContextMenuItemType, useCreateContextMenu } from '../../ContextMenu/useCreateContextMenu'\nimport useDeleteEntities from './useDeleteEntities'\nimport { getPlatformShortcutKey, KeyMode } from '../../../util/platform'\nimport { getCellId, parseCellId } from '../utils/cellUtils'\nimport { useClipboard } from '../context/ClipboardContext'\nimport { ROW_SELECTION_COLUMN_ID, useSelectionCellsContext } from '../context/SelectionCellsContext'\nimport { useProjectTableContext } from '../context/ProjectTableContext'\nimport { useProjectDataContext } from '../context/ProjectDataContext'\nimport { useCellEditing } from '../context/CellEditingContext'\nimport { InheritFromParentEntity } from './useUpdateTableData'\nimport { ProjectTableAttribute, TableRow } from '../types'\nimport { UseHistoryReturn } from './useHistory'\nimport { GROUP_BY_ID } from './useBuildGroupByTableData'\nimport { ColumnDef } from '@tanstack/react-table'\nimport { EntityMap, getEntityViewierIds } from '../utils'\nimport { isEntityRestricted } from '../utils/restrictedEntity'\nimport { useMemo } from 'react'\nimport { useProjectContext } from '@shared/context'\n\ntype ContextEvent = React.MouseEvent<HTMLTableSectionElement, MouseEvent>\n\nexport type HeaderLabel = { id: string; label: string }\n\nexport type TableCellContextData = {\n cellId: string\n columnId: string\n entityId: string\n entityType: 'folder' | 'task' | 'product' | 'version' | 'unknown' | undefined\n parentId?: string\n attribField: ProjectTableAttribute | undefined // the attribute field if any (fps, custom attribs, etc.)\n column: {\n id: string\n label: string\n }\n isGroup: boolean // if the cell is a group header\n data?: EntityMap | undefined\n}\ntype DefaultMenuItem =\n | 'copy-paste'\n | 'show-details'\n | 'rename'\n | 'expand-collapse'\n | 'inherit'\n | 'delete'\n | 'export'\n | 'create-folder'\n | 'create-task'\n | 'open-viewer'\nexport type ContextMenuItemConstructor = (\n e: ContextEvent,\n cell: TableCellContextData,\n selectedCells: TableCellContextData[],\n meta: {\n selectedCells: string[] // minus row selection cells\n selectedRows: string[]\n selectedColumns: string[]\n selectedFullRows: string[] // if the full row is selected\n selectedGroups: string[] // groups if any\n },\n context: {\n history: UseHistoryReturn\n },\n) => ContextMenuItemType | ContextMenuItemType[] | undefined\nexport type ContextMenuItemConstructors = (DefaultMenuItem | ContextMenuItemConstructor)[]\n\ntype CellContextMenuProps = {\n attribs: ProjectTableAttribute[]\n columns?: ColumnDef<TableRow>[]\n headerLabels: HeaderLabel[]\n onOpenNew?: (type: 'folder' | 'task') => void\n contextMenuItems?: ContextMenuItemConstructors\n}\n\nconst useCellContextMenu = ({\n attribs,\n headerLabels = [],\n onOpenNew,\n contextMenuItems: propsContextMenuItems,\n}: CellContextMenuProps) => {\n const { projectName } = useProjectContext()\n // context hooks\n const {\n showHierarchy,\n getEntityById,\n toggleExpandAll,\n toggleExpands,\n expanded,\n contextMenuItems: contextContextMenuItems = [],\n powerpack,\n onOpenPlayer,\n } = useProjectTableContext()\n\n // Merge context menu items from props and context\n const contextMenuItems = useMemo(\n () => [...contextContextMenuItems, ...(propsContextMenuItems || [])],\n [contextContextMenuItems, propsContextMenuItems],\n )\n const { canWriteLabelPermission, canWriteNamePermission } = useProjectDataContext()\n const { copyToClipboard, exportCSV, pasteFromClipboard } = useClipboard()\n const { selectedCells, clearSelection, selectCell, focusCell } = useSelectionCellsContext()\n const { inheritFromParent, history, setEditingCellId } = useCellEditing()\n\n // update entity context\n\n // data mutations\n const deleteEntities = useDeleteEntities({})\n\n const [cellContextMenuShow] = useCreateContextMenu([], powerpack)\n\n // Helper function to identify attributes that can be inherited\n const getEntitiesToInherit = (selected: string[]): InheritFromParentEntity[] => {\n return selected.reduce((acc, cellId) => {\n const { rowId, colId } = parseCellId(cellId) || {}\n if (!rowId || !colId || !colId.startsWith('attrib_')) return acc\n\n const entity = getEntityById(rowId)\n if (!entity) return acc\n const entityId = entity.entityId || entity.id\n\n const attribName = colId.replace('attrib_', '')\n // get attrib model\n const attribModel = attribs.find((attrib) => attrib.name === attribName)\n // is the attrib inheritable?\n const isInheritable = attribModel?.data.inherit\n\n // Check if this attribute is owned by the entity (not inherited)\n if (entity.ownAttrib?.includes(attribName) && isInheritable) {\n // Find existing entry or create new one\n const existingIndex = acc.findIndex((item) => item.entityId === entityId)\n\n if (existingIndex >= 0) {\n // Add to existing entity's attribs if not already there\n if (!acc[existingIndex].attribs.includes(attribName)) {\n acc[existingIndex].attribs.push(attribName)\n }\n } else {\n // Create new entity entry\n acc.push({\n rowId: entityId,\n entityId: entityId,\n entityType: 'folderId' in entity ? 'task' : 'folder',\n attribs: [attribName],\n ownAttrib: entity.ownAttrib || [],\n // @ts-ignore\n folderId: entity.parentId ?? entity.folderId,\n })\n }\n }\n\n return acc\n }, [] as InheritFromParentEntity[])\n }\n\n const copyAndPasteItems: ContextMenuItemConstructor = (e, cell, selected, meta) => {\n return [\n {\n label: 'Copy',\n icon: 'content_copy',\n shortcut: getPlatformShortcutKey('c', [KeyMode.Ctrl]),\n command: () => copyToClipboard(meta.selectedCells),\n hidden: cell.isGroup || cell.columnId === 'thumbnail',\n },\n {\n label: `Copy row${meta.selectedFullRows.length > 1 ? 's' : ''}`,\n icon: 'content_copy',\n command: () => copyToClipboard(meta.selectedFullRows, true),\n hidden:\n cell.columnId !== 'name' ||\n !meta.selectedFullRows.some(\n (cellId) => parseCellId(cellId)?.rowId === parseCellId(cell.cellId)?.rowId,\n ),\n },\n {\n label: 'Paste',\n icon: 'content_paste',\n shortcut: getPlatformShortcutKey('v', [KeyMode.Ctrl]),\n command: () => pasteFromClipboard(meta.selectedCells),\n hidden: cell.columnId === 'name' || cell.columnId === 'thumbnail' || cell.isGroup,\n disabled: cell.attribField?.readOnly,\n },\n ]\n }\n\n const showDetailsItem: ContextMenuItemConstructor = (e, cell, selected, meta) => ({\n label: 'Show details',\n icon: 'dock_to_left',\n shortcut: 'Double click',\n command: () => {\n const rowSelectionCellId = getCellId(cell.entityId, ROW_SELECTION_COLUMN_ID)\n // select the row to open the details\n selectCell(rowSelectionCellId, false, false)\n },\n hidden:\n cell.columnId !== 'name' ||\n meta.selectedRows.length > 1 ||\n cell.isGroup ||\n isEntityRestricted(cell.entityType),\n })\n\n const openViewerItem: ContextMenuItemConstructor = (e, cell, selected, meta) => ({\n label: 'Open in viewer',\n icon: 'play_circle',\n shortcut: 'Spacebar',\n command: () => {\n if (onOpenPlayer) {\n const entity = getEntityById(cell.entityId)\n if (entity) {\n const targetIds = getEntityViewierIds(entity)\n onOpenPlayer(targetIds, { quickView: true })\n }\n }\n },\n hidden:\n (cell.columnId !== 'thumbnail' && cell.columnId !== 'name') ||\n cell.isGroup ||\n cell.entityType === 'unknown',\n })\n\n const expandCollapseChildrenItems: ContextMenuItemConstructor = (e, cell, selected, meta) => [\n {\n label: 'Expand children',\n icon: 'expand_all',\n shortcut: getPlatformShortcutKey('click', [KeyMode.Alt]),\n command: () => toggleExpandAll(meta.selectedRows, true),\n hidden: cell.columnId !== 'name' || cell.entityType !== 'folder',\n },\n {\n label: 'Collapse children',\n icon: 'collapse_all',\n shortcut: getPlatformShortcutKey('click', [KeyMode.Alt]),\n command: () => toggleExpandAll(meta.selectedRows, false),\n hidden: cell.columnId !== 'name' || cell.entityType !== 'folder',\n },\n {\n label: 'Expand',\n icon: 'expand_all',\n command: () => toggleExpands(meta.selectedRows, true),\n hidden:\n cell.columnId !== 'name' ||\n !cell.isGroup ||\n expanded[cell.entityId as keyof typeof expanded],\n },\n {\n label: 'Collapse',\n icon: 'collapse_all',\n command: () => toggleExpands(meta.selectedRows, false),\n hidden:\n cell.columnId !== 'name' ||\n !cell.isGroup ||\n !expanded[cell.entityId as keyof typeof expanded],\n },\n ]\n\n const deleteItem: ContextMenuItemConstructor = (e, cell, selected, meta) => ({\n label: 'Delete',\n icon: 'delete',\n danger: true,\n command: () => deleteEntities(meta.selectedRows),\n hidden: cell.columnId !== 'name' || cell.isGroup,\n })\n\n const inheritItem: ContextMenuItemConstructor = (e, cell, selected, meta) => {\n const entitiesToInherit = getEntitiesToInherit(meta.selectedCells)\n const canInheritFromParent =\n entitiesToInherit.length > 0 &&\n showHierarchy &&\n !(meta.selectedRows.length > 1 && meta.selectedColumns.length > 1)\n\n return {\n label: 'Inherit from parent',\n icon: 'disabled_by_default',\n command: () => inheritFromParent(entitiesToInherit),\n hidden: !canInheritFromParent,\n }\n }\n\n const exportItem: ContextMenuItemConstructor = (e, cell) => ({\n label: 'Export selection',\n icon: 'download',\n command: () => exportCSV(Array.from(selectedCells), projectName),\n hidden: cell.isGroup,\n })\n\n const createFolderItems: ContextMenuItemConstructor = (e, cell) => [\n {\n label: 'Create folder',\n icon: 'create_new_folder',\n command: () => onOpenNew?.('folder'),\n hidden: cell.columnId !== 'name' || !showHierarchy || !onOpenNew,\n },\n {\n label: 'Create root folder',\n icon: 'create_new_folder',\n command: () => {\n clearSelection()\n onOpenNew?.('folder')\n },\n hidden: cell.columnId !== 'name' || !showHierarchy || !onOpenNew,\n },\n ]\n\n const createTaskItem: ContextMenuItemConstructor = (e, cell) => ({\n label: 'Create task',\n icon: 'add_task',\n command: () => onOpenNew?.('task'),\n hidden: cell.columnId !== 'name' || !showHierarchy || !onOpenNew,\n })\n\n const renameItem: ContextMenuItemConstructor = (e, cell) => ({\n label: 'Rename',\n icon: 'titlecase',\n shortcut: 'R',\n command: () => {\n const nameCellId = getCellId(cell.entityId, 'name')\n setEditingCellId(nameCellId)\n },\n hidden:\n cell.columnId !== 'name' ||\n cell.isGroup ||\n (cell.entityType !== 'folder' && cell.entityType !== 'task'),\n disabled: !(canWriteNamePermission || canWriteLabelPermission),\n })\n\n const builtInMenuItems: Record<DefaultMenuItem, ContextMenuItemConstructor> = {\n ['copy-paste']: copyAndPasteItems,\n ['show-details']: showDetailsItem,\n ['rename']: renameItem,\n ['expand-collapse']: expandCollapseChildrenItems,\n ['delete']: deleteItem,\n ['inherit']: inheritItem,\n ['export']: exportItem,\n ['create-folder']: createFolderItems,\n ['create-task']: createTaskItem,\n ['open-viewer']: openViewerItem,\n }\n\n const getCellData = (cellId: string): TableCellContextData | undefined => {\n const { rowId, colId } = parseCellId(cellId) || {}\n if (!rowId || !colId) return undefined\n const cellEntityData = getEntityById(rowId)\n const attribField = attribs.find((attrib) => attrib.name === colId?.replace('attrib_', ''))\n const column = headerLabels.find((header) => header.id === colId)\n const parentId = cellEntityData\n ? 'parentId' in cellEntityData\n ? cellEntityData.parentId\n : 'folderId' in cellEntityData\n ? cellEntityData.folderId\n : undefined\n : undefined\n return {\n cellId: cellId,\n columnId: colId,\n entityId: cellEntityData?.entityId || cellEntityData?.id || rowId,\n entityType: cellEntityData?.entityType,\n parentId: parentId,\n attribField: attribField,\n isGroup: rowId.startsWith(GROUP_BY_ID),\n column: {\n id: colId,\n label: column?.label || '',\n },\n data: cellEntityData,\n }\n }\n\n const handleTableBodyContextMenu = (e: ContextEvent) => {\n const target = e.target as HTMLElement\n const tdEl = target.closest('td')\n // get id of first child of td\n const cellId = tdEl?.firstElementChild?.id\n\n if (!cellId) return\n\n const cellData = getCellData(cellId)\n\n if (!cellData) return\n\n let currentSelectedCells = Array.from(selectedCells)\n // if selecting a cell outside of the current selection\n if (!currentSelectedCells.includes(cellId) || !currentSelectedCells.length) {\n currentSelectedCells = [cellId]\n // update selection\n selectCell(cellId, false, false)\n focusCell(cellId)\n }\n // selected cells without row selection cells\n const selectedRealCells = currentSelectedCells.filter(\n (id) => parseCellId(id)?.colId !== ROW_SELECTION_COLUMN_ID,\n )\n\n const selectedCellsData = currentSelectedCells.flatMap((cellId) => getCellData(cellId) || [])\n\n // Remove duplicates based on entityId - prioritize full row selection over individual cells\n const filteredSelectedCellsData = [\n ...new Map(selectedCellsData.map((e) => [e.entityId, e])).values(),\n ]\n\n const selectedCellRows: string[] = []\n const selectedCellColumns: string[] = []\n const selectedCellFullRows: string[] = []\n const selectedCellsGroups: string[] = [] // find cells that are group headers\n for (const { entityId, columnId } of filteredSelectedCellsData) {\n if (entityId && !selectedCellRows.includes(entityId)) selectedCellRows.push(entityId)\n if (columnId && !selectedCellColumns.includes(columnId)) selectedCellColumns.push(columnId)\n if (columnId === ROW_SELECTION_COLUMN_ID && !selectedCellFullRows.includes(entityId))\n selectedCellFullRows.push(entityId)\n if (entityId.startsWith(GROUP_BY_ID)) selectedCellsGroups.push(entityId)\n }\n\n const constructedMenuItems = contextMenuItems.flatMap((constructor) =>\n typeof constructor === 'function'\n ? constructor(\n e,\n cellData,\n filteredSelectedCellsData,\n {\n selectedCells: selectedRealCells, // selected cells without row selection\n selectedRows: selectedCellRows,\n selectedColumns: selectedCellColumns,\n selectedFullRows: selectedCellFullRows,\n selectedGroups: selectedCellsGroups, // groups if any\n },\n {\n history,\n },\n )\n : builtInMenuItems[constructor]?.(\n e,\n cellData,\n filteredSelectedCellsData,\n {\n selectedCells: selectedRealCells, // selected cells without row selection\n selectedRows: selectedCellRows,\n selectedColumns: selectedCellColumns,\n selectedFullRows: selectedCellFullRows,\n selectedGroups: selectedCellsGroups, // groups if any\n },\n { history },\n ),\n )\n\n cellContextMenuShow(e, constructedMenuItems)\n }\n\n return { handleTableBodyContextMenu }\n}\n\nexport default useCellContextMenu\n"],"names":["useCellContextMenu","attribs","headerLabels","onOpenNew","propsContextMenuItems","projectName","useProjectContext","showHierarchy","getEntityById","toggleExpandAll","toggleExpands","expanded","contextContextMenuItems","powerpack","onOpenPlayer","useProjectTableContext","contextMenuItems","useMemo","canWriteLabelPermission","canWriteNamePermission","useProjectDataContext","copyToClipboard","exportCSV","pasteFromClipboard","useClipboard","selectedCells","clearSelection","selectCell","focusCell","useSelectionCellsContext","inheritFromParent","history","setEditingCellId","useCellEditing","deleteEntities","useDeleteEntities","cellContextMenuShow","useCreateContextMenu","getEntitiesToInherit","selected","acc","cellId","rowId","colId","parseCellId","entity","entityId","attribName","isInheritable","attrib","existingIndex","item","builtInMenuItems","e","cell","meta","getPlatformShortcutKey","KeyMode","rowSelectionCellId","getCellId","ROW_SELECTION_COLUMN_ID","isEntityRestricted","nameCellId","entitiesToInherit","canInheritFromParent","targetIds","getEntityViewierIds","getCellData","cellEntityData","attribField","column","header","parentId","GROUP_BY_ID","cellData","currentSelectedCells","selectedRealCells","id","selectedCellsData","filteredSelectedCellsData","selectedCellRows","selectedCellColumns","selectedCellFullRows","selectedCellsGroups","columnId","constructedMenuItems","constructor"],"mappings":"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"}
|
package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("react");require("@ynput/ayon-react-components");require("short-uuid");const f=require("../utils/cellUtils.cjs.js");require("../../../../../_virtual/jsx-runtime.cjs.js");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");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("@tanstack/react-virtual");require("../ProjectTreeTable.styled.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../context/CellEditingContext.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/SelectedRowsContext.cjs.js");require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");const a=require("../context/ProjectTableContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.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/LinksManager/LinksManager.styled.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");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const d=({selectedCells:u,setSelectedCells:t,focusedCellId:n,setFocusedCellId:o})=>{const{getEntityById:c,isLoading:s}=a.useProjectTableContext(),r=q.useRef(!0);q.useEffect(()=>(r.current=!0,()=>{r.current=!1}),[]),q.useEffect(()=>{if(s)return;if(r.current){const e=setTimeout(()=>{r.current=!1},2e3);return()=>clearTimeout(e)}const i=new Set;for(const e of u)c(f.parseCellId(e||"")?.rowId||"")||i.add(e);if(i.size>0){const e=new Set(u);for(const l of i)e.delete(l);t(e),i.has(n||"")&&o(null)}},[c,u,n,t,o,s])};exports.useCheckSelectedCellsVisible=d;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("react");require("@ynput/ayon-react-components");require("short-uuid");const f=require("../utils/cellUtils.cjs.js");require("../../../../../_virtual/jsx-runtime.cjs.js");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("clsx");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");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("@tanstack/react-virtual");require("../ProjectTreeTable.styled.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../context/CellEditingContext.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/SelectedRowsContext.cjs.js");require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");const a=require("../context/ProjectTableContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../../SimpleTable/SimpleTable.styled.cjs.js");require("@tanstack/match-sorter-utils");require("../../SimpleTable/context/SimpleTableContext.cjs.js");require("../../SimpleTable/SimpleTableRowTemplate.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/LinksManager/LinksManager.styled.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");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const d=({selectedCells:u,setSelectedCells:t,focusedCellId:n,setFocusedCellId:o})=>{const{getEntityById:c,isLoading:s}=a.useProjectTableContext(),r=q.useRef(!0);q.useEffect(()=>(r.current=!0,()=>{r.current=!1}),[]),q.useEffect(()=>{if(s)return;if(r.current){const e=setTimeout(()=>{r.current=!1},2e3);return()=>clearTimeout(e)}const i=new Set;for(const e of u)c(f.parseCellId(e||"")?.rowId||"")||i.add(e);if(i.size>0){const e=new Set(u);for(const l of i)e.delete(l);t(e),i.has(n||"")&&o(null)}},[c,u,n,t,o,s])};exports.useCheckSelectedCellsVisible=d;
|
|
2
2
|
//# sourceMappingURL=useCheckSelectedCellsVisible.cjs.js.map
|
package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCheckSelectedCellsVisible.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.ts"],"sourcesContent":["// This hooks checks the current selection of cells is actually visible in the current viewport of the table\n// If they are not visible, they will be removed from the selection\n// This can happen when the user changes the slicer selection or filters (combined filters changes)\n\nimport { useEffect, useRef } from 'react'\nimport { CellId, parseCellId } from '../utils'\nimport { useProjectTableContext } from '../context'\n\ntype CheckSelectedCellsVisibleProps = {\n selectedCells: Set<CellId>\n setSelectedCells: (cells: Set<CellId>) => void\n focusedCellId: CellId | null\n setFocusedCellId: (cellId: CellId | null) => void\n}\n\nexport const useCheckSelectedCellsVisible = ({\n selectedCells,\n setSelectedCells,\n focusedCellId,\n setFocusedCellId,\n}: CheckSelectedCellsVisibleProps): void => {\n const { getEntityById, isLoading } = useProjectTableContext()\n const isMountedRef = useRef(true)\n\n // Initialize the mounted ref on mount\n useEffect(() => {\n isMountedRef.current = true\n return () => {\n isMountedRef.current = false\n }\n }, [])\n\n // checks that all of the selected cells are in the tableData\n // if they are not, they will be removed from the selection\n useEffect(() => {\n if (isLoading) return\n\n // Skip running on initial mount (within 2 seconds)\n if (isMountedRef.current) {\n const timeoutId = setTimeout(() => {\n isMountedRef.current = false\n }, 2000)\n return () => clearTimeout(timeoutId)\n }\n\n const missingCells = new Set<CellId>()\n for (const cellId of selectedCells) {\n // check if the cell rowId is in\n if (!getEntityById(parseCellId(cellId || '')?.rowId || '')) {\n missingCells.add(cellId)\n }\n }\n\n if (missingCells.size > 0) {\n // remove the missing cells from the selection\n const newSelection = new Set<CellId>(selectedCells)\n for (const cellId of missingCells) {\n newSelection.delete(cellId)\n }\n\n setSelectedCells(newSelection)\n\n // if the focused cell is one of the missing cells, clear it\n if (missingCells.has(focusedCellId || '')) {\n setFocusedCellId(null)\n }\n }\n }, [getEntityById, selectedCells, focusedCellId, setSelectedCells, setFocusedCellId, isLoading])\n}\n"],"names":["useCheckSelectedCellsVisible","selectedCells","setSelectedCells","focusedCellId","setFocusedCellId","getEntityById","isLoading","useProjectTableContext","isMountedRef","useRef","useEffect","timeoutId","missingCells","cellId","parseCellId","newSelection"],"mappings":"
|
|
1
|
+
{"version":3,"file":"useCheckSelectedCellsVisible.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.ts"],"sourcesContent":["// This hooks checks the current selection of cells is actually visible in the current viewport of the table\n// If they are not visible, they will be removed from the selection\n// This can happen when the user changes the slicer selection or filters (combined filters changes)\n\nimport { useEffect, useRef } from 'react'\nimport { CellId, parseCellId } from '../utils'\nimport { useProjectTableContext } from '../context'\n\ntype CheckSelectedCellsVisibleProps = {\n selectedCells: Set<CellId>\n setSelectedCells: (cells: Set<CellId>) => void\n focusedCellId: CellId | null\n setFocusedCellId: (cellId: CellId | null) => void\n}\n\nexport const useCheckSelectedCellsVisible = ({\n selectedCells,\n setSelectedCells,\n focusedCellId,\n setFocusedCellId,\n}: CheckSelectedCellsVisibleProps): void => {\n const { getEntityById, isLoading } = useProjectTableContext()\n const isMountedRef = useRef(true)\n\n // Initialize the mounted ref on mount\n useEffect(() => {\n isMountedRef.current = true\n return () => {\n isMountedRef.current = false\n }\n }, [])\n\n // checks that all of the selected cells are in the tableData\n // if they are not, they will be removed from the selection\n useEffect(() => {\n if (isLoading) return\n\n // Skip running on initial mount (within 2 seconds)\n if (isMountedRef.current) {\n const timeoutId = setTimeout(() => {\n isMountedRef.current = false\n }, 2000)\n return () => clearTimeout(timeoutId)\n }\n\n const missingCells = new Set<CellId>()\n for (const cellId of selectedCells) {\n // check if the cell rowId is in\n if (!getEntityById(parseCellId(cellId || '')?.rowId || '')) {\n missingCells.add(cellId)\n }\n }\n\n if (missingCells.size > 0) {\n // remove the missing cells from the selection\n const newSelection = new Set<CellId>(selectedCells)\n for (const cellId of missingCells) {\n newSelection.delete(cellId)\n }\n\n setSelectedCells(newSelection)\n\n // if the focused cell is one of the missing cells, clear it\n if (missingCells.has(focusedCellId || '')) {\n setFocusedCellId(null)\n }\n }\n }, [getEntityById, selectedCells, focusedCellId, setSelectedCells, setFocusedCellId, isLoading])\n}\n"],"names":["useCheckSelectedCellsVisible","selectedCells","setSelectedCells","focusedCellId","setFocusedCellId","getEntityById","isLoading","useProjectTableContext","isMountedRef","useRef","useEffect","timeoutId","missingCells","cellId","parseCellId","newSelection"],"mappings":"2ucAeO,MAAMA,EAA+B,CAAC,CAC3C,cAAAC,EACA,iBAAAC,EACA,cAAAC,EACA,iBAAAC,CACF,IAA4C,CAC1C,KAAM,CAAE,cAAAC,EAAe,UAAAC,CAAA,EAAcC,yBAAA,EAC/BC,EAAeC,EAAAA,OAAO,EAAI,EAGhCC,EAAAA,UAAU,KACRF,EAAa,QAAU,GAChB,IAAM,CACXA,EAAa,QAAU,EACzB,GACC,CAAA,CAAE,EAILE,EAAAA,UAAU,IAAM,CACd,GAAIJ,EAAW,OAGf,GAAIE,EAAa,QAAS,CACxB,MAAMG,EAAY,WAAW,IAAM,CACjCH,EAAa,QAAU,EACzB,EAAG,GAAI,EACP,MAAO,IAAM,aAAaG,CAAS,CACrC,CAEA,MAAMC,MAAmB,IACzB,UAAWC,KAAUZ,EAEdI,EAAcS,cAAYD,GAAU,EAAE,GAAG,OAAS,EAAE,GACvDD,EAAa,IAAIC,CAAM,EAI3B,GAAID,EAAa,KAAO,EAAG,CAEzB,MAAMG,EAAe,IAAI,IAAYd,CAAa,EAClD,UAAWY,KAAUD,EACnBG,EAAa,OAAOF,CAAM,EAG5BX,EAAiBa,CAAY,EAGzBH,EAAa,IAAIT,GAAiB,EAAE,GACtCC,EAAiB,IAAI,CAEzB,CACF,EAAG,CAACC,EAAeJ,EAAeE,EAAeD,EAAkBE,EAAkBE,CAAS,CAAC,CACjG"}
|
package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js
CHANGED
|
@@ -14,10 +14,18 @@ import "../widgets/EntityNameWidget.es.js";
|
|
|
14
14
|
import "../widgets/GroupHeaderWidget.es.js";
|
|
15
15
|
import "../widgets/ThumbnailWidget.es.js";
|
|
16
16
|
import "../../../components/AddonLoadingScreen/AddonLoadingScreen.es.js";
|
|
17
|
+
import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
|
|
18
|
+
import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
|
|
19
|
+
import "../../../components/AccessUser/AccessUser.es.js";
|
|
17
20
|
import "clsx";
|
|
18
|
-
import "
|
|
19
|
-
import "../../../components/
|
|
20
|
-
import "
|
|
21
|
+
import "lodash";
|
|
22
|
+
import "../../../components/AttributeEditor/components/MinMaxField.es.js";
|
|
23
|
+
import "react-dom";
|
|
24
|
+
import "@dnd-kit/core";
|
|
25
|
+
import "@dnd-kit/sortable";
|
|
26
|
+
import "../../../components/EnumEditor/EnumEditor.styled.es.js";
|
|
27
|
+
import "../../../components/Badge/Badge.es.js";
|
|
28
|
+
import "../../../components/Chips/Chips.es.js";
|
|
21
29
|
import "react-toastify";
|
|
22
30
|
import "../../../api/base/client.es.js";
|
|
23
31
|
import "../../../api/generated/graphql.es.js";
|
|
@@ -104,22 +112,23 @@ import "../../../api/queries/views/getViews.es.js";
|
|
|
104
112
|
import "../../../api/queries/views/updateViews.es.js";
|
|
105
113
|
import "../../../api/queries/watchers/getWatchers.es.js";
|
|
106
114
|
import "../../../api/queries/uris/getUris.es.js";
|
|
107
|
-
import "
|
|
108
|
-
import "
|
|
109
|
-
import "../../../components/
|
|
115
|
+
import "../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js";
|
|
116
|
+
import "../../../components/DetailsPanelDetails/DetailsPanelDetails.es.js";
|
|
117
|
+
import "../../../components/DetailsPanelDetails/DetailsSection.es.js";
|
|
118
|
+
import "../../../components/DetailsPanelDetails/FieldLabel.es.js";
|
|
119
|
+
import "../../../components/EarlyPreview/EarlyPreview.es.js";
|
|
120
|
+
import "../../../components/EmptyPlaceholder/EmptyPlaceholder.es.js";
|
|
121
|
+
import "../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
|
|
110
122
|
import "../../ContextMenu/ContextMenuContext.es.js";
|
|
111
123
|
/* empty css */
|
|
112
|
-
import "
|
|
113
|
-
import "
|
|
114
|
-
import "
|
|
115
|
-
import "../../../components/ReviewablesList/ReviewablesUpload.styled.es.js";
|
|
116
|
-
import "axios";
|
|
124
|
+
import "../../Feed/context/FeedContext.es.js";
|
|
125
|
+
import "../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.es.js";
|
|
126
|
+
import "../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.es.js";
|
|
117
127
|
import "../../../context/RemoteModulesContext.es.js";
|
|
118
128
|
import "../../../context/DetailsPanelContext.es.js";
|
|
119
129
|
import "../../../context/ThumbnailUploaderContext.es.js";
|
|
120
130
|
import "../../../context/SettingsPanelContext.es.js";
|
|
121
131
|
import "../../../context/pip/PiPProvider.es.js";
|
|
122
|
-
import "react-dom";
|
|
123
132
|
import "../../../context/pip/PiPWrapper.es.js";
|
|
124
133
|
import "../../../context/AddonProjectContext.es.js";
|
|
125
134
|
import "../../../context/AddonContext.es.js";
|
|
@@ -131,14 +140,6 @@ import "../../../context/GlobalContext.es.js";
|
|
|
131
140
|
import "../../../context/ProjectContext.es.js";
|
|
132
141
|
import "../../../context/ProjectFoldersContext.es.js";
|
|
133
142
|
import "../../../context/UriContext.es.js";
|
|
134
|
-
import "../../../components/ReviewableCard/ReviewableCard.es.js";
|
|
135
|
-
import "../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
136
|
-
import "../../../components/FileThumbnail/FileThumbnail.es.js";
|
|
137
|
-
import "../../../components/Thumbnail/Thumbnail.styled.es.js";
|
|
138
|
-
import "../../../components/Thumbnail/StackedThumbnails.es.js";
|
|
139
|
-
import "../../Feed/context/FeedContext.es.js";
|
|
140
|
-
import "../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.es.js";
|
|
141
|
-
import "../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.es.js";
|
|
142
143
|
import "../../Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js";
|
|
143
144
|
import "../../Feed/components/FileUploadPreview/Mimes/TextMime.es.js";
|
|
144
145
|
import "react-markdown";
|
|
@@ -154,6 +155,8 @@ import "../../Feed/components/CommentInput/quillToMarkdown.es.js";
|
|
|
154
155
|
import "../../Feed/components/ActivityComment/ActivityComment.styled.es.js";
|
|
155
156
|
import "../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.es.js";
|
|
156
157
|
import "../../Feed/components/ActivityReference/ActivityReference.styled.es.js";
|
|
158
|
+
import "uuid";
|
|
159
|
+
import "../../../util/pubsub.es.js";
|
|
157
160
|
import "react-router-dom";
|
|
158
161
|
import "../../Feed/components/ActivityStatus/ActivityStatus.es.js";
|
|
159
162
|
import "../../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
|
|
@@ -188,6 +191,13 @@ import "../../../../../_virtual/semver.es.js";
|
|
|
188
191
|
import "react-redux";
|
|
189
192
|
import "custom-protocol-check";
|
|
190
193
|
import "../components/GroupSettingsFallback.es.js";
|
|
194
|
+
import "../../SimpleTable/SimpleTable.styled.es.js";
|
|
195
|
+
import "@tanstack/match-sorter-utils";
|
|
196
|
+
import "../../SimpleTable/context/SimpleTableContext.es.js";
|
|
197
|
+
import "../../SimpleTable/SimpleTableRowTemplate.es.js";
|
|
198
|
+
import "../../Slicer/hooks/useTableDataBySlice.es.js";
|
|
199
|
+
import "../../Slicer/components/SlicerSearch.es.js";
|
|
200
|
+
import "../../Slicer/context/SlicerContext.es.js";
|
|
191
201
|
import "../../DetailsPanel/DetailsPanel.styled.es.js";
|
|
192
202
|
import "../../DetailsPanel/FeedFilters/FeedFilters.styled.es.js";
|
|
193
203
|
import "../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
|
|
@@ -203,50 +213,47 @@ import "../../Views/Views.styled.es.js";
|
|
|
203
213
|
import "../../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
|
|
204
214
|
import "../../Views/ViewsMenu/ViewsMenu.es.js";
|
|
205
215
|
import "../../../components/EntityPanelUploader/EntityPanelUploader.styled.es.js";
|
|
206
|
-
import "
|
|
216
|
+
import "axios";
|
|
217
|
+
import "../../../components/ReviewablesList/ReviewablesList.styled.es.js";
|
|
218
|
+
import "../../../components/ReviewablesList/ReviewablesUpload.styled.es.js";
|
|
207
219
|
import "../../../components/EntityPath/EntityPath.styled.es.js";
|
|
208
220
|
import "../../../components/EntityPath/SegmentProvider.es.js";
|
|
209
|
-
import "../../../components/
|
|
210
|
-
import "../../../components/
|
|
211
|
-
import "../../../components/
|
|
212
|
-
import "../../../components/
|
|
213
|
-
import "../../../components/
|
|
214
|
-
import "../../../components/
|
|
221
|
+
import "../../../components/FeaturedVersionOrder/FeaturedVersionOrder.es.js";
|
|
222
|
+
import "../../../components/Feedback/FeedbackContext.es.js";
|
|
223
|
+
import "../../../components/Feedback/SupportBubble.es.js";
|
|
224
|
+
import "../../../components/FileThumbnail/FileThumbnail.es.js";
|
|
225
|
+
import "../../../components/LegacyBadge/LegacyBadge.es.js";
|
|
226
|
+
import "../../../components/LinksManager/LinksManager.styled.es.js";
|
|
215
227
|
import "../../../components/Powerpack/PowerpackButton.es.js";
|
|
216
228
|
import "../../../components/Powerpack/PricingLink.es.js";
|
|
217
229
|
import "../../../components/Powerpack/PowerpackDialog.styled.es.js";
|
|
218
230
|
import "../../../components/Powerpack/CTAButton.es.js";
|
|
219
231
|
import "../../../components/Powerpack/RequiredAddonVersion.es.js";
|
|
232
|
+
import "../../../components/ProjectTableSettings/ProjectTableSettings.es.js";
|
|
220
233
|
import "../../../components/SizeSlider/SizeSlider.es.js";
|
|
234
|
+
import "../../../components/ReviewableCard/ReviewableCard.es.js";
|
|
235
|
+
import "../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
236
|
+
import "../../../components/SearchFilter/filterDates.es.js";
|
|
221
237
|
import "../../../components/SettingsPanel/SettingsPanel.es.js";
|
|
222
238
|
import "../../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
|
|
223
|
-
import "../../../components/AttributeEditor/components/MinMaxField.es.js";
|
|
224
|
-
import "../../../components/EnumEditor/EnumEditor.styled.es.js";
|
|
225
|
-
import "../../../components/SearchFilter/filterDates.es.js";
|
|
226
|
-
import "../../../components/FeaturedVersionOrder/FeaturedVersionOrder.es.js";
|
|
227
|
-
import "../../../components/Badge/Badge.es.js";
|
|
228
|
-
import "../../../components/VersionUploader/components/UploadVersionDialog.es.js";
|
|
229
|
-
import "../../../components/VersionUploader/context/VersionUploadContext.es.js";
|
|
230
|
-
import "../../../components/Feedback/FeedbackContext.es.js";
|
|
231
|
-
import "../../../components/Feedback/SupportBubble.es.js";
|
|
232
|
-
import "../../../components/Chips/Chips.es.js";
|
|
233
|
-
import "../../../components/LinksManager/LinksManager.styled.es.js";
|
|
234
|
-
import "../../../components/StyledLink/StyledLink.es.js";
|
|
235
239
|
import "../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
|
|
236
|
-
import "../../../components/
|
|
237
|
-
import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
|
|
238
|
-
import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
|
|
239
|
-
import "../../../components/TableGridSwitch/TableGridSwitch.es.js";
|
|
240
|
+
import "../../../components/SimpleFormDialog/SimpleFormDialog.es.js";
|
|
240
241
|
import "../../../components/SortingSetting/SortingSetting.styled.es.js";
|
|
241
|
-
import "../../../components/
|
|
242
|
-
import "../../../components/
|
|
242
|
+
import "../../../components/StyledLink/StyledLink.es.js";
|
|
243
|
+
import "../../../components/TableGridSwitch/TableGridSwitch.es.js";
|
|
244
|
+
import "../../../components/Thumbnail/Thumbnail.styled.es.js";
|
|
245
|
+
import "../../../components/Thumbnail/StackedThumbnails.es.js";
|
|
246
|
+
import "../../../components/ThumbnailSimple/ThumbnailSimple.es.js";
|
|
247
|
+
import "../../../components/VersionUploader/components/UploadVersionDialog.es.js";
|
|
248
|
+
import "../../../components/VersionUploader/context/VersionUploadContext.es.js";
|
|
249
|
+
import "../../../components/Watchers/Watchers.es.js";
|
|
243
250
|
import "../../../components/Menu/Menu.styled.es.js";
|
|
244
251
|
import "../../../components/Menu/MenuItem.es.js";
|
|
245
252
|
import "../../../components/LinksManager/CellEditingDialog.es.js";
|
|
246
253
|
import "../widgets/EmptyWidget.es.js";
|
|
247
254
|
import "../widgets/ErrorWidget.es.js";
|
|
248
255
|
import "../widgets/LoadMoreWidget.es.js";
|
|
249
|
-
const
|
|
256
|
+
const tm = ({
|
|
250
257
|
selectedCells: i,
|
|
251
258
|
setSelectedCells: m,
|
|
252
259
|
focusedCellId: p,
|
|
@@ -275,6 +282,6 @@ const Wi = ({
|
|
|
275
282
|
}, [n, i, p, m, e, f]);
|
|
276
283
|
};
|
|
277
284
|
export {
|
|
278
|
-
|
|
285
|
+
tm as useCheckSelectedCellsVisible
|
|
279
286
|
};
|
|
280
287
|
//# sourceMappingURL=useCheckSelectedCellsVisible.es.js.map
|
package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCheckSelectedCellsVisible.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.ts"],"sourcesContent":["// This hooks checks the current selection of cells is actually visible in the current viewport of the table\n// If they are not visible, they will be removed from the selection\n// This can happen when the user changes the slicer selection or filters (combined filters changes)\n\nimport { useEffect, useRef } from 'react'\nimport { CellId, parseCellId } from '../utils'\nimport { useProjectTableContext } from '../context'\n\ntype CheckSelectedCellsVisibleProps = {\n selectedCells: Set<CellId>\n setSelectedCells: (cells: Set<CellId>) => void\n focusedCellId: CellId | null\n setFocusedCellId: (cellId: CellId | null) => void\n}\n\nexport const useCheckSelectedCellsVisible = ({\n selectedCells,\n setSelectedCells,\n focusedCellId,\n setFocusedCellId,\n}: CheckSelectedCellsVisibleProps): void => {\n const { getEntityById, isLoading } = useProjectTableContext()\n const isMountedRef = useRef(true)\n\n // Initialize the mounted ref on mount\n useEffect(() => {\n isMountedRef.current = true\n return () => {\n isMountedRef.current = false\n }\n }, [])\n\n // checks that all of the selected cells are in the tableData\n // if they are not, they will be removed from the selection\n useEffect(() => {\n if (isLoading) return\n\n // Skip running on initial mount (within 2 seconds)\n if (isMountedRef.current) {\n const timeoutId = setTimeout(() => {\n isMountedRef.current = false\n }, 2000)\n return () => clearTimeout(timeoutId)\n }\n\n const missingCells = new Set<CellId>()\n for (const cellId of selectedCells) {\n // check if the cell rowId is in\n if (!getEntityById(parseCellId(cellId || '')?.rowId || '')) {\n missingCells.add(cellId)\n }\n }\n\n if (missingCells.size > 0) {\n // remove the missing cells from the selection\n const newSelection = new Set<CellId>(selectedCells)\n for (const cellId of missingCells) {\n newSelection.delete(cellId)\n }\n\n setSelectedCells(newSelection)\n\n // if the focused cell is one of the missing cells, clear it\n if (missingCells.has(focusedCellId || '')) {\n setFocusedCellId(null)\n }\n }\n }, [getEntityById, selectedCells, focusedCellId, setSelectedCells, setFocusedCellId, isLoading])\n}\n"],"names":["useCheckSelectedCellsVisible","selectedCells","setSelectedCells","focusedCellId","setFocusedCellId","getEntityById","isLoading","useProjectTableContext","isMountedRef","useRef","useEffect","timeoutId","missingCells","cellId","parseCellId","newSelection"],"mappings":"
|
|
1
|
+
{"version":3,"file":"useCheckSelectedCellsVisible.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.ts"],"sourcesContent":["// This hooks checks the current selection of cells is actually visible in the current viewport of the table\n// If they are not visible, they will be removed from the selection\n// This can happen when the user changes the slicer selection or filters (combined filters changes)\n\nimport { useEffect, useRef } from 'react'\nimport { CellId, parseCellId } from '../utils'\nimport { useProjectTableContext } from '../context'\n\ntype CheckSelectedCellsVisibleProps = {\n selectedCells: Set<CellId>\n setSelectedCells: (cells: Set<CellId>) => void\n focusedCellId: CellId | null\n setFocusedCellId: (cellId: CellId | null) => void\n}\n\nexport const useCheckSelectedCellsVisible = ({\n selectedCells,\n setSelectedCells,\n focusedCellId,\n setFocusedCellId,\n}: CheckSelectedCellsVisibleProps): void => {\n const { getEntityById, isLoading } = useProjectTableContext()\n const isMountedRef = useRef(true)\n\n // Initialize the mounted ref on mount\n useEffect(() => {\n isMountedRef.current = true\n return () => {\n isMountedRef.current = false\n }\n }, [])\n\n // checks that all of the selected cells are in the tableData\n // if they are not, they will be removed from the selection\n useEffect(() => {\n if (isLoading) return\n\n // Skip running on initial mount (within 2 seconds)\n if (isMountedRef.current) {\n const timeoutId = setTimeout(() => {\n isMountedRef.current = false\n }, 2000)\n return () => clearTimeout(timeoutId)\n }\n\n const missingCells = new Set<CellId>()\n for (const cellId of selectedCells) {\n // check if the cell rowId is in\n if (!getEntityById(parseCellId(cellId || '')?.rowId || '')) {\n missingCells.add(cellId)\n }\n }\n\n if (missingCells.size > 0) {\n // remove the missing cells from the selection\n const newSelection = new Set<CellId>(selectedCells)\n for (const cellId of missingCells) {\n newSelection.delete(cellId)\n }\n\n setSelectedCells(newSelection)\n\n // if the focused cell is one of the missing cells, clear it\n if (missingCells.has(focusedCellId || '')) {\n setFocusedCellId(null)\n }\n }\n }, [getEntityById, selectedCells, focusedCellId, setSelectedCells, setFocusedCellId, isLoading])\n}\n"],"names":["useCheckSelectedCellsVisible","selectedCells","setSelectedCells","focusedCellId","setFocusedCellId","getEntityById","isLoading","useProjectTableContext","isMountedRef","useRef","useEffect","timeoutId","missingCells","cellId","parseCellId","newSelection"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeO,MAAMA,KAA+B,CAAC;AAAA,EAC3C,eAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,eAAAC;AAAA,EACA,kBAAAC;AACF,MAA4C;AAC1C,QAAM,EAAE,eAAAC,GAAe,WAAAC,EAAA,IAAcC,EAAA,GAC/BC,IAAeC,EAAO,EAAI;AAGhC,EAAAC,EAAU,OACRF,EAAa,UAAU,IAChB,MAAM;AACX,IAAAA,EAAa,UAAU;AAAA,EACzB,IACC,CAAA,CAAE,GAILE,EAAU,MAAM;AACd,QAAIJ,EAAW;AAGf,QAAIE,EAAa,SAAS;AACxB,YAAMG,IAAY,WAAW,MAAM;AACjC,QAAAH,EAAa,UAAU;AAAA,MACzB,GAAG,GAAI;AACP,aAAO,MAAM,aAAaG,CAAS;AAAA,IACrC;AAEA,UAAMC,wBAAmB,IAAA;AACzB,eAAWC,KAAUZ;AAEnB,MAAKI,EAAcS,EAAYD,KAAU,EAAE,GAAG,SAAS,EAAE,KACvDD,EAAa,IAAIC,CAAM;AAI3B,QAAID,EAAa,OAAO,GAAG;AAEzB,YAAMG,IAAe,IAAI,IAAYd,CAAa;AAClD,iBAAWY,KAAUD;AACnB,QAAAG,EAAa,OAAOF,CAAM;AAG5B,MAAAX,EAAiBa,CAAY,GAGzBH,EAAa,IAAIT,KAAiB,EAAE,KACtCC,EAAiB,IAAI;AAAA,IAEzB;AAAA,EACF,GAAG,CAACC,GAAeJ,GAAeE,GAAeD,GAAkBE,GAAkBE,CAAS,CAAC;AACjG;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("react");require("react-toastify");require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../context/CellEditingContext.cjs.js");require("../../../../../_virtual/jsx-runtime.cjs.js");require("@ynput/ayon-react-components");require("short-uuid");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");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("../../../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("@tanstack/react-virtual");require("../ProjectTreeTable.styled.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/SelectedRowsContext.cjs.js");const l=require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");const f=require("../context/ProjectTableContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");const g=require("./useGetGroupedFields.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.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/LinksManager/LinksManager.styled.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");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const y=e=>{const{updateGroupBy:s}=l.useColumnSettingsContext(),{attribFields:n,scopes:a}=f.useProjectTableContext(),r=e.startsWith("attrib_"),t=r?e.replace("attrib_",""):void 0,i=q.useMemo(()=>r?n.find(c=>c.name===t):void 0,[n,r,t]),u=q.useMemo(()=>{if(e.startsWith("attrib_"))return"attrib."+e.replace("attrib_","");if(e==="subType"){if(a.includes("task"))return"taskType";if(a.includes("version"))return"productType"}if(["status","assignees","tags","taskType"].includes(e))return e},[e]),o=q.useMemo(()=>u?r?!!i&&g.isAttribGroupable(i,"task"):!0:!1,[i,r,u]),p=q.useMemo(()=>r?i?.data.title||i?.name||t||"Attribute":e==="status"?"Status":e==="subType"?"Type":e==="assignees"?"Assignees":e==="tags"?"Tags":"Column",[i,t,e,r]),b=q.useCallback(()=>{u&&s({id:u,desc:!1})},[u,s]);return{targetGroupById:u,canGroupThisColumn:o,groupLabel:p,groupBySelectedColumn:b}};exports.useColumnGroupBy=y;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("react");require("react-toastify");require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../context/CellEditingContext.cjs.js");require("../../../../../_virtual/jsx-runtime.cjs.js");require("@ynput/ayon-react-components");require("short-uuid");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("clsx");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("../../../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");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("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("@tanstack/react-virtual");require("../ProjectTreeTable.styled.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/SelectedRowsContext.cjs.js");const l=require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");const f=require("../context/ProjectTableContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");const g=require("./useGetGroupedFields.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../../SimpleTable/SimpleTable.styled.cjs.js");require("@tanstack/match-sorter-utils");require("../../SimpleTable/context/SimpleTableContext.cjs.js");require("../../SimpleTable/SimpleTableRowTemplate.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/LinksManager/LinksManager.styled.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");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const y=e=>{const{updateGroupBy:s}=l.useColumnSettingsContext(),{attribFields:n,scopes:a}=f.useProjectTableContext(),r=e.startsWith("attrib_"),t=r?e.replace("attrib_",""):void 0,i=q.useMemo(()=>r?n.find(c=>c.name===t):void 0,[n,r,t]),u=q.useMemo(()=>{if(e.startsWith("attrib_"))return"attrib."+e.replace("attrib_","");if(e==="subType"){if(a.includes("task"))return"taskType";if(a.includes("version"))return"productType"}if(["status","assignees","tags","taskType"].includes(e))return e},[e]),o=q.useMemo(()=>u?r?!!i&&g.isAttribGroupable(i,"task"):!0:!1,[i,r,u]),p=q.useMemo(()=>r?i?.data.title||i?.name||t||"Attribute":e==="status"?"Status":e==="subType"?"Type":e==="assignees"?"Assignees":e==="tags"?"Tags":"Column",[i,t,e,r]),b=q.useCallback(()=>{u&&s({id:u,desc:!1})},[u,s]);return{targetGroupById:u,canGroupThisColumn:o,groupLabel:p,groupBySelectedColumn:b}};exports.useColumnGroupBy=y;
|
|
2
2
|
//# sourceMappingURL=useColumnGroupBy.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useColumnGroupBy.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useColumnGroupBy.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport { useColumnSettingsContext, useProjectTableContext } from '../context'\nimport { isAttribGroupable } from './useGetGroupedFields'\n\n/**\n * Encapsulates mapping a table column to a groupBy id, determining if it is eligible\n * for grouping, and providing a helper to trigger grouping.\n */\nexport const useColumnGroupBy = (columnId: string) => {\n const { updateGroupBy } = useColumnSettingsContext()\n const { attribFields, scopes } = useProjectTableContext()\n\n const isAttribColumn = columnId.startsWith('attrib_')\n const attribName = isAttribColumn ? columnId.replace('attrib_', '') : undefined\n const attribField = useMemo(\n () => (isAttribColumn ? attribFields.find((f) => f.name === attribName) : undefined),\n [attribFields, isAttribColumn, attribName],\n )\n\n const targetGroupById = useMemo(() => {\n if (columnId.startsWith('attrib_')) return 'attrib.' + columnId.replace('attrib_', '')\n if (columnId === 'subType') {\n if (scopes.includes('task')) {\n return 'taskType'\n } else if (scopes.includes('version')) {\n return 'productType'\n }\n }\n if (['status', 'assignees', 'tags', 'taskType'].includes(columnId)) return columnId\n return undefined\n }, [columnId])\n\n const canGroupThisColumn = useMemo(() => {\n if (!targetGroupById) return false\n if (!isAttribColumn) return true\n return !!attribField && isAttribGroupable(attribField, 'task')\n }, [attribField, isAttribColumn, targetGroupById])\n\n const groupLabel = useMemo(() => {\n if (isAttribColumn)\n return attribField?.data.title || attribField?.name || attribName || 'Attribute'\n if (columnId === 'status') return 'Status'\n if (columnId === 'subType') return 'Type'\n if (columnId === 'assignees') return 'Assignees'\n if (columnId === 'tags') return 'Tags'\n return 'Column'\n }, [attribField, attribName, columnId, isAttribColumn])\n\n const groupBySelectedColumn = useCallback(() => {\n if (targetGroupById) updateGroupBy({ id: targetGroupById, desc: false })\n }, [targetGroupById, updateGroupBy])\n\n return {\n targetGroupById,\n canGroupThisColumn,\n groupLabel,\n groupBySelectedColumn,\n }\n}\n"],"names":["useColumnGroupBy","columnId","updateGroupBy","useColumnSettingsContext","attribFields","scopes","useProjectTableContext","isAttribColumn","attribName","attribField","useMemo","f","targetGroupById","canGroupThisColumn","isAttribGroupable","groupLabel","groupBySelectedColumn","useCallback"],"mappings":"
|
|
1
|
+
{"version":3,"file":"useColumnGroupBy.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useColumnGroupBy.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react'\nimport { useColumnSettingsContext, useProjectTableContext } from '../context'\nimport { isAttribGroupable } from './useGetGroupedFields'\n\n/**\n * Encapsulates mapping a table column to a groupBy id, determining if it is eligible\n * for grouping, and providing a helper to trigger grouping.\n */\nexport const useColumnGroupBy = (columnId: string) => {\n const { updateGroupBy } = useColumnSettingsContext()\n const { attribFields, scopes } = useProjectTableContext()\n\n const isAttribColumn = columnId.startsWith('attrib_')\n const attribName = isAttribColumn ? columnId.replace('attrib_', '') : undefined\n const attribField = useMemo(\n () => (isAttribColumn ? attribFields.find((f) => f.name === attribName) : undefined),\n [attribFields, isAttribColumn, attribName],\n )\n\n const targetGroupById = useMemo(() => {\n if (columnId.startsWith('attrib_')) return 'attrib.' + columnId.replace('attrib_', '')\n if (columnId === 'subType') {\n if (scopes.includes('task')) {\n return 'taskType'\n } else if (scopes.includes('version')) {\n return 'productType'\n }\n }\n if (['status', 'assignees', 'tags', 'taskType'].includes(columnId)) return columnId\n return undefined\n }, [columnId])\n\n const canGroupThisColumn = useMemo(() => {\n if (!targetGroupById) return false\n if (!isAttribColumn) return true\n return !!attribField && isAttribGroupable(attribField, 'task')\n }, [attribField, isAttribColumn, targetGroupById])\n\n const groupLabel = useMemo(() => {\n if (isAttribColumn)\n return attribField?.data.title || attribField?.name || attribName || 'Attribute'\n if (columnId === 'status') return 'Status'\n if (columnId === 'subType') return 'Type'\n if (columnId === 'assignees') return 'Assignees'\n if (columnId === 'tags') return 'Tags'\n return 'Column'\n }, [attribField, attribName, columnId, isAttribColumn])\n\n const groupBySelectedColumn = useCallback(() => {\n if (targetGroupById) updateGroupBy({ id: targetGroupById, desc: false })\n }, [targetGroupById, updateGroupBy])\n\n return {\n targetGroupById,\n canGroupThisColumn,\n groupLabel,\n groupBySelectedColumn,\n }\n}\n"],"names":["useColumnGroupBy","columnId","updateGroupBy","useColumnSettingsContext","attribFields","scopes","useProjectTableContext","isAttribColumn","attribName","attribField","useMemo","f","targetGroupById","canGroupThisColumn","isAttribGroupable","groupLabel","groupBySelectedColumn","useCallback"],"mappings":"svcAQO,MAAMA,EAAoBC,GAAqB,CACpD,KAAM,CAAE,cAAAC,CAAA,EAAkBC,2BAAA,EACpB,CAAE,aAAAC,EAAc,OAAAC,CAAA,EAAWC,yBAAA,EAE3BC,EAAiBN,EAAS,WAAW,SAAS,EAC9CO,EAAaD,EAAiBN,EAAS,QAAQ,UAAW,EAAE,EAAI,OAChEQ,EAAcC,EAAAA,QAClB,IAAOH,EAAiBH,EAAa,KAAMO,GAAMA,EAAE,OAASH,CAAU,EAAI,OAC1E,CAACJ,EAAcG,EAAgBC,CAAU,CAAA,EAGrCI,EAAkBF,EAAAA,QAAQ,IAAM,CACpC,GAAIT,EAAS,WAAW,SAAS,QAAU,UAAYA,EAAS,QAAQ,UAAW,EAAE,EACrF,GAAIA,IAAa,UAAW,CAC1B,GAAII,EAAO,SAAS,MAAM,EACxB,MAAO,WACT,GAAWA,EAAO,SAAS,SAAS,EAClC,MAAO,aAEX,CACA,GAAI,CAAC,SAAU,YAAa,OAAQ,UAAU,EAAE,SAASJ,CAAQ,EAAG,OAAOA,CAE7E,EAAG,CAACA,CAAQ,CAAC,EAEPY,EAAqBH,EAAAA,QAAQ,IAC5BE,EACAL,EACE,CAAC,CAACE,GAAeK,oBAAkBL,EAAa,MAAM,EADjC,GADC,GAG5B,CAACA,EAAaF,EAAgBK,CAAe,CAAC,EAE3CG,EAAaL,EAAAA,QAAQ,IACrBH,EACKE,GAAa,KAAK,OAASA,GAAa,MAAQD,GAAc,YACnEP,IAAa,SAAiB,SAC9BA,IAAa,UAAkB,OAC/BA,IAAa,YAAoB,YACjCA,IAAa,OAAe,OACzB,SACN,CAACQ,EAAaD,EAAYP,EAAUM,CAAc,CAAC,EAEhDS,EAAwBC,EAAAA,YAAY,IAAM,CAC1CL,GAAiBV,EAAc,CAAE,GAAIU,EAAiB,KAAM,GAAO,CACzE,EAAG,CAACA,EAAiBV,CAAa,CAAC,EAEnC,MAAO,CACL,gBAAAU,EACA,mBAAAC,EACA,WAAAE,EACA,sBAAAC,CAAA,CAEJ"}
|