@ynput/ayon-frontend-shared 0.3.37 → 0.3.39
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 +25 -24
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/_virtual/index.cjs6.js +1 -1
- package/dist/_virtual/index.cjs8.js +1 -1
- package/dist/_virtual/index.es6.js +2 -2
- package/dist/_virtual/index.es8.js +2 -2
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +12 -11
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
- package/dist/node_modules/parse-numeric-range/index.es.js +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/@module-federation/error-codes/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/utils.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/utils.es.js +1 -1
- package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
- package/dist/shared/node_modules/react-is/index.es.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.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 +5 -4
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +5 -4
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.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 +5 -4
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +5 -4
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.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 +5 -4
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +5 -4
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +5 -4
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
- 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 +5 -4
- 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 +5 -4
- 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 +6 -5
- 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 +5 -4
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js +5 -4
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +254 -240
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +7 -6
- package/dist/shared/src/components/SimpleFormDialog/FormFile.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 +5 -4
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +5 -4
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +9 -8
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.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 +5 -4
- 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 +5 -4
- 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 +5 -4
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +5 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +5 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +5 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +5 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +5 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +17 -16
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +5 -4
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -4
- package/dist/shared/src/containers/DetailsPanel/containers/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 +5 -4
- 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 +5 -4
- 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 +5 -4
- 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 +5 -4
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +5 -4
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.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 +5 -4
- 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 +5 -4
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +7 -6
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
- 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 +5 -4
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +9 -8
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.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 +5 -4
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.es.js +5 -4
- package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js +3 -2
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +5 -4
- package/dist/shared/src/containers/ListTable/ListTableHeader.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 +171 -168
- 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 +87 -85
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.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 +5 -4
- 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 +5 -4
- 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 +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.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 -58
- 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 +5 -4
- 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 +8 -7
- 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 +5 -4
- 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 +3 -2
- 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 +3 -2
- 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 +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +248 -207
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.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 +5 -4
- 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 +5 -4
- 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 +3 -2
- 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 +5 -4
- 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 +5 -4
- 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 +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.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 +16 -15
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +66 -55
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +5 -4
- 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 +47 -45
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +11 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +76 -51
- 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 +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.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 +5 -4
- 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 +5 -4
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +5 -4
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +5 -4
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
- 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 +5 -4
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.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 +7 -6
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/widgets/CellWidget.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/widgets/LinksWidget.d.ts +1 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFetchOverviewData.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useFetchOverviewData.ts"],"sourcesContent":["import {\n useGetGroupedTasksListQuery,\n useGetOverviewTasksByFoldersQuery,\n useGetSearchFoldersQuery,\n useGetTasksListInfiniteInfiniteQuery,\n} from '@shared/api'\nimport type { FolderListItem, GetGroupedTasksListArgs, EntityGroup, QueryFilter } from '@shared/api'\nimport { useGroupedPagination } from '@shared/hooks'\nimport { getGroupByDataType } from '@shared/util'\nimport { EditorTaskNode, FolderNodeMap, MatchingFolder, TaskNodeMap } from '../types/table'\nimport { useEffect, useMemo, useState } from 'react'\nimport { ExpandedState, SortingState } from '@tanstack/react-table'\nimport { determineLoadingTaskFolders } from '../utils/loadingUtils'\nimport { LoadingTasks } from '../types'\nimport { TasksByFolderMap } from '../utils'\nimport { TableGroupBy } from '../context'\nimport { isGroupId, GROUP_BY_ID } from '../hooks/useBuildGroupByTableData'\nimport { ProjectTableAttribute } from '../hooks/useAttributesList'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport { useGetEntityLinksQuery } from '@shared/api'\nimport { useProjectFoldersContext } from '@shared/context'\n\ntype QueryFilterParams = {\n filter: QueryFilter | undefined\n filterString?: string\n search?: string\n}\n\ntype useFetchOverviewDataData = {\n foldersMap: FolderNodeMap\n tasksMap: TaskNodeMap\n tasksByFolderMap: TasksByFolderMap\n isLoadingAll: boolean // the whole table is a loading state\n isLoadingMore: boolean // loading more tasks\n loadingTasks: LoadingTasks // show number of loading tasks per folder or root\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n}\n\ntype Params = {\n projectName: string\n selectedFolders: string[] // folders selected in the slicer (hierarchy)\n excludeSelectedFolders?: boolean\n taskIds?: string[] // specific task IDs to filter by (from entity list slicer)\n taskFilters: QueryFilterParams // filters for tasks\n folderFilters: QueryFilterParams // filters for folders\n sorting: SortingState\n groupBy: TableGroupBy | undefined\n taskGroups: EntityGroup[]\n taskGroupsCount?: number // override for number of items per group\n expanded: ExpandedState\n showHierarchy: boolean\n isFlatFolderView?: boolean\n attribFields: ProjectTableAttribute[]\n modules: ProjectTableModulesType\n skipLinks?: boolean\n showComments?: boolean // only fetch latestComments when the comments column is visible\n}\n\nexport const useFetchOverviewData = ({\n projectName,\n selectedFolders, // comes from the slicer\n excludeSelectedFolders = false,\n taskIds, // specific task IDs from entity list slicer\n taskFilters,\n folderFilters,\n sorting,\n groupBy,\n taskGroups = [],\n taskGroupsCount,\n expanded,\n showHierarchy,\n isFlatFolderView = false,\n attribFields,\n modules,\n skipLinks,\n showComments = false,\n}: Params): useFetchOverviewDataData => {\n const { getGroupQueries, isLoading: isLoadingModules } = modules\n\n const {\n folders,\n isLoading: isLoadingFolders,\n isUninitialized: isUninitializedFolders,\n refetch: refetchFolders,\n } = useProjectFoldersContext()\n\n const expandedParentIds = Object.entries(expanded)\n .filter(([, isExpanded]) => isExpanded)\n .filter(([id]) => !isGroupId(id)) // filter out the root folder\n .map(([id]) => id)\n\n const taskParentIds = excludeSelectedFolders\n ? Array.from(new Set([...expandedParentIds, ...selectedFolders]))\n : expandedParentIds\n\n const {\n data: expandedFoldersTasks = [],\n isFetching: isFetchingExpandedFoldersTasks,\n refetch: refetchExpandedFoldersTasks,\n isUninitialized: isUninitializedExpandedFoldersTasks,\n } = useGetOverviewTasksByFoldersQuery(\n {\n projectName,\n parentIds: taskParentIds,\n filter: taskFilters.filterString,\n folderFilter: folderFilters.filterString,\n search: taskFilters.search,\n showComments,\n },\n { skip: !taskParentIds.length || (!showHierarchy && !isFlatFolderView) },\n )\n\n const skipFoldersByTaskFilter =\n (!taskFilters.filterString &&\n !folderFilters.filterString &&\n !taskFilters.search &&\n !folderFilters.search) ||\n !folders.length ||\n (!showHierarchy && !isFlatFolderView)\n // get folders that would be left if the filters were applied for tasks\n const {\n data: foldersByTaskFilter,\n isUninitialized,\n isLoading: isLoadingTasksFolders,\n isUninitialized: isUninitializedTasksFolders,\n refetch: refetchTasksFolders,\n } = useGetSearchFoldersQuery(\n {\n projectName,\n folderSearchRequest: {\n taskFilter: taskFilters.filter?.conditions?.length ? taskFilters.filter : undefined,\n folderFilter: folderFilters.filter?.conditions?.length ? folderFilters.filter : undefined,\n search: taskFilters.search,\n },\n },\n {\n skip: skipFoldersByTaskFilter,\n },\n )\n\n // create a list of folders that are current visible in the table\n // root folders are always visible\n // then a folder is visible if it's parent is expanded\n const visibleFolders = useMemo(() => {\n const visibleSet = new Set<string>()\n\n // Check each folder in the map\n folders.forEach((folder) => {\n // Root folders are always visible\n if (!folder.parentId) {\n visibleSet.add(folder.id)\n return\n }\n\n // Check if parent is expanded\n const parentId = folder.parentId as string\n const isRootFromSlicer = excludeSelectedFolders\n ? selectedFolders.includes(parentId)\n : selectedFolders.includes(folder.id as string)\n const expandedMap = expanded as Record<string, boolean>\n if (expandedMap[parentId] === true || isRootFromSlicer) {\n visibleSet.add(folder.id)\n }\n })\n\n return visibleSet\n }, [\n folders,\n foldersByTaskFilter,\n skipFoldersByTaskFilter,\n expanded,\n selectedFolders,\n excludeSelectedFolders,\n ])\n\n // get all links for visible folders\n const {\n data: foldersLinks = [],\n refetch: refetchFoldersLinks,\n isUninitialized: isUninitializedFoldersLinks,\n } = useGetEntityLinksQuery(\n {\n projectName,\n entityIds: Array.from(visibleFolders),\n entityType: 'folder',\n },\n { skip: skipLinks },\n )\n\n // create a map of folders by id for efficient lookups\n const foldersMap: FolderNodeMap = useMemo(() => {\n const map = new Map()\n\n const addExtraDataToFolder = (folder: FolderListItem) => {\n // add any extra data to folder\n const folderWithExtraData: MatchingFolder = {\n ...folder,\n entityId: folder.id,\n entityType: 'folder',\n links: foldersLinks?.find((link) => link.id === folder.id)?.links || [],\n }\n return folderWithExtraData\n }\n\n // If we have task filters and folders to filter\n if (!isUninitialized && foldersByTaskFilter && folders.length) {\n // Create a set for efficient lookups of filtered folder IDs\n const relevantFolderIds = new Set<string>()\n\n // First pass: Add all folders from the task filter\n for (const folderId of foldersByTaskFilter) {\n relevantFolderIds.add(folderId)\n }\n\n // Create a map of folders by ID for parentId lookups\n const foldersByIdMap = new Map<string, (typeof folders)[0]>()\n for (const folder of folders) {\n foldersByIdMap.set(folder.id as string, folder)\n }\n\n // Second pass: Add all parent folders of filtered folders\n const addParents = (folderId: string) => {\n const folder = foldersByIdMap.get(folderId)\n if (folder && folder.parentId) {\n relevantFolderIds.add(folder.parentId as string)\n addParents(folder.parentId as string)\n }\n }\n\n // In flat folder view folders are shown as top-level rows — ancestors are\n // not needed and would bring in unrelated subtrees (e.g. showing the root\n // \"assets\" node which then exposes all its children).\n // In hierarchy mode ancestors ARE needed so the tree path is navigable.\n if (!isFlatFolderView) {\n const matchedIds = [...relevantFolderIds]\n for (const folderId of matchedIds) {\n addParents(folderId)\n }\n }\n\n // Third pass: Build the final map using only relevant folders\n for (const folder of folders) {\n if (relevantFolderIds.has(folder.id as string)) {\n map.set(folder.id as string, addExtraDataToFolder(folder))\n }\n }\n } else {\n // No filtering, include all folders\n for (const folder of folders) {\n map.set(folder.id as string, addExtraDataToFolder(folder))\n }\n }\n\n // Filter by selected folders if needed\n if (selectedFolders.length) {\n const selectedPaths = selectedFolders\n .map((id) => map.get(id)?.path)\n .filter(Boolean) as string[]\n\n // Create a new map that only contains selected folders and their children\n const filteredMap = new Map()\n\n // For each folder, check if it should be included\n map.forEach((folder, folderId) => {\n const folderPath = folder.path as string\n\n const isSelected = selectedPaths.includes(folderPath)\n\n // Include if it's a child of any selected folder\n const isChild = selectedPaths.some((selectedPath) =>\n folderPath.startsWith(selectedPath + '/'),\n )\n\n if (isChild || (isSelected && !excludeSelectedFolders)) {\n filteredMap.set(folderId, addExtraDataToFolder(folder))\n }\n })\n\n return filteredMap\n }\n\n return map\n }, [\n folders,\n foldersByTaskFilter,\n isUninitialized,\n selectedFolders,\n excludeSelectedFolders,\n foldersLinks,\n isFlatFolderView,\n ])\n\n // calculate partial loading states\n const loadingTasksForParents = useMemo(() => {\n if (isFetchingExpandedFoldersTasks) {\n return determineLoadingTaskFolders({\n expandedFoldersTasks,\n expandedParentIds,\n foldersMap,\n })\n } else return {}\n }, [isFetchingExpandedFoldersTasks, expandedFoldersTasks, expandedParentIds, foldersMap])\n\n const [tasksListCursor, setTasksListCursor] = useState('')\n\n // every time the sorting changes, reset the cursor\n useEffect(() => {\n if (tasksListCursor) setTasksListCursor('')\n }, [sorting, tasksListCursor])\n\n // Create sort params for infinite query\n const singleSort = { ...sorting[0] }\n // if task list and sorting by name, sort by path instead\n const sortByPath = singleSort?.id === 'name' && !showHierarchy\n const sortId = sortByPath ? 'path' : singleSort?.id === 'subType' ? 'taskType' : singleSort?.id\n const tasksFolderIdsParams = selectedFolders.length\n ? Array.from(\n new Set([...foldersMap.keys(), ...(excludeSelectedFolders ? selectedFolders : [])]),\n )\n : undefined\n\n // Use the new infinite query hook for tasks list with correct name\n const {\n data: tasksListInfiniteData,\n isLoading: isLoadingTasksList,\n isFetching: isFetchingTasksList,\n fetchNextPage,\n hasNextPage,\n isFetchingNextPage: isFetchingNextPageTasksList,\n isUninitialized: isUninitializedTasksList,\n refetch: refetchTasksList,\n } = useGetTasksListInfiniteInfiniteQuery(\n {\n projectName,\n filter: taskFilters.filterString,\n folderFilter: folderFilters.filterString,\n search: taskFilters.search,\n folderIds: taskIds?.length ? undefined : tasksFolderIdsParams,\n taskIds: taskIds?.length ? taskIds : undefined,\n sortBy: sortId ? sortId.replace('_', '.') : undefined,\n desc: !!singleSort?.desc,\n showComments,\n },\n {\n // Use flat task list when entity list provides specific task IDs, even in hierarchy mode\n skip: (showHierarchy || isFlatFolderView) && !taskIds?.length,\n initialPageParam: {\n cursor: '',\n desc: !!singleSort?.desc,\n },\n },\n )\n\n // Extract tasks from infinite query data correctly\n const tasksList = useMemo(() => {\n if (!tasksListInfiniteData?.pages) return []\n return tasksListInfiniteData.pages.flatMap((page) => page.tasks || [])\n }, [tasksListInfiniteData?.pages])\n\n const { pageCounts: groupPageCounts, incrementPageCount } = useGroupedPagination({\n groups: taskGroups,\n })\n\n // for grouped tasks, we fetch all tasks for each group\n // we do this by building a list of groups with filters for that group\n const groupByDataType = getGroupByDataType(groupBy, attribFields)\n\n // get expanded group values from the expanded state\n // group IDs are formatted as `_GROUP_<value>` so we extract the values\n const expandedGroupValues = useMemo(() => {\n return Object.entries(expanded)\n .filter(([, isExpanded]) => isExpanded)\n .filter(([id]) => isGroupId(id))\n .map(([id]) => id.slice(GROUP_BY_ID.length))\n }, [expanded])\n\n // get group queries from powerpack, filtered to only include expanded groups\n const groupQueries: GetGroupedTasksListArgs['groups'] = useMemo(() => {\n if (!groupBy) return []\n\n const allGroupQueries =\n getGroupQueries?.({\n groups: taskGroups,\n taskGroups, // deprecated, but keep for backward compatibility\n filters: taskFilters.filter,\n groupBy,\n groupPageCounts,\n }) ?? []\n\n // Only fetch tasks for groups that are expanded\n return allGroupQueries.filter((group) => expandedGroupValues.includes(group.value))\n }, [\n groupBy,\n taskGroups,\n groupPageCounts,\n groupByDataType,\n taskFilters.filter,\n getGroupQueries,\n expandedGroupValues,\n ])\n\n const {\n data: { tasks: groupTasks = [] } = {},\n isUninitialized: isUninitializedGroupedTasks,\n refetch: refetchGroupedTasks,\n } = useGetGroupedTasksListQuery(\n {\n projectName,\n groups: groupQueries,\n sortBy: sortId ? sortId.replace('_', '.') : undefined,\n desc: !!singleSort?.desc,\n search: taskFilters.search,\n folderFilter: folderFilters.filterString,\n folderIds: tasksFolderIdsParams,\n groupCount: taskGroupsCount,\n showComments,\n },\n {\n skip: !groupBy || !groupQueries.length || isLoadingModules,\n },\n )\n\n // Resolve which task source to use based on current mode\n // When entity list provides specific task IDs, use flat task list even in hierarchy mode\n const resolvedTasks = useMemo(() => {\n if (taskIds?.length) return tasksList\n if (showHierarchy || isFlatFolderView) return expandedFoldersTasks\n if (groupBy) return groupTasks\n return tasksList\n }, [\n taskIds,\n showHierarchy,\n isFlatFolderView,\n groupBy,\n tasksList,\n expandedFoldersTasks,\n groupTasks,\n ])\n\n // Get visible tasks for link fetching\n const visibleTasks = useMemo(() => {\n return new Set(resolvedTasks.map((task) => task.id))\n }, [resolvedTasks])\n\n // Get all links for visible tasks\n const {\n data: tasksLinks = [],\n refetch: refetchTasksLinks,\n isUninitialized: isUninitializedTasksLinks,\n } = useGetEntityLinksQuery(\n {\n projectName,\n entityIds: Array.from(visibleTasks),\n entityType: 'task',\n },\n {\n skip: visibleTasks.size === 0 || skipLinks,\n },\n )\n\n const handleFetchNextPage = (group?: string) => {\n if (groupBy) {\n if (group && group in groupPageCounts) {\n incrementPageCount(group)\n }\n } else if (hasNextPage) {\n fetchNextPage()\n }\n }\n\n // tasksMaps is a map of tasks by task ID\n // tasksByFolderMap is a map of tasks by folder ID\n const { tasksMap, tasksByFolderMap } = useMemo(() => {\n const tasksMap: TaskNodeMap = new Map()\n const tasksByFolderMap: TasksByFolderMap = new Map()\n\n const addExtraDataToTask = (task: EditorTaskNode) => ({\n ...task,\n entityId: task.id,\n entityType: 'task' as const,\n links: tasksLinks?.find((link) => link.id === task.id)?.links || [],\n })\n\n for (const task of resolvedTasks) {\n const taskId = task.id as string\n const folderId = task.folderId as string\n\n if (tasksMap.has(taskId)) {\n // merge specific data if the task already exists\n const existingTask = tasksMap.get(taskId) as EditorTaskNode\n const currentTask = addExtraDataToTask(task)\n const mergedTask = {\n ...existingTask,\n ...currentTask,\n groups: [...(existingTask.groups || []), ...(currentTask.groups || [])],\n }\n\n tasksMap.set(taskId, mergedTask)\n } else {\n tasksMap.set(taskId, addExtraDataToTask(task))\n }\n\n if (tasksByFolderMap.has(folderId)) {\n // dedup like tasksMap — resolvedTasks can contain the same task twice\n // (overlapping infinite-query pages, or a task in multiple groups)\n const folderTaskIds = tasksByFolderMap.get(folderId)!\n if (!folderTaskIds.includes(taskId)) folderTaskIds.push(taskId)\n } else {\n tasksByFolderMap.set(folderId, [taskId])\n }\n }\n\n return { tasksMap, tasksByFolderMap }\n }, [resolvedTasks, tasksLinks])\n\n // When entity list provides specific task IDs, filter folders to only those containing tasks\n const filteredFoldersMap: FolderNodeMap = useMemo(() => {\n if (!taskIds?.length || !tasksByFolderMap.size) return foldersMap\n\n const relevantFolderIds = new Set<string>()\n\n // Add all folders that contain selected tasks\n for (const folderId of tasksByFolderMap.keys()) {\n relevantFolderIds.add(folderId)\n }\n\n // Add parent folders for proper tree display\n const addParents = (folderId: string) => {\n const folder = foldersMap.get(folderId)\n if (folder && folder.parentId) {\n const parentId = folder.parentId as string\n if (!relevantFolderIds.has(parentId)) {\n relevantFolderIds.add(parentId)\n addParents(parentId)\n }\n }\n }\n\n for (const folderId of relevantFolderIds) {\n addParents(folderId)\n }\n\n const filtered = new Map() as FolderNodeMap\n for (const [id, folder] of foldersMap) {\n if (relevantFolderIds.has(id)) {\n filtered.set(id, folder)\n }\n }\n\n return filtered\n }, [foldersMap, tasksByFolderMap, taskIds])\n\n // reload all data for all queries\n const reloadTableData = () => {\n // only reload if there is data\n if (!isUninitializedFolders) refetchFolders()\n if (!isUninitializedExpandedFoldersTasks) refetchExpandedFoldersTasks()\n if (!isUninitializedTasksFolders) refetchTasksFolders()\n if (!isUninitializedTasksList) refetchTasksList()\n if (!isUninitializedGroupedTasks) refetchGroupedTasks()\n if (!isUninitializedFoldersLinks) refetchFoldersLinks()\n if (!isUninitializedTasksLinks) refetchTasksLinks()\n }\n\n return {\n foldersMap: filteredFoldersMap,\n tasksMap: tasksMap,\n tasksByFolderMap: tasksByFolderMap,\n isLoadingAll:\n isLoadingFolders || isLoadingTasksList || isLoadingTasksFolders || isLoadingModules, // these all show a full loading state\n isLoadingMore: isFetchingNextPageTasksList,\n loadingTasks: loadingTasksForParents,\n fetchNextPage: handleFetchNextPage,\n reloadTableData,\n }\n}\n"],"names":["useFetchOverviewData","projectName","selectedFolders","excludeSelectedFolders","taskIds","taskFilters","folderFilters","sorting","groupBy","taskGroups","taskGroupsCount","expanded","showHierarchy","isFlatFolderView","attribFields","modules","skipLinks","showComments","getGroupQueries","isLoadingModules","folders","isLoadingFolders","isUninitializedFolders","refetchFolders","useProjectFoldersContext","expandedParentIds","isExpanded","id","isGroupId","taskParentIds","expandedFoldersTasks","isFetchingExpandedFoldersTasks","refetchExpandedFoldersTasks","isUninitializedExpandedFoldersTasks","useGetOverviewTasksByFoldersQuery","skipFoldersByTaskFilter","foldersByTaskFilter","isUninitialized","isLoadingTasksFolders","isUninitializedTasksFolders","refetchTasksFolders","useGetSearchFoldersQuery","visibleFolders","useMemo","visibleSet","folder","parentId","isRootFromSlicer","foldersLinks","refetchFoldersLinks","isUninitializedFoldersLinks","useGetEntityLinksQuery","foldersMap","map","addExtraDataToFolder","link","relevantFolderIds","folderId","foldersByIdMap","addParents","matchedIds","selectedPaths","filteredMap","folderPath","isSelected","selectedPath","loadingTasksForParents","determineLoadingTaskFolders","tasksListCursor","setTasksListCursor","useState","useEffect","singleSort","sortId","tasksFolderIdsParams","tasksListInfiniteData","isLoadingTasksList","isFetchingTasksList","fetchNextPage","hasNextPage","isFetchingNextPageTasksList","isUninitializedTasksList","refetchTasksList","useGetTasksListInfiniteInfiniteQuery","tasksList","page","groupPageCounts","incrementPageCount","useGroupedPagination","groupByDataType","getGroupByDataType","expandedGroupValues","GROUP_BY_ID","groupQueries","group","groupTasks","isUninitializedGroupedTasks","refetchGroupedTasks","useGetGroupedTasksListQuery","resolvedTasks","visibleTasks","task","tasksLinks","refetchTasksLinks","isUninitializedTasksLinks","handleFetchNextPage","tasksMap","tasksByFolderMap","addExtraDataToTask","taskId","existingTask","currentTask","mergedTask","folderTaskIds","filtered"],"mappings":"01NA2DaA,GAAuB,CAAC,CACnC,YAAAC,EACA,gBAAAC,EACA,uBAAAC,EAAyB,GACzB,QAAAC,EACA,YAAAC,EACA,cAAAC,EACA,QAAAC,EACA,QAAAC,EACA,WAAAC,EAAa,CAAA,EACb,gBAAAC,EACA,SAAAC,EACA,cAAAC,EACA,iBAAAC,EAAmB,GACnB,aAAAC,GACA,QAAAC,GACA,UAAAC,EACA,aAAAC,EAAe,EACjB,IAAwC,CACtC,KAAM,CAAE,gBAAAC,EAAiB,UAAWC,CAAA,EAAqBJ,GAEnD,CACJ,QAAAK,EACA,UAAWC,GACX,gBAAiBC,GACjB,QAASC,EAAA,EACPC,4BAAA,EAEEC,EAAoB,OAAO,QAAQd,CAAQ,EAC9C,OAAO,CAAC,CAAA,CAAGe,CAAU,IAAMA,CAAU,EACrC,OAAO,CAAC,CAACC,CAAE,IAAM,CAACC,EAAAA,UAAUD,CAAE,CAAC,EAC/B,IAAI,CAAC,CAACA,CAAE,IAAMA,CAAE,EAEbE,EAAgB1B,EAClB,MAAM,KAAK,IAAI,IAAI,CAAC,GAAGsB,EAAmB,GAAGvB,CAAe,CAAC,CAAC,EAC9DuB,EAEE,CACJ,KAAMK,EAAuB,CAAA,EAC7B,WAAYC,EACZ,QAASC,GACT,gBAAiBC,EAAA,EACfC,EAAAA,kCACF,CACE,YAAAjC,EACA,UAAW4B,EACX,OAAQxB,EAAY,aACpB,aAAcC,EAAc,aAC5B,OAAQD,EAAY,OACpB,aAAAY,CAAA,EAEF,CAAE,KAAM,CAACY,EAAc,QAAW,CAACjB,GAAiB,CAACC,CAAA,CAAkB,EAGnEsB,EACH,CAAC9B,EAAY,cACZ,CAACC,EAAc,cACf,CAACD,EAAY,QACb,CAACC,EAAc,QACjB,CAACc,EAAQ,QACR,CAACR,GAAiB,CAACC,EAEhB,CACJ,KAAMuB,EACN,gBAAAC,EACA,UAAWC,GACX,gBAAiBC,GACjB,QAASC,EAAA,EACPC,EAAAA,yBACF,CACE,YAAAxC,EACA,oBAAqB,CACnB,WAAYI,EAAY,QAAQ,YAAY,OAASA,EAAY,OAAS,OAC1E,aAAcC,EAAc,QAAQ,YAAY,OAASA,EAAc,OAAS,OAChF,OAAQD,EAAY,MAAA,CACtB,EAEF,CACE,KAAM8B,CAAA,CACR,EAMIO,GAAiBC,EAAAA,QAAQ,IAAM,CACnC,MAAMC,MAAiB,IAGvB,OAAAxB,EAAQ,QAASyB,GAAW,CAE1B,GAAI,CAACA,EAAO,SAAU,CACpBD,EAAW,IAAIC,EAAO,EAAE,EACxB,MACF,CAGA,MAAMC,EAAWD,EAAO,SAClBE,EAAmB5C,EACrBD,EAAgB,SAAS4C,CAAQ,EACjC5C,EAAgB,SAAS2C,EAAO,EAAY,GAC5BlC,EACJmC,CAAQ,IAAM,IAAQC,IACpCH,EAAW,IAAIC,EAAO,EAAE,CAE5B,CAAC,EAEMD,CACT,EAAG,CACDxB,EACAgB,EACAD,EACAxB,EACAT,EACAC,CAAA,CACD,EAGK,CACJ,KAAM6C,EAAe,CAAA,EACrB,QAASC,GACT,gBAAiBC,EAAA,EACfC,EAAAA,uBACF,CACE,YAAAlD,EACA,UAAW,MAAM,KAAKyC,EAAc,EACpC,WAAY,QAAA,EAEd,CAAE,KAAM1B,CAAA,CAAU,EAIdoC,EAA4BT,EAAAA,QAAQ,IAAM,CAC9C,MAAMU,MAAU,IAEVC,EAAwBT,IAEgB,CAC1C,GAAGA,EACH,SAAUA,EAAO,GACjB,WAAY,SACZ,MAAOG,GAAc,KAAMO,GAASA,EAAK,KAAOV,EAAO,EAAE,GAAG,OAAS,CAAA,CAAC,GAM1E,GAAI,CAACR,GAAmBD,GAAuBhB,EAAQ,OAAQ,CAE7D,MAAMoC,MAAwB,IAG9B,UAAWC,KAAYrB,EACrBoB,EAAkB,IAAIC,CAAQ,EAIhC,MAAMC,MAAqB,IAC3B,UAAWb,KAAUzB,EACnBsC,EAAe,IAAIb,EAAO,GAAcA,CAAM,EAIhD,MAAMc,EAAcF,GAAqB,CACvC,MAAMZ,EAASa,EAAe,IAAID,CAAQ,EACtCZ,GAAUA,EAAO,WACnBW,EAAkB,IAAIX,EAAO,QAAkB,EAC/Cc,EAAWd,EAAO,QAAkB,EAExC,EAMA,GAAI,CAAChC,EAAkB,CACrB,MAAM+C,EAAa,CAAC,GAAGJ,CAAiB,EACxC,UAAWC,KAAYG,EACrBD,EAAWF,CAAQ,CAEvB,CAGA,UAAWZ,KAAUzB,EACfoC,EAAkB,IAAIX,EAAO,EAAY,GAC3CQ,EAAI,IAAIR,EAAO,GAAcS,EAAqBT,CAAM,CAAC,CAG/D,KAEE,WAAWA,KAAUzB,EACnBiC,EAAI,IAAIR,EAAO,GAAcS,EAAqBT,CAAM,CAAC,EAK7D,GAAI3C,EAAgB,OAAQ,CAC1B,MAAM2D,EAAgB3D,EACnB,IAAKyB,GAAO0B,EAAI,IAAI1B,CAAE,GAAG,IAAI,EAC7B,OAAO,OAAO,EAGXmC,MAAkB,IAGxB,OAAAT,EAAI,QAAQ,CAACR,EAAQY,IAAa,CAChC,MAAMM,EAAalB,EAAO,KAEpBmB,EAAaH,EAAc,SAASE,CAAU,GAGpCF,EAAc,KAAMI,IAClCF,EAAW,WAAWE,GAAe,GAAG,CAAA,GAG1BD,GAAc,CAAC7D,IAC7B2D,EAAY,IAAIL,EAAUH,EAAqBT,CAAM,CAAC,CAE1D,CAAC,EAEMiB,CACT,CAEA,OAAOT,CACT,EAAG,CACDjC,EACAgB,EACAC,EACAnC,EACAC,EACA6C,EACAnC,CAAA,CACD,EAGKqD,GAAyBvB,EAAAA,QAAQ,IACjCZ,EACKoC,+BAA4B,CACjC,qBAAArC,EACA,kBAAAL,EACA,WAAA2B,CAAA,CACD,EACW,CAAA,EACb,CAACrB,EAAgCD,EAAsBL,EAAmB2B,CAAU,CAAC,EAElF,CAACgB,EAAiBC,EAAkB,EAAIC,EAAAA,SAAS,EAAE,EAGzDC,EAAAA,UAAU,IAAM,CACVH,MAAoC,EAAE,CAC5C,EAAG,CAAC7D,EAAS6D,CAAe,CAAC,EAG7B,MAAMI,EAAa,CAAE,GAAGjE,EAAQ,CAAC,CAAA,EAG3BkE,EADaD,GAAY,KAAO,QAAU,CAAC5D,EACrB,OAAS4D,GAAY,KAAO,UAAY,WAAaA,GAAY,GACvFE,EAAuBxE,EAAgB,OACzC,MAAM,KACJ,IAAI,IAAI,CAAC,GAAGkD,EAAW,KAAA,EAAQ,GAAIjD,EAAyBD,EAAkB,EAAG,CAAC,CAAA,EAEpF,OAGE,CACJ,KAAMyE,EACN,UAAWC,GACX,WAAYC,GACZ,cAAAC,GACA,YAAAC,GACA,mBAAoBC,GACpB,gBAAiBC,GACjB,QAASC,EAAA,EACPC,EAAAA,qCACF,CACE,YAAAlF,EACA,OAAQI,EAAY,aACpB,aAAcC,EAAc,aAC5B,OAAQD,EAAY,OACpB,UAAWD,GAAS,OAAS,OAAYsE,EACzC,QAAStE,GAAS,OAASA,EAAU,OACrC,OAAQqE,EAASA,EAAO,QAAQ,IAAK,GAAG,EAAI,OAC5C,KAAM,CAAC,CAACD,GAAY,KACpB,aAAAvD,CAAA,EAEF,CAEE,MAAOL,GAAiBC,IAAqB,CAACT,GAAS,OACvD,iBAAkB,CAChB,OAAQ,GACR,KAAM,CAAC,CAACoE,GAAY,IAAA,CACtB,CACF,EAIIY,EAAYzC,EAAAA,QAAQ,IACnBgC,GAAuB,MACrBA,EAAsB,MAAM,QAASU,GAASA,EAAK,OAAS,EAAE,EAD3B,CAAA,EAEzC,CAACV,GAAuB,KAAK,CAAC,EAE3B,CAAE,WAAYW,EAAiB,mBAAAC,EAAA,EAAuBC,GAAAA,qBAAqB,CAC/E,OAAQ/E,CAAA,CACT,EAIKgF,GAAkBC,GAAAA,mBAAmBlF,EAASM,EAAY,EAI1D6E,EAAsBhD,EAAAA,QAAQ,IAC3B,OAAO,QAAQhC,CAAQ,EAC3B,OAAO,CAAC,CAAA,CAAGe,CAAU,IAAMA,CAAU,EACrC,OAAO,CAAC,CAACC,CAAE,IAAMC,EAAAA,UAAUD,CAAE,CAAC,EAC9B,IAAI,CAAC,CAACA,CAAE,IAAMA,EAAG,MAAMiE,EAAAA,YAAY,MAAM,CAAC,EAC5C,CAACjF,CAAQ,CAAC,EAGPkF,EAAkDlD,EAAAA,QAAQ,IACzDnC,GAGHU,IAAkB,CAChB,OAAQT,EACR,WAAAA,EACA,QAASJ,EAAY,OACrB,QAAAG,EACA,gBAAA8E,CAAA,CACD,GAAK,CAAA,GAGe,OAAQQ,GAAUH,EAAoB,SAASG,EAAM,KAAK,CAAC,EAZ7D,CAAA,EAapB,CACDtF,EACAC,EACA6E,EACAG,GACApF,EAAY,OACZa,EACAyE,CAAA,CACD,EAEK,CACJ,KAAM,CAAE,MAAOI,EAAa,CAAA,CAAC,EAAM,CAAA,EACnC,gBAAiBC,GACjB,QAASC,EAAA,EACPC,EAAAA,4BACF,CACE,YAAAjG,EACA,OAAQ4F,EACR,OAAQpB,EAASA,EAAO,QAAQ,IAAK,GAAG,EAAI,OAC5C,KAAM,CAAC,CAACD,GAAY,KACpB,OAAQnE,EAAY,OACpB,aAAcC,EAAc,aAC5B,UAAWoE,EACX,WAAYhE,EACZ,aAAAO,CAAA,EAEF,CACE,KAAM,CAACT,GAAW,CAACqF,EAAa,QAAU1E,CAAA,CAC5C,EAKIgF,EAAgBxD,EAAAA,QAAQ,IACxBvC,GAAS,OAAegF,EACxBxE,GAAiBC,EAAyBiB,EAC1CtB,EAAgBuF,EACbX,EACN,CACDhF,EACAQ,EACAC,EACAL,EACA4E,EACAtD,EACAiE,CAAA,CACD,EAGKK,EAAezD,EAAAA,QAAQ,IACpB,IAAI,IAAIwD,EAAc,IAAKE,GAASA,EAAK,EAAE,CAAC,EAClD,CAACF,CAAa,CAAC,EAGZ,CACJ,KAAMG,EAAa,CAAA,EACnB,QAASC,GACT,gBAAiBC,EAAA,EACfrD,EAAAA,uBACF,CACE,YAAAlD,EACA,UAAW,MAAM,KAAKmG,CAAY,EAClC,WAAY,MAAA,EAEd,CACE,KAAMA,EAAa,OAAS,GAAKpF,CAAA,CACnC,EAGIyF,GAAuBX,GAAmB,CAC1CtF,EACEsF,GAASA,KAASR,GACpBC,GAAmBO,CAAK,EAEjBf,IACTD,GAAA,CAEJ,EAIM,CAAE,SAAA4B,GAAU,iBAAAC,CAAA,EAAqBhE,EAAAA,QAAQ,IAAM,CACnD,MAAM+D,MAA4B,IAC5BC,MAAyC,IAEzCC,EAAsBP,IAA0B,CACpD,GAAGA,EACH,SAAUA,EAAK,GACf,WAAY,OACZ,MAAOC,GAAY,KAAM/C,GAASA,EAAK,KAAO8C,EAAK,EAAE,GAAG,OAAS,CAAA,CAAC,GAGpE,UAAWA,KAAQF,EAAe,CAChC,MAAMU,EAASR,EAAK,GACd5C,EAAW4C,EAAK,SAEtB,GAAIK,EAAS,IAAIG,CAAM,EAAG,CAExB,MAAMC,EAAeJ,EAAS,IAAIG,CAAM,EAClCE,EAAcH,EAAmBP,CAAI,EACrCW,EAAa,CACjB,GAAGF,EACH,GAAGC,EACH,OAAQ,CAAC,GAAID,EAAa,QAAU,CAAA,EAAK,GAAIC,EAAY,QAAU,CAAA,CAAG,CAAA,EAGxEL,EAAS,IAAIG,EAAQG,CAAU,CACjC,MACEN,EAAS,IAAIG,EAAQD,EAAmBP,CAAI,CAAC,EAG/C,GAAIM,EAAiB,IAAIlD,CAAQ,EAAG,CAGlC,MAAMwD,EAAgBN,EAAiB,IAAIlD,CAAQ,EAC9CwD,EAAc,SAASJ,CAAM,GAAGI,EAAc,KAAKJ,CAAM,CAChE,MACEF,EAAiB,IAAIlD,EAAU,CAACoD,CAAM,CAAC,CAE3C,CAEA,MAAO,CAAE,SAAAH,EAAU,iBAAAC,CAAAA,CACrB,EAAG,CAACR,EAAeG,CAAU,CAAC,EAmD9B,MAAO,CACL,WAjDwC3D,EAAAA,QAAQ,IAAM,CACtD,GAAI,CAACvC,GAAS,QAAU,CAACuG,EAAiB,KAAM,OAAOvD,EAEvD,MAAMI,MAAwB,IAG9B,UAAWC,KAAYkD,EAAiB,OACtCnD,EAAkB,IAAIC,CAAQ,EAIhC,MAAME,EAAcF,GAAqB,CACvC,MAAMZ,EAASO,EAAW,IAAIK,CAAQ,EACtC,GAAIZ,GAAUA,EAAO,SAAU,CAC7B,MAAMC,EAAWD,EAAO,SACnBW,EAAkB,IAAIV,CAAQ,IACjCU,EAAkB,IAAIV,CAAQ,EAC9Ba,EAAWb,CAAQ,EAEvB,CACF,EAEA,UAAWW,KAAYD,EACrBG,EAAWF,CAAQ,EAGrB,MAAMyD,MAAe,IACrB,SAAW,CAACvF,EAAIkB,CAAM,IAAKO,EACrBI,EAAkB,IAAI7B,CAAE,GAC1BuF,EAAS,IAAIvF,EAAIkB,CAAM,EAI3B,OAAOqE,CACT,EAAG,CAAC9D,EAAYuD,EAAkBvG,CAAO,CAAC,EAgBxC,SAAAsG,GACA,iBAAAC,EACA,aACEtF,IAAoBuD,IAAsBtC,IAAyBnB,EACrE,cAAe6D,GACf,aAAcd,GACd,cAAeuC,GACf,gBApBsB,IAAM,CAEvBnF,IAAwBC,GAAA,EACxBU,IAAqCD,GAAA,EACrCO,IAA6BC,GAAA,EAC7ByC,IAA0BC,GAAA,EAC1Bc,IAA6BC,GAAA,EAC7B/C,IAA6BD,GAAA,EAC7BuD,IAA2BD,GAAA,CAClC,CAWE,CAEJ"}
|
|
1
|
+
{"version":3,"file":"useFetchOverviewData.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useFetchOverviewData.ts"],"sourcesContent":["import {\n useGetGroupedTasksListQuery,\n useGetOverviewTasksByFoldersQuery,\n useGetSearchFoldersQuery,\n useGetTasksListInfiniteInfiniteQuery,\n} from '@shared/api'\nimport type { FolderListItem, GetGroupedTasksListArgs, EntityGroup, QueryFilter } from '@shared/api'\nimport { useGroupedPagination, useQueryArgumentChangeLoading } from '@shared/hooks'\nimport { getGroupByDataType } from '@shared/util'\nimport { EditorTaskNode, FolderNodeMap, MatchingFolder, TaskNodeMap } from '../types/table'\nimport { useEffect, useMemo, useState } from 'react'\nimport { ExpandedState, SortingState } from '@tanstack/react-table'\nimport { determineLoadingTaskFolders } from '../utils/loadingUtils'\nimport { LoadingTasks } from '../types'\nimport { TasksByFolderMap } from '../utils'\nimport { TableGroupBy } from '../context'\nimport { isGroupId, GROUP_BY_ID } from '../hooks/useBuildGroupByTableData'\nimport { ProjectTableAttribute } from '../hooks/useAttributesList'\nimport { ProjectTableModulesType } from '@shared/hooks'\nimport { useGetEntityLinksQuery } from '@shared/api'\nimport { useProjectFoldersContext } from '@shared/context'\n\ntype QueryFilterParams = {\n filter: QueryFilter | undefined\n filterString?: string\n search?: string\n}\n\ntype useFetchOverviewDataData = {\n foldersMap: FolderNodeMap\n tasksMap: TaskNodeMap\n tasksByFolderMap: TasksByFolderMap\n isLoadingAll: boolean // the whole table is a loading state\n isLoadingMore: boolean // loading more tasks\n loadingTasks: LoadingTasks // show number of loading tasks per folder or root\n loadingLinksEntityIds: Set<string> // entity IDs whose links are currently being fetched (not yet cached)\n fetchNextPage: (value?: string) => void\n reloadTableData: () => void\n}\n\ntype Params = {\n projectName: string\n selectedFolders: string[] // folders selected in the slicer (hierarchy)\n excludeSelectedFolders?: boolean\n taskIds?: string[] // specific task IDs to filter by (from entity list slicer)\n taskFilters: QueryFilterParams // filters for tasks\n folderFilters: QueryFilterParams // filters for folders\n sorting: SortingState\n groupBy: TableGroupBy | undefined\n taskGroups: EntityGroup[]\n taskGroupsCount?: number // override for number of items per group\n expanded: ExpandedState\n showHierarchy: boolean\n isFlatFolderView?: boolean\n attribFields: ProjectTableAttribute[]\n modules: ProjectTableModulesType\n skipLinks?: boolean\n showComments?: boolean // only fetch latestComments when the comments column is visible\n}\n\nexport const useFetchOverviewData = ({\n projectName,\n selectedFolders, // comes from the slicer\n excludeSelectedFolders = false,\n taskIds, // specific task IDs from entity list slicer\n taskFilters,\n folderFilters,\n sorting,\n groupBy,\n taskGroups = [],\n taskGroupsCount,\n expanded,\n showHierarchy,\n isFlatFolderView = false,\n attribFields,\n modules,\n skipLinks,\n showComments = false,\n}: Params): useFetchOverviewDataData => {\n const { getGroupQueries, isLoading: isLoadingModules } = modules\n\n const {\n folders,\n isLoading: isLoadingFolders,\n isUninitialized: isUninitializedFolders,\n refetch: refetchFolders,\n } = useProjectFoldersContext()\n\n const expandedParentIds = Object.entries(expanded)\n .filter(([, isExpanded]) => isExpanded)\n .filter(([id]) => !isGroupId(id)) // filter out the root folder\n .map(([id]) => id)\n\n const taskParentIds = excludeSelectedFolders\n ? Array.from(new Set([...expandedParentIds, ...selectedFolders]))\n : expandedParentIds\n\n const {\n data: expandedFoldersTasks = [],\n isFetching: isFetchingExpandedFoldersTasks,\n refetch: refetchExpandedFoldersTasks,\n isUninitialized: isUninitializedExpandedFoldersTasks,\n } = useGetOverviewTasksByFoldersQuery(\n {\n projectName,\n parentIds: taskParentIds,\n filter: taskFilters.filterString,\n folderFilter: folderFilters.filterString,\n search: taskFilters.search,\n showComments,\n },\n { skip: !taskParentIds.length || (!showHierarchy && !isFlatFolderView) },\n )\n\n const skipFoldersByTaskFilter =\n (!taskFilters.filterString &&\n !folderFilters.filterString &&\n !taskFilters.search &&\n !folderFilters.search) ||\n !folders.length ||\n (!showHierarchy && !isFlatFolderView)\n // get folders that would be left if the filters were applied for tasks\n const {\n data: foldersByTaskFilter,\n isUninitialized,\n isLoading: isLoadingTasksFolders,\n isUninitialized: isUninitializedTasksFolders,\n refetch: refetchTasksFolders,\n } = useGetSearchFoldersQuery(\n {\n projectName,\n folderSearchRequest: {\n taskFilter: taskFilters.filter?.conditions?.length ? taskFilters.filter : undefined,\n folderFilter: folderFilters.filter?.conditions?.length ? folderFilters.filter : undefined,\n search: taskFilters.search,\n },\n },\n {\n skip: skipFoldersByTaskFilter,\n },\n )\n\n // create a list of folders that are current visible in the table\n // root folders are always visible\n // then a folder is visible if it's parent is expanded\n const visibleFolders = useMemo(() => {\n const visibleSet = new Set<string>()\n\n // Check each folder in the map\n folders.forEach((folder) => {\n // Root folders are always visible\n if (!folder.parentId) {\n visibleSet.add(folder.id)\n return\n }\n\n // Check if parent is expanded\n const parentId = folder.parentId as string\n const isRootFromSlicer = excludeSelectedFolders\n ? selectedFolders.includes(parentId)\n : selectedFolders.includes(folder.id as string)\n const expandedMap = expanded as Record<string, boolean>\n if (expandedMap[parentId] === true || isRootFromSlicer) {\n visibleSet.add(folder.id)\n }\n })\n\n return visibleSet\n }, [\n folders,\n foldersByTaskFilter,\n skipFoldersByTaskFilter,\n expanded,\n selectedFolders,\n excludeSelectedFolders,\n ])\n\n // get all links for visible folders\n const {\n data: foldersLinks = [],\n refetch: refetchFoldersLinks,\n isUninitialized: isUninitializedFoldersLinks,\n isFetching: isFetchingFoldersLinks,\n } = useGetEntityLinksQuery(\n {\n projectName,\n entityIds: Array.from(visibleFolders),\n entityType: 'folder',\n },\n { skip: skipLinks },\n )\n\n const isLoadingFolderLinks = useQueryArgumentChangeLoading(\n {\n isLoading: isFetchingFoldersLinks,\n dependencies: [visibleFolders, projectName],\n },\n isFetchingFoldersLinks,\n )\n\n // create a map of folders by id for efficient lookups\n const foldersMap: FolderNodeMap = useMemo(() => {\n const map = new Map()\n\n const addExtraDataToFolder = (folder: FolderListItem) => {\n // add any extra data to folder\n const folderWithExtraData: MatchingFolder = {\n ...folder,\n entityId: folder.id,\n entityType: 'folder',\n links: foldersLinks?.find((link) => link.id === folder.id)?.links || [],\n }\n return folderWithExtraData\n }\n\n // If we have task filters and folders to filter\n if (!isUninitialized && foldersByTaskFilter && folders.length) {\n // Create a set for efficient lookups of filtered folder IDs\n const relevantFolderIds = new Set<string>()\n\n // First pass: Add all folders from the task filter\n for (const folderId of foldersByTaskFilter) {\n relevantFolderIds.add(folderId)\n }\n\n // Create a map of folders by ID for parentId lookups\n const foldersByIdMap = new Map<string, (typeof folders)[0]>()\n for (const folder of folders) {\n foldersByIdMap.set(folder.id as string, folder)\n }\n\n // Second pass: Add all parent folders of filtered folders\n const addParents = (folderId: string) => {\n const folder = foldersByIdMap.get(folderId)\n if (folder && folder.parentId) {\n relevantFolderIds.add(folder.parentId as string)\n addParents(folder.parentId as string)\n }\n }\n\n // In flat folder view folders are shown as top-level rows — ancestors are\n // not needed and would bring in unrelated subtrees (e.g. showing the root\n // \"assets\" node which then exposes all its children).\n // In hierarchy mode ancestors ARE needed so the tree path is navigable.\n if (!isFlatFolderView) {\n const matchedIds = [...relevantFolderIds]\n for (const folderId of matchedIds) {\n addParents(folderId)\n }\n }\n\n // Third pass: Build the final map using only relevant folders\n for (const folder of folders) {\n if (relevantFolderIds.has(folder.id as string)) {\n map.set(folder.id as string, addExtraDataToFolder(folder))\n }\n }\n } else {\n // No filtering, include all folders\n for (const folder of folders) {\n map.set(folder.id as string, addExtraDataToFolder(folder))\n }\n }\n\n // Filter by selected folders if needed\n if (selectedFolders.length) {\n const selectedPaths = selectedFolders\n .map((id) => map.get(id)?.path)\n .filter(Boolean) as string[]\n\n // Create a new map that only contains selected folders and their children\n const filteredMap = new Map()\n\n // For each folder, check if it should be included\n map.forEach((folder, folderId) => {\n const folderPath = folder.path as string\n\n const isSelected = selectedPaths.includes(folderPath)\n\n // Include if it's a child of any selected folder\n const isChild = selectedPaths.some((selectedPath) =>\n folderPath.startsWith(selectedPath + '/'),\n )\n\n if (isChild || (isSelected && !excludeSelectedFolders)) {\n filteredMap.set(folderId, addExtraDataToFolder(folder))\n }\n })\n\n return filteredMap\n }\n\n return map\n }, [\n folders,\n foldersByTaskFilter,\n isUninitialized,\n selectedFolders,\n excludeSelectedFolders,\n foldersLinks,\n isFlatFolderView,\n ])\n\n // calculate partial loading states\n const loadingTasksForParents = useMemo(() => {\n if (isFetchingExpandedFoldersTasks) {\n return determineLoadingTaskFolders({\n expandedFoldersTasks,\n expandedParentIds,\n foldersMap,\n })\n } else return {}\n }, [isFetchingExpandedFoldersTasks, expandedFoldersTasks, expandedParentIds, foldersMap])\n\n const [tasksListCursor, setTasksListCursor] = useState('')\n\n // every time the sorting changes, reset the cursor\n useEffect(() => {\n if (tasksListCursor) setTasksListCursor('')\n }, [sorting, tasksListCursor])\n\n // Create sort params for infinite query\n const singleSort = { ...sorting[0] }\n // if task list and sorting by name, sort by path instead\n const sortByPath = singleSort?.id === 'name' && !showHierarchy\n const sortId = sortByPath ? 'path' : singleSort?.id === 'subType' ? 'taskType' : singleSort?.id\n const tasksFolderIdsParams = selectedFolders.length\n ? Array.from(\n new Set([...foldersMap.keys(), ...(excludeSelectedFolders ? selectedFolders : [])]),\n )\n : undefined\n\n // Use the new infinite query hook for tasks list with correct name\n const {\n data: tasksListInfiniteData,\n isLoading: isLoadingTasksList,\n isFetching: isFetchingTasksList,\n fetchNextPage,\n hasNextPage,\n isFetchingNextPage: isFetchingNextPageTasksList,\n isUninitialized: isUninitializedTasksList,\n refetch: refetchTasksList,\n } = useGetTasksListInfiniteInfiniteQuery(\n {\n projectName,\n filter: taskFilters.filterString,\n folderFilter: folderFilters.filterString,\n search: taskFilters.search,\n folderIds: taskIds?.length ? undefined : tasksFolderIdsParams,\n taskIds: taskIds?.length ? taskIds : undefined,\n sortBy: sortId ? sortId.replace('_', '.') : undefined,\n desc: !!singleSort?.desc,\n showComments,\n },\n {\n // Use flat task list when entity list provides specific task IDs, even in hierarchy mode\n skip: (showHierarchy || isFlatFolderView) && !taskIds?.length,\n initialPageParam: {\n cursor: '',\n desc: !!singleSort?.desc,\n },\n },\n )\n\n // Extract tasks from infinite query data correctly\n const tasksList = useMemo(() => {\n if (!tasksListInfiniteData?.pages) return []\n return tasksListInfiniteData.pages.flatMap((page) => page.tasks || [])\n }, [tasksListInfiniteData?.pages])\n\n const { pageCounts: groupPageCounts, incrementPageCount } = useGroupedPagination({\n groups: taskGroups,\n })\n\n // for grouped tasks, we fetch all tasks for each group\n // we do this by building a list of groups with filters for that group\n const groupByDataType = getGroupByDataType(groupBy, attribFields)\n\n // get expanded group values from the expanded state\n // group IDs are formatted as `_GROUP_<value>` so we extract the values\n const expandedGroupValues = useMemo(() => {\n return Object.entries(expanded)\n .filter(([, isExpanded]) => isExpanded)\n .filter(([id]) => isGroupId(id))\n .map(([id]) => id.slice(GROUP_BY_ID.length))\n }, [expanded])\n\n // get group queries from powerpack, filtered to only include expanded groups\n const groupQueries: GetGroupedTasksListArgs['groups'] = useMemo(() => {\n if (!groupBy) return []\n\n const allGroupQueries =\n getGroupQueries?.({\n groups: taskGroups,\n taskGroups, // deprecated, but keep for backward compatibility\n filters: taskFilters.filter,\n groupBy,\n groupPageCounts,\n }) ?? []\n\n // Only fetch tasks for groups that are expanded\n return allGroupQueries.filter((group) => expandedGroupValues.includes(group.value))\n }, [\n groupBy,\n taskGroups,\n groupPageCounts,\n groupByDataType,\n taskFilters.filter,\n getGroupQueries,\n expandedGroupValues,\n ])\n\n const {\n data: { tasks: groupTasks = [] } = {},\n isUninitialized: isUninitializedGroupedTasks,\n refetch: refetchGroupedTasks,\n } = useGetGroupedTasksListQuery(\n {\n projectName,\n groups: groupQueries,\n sortBy: sortId ? sortId.replace('_', '.') : undefined,\n desc: !!singleSort?.desc,\n search: taskFilters.search,\n folderFilter: folderFilters.filterString,\n folderIds: tasksFolderIdsParams,\n groupCount: taskGroupsCount,\n showComments,\n },\n {\n skip: !groupBy || !groupQueries.length || isLoadingModules,\n },\n )\n\n // Resolve which task source to use based on current mode\n // When entity list provides specific task IDs, use flat task list even in hierarchy mode\n const resolvedTasks = useMemo(() => {\n if (taskIds?.length) return tasksList\n if (showHierarchy || isFlatFolderView) return expandedFoldersTasks\n if (groupBy) return groupTasks\n return tasksList\n }, [\n taskIds,\n showHierarchy,\n isFlatFolderView,\n groupBy,\n tasksList,\n expandedFoldersTasks,\n groupTasks,\n ])\n\n // Get visible tasks for link fetching\n const visibleTasks = useMemo(() => {\n return new Set(resolvedTasks.map((task) => task.id))\n }, [resolvedTasks])\n\n // Get all links for visible tasks\n const {\n data: tasksLinks = [],\n refetch: refetchTasksLinks,\n isUninitialized: isUninitializedTasksLinks,\n isFetching: isFetchingTasksLinks,\n } = useGetEntityLinksQuery(\n {\n projectName,\n entityIds: Array.from(visibleTasks),\n entityType: 'task',\n },\n {\n skip: visibleTasks.size === 0 || skipLinks,\n },\n )\n\n const isLoadingTaskLinks = useQueryArgumentChangeLoading(\n {\n isLoading: isFetchingTasksLinks,\n dependencies: [visibleTasks, projectName],\n },\n isFetchingTasksLinks,\n )\n\n // Compute entity IDs whose links are currently loading (in query but not yet in the cache result)\n const loadingLinksEntityIds = useMemo(() => {\n const ids = new Set<string>()\n\n if (isFetchingFoldersLinks && !skipLinks) {\n const cachedIds = new Set(foldersLinks.map((l) => l.id))\n for (const id of visibleFolders) {\n if (!cachedIds.has(id)) ids.add(id)\n }\n }\n\n if (isFetchingTasksLinks && !skipLinks) {\n const cachedIds = new Set(tasksLinks.map((l) => l.id))\n for (const id of visibleTasks) {\n if (!cachedIds.has(id)) ids.add(id)\n }\n }\n\n return ids\n }, [\n isFetchingFoldersLinks,\n isFetchingTasksLinks,\n foldersLinks,\n tasksLinks,\n visibleFolders,\n visibleTasks,\n skipLinks,\n ])\n\n const handleFetchNextPage = (group?: string) => {\n if (groupBy) {\n if (group && group in groupPageCounts) {\n incrementPageCount(group)\n }\n } else if (hasNextPage) {\n fetchNextPage()\n }\n }\n\n // tasksMaps is a map of tasks by task ID\n // tasksByFolderMap is a map of tasks by folder ID\n const { tasksMap, tasksByFolderMap } = useMemo(() => {\n const tasksMap: TaskNodeMap = new Map()\n const tasksByFolderMap: TasksByFolderMap = new Map()\n\n const addExtraDataToTask = (task: EditorTaskNode) => ({\n ...task,\n entityId: task.id,\n entityType: 'task' as const,\n links: tasksLinks?.find((link) => link.id === task.id)?.links || [],\n })\n\n for (const task of resolvedTasks) {\n const taskId = task.id as string\n const folderId = task.folderId as string\n\n if (tasksMap.has(taskId)) {\n // merge specific data if the task already exists\n const existingTask = tasksMap.get(taskId) as EditorTaskNode\n const currentTask = addExtraDataToTask(task)\n const mergedTask = {\n ...existingTask,\n ...currentTask,\n groups: [...(existingTask.groups || []), ...(currentTask.groups || [])],\n }\n\n tasksMap.set(taskId, mergedTask)\n } else {\n tasksMap.set(taskId, addExtraDataToTask(task))\n }\n\n if (tasksByFolderMap.has(folderId)) {\n // dedup like tasksMap — resolvedTasks can contain the same task twice\n // (overlapping infinite-query pages, or a task in multiple groups)\n const folderTaskIds = tasksByFolderMap.get(folderId)!\n if (!folderTaskIds.includes(taskId)) folderTaskIds.push(taskId)\n } else {\n tasksByFolderMap.set(folderId, [taskId])\n }\n }\n\n return { tasksMap, tasksByFolderMap }\n }, [resolvedTasks, tasksLinks])\n\n // When entity list provides specific task IDs, filter folders to only those containing tasks\n const filteredFoldersMap: FolderNodeMap = useMemo(() => {\n if (!taskIds?.length || !tasksByFolderMap.size) return foldersMap\n\n const relevantFolderIds = new Set<string>()\n\n // Add all folders that contain selected tasks\n for (const folderId of tasksByFolderMap.keys()) {\n relevantFolderIds.add(folderId)\n }\n\n // Add parent folders for proper tree display\n const addParents = (folderId: string) => {\n const folder = foldersMap.get(folderId)\n if (folder && folder.parentId) {\n const parentId = folder.parentId as string\n if (!relevantFolderIds.has(parentId)) {\n relevantFolderIds.add(parentId)\n addParents(parentId)\n }\n }\n }\n\n for (const folderId of relevantFolderIds) {\n addParents(folderId)\n }\n\n const filtered = new Map() as FolderNodeMap\n for (const [id, folder] of foldersMap) {\n if (relevantFolderIds.has(id)) {\n filtered.set(id, folder)\n }\n }\n\n return filtered\n }, [foldersMap, tasksByFolderMap, taskIds])\n\n // reload all data for all queries\n const reloadTableData = () => {\n // only reload if there is data\n if (!isUninitializedFolders) refetchFolders()\n if (!isUninitializedExpandedFoldersTasks) refetchExpandedFoldersTasks()\n if (!isUninitializedTasksFolders) refetchTasksFolders()\n if (!isUninitializedTasksList) refetchTasksList()\n if (!isUninitializedGroupedTasks) refetchGroupedTasks()\n if (!isUninitializedFoldersLinks) refetchFoldersLinks()\n if (!isUninitializedTasksLinks) refetchTasksLinks()\n }\n\n return {\n foldersMap: filteredFoldersMap,\n tasksMap: tasksMap,\n tasksByFolderMap: tasksByFolderMap,\n isLoadingAll:\n isLoadingFolders || isLoadingTasksList || isLoadingTasksFolders || isLoadingModules, // these all show a full loading state\n isLoadingMore: isFetchingNextPageTasksList,\n loadingTasks: loadingTasksForParents,\n loadingLinksEntityIds,\n fetchNextPage: handleFetchNextPage,\n reloadTableData,\n }\n}\n"],"names":["useFetchOverviewData","projectName","selectedFolders","excludeSelectedFolders","taskIds","taskFilters","folderFilters","sorting","groupBy","taskGroups","taskGroupsCount","expanded","showHierarchy","isFlatFolderView","attribFields","modules","skipLinks","showComments","getGroupQueries","isLoadingModules","folders","isLoadingFolders","isUninitializedFolders","refetchFolders","useProjectFoldersContext","expandedParentIds","isExpanded","id","isGroupId","taskParentIds","expandedFoldersTasks","isFetchingExpandedFoldersTasks","refetchExpandedFoldersTasks","isUninitializedExpandedFoldersTasks","useGetOverviewTasksByFoldersQuery","skipFoldersByTaskFilter","foldersByTaskFilter","isUninitialized","isLoadingTasksFolders","isUninitializedTasksFolders","refetchTasksFolders","useGetSearchFoldersQuery","visibleFolders","useMemo","visibleSet","folder","parentId","isRootFromSlicer","foldersLinks","refetchFoldersLinks","isUninitializedFoldersLinks","isFetchingFoldersLinks","useGetEntityLinksQuery","useQueryArgumentChangeLoading","foldersMap","map","addExtraDataToFolder","link","relevantFolderIds","folderId","foldersByIdMap","addParents","matchedIds","selectedPaths","filteredMap","folderPath","isSelected","selectedPath","loadingTasksForParents","determineLoadingTaskFolders","tasksListCursor","setTasksListCursor","useState","useEffect","singleSort","sortId","tasksFolderIdsParams","tasksListInfiniteData","isLoadingTasksList","isFetchingTasksList","fetchNextPage","hasNextPage","isFetchingNextPageTasksList","isUninitializedTasksList","refetchTasksList","useGetTasksListInfiniteInfiniteQuery","tasksList","page","groupPageCounts","incrementPageCount","useGroupedPagination","groupByDataType","getGroupByDataType","expandedGroupValues","GROUP_BY_ID","groupQueries","group","groupTasks","isUninitializedGroupedTasks","refetchGroupedTasks","useGetGroupedTasksListQuery","resolvedTasks","visibleTasks","task","tasksLinks","refetchTasksLinks","isUninitializedTasksLinks","isFetchingTasksLinks","loadingLinksEntityIds","ids","cachedIds","l","handleFetchNextPage","tasksMap","tasksByFolderMap","addExtraDataToTask","taskId","existingTask","currentTask","mergedTask","folderTaskIds","filtered"],"mappings":"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"}
|