@ynput/ayon-frontend-shared 0.2.16 → 0.2.18
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 +15 -13
- package/dist/DetailsPanel.cjs.js.map +1 -1
- package/dist/DetailsPanel.es.js +15 -13
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +38 -34
- package/dist/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/ProjectTreeTable.es.js +20 -16
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/api.cjs.js +7 -0
- package/dist/api.cjs.js.map +1 -1
- package/dist/api.es.js +7 -0
- package/dist/api.es.js.map +1 -1
- package/dist/components.cjs.js +9 -4
- package/dist/components.cjs.js.map +1 -1
- package/dist/components.es.js +10 -5
- package/dist/components.es.js.map +1 -1
- package/dist/index.cjs.js +12 -10
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +12 -10
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/graphql-request/build/legacy/helpers/analyzeDocument.cjs.js +1 -2
- package/dist/node_modules/graphql-request/build/legacy/helpers/analyzeDocument.cjs.js.map +1 -1
- package/dist/node_modules/graphql-request/build/legacy/helpers/analyzeDocument.es.js +1 -2
- package/dist/node_modules/graphql-request/build/legacy/helpers/analyzeDocument.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +26 -23
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +26 -23
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +4 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +4 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +13 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +13 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +2 -0
- package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.es.js +2 -0
- package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +2 -0
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.es.js +2 -0
- package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/products/createProduct.cjs.js +54 -0
- package/dist/shared/src/api/queries/products/createProduct.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/products/createProduct.es.js +54 -0
- package/dist/shared/src/api/queries/products/createProduct.es.js.map +1 -0
- package/dist/shared/src/api/queries/users/getUsers.cjs.js +2 -0
- package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.es.js +2 -0
- package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
- package/dist/shared/src/api/queries/versions/updateVersions.cjs.js +80 -0
- package/dist/shared/src/api/queries/versions/updateVersions.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/versions/updateVersions.es.js +80 -0
- package/dist/shared/src/api/queries/versions/updateVersions.es.js.map +1 -0
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +2 -0
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +2 -0
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js +2 -0
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js +2 -0
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributes.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/Dropzone.cjs.js +13 -0
- package/dist/shared/src/components/EntityPanelUploader/Dropzone.cjs.js.map +1 -0
- package/dist/shared/src/components/EntityPanelUploader/Dropzone.es.js +14 -0
- package/dist/shared/src/components/EntityPanelUploader/Dropzone.es.js.map +1 -0
- package/dist/shared/src/components/{EntityThumbnailUploader/EntityThumbnailUploader.cjs.js → EntityPanelUploader/EntityPanelUploader.cjs.js} +378 -120
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -0
- package/dist/shared/src/components/{EntityThumbnailUploader/EntityThumbnailUploader.es.js → EntityPanelUploader/EntityPanelUploader.es.js} +378 -120
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -0
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js +95 -0
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js.map +1 -0
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.styled.es.js +95 -0
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.styled.es.js.map +1 -0
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +76 -0
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -0
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +77 -0
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -0
- package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnItem.cjs.js +2 -0
- package/dist/shared/src/components/ProjectTableSettings/ColumnItem.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnItem.es.js +2 -0
- package/dist/shared/src/components/ProjectTableSettings/ColumnItem.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +5 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +5 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +23 -86
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +23 -86
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.cjs.js +2 -0
- package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.es.js +2 -0
- package/dist/shared/src/components/ProjectTableSettings/SortableColumnItem.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +2 -0
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +2 -0
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +12 -10
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +12 -10
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +35 -109
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +35 -109
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +12 -10
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +12 -10
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +212 -0
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -0
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +212 -0
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -0
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +2 -0
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +2 -0
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js +28 -7
- package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.cjs.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js +28 -7
- package/dist/shared/src/components/SettingsPanel/SettingsPanelItemTemplate.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +12 -10
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +12 -10
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionDialog.cjs.js +85 -0
- package/dist/shared/src/components/VersionUploader/components/UploadVersionDialog.cjs.js.map +1 -0
- package/dist/shared/src/components/VersionUploader/components/UploadVersionDialog.es.js +85 -0
- package/dist/shared/src/components/VersionUploader/components/UploadVersionDialog.es.js.map +1 -0
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +401 -0
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -0
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +401 -0
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -0
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +308 -0
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -0
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +308 -0
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -0
- package/dist/shared/src/components/Watchers/Watchers.cjs.js +2 -0
- package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.es.js +2 -0
- package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +12 -10
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +12 -10
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.cjs.js +2 -0
- package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.es.js +2 -0
- package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.styled.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/Actions.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.styled.es.js +1 -1
- package/dist/shared/src/containers/Actions/Actions.styled.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +12 -10
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +12 -10
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +18 -14
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +18 -14
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +12 -10
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +12 -10
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +12 -10
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +12 -10
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +15 -11
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +15 -11
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +2 -0
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +2 -0
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +2 -0
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +2 -0
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js +2 -2
- package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.es.js +2 -2
- package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js +2 -0
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +2 -0
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +20 -11
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +20 -11
- 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 +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +11 -10
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +11 -10
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/HeaderActionButton.cjs.js +3 -3
- package/dist/shared/src/containers/ProjectTreeTable/components/HeaderActionButton.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/HeaderActionButton.es.js +3 -3
- package/dist/shared/src/containers/ProjectTreeTable/components/HeaderActionButton.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js +1 -174
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js +2 -175
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +212 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +212 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +1 -185
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +2 -186
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +197 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +197 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js +1 -79
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.es.js +2 -80
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js +84 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js +84 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js +1 -277
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js +2 -278
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +282 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +282 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useEntitiesMap.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useEntitiesMap.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.cjs.js +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.es.js +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +8 -175
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +8 -175
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/{context/ProjectTableModulesContext.cjs.js → hooks/useProjectTableModules.cjs.js} +28 -48
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/{context/ProjectTableModulesContext.es.js → hooks/useProjectTableModules.es.js} +28 -48
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +8 -5
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +7 -4
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.cjs.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/utils/getTableFieldOptions.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +13 -11
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +13 -11
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js +2 -0
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js +2 -0
- package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js +2 -0
- package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.es.js +2 -0
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js +2 -0
- package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.es.js +2 -0
- package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js +2 -0
- package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.es.js +3 -1
- package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/ThumbnailUploaderContext.cjs.js +15 -4
- package/dist/shared/src/context/ThumbnailUploaderContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ThumbnailUploaderContext.es.js +15 -4
- package/dist/shared/src/context/ThumbnailUploaderContext.es.js.map +1 -1
- package/dist/shared/src/context/pip/PiPWrapper.cjs.js +1 -1
- package/dist/shared/src/context/pip/PiPWrapper.cjs.js.map +1 -1
- package/dist/shared/src/context/pip/PiPWrapper.es.js +1 -1
- package/dist/shared/src/context/pip/PiPWrapper.es.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js +2 -0
- package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.es.js +2 -0
- package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js +2 -0
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.es.js +2 -0
- package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
- package/dist/shared/src/hooks/useLoadModule.cjs.js +3 -3
- package/dist/shared/src/hooks/useLoadModule.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useLoadModule.es.js +3 -3
- package/dist/shared/src/hooks/useLoadModule.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js +2 -0
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.es.js +2 -0
- package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +2 -0
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.es.js +2 -0
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/shared/src/util/productTypes.cjs.js +1 -0
- package/dist/shared/src/util/productTypes.cjs.js.map +1 -1
- package/dist/shared/src/util/productTypes.es.js +1 -0
- package/dist/shared/src/util/productTypes.es.js.map +1 -1
- package/dist/shared/src/utils/extractVersionFromFilename.cjs.js +32 -0
- package/dist/shared/src/utils/extractVersionFromFilename.cjs.js.map +1 -0
- package/dist/shared/src/utils/extractVersionFromFilename.es.js +32 -0
- package/dist/shared/src/utils/extractVersionFromFilename.es.js.map +1 -0
- package/dist/shared/src/utils/versionUploadHelpers.cjs.js +121 -0
- package/dist/shared/src/utils/versionUploadHelpers.cjs.js.map +1 -0
- package/dist/shared/src/utils/versionUploadHelpers.es.js +121 -0
- package/dist/shared/src/utils/versionUploadHelpers.es.js.map +1 -0
- package/dist/types/api/generated/graphql.d.ts +47 -36
- package/dist/types/api/queries/activities/getActivities.d.ts +4 -4
- package/dist/types/api/queries/activities/updateActivities.d.ts +8 -8
- package/dist/types/api/queries/entities/getEntity.d.ts +4 -4
- package/dist/types/api/queries/entities/getEntityPanel.d.ts +4 -4
- package/dist/types/api/queries/entities/updateEntity.d.ts +4 -4
- package/dist/types/api/queries/entityLists/getLists.d.ts +4 -4
- package/dist/types/api/queries/index.d.ts +2 -0
- package/dist/types/api/queries/overview/getOverview.d.ts +4 -4
- package/dist/types/api/queries/products/createProduct.d.ts +161 -0
- package/dist/types/api/queries/products/index.d.ts +1 -0
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +4 -4
- package/dist/types/api/queries/users/getUsers.d.ts +4 -4
- package/dist/types/api/queries/versions/index.d.ts +1 -0
- package/dist/types/api/queries/versions/updateVersions.d.ts +685 -0
- package/dist/types/components/EntityPanelUploader/Dropzone.d.ts +11 -0
- package/dist/types/components/{EntityThumbnailUploader/EntityThumbnailUploader.d.ts → EntityPanelUploader/EntityPanelUploader.d.ts} +3 -3
- package/dist/types/components/EntityPanelUploader/EntityPanelUploader.styled.d.ts +8 -0
- package/dist/types/components/EntityPanelUploader/EntityPanelUploaderDialog.d.ts +10 -0
- package/dist/types/components/EntityPanelUploader/index.d.ts +1 -0
- package/dist/types/components/ProjectTableSettings/ColumnItem.d.ts +1 -0
- package/dist/types/components/ProjectTableSettings/SortableColumnItem.d.ts +1 -0
- package/dist/types/components/ReviewablesList/index.d.ts +1 -0
- package/dist/types/components/ReviewablesList/useReviewablesUpload.d.ts +19 -0
- package/dist/types/components/SettingsPanel/SettingsPanelItemTemplate.d.ts +1 -0
- package/dist/types/components/VersionUploader/components/UploadVersionDialog.d.ts +5 -0
- package/dist/types/components/VersionUploader/components/UploadVersionForm.d.ts +18 -0
- package/dist/types/components/VersionUploader/context/VersionUploadContext.d.ts +54 -0
- package/dist/types/components/VersionUploader/index.d.ts +2 -0
- package/dist/types/components/index.d.ts +2 -2
- package/dist/types/containers/DetailsPanel/DetailsPanel.d.ts +2 -1
- package/dist/types/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.d.ts +3 -1
- package/dist/types/containers/ProjectTreeTable/components/GroupSettingsFallback.d.ts +9 -2
- package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsContext.d.ts +16 -16
- package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsProvider.d.ts +9 -0
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +6 -61
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +60 -0
- package/dist/types/containers/ProjectTreeTable/context/SelectedRowsContext.d.ts +3 -8
- package/dist/types/containers/ProjectTreeTable/context/SelectedRowsProvider.d.ts +6 -0
- package/dist/types/containers/ProjectTreeTable/context/SelectionCellsContext.d.ts +2 -4
- package/dist/types/containers/ProjectTreeTable/context/SelectionCellsProvider.d.ts +4 -0
- package/dist/types/containers/ProjectTreeTable/context/index.d.ts +4 -2
- package/dist/types/containers/ProjectTreeTable/hooks/index.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.d.ts +1 -2
- package/dist/types/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useEntitiesMap.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +4 -3
- package/dist/types/containers/ProjectTreeTable/hooks/useGetGroupedFields.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/{context/ProjectTableModulesContext.d.ts → hooks/useProjectTableModules.d.ts} +5 -12
- package/dist/types/containers/ProjectTreeTable/index.d.ts +1 -10
- package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +3 -3
- package/dist/types/containers/ProjectTreeTable/utils/getTableFieldOptions.d.ts +2 -1
- package/dist/types/context/ThumbnailUploaderContext.d.ts +3 -2
- package/dist/types/utils/versionUploadHelpers.d.ts +63 -0
- package/package.json +1 -1
- package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.cjs.js.map +0 -1
- package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.es.js.map +0 -1
- package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.styled.cjs.js +0 -12
- package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.styled.cjs.js.map +0 -1
- package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.styled.es.js +0 -12
- package/dist/shared/src/components/EntityThumbnailUploader/EntityThumbnailUploader.styled.es.js.map +0 -1
- package/dist/shared/src/components/ThumbnailUploader/ThumbnailUploader.cjs.js +0 -112
- package/dist/shared/src/components/ThumbnailUploader/ThumbnailUploader.cjs.js.map +0 -1
- package/dist/shared/src/components/ThumbnailUploader/ThumbnailUploader.es.js +0 -112
- package/dist/shared/src/components/ThumbnailUploader/ThumbnailUploader.es.js.map +0 -1
- package/dist/shared/src/components/ThumbnailUploader/ThumbnailUploader.styled.cjs.js +0 -104
- package/dist/shared/src/components/ThumbnailUploader/ThumbnailUploader.styled.cjs.js.map +0 -1
- package/dist/shared/src/components/ThumbnailUploader/ThumbnailUploader.styled.es.js +0 -104
- package/dist/shared/src/components/ThumbnailUploader/ThumbnailUploader.styled.es.js.map +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableModulesContext.cjs.js.map +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableModulesContext.es.js.map +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableSelectionContext.cjs.js +0 -33
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableSelectionContext.cjs.js.map +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableSelectionContext.es.js +0 -33
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableSelectionContext.es.js.map +0 -1
- package/dist/types/components/EntityThumbnailUploader/EntityThumbnailUploader.styled.d.ts +0 -1
- package/dist/types/components/EntityThumbnailUploader/index.d.ts +0 -1
- package/dist/types/components/ThumbnailUploader/ThumbnailUploader.d.ts +0 -17
- package/dist/types/components/ThumbnailUploader/ThumbnailUploader.styled.d.ts +0 -4
- package/dist/types/components/ThumbnailUploader/index.d.ts +0 -1
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableSelectionContext.d.ts +0 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnsSettings.cjs.js","sources":["../../../../../src/components/ProjectTableSettings/ColumnsSettings.tsx"],"sourcesContent":["// React and Styling imports\nimport { FC, useEffect, useMemo, useRef, useState } from 'react'\nimport styled from 'styled-components'\nimport * as Styled from './TableSettings.styled'\n\n// Context and Components imports\nimport {\n ColumnsConfig,\n useColumnSettingsContext,\n} from '@shared/containers/ProjectTreeTable/context/ColumnSettingsContext'\nimport ColumnItem from './ColumnItem'\nimport SortableColumnItem from './SortableColumnItem'\n\n// DND (Drag and Drop) imports\nimport {\n DndContext,\n closestCenter,\n DragEndEvent,\n DragStartEvent,\n useSensor,\n useSensors,\n PointerSensor,\n DragOverlay,\n DragOverEvent,\n} from '@dnd-kit/core'\nimport { SortableContext, verticalListSortingStrategy, arrayMove } from '@dnd-kit/sortable'\n\n// Notification imports\nimport { toast } from 'react-toastify'\nimport { SettingsPanelItem } from '../SettingsPanel/SettingsPanelItemTemplate'\nimport { SettingHighlightedId } from '@shared/context'\n\ninterface ColumnsSettingsProps {\n columns: SettingsPanelItem[]\n highlighted?: SettingHighlightedId\n}\n\nconst ColumnsSettings: FC<ColumnsSettingsProps> = ({ columns, highlighted }) => {\n const {\n columnVisibility,\n updateColumnVisibility,\n columnPinning,\n updateColumnPinning,\n columnOrder,\n setColumnsConfig,\n columnSizing,\n } = useColumnSettingsContext()\n\n // State for the currently dragged column\n const [activeId, setActiveId] = useState<string | null>(null)\n const [isHiddenOverVisible, setIsHiddenOverVisible] = useState(false)\n const [isDraggingOverPinned, setIsDraggingOverPinned] = useState(false)\n const [isDraggingFromPinned, setIsDraggingFromPinned] = useState(false)\n // Add a new state to track if we're hovering over the visible section\n const [isHoveringVisibleSection, setIsHoveringVisibleSection] = useState(false)\n // Add state to track if dragging over the hidden section\n const [isDraggingOverHidden, setIsDraggingOverHidden] = useState(false)\n\n // Setup sensors for dnd-kit\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n distance: 5,\n },\n }),\n )\n\n const menuRef = useRef<HTMLUListElement | null>(null)\n\n // if highlighted is set, scroll to the highlighted column\n useEffect(() => {\n if (menuRef.current && highlighted) {\n const highlightedElement = menuRef.current.querySelector(`#column-settings-${highlighted}`)\n if (highlightedElement) {\n highlightedElement.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n })\n }\n }\n }, [highlighted])\n\n // Separate columns into visible, hidden, and pinned\n const { visibleColumns, hiddenColumns, pinnedColumns } = useMemo(() => {\n // First filter columns by visibility\n const visible = columns.filter((col) => columnVisibility[col.value] !== false)\n const hidden = columns.filter((col) => columnVisibility[col.value] === false)\n\n // Then separate out pinned columns from visible\n const pinned = visible.filter((col) => columnPinning.left?.includes(col.value))\n const unpinnedVisible = visible.filter((col) => !columnPinning.left?.includes(col.value))\n\n return {\n visibleColumns: unpinnedVisible,\n hiddenColumns: hidden,\n pinnedColumns: pinned,\n }\n }, [columns, columnVisibility, columnPinning])\n\n // Sort columns based on columnOrder\n const sortedVisibleColumns = useMemo(() => {\n // Create a copy of visible columns\n const visibleCopy = [...visibleColumns]\n\n // If we have a column order, use it to sort\n if (columnOrder.length > 0) {\n visibleCopy.sort((a, b) => {\n const indexA = columnOrder.indexOf(a.value)\n const indexB = columnOrder.indexOf(b.value)\n\n // If column is not in order array, place at end\n if (indexA === -1) return 1\n if (indexB === -1) return -1\n\n return indexA - indexB\n })\n }\n\n return visibleCopy\n }, [visibleColumns, columnOrder])\n\n // Sort pinned columns based on columnOrder\n const sortedPinnedColumns = useMemo(() => {\n // Create a copy of pinned columns\n const pinnedCopy = [...pinnedColumns]\n\n // If we have a column order, use it to sort\n if (columnOrder.length > 0) {\n pinnedCopy.sort((a, b) => {\n const indexA = columnOrder.indexOf(a.value)\n const indexB = columnOrder.indexOf(b.value)\n\n // If column is not in order array, place at end\n if (indexA === -1) return 1\n if (indexB === -1) return -1\n\n return indexA - indexB\n })\n }\n\n return pinnedCopy\n }, [pinnedColumns, columnOrder])\n\n const sortedVisibleColumnsIds = useMemo(\n () => sortedVisibleColumns.map((col) => col.value),\n [sortedVisibleColumns],\n )\n\n const sortedPinnedColumnsIds = useMemo(\n () => sortedPinnedColumns.map((col) => col.value),\n [sortedPinnedColumns],\n )\n\n // Toggle column visibility\n const toggleVisibility = (columnId: string) => {\n const newState = { ...columnVisibility }\n // If column is currently visible, hide it\n if (newState[columnId] !== false) {\n newState[columnId] = false\n } else {\n // If column is currently hidden, show it\n newState[columnId] = true\n }\n updateColumnVisibility(newState)\n }\n\n // Toggle column pinning\n const togglePinning = (columnId: string) => {\n const newState = { ...columnPinning }\n const newVisibility = { ...columnVisibility }\n\n // If column is currently pinned, unpin it\n if (newState.left?.includes(columnId)) {\n newState.left = newState.left.filter((id) => id !== columnId)\n } else {\n // If column is currently unpinned, pin it\n newState.left = [...(newState.left || []), columnId]\n // If column is hidden, show it\n if (newVisibility[columnId] === false) {\n newVisibility[columnId] = true\n updateColumnVisibility(newVisibility)\n }\n }\n updateColumnPinning(newState)\n }\n\n // When drag starts\n const handleDragStart = (event: DragStartEvent) => {\n const id = event.active.id as string\n setActiveId(id)\n setIsDraggingFromPinned(columnPinning.left?.includes(id) || false)\n }\n\n // Track when dragging over different sections\n const handleDragOver = (event: DragOverEvent) => {\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n // Check if we're dragging a hidden column over a visible column\n const isActiveHidden = columnVisibility[active.id as string] === false\n const isOverVisible = columnVisibility[over.id as string] !== false\n const isOverPinned = columnPinning.left?.includes(over.id as string) || false\n const isOverHidden = columnVisibility[over.id as string] === false\n\n setIsHiddenOverVisible(isActiveHidden && isOverVisible && !isOverPinned)\n setIsDraggingOverPinned(isOverVisible && isOverPinned)\n setIsDraggingOverHidden(isOverHidden)\n\n // Set if we're hovering over the visible (unpinned) section\n setIsHoveringVisibleSection(isOverVisible && !isOverPinned)\n } else {\n // Reset when not over any column\n setIsHoveringVisibleSection(false)\n setIsDraggingOverHidden(false)\n }\n }\n\n // When drag ends, reset all states\n const handleDragEnd = (event: DragEndEvent) => {\n // Reset states\n setIsHiddenOverVisible(false)\n setIsDraggingOverPinned(false)\n setIsDraggingFromPinned(false)\n setIsHoveringVisibleSection(false)\n setIsDraggingOverHidden(false)\n\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n // Find the dragged column and target column\n const activeColumn = [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find(\n (col) => col.value === active.id,\n )\n const overColumn = [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find(\n (col) => col.value === over.id,\n )\n\n if (activeColumn && overColumn) {\n const activeId = active.id as string\n const overId = over.id as string\n const isActiveVisible = columnVisibility[activeId] !== false\n const isOverVisible = columnVisibility[overId] !== false\n const isActivePinned = columnPinning.left?.includes(activeId) || false\n const isOverPinned = columnPinning.left?.includes(overId) || false\n const isOverHidden = columnVisibility[overId] === false\n\n // Create a new config object that we'll update and apply at the end\n const newConfig: ColumnsConfig = {\n columnVisibility: { ...columnVisibility },\n columnOrder: [...columnOrder],\n columnPinning: { ...columnPinning },\n columnSizing: { ...columnSizing },\n }\n\n // If we're moving a column between visible columns (including pinned)\n if (isActiveVisible && isOverVisible) {\n let newPinningLeft = [...(newConfig.columnPinning.left || [])]\n\n // Handle pinning/unpinning based on target section\n if (isActivePinned !== isOverPinned) {\n if (isActivePinned && !isOverPinned) {\n // Moving from pinned to unpinned section\n newPinningLeft = newPinningLeft.filter((id) => id !== activeId)\n } else if (!isActivePinned && isOverPinned) {\n // Moving from unpinned to pinned section\n newPinningLeft = [...newPinningLeft, activeId]\n }\n }\n\n // Update order within the appropriate section\n const allVisibleIds = [...sortedPinnedColumnsIds, ...sortedVisibleColumnsIds]\n const oldIndex = allVisibleIds.indexOf(activeId)\n const newIndex = allVisibleIds.indexOf(overId)\n\n if (oldIndex === -1 || newIndex === -1) {\n console.error('Invalid column order state')\n toast.error('Invalid column order state')\n return\n }\n\n const newOrder = arrayMove(allVisibleIds, oldIndex, newIndex)\n\n // new pinning left should be ordered by the new order\n const newPinningLeftOrdered = newOrder.filter((id) => newPinningLeft.includes(id))\n\n // Update config object\n newConfig.columnOrder = newOrder\n newConfig.columnPinning = {\n ...newConfig.columnPinning,\n left: newPinningLeftOrdered,\n }\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n\n // If we're dragging from hidden to visible\n else if (!isActiveVisible && isOverVisible) {\n // Make the column visible\n newConfig.columnVisibility[activeId] = true\n\n // If dropping into pinned section, also pin the column\n if (isOverPinned) {\n const newPinningLeft = [...(newConfig.columnPinning.left || []), activeId]\n newConfig.columnPinning.left = newPinningLeft\n }\n\n // Update order to place it near the over column\n const allVisibleIds = [...sortedPinnedColumnsIds, ...sortedVisibleColumnsIds]\n\n // Add the column to order if not already there\n if (!allVisibleIds.includes(activeId)) {\n const overIndex = allVisibleIds.indexOf(overId)\n allVisibleIds.splice(overIndex, 0, activeId)\n }\n\n newConfig.columnOrder = allVisibleIds\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n\n // If we're dragging from visible to hidden\n else if (isActiveVisible && isOverHidden) {\n // Make the active column hidden\n newConfig.columnVisibility[activeId] = false\n\n // If the column was pinned, remove it from pinned\n if (isActivePinned) {\n const newPinningLeft = (newConfig.columnPinning.left || []).filter(\n (id) => id !== activeId,\n )\n newConfig.columnPinning.left = newPinningLeft\n }\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n }\n }\n\n setActiveId(null)\n }\n\n // Find the active column for the drag overlay\n const activeColumn = activeId\n ? [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find((col) => col.value === activeId)\n : null\n\n return (\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n onDragStart={handleDragStart}\n onDragOver={handleDragOver}\n onDragEnd={handleDragEnd}\n >\n <ColumnsContainer>\n {/* Pinned Columns Section */}\n {pinnedColumns.length > 0 && (\n <Section className={isDraggingOverPinned && !isDraggingFromPinned ? 'drop-target' : ''}>\n <SectionTitle>Pinned Columns</SectionTitle>\n <SortableContext\n items={sortedPinnedColumns.map((col) => col.value)}\n strategy={verticalListSortingStrategy}\n >\n <Styled.Menu>\n {sortedPinnedColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={true}\n isHidden={false}\n isHighlighted={highlighted === column.value}\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </SortableContext>\n </Section>\n )}\n\n {/* Visible Columns Section */}\n <Section\n className={\n isHiddenOverVisible || (isDraggingFromPinned && isHoveringVisibleSection)\n ? 'drop-target'\n : ''\n }\n >\n <SectionTitle>Visible Columns</SectionTitle>\n <SortableContext\n items={sortedVisibleColumns.map((col) => col.value)}\n strategy={verticalListSortingStrategy}\n >\n <Styled.Menu>\n {sortedVisibleColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={false}\n isHidden={false}\n isHighlighted={highlighted === column.value}\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </SortableContext>\n </Section>\n\n {/* Hidden Columns Section */}\n {hiddenColumns.length > 0 && (\n <Section className={isDraggingOverHidden ? 'drop-target' : ''}>\n <SectionTitle>Hidden Columns</SectionTitle>\n <Styled.Menu ref={menuRef}>\n {hiddenColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={columnPinning.left?.includes(column.value) || false}\n isHidden={true}\n isHighlighted={highlighted === column.value}\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </Section>\n )}\n\n {/* Drag Overlay */}\n <DragOverlay>\n {activeColumn && (\n <ColumnItem\n column={activeColumn}\n isPinned={columnPinning.left?.includes(activeColumn.value) || false}\n isHidden={columnVisibility[activeColumn.value] === false}\n isHighlighted={highlighted === activeColumn.value}\n dragOverlay={true}\n />\n )}\n </DragOverlay>\n </ColumnsContainer>\n </DndContext>\n )\n}\n\n// Styled components\nconst ColumnsContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--base-gap-large);\n`\n\nconst Section = styled.section`\n position: relative;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transition: background-color 0.2s ease;\n border-radius: 4px;\n\n &.drop-target {\n background-color: var(--md-sys-color-surface-container);\n box-shadow: 0 0 0 1px var(--md-sys-color-outline);\n }\n`\n\nconst SectionTitle = styled.div`\n font-weight: 500;\n color: var(--md-sys-color-outline);\n padding: 4px 0;\n`\n\nexport default ColumnsSettings\n"],"names":["useColumnSettingsContext","useState","useSensors","useSensor","PointerSensor","useRef","useEffect","useMemo","_a","activeColumn","activeId","toast","arrayMove","jsx","DndContext","closestCenter","jsxs","SortableContext","verticalListSortingStrategy","Styled.Menu","DragOverlay"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ColumnsSettings.cjs.js","sources":["../../../../../src/components/ProjectTableSettings/ColumnsSettings.tsx"],"sourcesContent":["// React and Styling imports\nimport { FC, useEffect, useMemo, useRef, useState } from 'react'\nimport styled from 'styled-components'\nimport * as Styled from './TableSettings.styled'\n\n// Context and Components imports\nimport {\n ColumnsConfig,\n useColumnSettingsContext,\n} from '@shared/containers/ProjectTreeTable/context/ColumnSettingsContext'\nimport ColumnItem from './ColumnItem'\nimport SortableColumnItem from './SortableColumnItem'\n\n// DND (Drag and Drop) imports\nimport {\n DndContext,\n closestCenter,\n DragEndEvent,\n DragStartEvent,\n useSensor,\n useSensors,\n PointerSensor,\n DragOverlay,\n DragOverEvent,\n} from '@dnd-kit/core'\nimport { SortableContext, verticalListSortingStrategy, arrayMove } from '@dnd-kit/sortable'\n\n// Notification imports\nimport { toast } from 'react-toastify'\nimport { SettingsPanelItem } from '../SettingsPanel/SettingsPanelItemTemplate'\nimport { SettingHighlightedId } from '@shared/context'\n\ninterface ColumnsSettingsProps {\n columns: SettingsPanelItem[]\n highlighted?: SettingHighlightedId\n}\n\nconst ColumnsSettings: FC<ColumnsSettingsProps> = ({ columns, highlighted }) => {\n const {\n columnVisibility,\n updateColumnVisibility,\n columnPinning,\n updateColumnPinning,\n columnOrder,\n setColumnsConfig,\n columnSizing,\n groupBy,\n } = useColumnSettingsContext()\n\n // State for the currently dragged column\n const [activeId, setActiveId] = useState<string | null>(null)\n const [isHiddenOverVisible, setIsHiddenOverVisible] = useState(false)\n const [isDraggingOverPinned, setIsDraggingOverPinned] = useState(false)\n const [isDraggingFromPinned, setIsDraggingFromPinned] = useState(false)\n // Add a new state to track if we're hovering over the visible section\n const [isHoveringVisibleSection, setIsHoveringVisibleSection] = useState(false)\n // Add state to track if dragging over the hidden section\n const [isDraggingOverHidden, setIsDraggingOverHidden] = useState(false)\n\n // Setup sensors for dnd-kit\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n distance: 5,\n },\n }),\n )\n\n const menuRef = useRef<HTMLUListElement | null>(null)\n\n // if highlighted is set, scroll to the highlighted column\n useEffect(() => {\n if (menuRef.current && highlighted) {\n const highlightedElement = menuRef.current.querySelector(`#column-settings-${highlighted}`)\n if (highlightedElement) {\n highlightedElement.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n })\n }\n }\n }, [highlighted])\n\n // Separate columns into visible, hidden, and pinned\n const { visibleColumns, hiddenColumns, pinnedColumns } = useMemo(() => {\n // First filter columns by visibility\n const visible = columns.filter((col) => columnVisibility[col.value] !== false)\n const hidden = columns.filter((col) => columnVisibility[col.value] === false)\n\n // Then separate out pinned columns from visible\n const pinned = visible.filter((col) => columnPinning.left?.includes(col.value))\n const unpinnedVisible = visible.filter((col) => !columnPinning.left?.includes(col.value))\n\n return {\n visibleColumns: unpinnedVisible,\n hiddenColumns: hidden,\n pinnedColumns: pinned,\n }\n }, [columns, columnVisibility, columnPinning])\n\n // Sort columns based on columnOrder\n const sortedVisibleColumns = useMemo(() => {\n // Create a copy of visible columns\n const visibleCopy = [...visibleColumns]\n\n // If we have a column order, use it to sort\n if (columnOrder.length > 0) {\n visibleCopy.sort((a, b) => {\n const indexA = columnOrder.indexOf(a.value)\n const indexB = columnOrder.indexOf(b.value)\n\n // If column is not in order array, place at end\n if (indexA === -1) return 1\n if (indexB === -1) return -1\n\n return indexA - indexB\n })\n }\n\n return visibleCopy\n }, [visibleColumns, columnOrder])\n\n // Sort pinned columns based on columnOrder\n const sortedPinnedColumns = useMemo(() => {\n // Create a copy of pinned columns\n const pinnedCopy = [...pinnedColumns]\n\n // If we have a column order, use it to sort\n if (columnOrder.length > 0) {\n pinnedCopy.sort((a, b) => {\n const indexA = columnOrder.indexOf(a.value)\n const indexB = columnOrder.indexOf(b.value)\n\n // If column is not in order array, place at end\n if (indexA === -1) return 1\n if (indexB === -1) return -1\n\n return indexA - indexB\n })\n }\n\n return pinnedCopy\n }, [pinnedColumns, columnOrder])\n\n const sortedVisibleColumnsIds = useMemo(\n () => sortedVisibleColumns.map((col) => col.value),\n [sortedVisibleColumns],\n )\n\n const sortedPinnedColumnsIds = useMemo(\n () => sortedPinnedColumns.map((col) => col.value),\n [sortedPinnedColumns],\n )\n\n // Toggle column visibility\n const toggleVisibility = (columnId: string) => {\n const newState = { ...columnVisibility }\n // If column is currently visible, hide it\n if (newState[columnId] !== false) {\n newState[columnId] = false\n } else {\n // If column is currently hidden, show it\n newState[columnId] = true\n }\n updateColumnVisibility(newState)\n }\n\n // Toggle column pinning\n const togglePinning = (columnId: string) => {\n const newState = { ...columnPinning }\n const newVisibility = { ...columnVisibility }\n\n // If column is currently pinned, unpin it\n if (newState.left?.includes(columnId)) {\n newState.left = newState.left.filter((id) => id !== columnId)\n } else {\n // If column is currently unpinned, pin it\n newState.left = [...(newState.left || []), columnId]\n // If column is hidden, show it\n if (newVisibility[columnId] === false) {\n newVisibility[columnId] = true\n updateColumnVisibility(newVisibility)\n }\n }\n updateColumnPinning(newState)\n }\n\n // When drag starts\n const handleDragStart = (event: DragStartEvent) => {\n const id = event.active.id as string\n setActiveId(id)\n setIsDraggingFromPinned(columnPinning.left?.includes(id) || false)\n }\n\n // Track when dragging over different sections\n const handleDragOver = (event: DragOverEvent) => {\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n // Check if we're dragging a hidden column over a visible column\n const isActiveHidden = columnVisibility[active.id as string] === false\n const isOverVisible = columnVisibility[over.id as string] !== false\n const isOverPinned = columnPinning.left?.includes(over.id as string) || false\n const isOverHidden = columnVisibility[over.id as string] === false\n\n setIsHiddenOverVisible(isActiveHidden && isOverVisible && !isOverPinned)\n setIsDraggingOverPinned(isOverVisible && isOverPinned)\n setIsDraggingOverHidden(isOverHidden)\n\n // Set if we're hovering over the visible (unpinned) section\n setIsHoveringVisibleSection(isOverVisible && !isOverPinned)\n } else {\n // Reset when not over any column\n setIsHoveringVisibleSection(false)\n setIsDraggingOverHidden(false)\n }\n }\n\n // When drag ends, reset all states\n const handleDragEnd = (event: DragEndEvent) => {\n // Reset states\n setIsHiddenOverVisible(false)\n setIsDraggingOverPinned(false)\n setIsDraggingFromPinned(false)\n setIsHoveringVisibleSection(false)\n setIsDraggingOverHidden(false)\n\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n // Find the dragged column and target column\n const activeColumn = [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find(\n (col) => col.value === active.id,\n )\n const overColumn = [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find(\n (col) => col.value === over.id,\n )\n\n if (activeColumn && overColumn) {\n const activeId = active.id as string\n const overId = over.id as string\n const isActiveVisible = columnVisibility[activeId] !== false\n const isOverVisible = columnVisibility[overId] !== false\n const isActivePinned = columnPinning.left?.includes(activeId) || false\n const isOverPinned = columnPinning.left?.includes(overId) || false\n const isOverHidden = columnVisibility[overId] === false\n\n // Create a new config object that we'll update and apply at the end\n const newConfig: ColumnsConfig = {\n columnVisibility: { ...columnVisibility },\n columnOrder: [...columnOrder],\n columnPinning: { ...columnPinning },\n columnSizing: { ...columnSizing },\n }\n\n // If we're moving a column between visible columns (including pinned)\n if (isActiveVisible && isOverVisible) {\n let newPinningLeft = [...(newConfig.columnPinning.left || [])]\n\n // Handle pinning/unpinning based on target section\n if (isActivePinned !== isOverPinned) {\n if (isActivePinned && !isOverPinned) {\n // Moving from pinned to unpinned section\n newPinningLeft = newPinningLeft.filter((id) => id !== activeId)\n } else if (!isActivePinned && isOverPinned) {\n // Moving from unpinned to pinned section\n newPinningLeft = [...newPinningLeft, activeId]\n }\n }\n\n // Update order within the appropriate section\n const allVisibleIds = [...sortedPinnedColumnsIds, ...sortedVisibleColumnsIds]\n const oldIndex = allVisibleIds.indexOf(activeId)\n const newIndex = allVisibleIds.indexOf(overId)\n\n if (oldIndex === -1 || newIndex === -1) {\n console.error('Invalid column order state')\n toast.error('Invalid column order state')\n return\n }\n\n const newOrder = arrayMove(allVisibleIds, oldIndex, newIndex)\n\n // new pinning left should be ordered by the new order\n const newPinningLeftOrdered = newOrder.filter((id) => newPinningLeft.includes(id))\n\n // Update config object\n newConfig.columnOrder = newOrder\n newConfig.columnPinning = {\n ...newConfig.columnPinning,\n left: newPinningLeftOrdered,\n }\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n\n // If we're dragging from hidden to visible\n else if (!isActiveVisible && isOverVisible) {\n // Make the column visible\n newConfig.columnVisibility[activeId] = true\n\n // If dropping into pinned section, also pin the column\n if (isOverPinned) {\n const newPinningLeft = [...(newConfig.columnPinning.left || []), activeId]\n newConfig.columnPinning.left = newPinningLeft\n }\n\n // Update order to place it near the over column\n const allVisibleIds = [...sortedPinnedColumnsIds, ...sortedVisibleColumnsIds]\n\n // Add the column to order if not already there\n if (!allVisibleIds.includes(activeId)) {\n const overIndex = allVisibleIds.indexOf(overId)\n allVisibleIds.splice(overIndex, 0, activeId)\n }\n\n newConfig.columnOrder = allVisibleIds\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n\n // If we're dragging from visible to hidden\n else if (isActiveVisible && isOverHidden) {\n // Make the active column hidden\n newConfig.columnVisibility[activeId] = false\n\n // If the column was pinned, remove it from pinned\n if (isActivePinned) {\n const newPinningLeft = (newConfig.columnPinning.left || []).filter(\n (id) => id !== activeId,\n )\n newConfig.columnPinning.left = newPinningLeft\n }\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n }\n }\n\n setActiveId(null)\n }\n\n // Find the active column for the drag overlay\n const activeColumn = activeId\n ? [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find((col) => col.value === activeId)\n : null\n\n return (\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n onDragStart={handleDragStart}\n onDragOver={handleDragOver}\n onDragEnd={handleDragEnd}\n >\n <ColumnsContainer>\n {/* Pinned Columns Section */}\n {pinnedColumns.length > 0 && (\n <Section className={isDraggingOverPinned && !isDraggingFromPinned ? 'drop-target' : ''}>\n <SectionTitle>Pinned Columns</SectionTitle>\n <SortableContext\n items={sortedPinnedColumns.map((col) => col.value)}\n strategy={verticalListSortingStrategy}\n >\n <Styled.Menu>\n {sortedPinnedColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={true}\n isHidden={false}\n isDisabled={!!groupBy && column.value === 'name'} // Disable 'name' column if grouping is enabled\n isHighlighted={highlighted === column.value}\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </SortableContext>\n </Section>\n )}\n\n {/* Visible Columns Section */}\n <Section\n className={\n isHiddenOverVisible || (isDraggingFromPinned && isHoveringVisibleSection)\n ? 'drop-target'\n : ''\n }\n >\n <SectionTitle>Visible Columns</SectionTitle>\n <SortableContext\n items={sortedVisibleColumns.map((col) => col.value)}\n strategy={verticalListSortingStrategy}\n >\n <Styled.Menu>\n {sortedVisibleColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={false}\n isHidden={false}\n isHighlighted={highlighted === column.value}\n isDisabled={!!groupBy && column.value === 'name'} // Disable 'name' column if grouping is enabled\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </SortableContext>\n </Section>\n\n {/* Hidden Columns Section */}\n {hiddenColumns.length > 0 && (\n <Section className={isDraggingOverHidden ? 'drop-target' : ''}>\n <SectionTitle>Hidden Columns</SectionTitle>\n <Styled.Menu ref={menuRef}>\n {hiddenColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={columnPinning.left?.includes(column.value) || false}\n isHidden={true}\n isHighlighted={highlighted === column.value}\n isDisabled={!!groupBy && column.value === 'name'} // Disable 'name' column if grouping is enabled\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </Section>\n )}\n\n {/* Drag Overlay */}\n <DragOverlay>\n {activeColumn && (\n <ColumnItem\n column={activeColumn}\n isPinned={columnPinning.left?.includes(activeColumn.value) || false}\n isHidden={columnVisibility[activeColumn.value] === false}\n isHighlighted={highlighted === activeColumn.value}\n dragOverlay={true}\n />\n )}\n </DragOverlay>\n </ColumnsContainer>\n </DndContext>\n )\n}\n\n// Styled components\nconst ColumnsContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--base-gap-large);\n`\n\nconst Section = styled.section`\n position: relative;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transition: background-color 0.2s ease;\n border-radius: 4px;\n\n &.drop-target {\n background-color: var(--md-sys-color-surface-container);\n box-shadow: 0 0 0 1px var(--md-sys-color-outline);\n }\n`\n\nconst SectionTitle = styled.div`\n font-weight: 500;\n color: var(--md-sys-color-outline);\n padding: 4px 0;\n`\n\nexport default ColumnsSettings\n"],"names":["useColumnSettingsContext","useState","useSensors","useSensor","PointerSensor","useRef","useEffect","useMemo","_a","activeColumn","activeId","toast","arrayMove","jsx","DndContext","closestCenter","jsxs","SortableContext","verticalListSortingStrategy","Styled.Menu","DragOverlay"],"mappings":"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"}
|
|
@@ -17,7 +17,8 @@ const ColumnsSettings = ({ columns, highlighted }) => {
|
|
|
17
17
|
updateColumnPinning,
|
|
18
18
|
columnOrder,
|
|
19
19
|
setColumnsConfig,
|
|
20
|
-
columnSizing
|
|
20
|
+
columnSizing,
|
|
21
|
+
groupBy
|
|
21
22
|
} = useColumnSettingsContext();
|
|
22
23
|
const [activeId, setActiveId] = useState(null);
|
|
23
24
|
const [isHiddenOverVisible, setIsHiddenOverVisible] = useState(false);
|
|
@@ -247,6 +248,7 @@ const ColumnsSettings = ({ columns, highlighted }) => {
|
|
|
247
248
|
column,
|
|
248
249
|
isPinned: true,
|
|
249
250
|
isHidden: false,
|
|
251
|
+
isDisabled: !!groupBy && column.value === "name",
|
|
250
252
|
isHighlighted: highlighted === column.value,
|
|
251
253
|
onTogglePinning: togglePinning,
|
|
252
254
|
onToggleVisibility: toggleVisibility
|
|
@@ -275,6 +277,7 @@ const ColumnsSettings = ({ columns, highlighted }) => {
|
|
|
275
277
|
isPinned: false,
|
|
276
278
|
isHidden: false,
|
|
277
279
|
isHighlighted: highlighted === column.value,
|
|
280
|
+
isDisabled: !!groupBy && column.value === "name",
|
|
278
281
|
onTogglePinning: togglePinning,
|
|
279
282
|
onToggleVisibility: toggleVisibility
|
|
280
283
|
},
|
|
@@ -297,6 +300,7 @@ const ColumnsSettings = ({ columns, highlighted }) => {
|
|
|
297
300
|
isPinned: ((_a2 = columnPinning.left) == null ? void 0 : _a2.includes(column.value)) || false,
|
|
298
301
|
isHidden: true,
|
|
299
302
|
isHighlighted: highlighted === column.value,
|
|
303
|
+
isDisabled: !!groupBy && column.value === "name",
|
|
300
304
|
onTogglePinning: togglePinning,
|
|
301
305
|
onToggleVisibility: toggleVisibility
|
|
302
306
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnsSettings.es.js","sources":["../../../../../src/components/ProjectTableSettings/ColumnsSettings.tsx"],"sourcesContent":["// React and Styling imports\nimport { FC, useEffect, useMemo, useRef, useState } from 'react'\nimport styled from 'styled-components'\nimport * as Styled from './TableSettings.styled'\n\n// Context and Components imports\nimport {\n ColumnsConfig,\n useColumnSettingsContext,\n} from '@shared/containers/ProjectTreeTable/context/ColumnSettingsContext'\nimport ColumnItem from './ColumnItem'\nimport SortableColumnItem from './SortableColumnItem'\n\n// DND (Drag and Drop) imports\nimport {\n DndContext,\n closestCenter,\n DragEndEvent,\n DragStartEvent,\n useSensor,\n useSensors,\n PointerSensor,\n DragOverlay,\n DragOverEvent,\n} from '@dnd-kit/core'\nimport { SortableContext, verticalListSortingStrategy, arrayMove } from '@dnd-kit/sortable'\n\n// Notification imports\nimport { toast } from 'react-toastify'\nimport { SettingsPanelItem } from '../SettingsPanel/SettingsPanelItemTemplate'\nimport { SettingHighlightedId } from '@shared/context'\n\ninterface ColumnsSettingsProps {\n columns: SettingsPanelItem[]\n highlighted?: SettingHighlightedId\n}\n\nconst ColumnsSettings: FC<ColumnsSettingsProps> = ({ columns, highlighted }) => {\n const {\n columnVisibility,\n updateColumnVisibility,\n columnPinning,\n updateColumnPinning,\n columnOrder,\n setColumnsConfig,\n columnSizing,\n } = useColumnSettingsContext()\n\n // State for the currently dragged column\n const [activeId, setActiveId] = useState<string | null>(null)\n const [isHiddenOverVisible, setIsHiddenOverVisible] = useState(false)\n const [isDraggingOverPinned, setIsDraggingOverPinned] = useState(false)\n const [isDraggingFromPinned, setIsDraggingFromPinned] = useState(false)\n // Add a new state to track if we're hovering over the visible section\n const [isHoveringVisibleSection, setIsHoveringVisibleSection] = useState(false)\n // Add state to track if dragging over the hidden section\n const [isDraggingOverHidden, setIsDraggingOverHidden] = useState(false)\n\n // Setup sensors for dnd-kit\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n distance: 5,\n },\n }),\n )\n\n const menuRef = useRef<HTMLUListElement | null>(null)\n\n // if highlighted is set, scroll to the highlighted column\n useEffect(() => {\n if (menuRef.current && highlighted) {\n const highlightedElement = menuRef.current.querySelector(`#column-settings-${highlighted}`)\n if (highlightedElement) {\n highlightedElement.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n })\n }\n }\n }, [highlighted])\n\n // Separate columns into visible, hidden, and pinned\n const { visibleColumns, hiddenColumns, pinnedColumns } = useMemo(() => {\n // First filter columns by visibility\n const visible = columns.filter((col) => columnVisibility[col.value] !== false)\n const hidden = columns.filter((col) => columnVisibility[col.value] === false)\n\n // Then separate out pinned columns from visible\n const pinned = visible.filter((col) => columnPinning.left?.includes(col.value))\n const unpinnedVisible = visible.filter((col) => !columnPinning.left?.includes(col.value))\n\n return {\n visibleColumns: unpinnedVisible,\n hiddenColumns: hidden,\n pinnedColumns: pinned,\n }\n }, [columns, columnVisibility, columnPinning])\n\n // Sort columns based on columnOrder\n const sortedVisibleColumns = useMemo(() => {\n // Create a copy of visible columns\n const visibleCopy = [...visibleColumns]\n\n // If we have a column order, use it to sort\n if (columnOrder.length > 0) {\n visibleCopy.sort((a, b) => {\n const indexA = columnOrder.indexOf(a.value)\n const indexB = columnOrder.indexOf(b.value)\n\n // If column is not in order array, place at end\n if (indexA === -1) return 1\n if (indexB === -1) return -1\n\n return indexA - indexB\n })\n }\n\n return visibleCopy\n }, [visibleColumns, columnOrder])\n\n // Sort pinned columns based on columnOrder\n const sortedPinnedColumns = useMemo(() => {\n // Create a copy of pinned columns\n const pinnedCopy = [...pinnedColumns]\n\n // If we have a column order, use it to sort\n if (columnOrder.length > 0) {\n pinnedCopy.sort((a, b) => {\n const indexA = columnOrder.indexOf(a.value)\n const indexB = columnOrder.indexOf(b.value)\n\n // If column is not in order array, place at end\n if (indexA === -1) return 1\n if (indexB === -1) return -1\n\n return indexA - indexB\n })\n }\n\n return pinnedCopy\n }, [pinnedColumns, columnOrder])\n\n const sortedVisibleColumnsIds = useMemo(\n () => sortedVisibleColumns.map((col) => col.value),\n [sortedVisibleColumns],\n )\n\n const sortedPinnedColumnsIds = useMemo(\n () => sortedPinnedColumns.map((col) => col.value),\n [sortedPinnedColumns],\n )\n\n // Toggle column visibility\n const toggleVisibility = (columnId: string) => {\n const newState = { ...columnVisibility }\n // If column is currently visible, hide it\n if (newState[columnId] !== false) {\n newState[columnId] = false\n } else {\n // If column is currently hidden, show it\n newState[columnId] = true\n }\n updateColumnVisibility(newState)\n }\n\n // Toggle column pinning\n const togglePinning = (columnId: string) => {\n const newState = { ...columnPinning }\n const newVisibility = { ...columnVisibility }\n\n // If column is currently pinned, unpin it\n if (newState.left?.includes(columnId)) {\n newState.left = newState.left.filter((id) => id !== columnId)\n } else {\n // If column is currently unpinned, pin it\n newState.left = [...(newState.left || []), columnId]\n // If column is hidden, show it\n if (newVisibility[columnId] === false) {\n newVisibility[columnId] = true\n updateColumnVisibility(newVisibility)\n }\n }\n updateColumnPinning(newState)\n }\n\n // When drag starts\n const handleDragStart = (event: DragStartEvent) => {\n const id = event.active.id as string\n setActiveId(id)\n setIsDraggingFromPinned(columnPinning.left?.includes(id) || false)\n }\n\n // Track when dragging over different sections\n const handleDragOver = (event: DragOverEvent) => {\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n // Check if we're dragging a hidden column over a visible column\n const isActiveHidden = columnVisibility[active.id as string] === false\n const isOverVisible = columnVisibility[over.id as string] !== false\n const isOverPinned = columnPinning.left?.includes(over.id as string) || false\n const isOverHidden = columnVisibility[over.id as string] === false\n\n setIsHiddenOverVisible(isActiveHidden && isOverVisible && !isOverPinned)\n setIsDraggingOverPinned(isOverVisible && isOverPinned)\n setIsDraggingOverHidden(isOverHidden)\n\n // Set if we're hovering over the visible (unpinned) section\n setIsHoveringVisibleSection(isOverVisible && !isOverPinned)\n } else {\n // Reset when not over any column\n setIsHoveringVisibleSection(false)\n setIsDraggingOverHidden(false)\n }\n }\n\n // When drag ends, reset all states\n const handleDragEnd = (event: DragEndEvent) => {\n // Reset states\n setIsHiddenOverVisible(false)\n setIsDraggingOverPinned(false)\n setIsDraggingFromPinned(false)\n setIsHoveringVisibleSection(false)\n setIsDraggingOverHidden(false)\n\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n // Find the dragged column and target column\n const activeColumn = [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find(\n (col) => col.value === active.id,\n )\n const overColumn = [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find(\n (col) => col.value === over.id,\n )\n\n if (activeColumn && overColumn) {\n const activeId = active.id as string\n const overId = over.id as string\n const isActiveVisible = columnVisibility[activeId] !== false\n const isOverVisible = columnVisibility[overId] !== false\n const isActivePinned = columnPinning.left?.includes(activeId) || false\n const isOverPinned = columnPinning.left?.includes(overId) || false\n const isOverHidden = columnVisibility[overId] === false\n\n // Create a new config object that we'll update and apply at the end\n const newConfig: ColumnsConfig = {\n columnVisibility: { ...columnVisibility },\n columnOrder: [...columnOrder],\n columnPinning: { ...columnPinning },\n columnSizing: { ...columnSizing },\n }\n\n // If we're moving a column between visible columns (including pinned)\n if (isActiveVisible && isOverVisible) {\n let newPinningLeft = [...(newConfig.columnPinning.left || [])]\n\n // Handle pinning/unpinning based on target section\n if (isActivePinned !== isOverPinned) {\n if (isActivePinned && !isOverPinned) {\n // Moving from pinned to unpinned section\n newPinningLeft = newPinningLeft.filter((id) => id !== activeId)\n } else if (!isActivePinned && isOverPinned) {\n // Moving from unpinned to pinned section\n newPinningLeft = [...newPinningLeft, activeId]\n }\n }\n\n // Update order within the appropriate section\n const allVisibleIds = [...sortedPinnedColumnsIds, ...sortedVisibleColumnsIds]\n const oldIndex = allVisibleIds.indexOf(activeId)\n const newIndex = allVisibleIds.indexOf(overId)\n\n if (oldIndex === -1 || newIndex === -1) {\n console.error('Invalid column order state')\n toast.error('Invalid column order state')\n return\n }\n\n const newOrder = arrayMove(allVisibleIds, oldIndex, newIndex)\n\n // new pinning left should be ordered by the new order\n const newPinningLeftOrdered = newOrder.filter((id) => newPinningLeft.includes(id))\n\n // Update config object\n newConfig.columnOrder = newOrder\n newConfig.columnPinning = {\n ...newConfig.columnPinning,\n left: newPinningLeftOrdered,\n }\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n\n // If we're dragging from hidden to visible\n else if (!isActiveVisible && isOverVisible) {\n // Make the column visible\n newConfig.columnVisibility[activeId] = true\n\n // If dropping into pinned section, also pin the column\n if (isOverPinned) {\n const newPinningLeft = [...(newConfig.columnPinning.left || []), activeId]\n newConfig.columnPinning.left = newPinningLeft\n }\n\n // Update order to place it near the over column\n const allVisibleIds = [...sortedPinnedColumnsIds, ...sortedVisibleColumnsIds]\n\n // Add the column to order if not already there\n if (!allVisibleIds.includes(activeId)) {\n const overIndex = allVisibleIds.indexOf(overId)\n allVisibleIds.splice(overIndex, 0, activeId)\n }\n\n newConfig.columnOrder = allVisibleIds\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n\n // If we're dragging from visible to hidden\n else if (isActiveVisible && isOverHidden) {\n // Make the active column hidden\n newConfig.columnVisibility[activeId] = false\n\n // If the column was pinned, remove it from pinned\n if (isActivePinned) {\n const newPinningLeft = (newConfig.columnPinning.left || []).filter(\n (id) => id !== activeId,\n )\n newConfig.columnPinning.left = newPinningLeft\n }\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n }\n }\n\n setActiveId(null)\n }\n\n // Find the active column for the drag overlay\n const activeColumn = activeId\n ? [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find((col) => col.value === activeId)\n : null\n\n return (\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n onDragStart={handleDragStart}\n onDragOver={handleDragOver}\n onDragEnd={handleDragEnd}\n >\n <ColumnsContainer>\n {/* Pinned Columns Section */}\n {pinnedColumns.length > 0 && (\n <Section className={isDraggingOverPinned && !isDraggingFromPinned ? 'drop-target' : ''}>\n <SectionTitle>Pinned Columns</SectionTitle>\n <SortableContext\n items={sortedPinnedColumns.map((col) => col.value)}\n strategy={verticalListSortingStrategy}\n >\n <Styled.Menu>\n {sortedPinnedColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={true}\n isHidden={false}\n isHighlighted={highlighted === column.value}\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </SortableContext>\n </Section>\n )}\n\n {/* Visible Columns Section */}\n <Section\n className={\n isHiddenOverVisible || (isDraggingFromPinned && isHoveringVisibleSection)\n ? 'drop-target'\n : ''\n }\n >\n <SectionTitle>Visible Columns</SectionTitle>\n <SortableContext\n items={sortedVisibleColumns.map((col) => col.value)}\n strategy={verticalListSortingStrategy}\n >\n <Styled.Menu>\n {sortedVisibleColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={false}\n isHidden={false}\n isHighlighted={highlighted === column.value}\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </SortableContext>\n </Section>\n\n {/* Hidden Columns Section */}\n {hiddenColumns.length > 0 && (\n <Section className={isDraggingOverHidden ? 'drop-target' : ''}>\n <SectionTitle>Hidden Columns</SectionTitle>\n <Styled.Menu ref={menuRef}>\n {hiddenColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={columnPinning.left?.includes(column.value) || false}\n isHidden={true}\n isHighlighted={highlighted === column.value}\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </Section>\n )}\n\n {/* Drag Overlay */}\n <DragOverlay>\n {activeColumn && (\n <ColumnItem\n column={activeColumn}\n isPinned={columnPinning.left?.includes(activeColumn.value) || false}\n isHidden={columnVisibility[activeColumn.value] === false}\n isHighlighted={highlighted === activeColumn.value}\n dragOverlay={true}\n />\n )}\n </DragOverlay>\n </ColumnsContainer>\n </DndContext>\n )\n}\n\n// Styled components\nconst ColumnsContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--base-gap-large);\n`\n\nconst Section = styled.section`\n position: relative;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transition: background-color 0.2s ease;\n border-radius: 4px;\n\n &.drop-target {\n background-color: var(--md-sys-color-surface-container);\n box-shadow: 0 0 0 1px var(--md-sys-color-outline);\n }\n`\n\nconst SectionTitle = styled.div`\n font-weight: 500;\n color: var(--md-sys-color-outline);\n padding: 4px 0;\n`\n\nexport default ColumnsSettings\n"],"names":["_a","activeColumn","activeId","jsx","jsxs","Styled.Menu"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ColumnsSettings.es.js","sources":["../../../../../src/components/ProjectTableSettings/ColumnsSettings.tsx"],"sourcesContent":["// React and Styling imports\nimport { FC, useEffect, useMemo, useRef, useState } from 'react'\nimport styled from 'styled-components'\nimport * as Styled from './TableSettings.styled'\n\n// Context and Components imports\nimport {\n ColumnsConfig,\n useColumnSettingsContext,\n} from '@shared/containers/ProjectTreeTable/context/ColumnSettingsContext'\nimport ColumnItem from './ColumnItem'\nimport SortableColumnItem from './SortableColumnItem'\n\n// DND (Drag and Drop) imports\nimport {\n DndContext,\n closestCenter,\n DragEndEvent,\n DragStartEvent,\n useSensor,\n useSensors,\n PointerSensor,\n DragOverlay,\n DragOverEvent,\n} from '@dnd-kit/core'\nimport { SortableContext, verticalListSortingStrategy, arrayMove } from '@dnd-kit/sortable'\n\n// Notification imports\nimport { toast } from 'react-toastify'\nimport { SettingsPanelItem } from '../SettingsPanel/SettingsPanelItemTemplate'\nimport { SettingHighlightedId } from '@shared/context'\n\ninterface ColumnsSettingsProps {\n columns: SettingsPanelItem[]\n highlighted?: SettingHighlightedId\n}\n\nconst ColumnsSettings: FC<ColumnsSettingsProps> = ({ columns, highlighted }) => {\n const {\n columnVisibility,\n updateColumnVisibility,\n columnPinning,\n updateColumnPinning,\n columnOrder,\n setColumnsConfig,\n columnSizing,\n groupBy,\n } = useColumnSettingsContext()\n\n // State for the currently dragged column\n const [activeId, setActiveId] = useState<string | null>(null)\n const [isHiddenOverVisible, setIsHiddenOverVisible] = useState(false)\n const [isDraggingOverPinned, setIsDraggingOverPinned] = useState(false)\n const [isDraggingFromPinned, setIsDraggingFromPinned] = useState(false)\n // Add a new state to track if we're hovering over the visible section\n const [isHoveringVisibleSection, setIsHoveringVisibleSection] = useState(false)\n // Add state to track if dragging over the hidden section\n const [isDraggingOverHidden, setIsDraggingOverHidden] = useState(false)\n\n // Setup sensors for dnd-kit\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n distance: 5,\n },\n }),\n )\n\n const menuRef = useRef<HTMLUListElement | null>(null)\n\n // if highlighted is set, scroll to the highlighted column\n useEffect(() => {\n if (menuRef.current && highlighted) {\n const highlightedElement = menuRef.current.querySelector(`#column-settings-${highlighted}`)\n if (highlightedElement) {\n highlightedElement.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n })\n }\n }\n }, [highlighted])\n\n // Separate columns into visible, hidden, and pinned\n const { visibleColumns, hiddenColumns, pinnedColumns } = useMemo(() => {\n // First filter columns by visibility\n const visible = columns.filter((col) => columnVisibility[col.value] !== false)\n const hidden = columns.filter((col) => columnVisibility[col.value] === false)\n\n // Then separate out pinned columns from visible\n const pinned = visible.filter((col) => columnPinning.left?.includes(col.value))\n const unpinnedVisible = visible.filter((col) => !columnPinning.left?.includes(col.value))\n\n return {\n visibleColumns: unpinnedVisible,\n hiddenColumns: hidden,\n pinnedColumns: pinned,\n }\n }, [columns, columnVisibility, columnPinning])\n\n // Sort columns based on columnOrder\n const sortedVisibleColumns = useMemo(() => {\n // Create a copy of visible columns\n const visibleCopy = [...visibleColumns]\n\n // If we have a column order, use it to sort\n if (columnOrder.length > 0) {\n visibleCopy.sort((a, b) => {\n const indexA = columnOrder.indexOf(a.value)\n const indexB = columnOrder.indexOf(b.value)\n\n // If column is not in order array, place at end\n if (indexA === -1) return 1\n if (indexB === -1) return -1\n\n return indexA - indexB\n })\n }\n\n return visibleCopy\n }, [visibleColumns, columnOrder])\n\n // Sort pinned columns based on columnOrder\n const sortedPinnedColumns = useMemo(() => {\n // Create a copy of pinned columns\n const pinnedCopy = [...pinnedColumns]\n\n // If we have a column order, use it to sort\n if (columnOrder.length > 0) {\n pinnedCopy.sort((a, b) => {\n const indexA = columnOrder.indexOf(a.value)\n const indexB = columnOrder.indexOf(b.value)\n\n // If column is not in order array, place at end\n if (indexA === -1) return 1\n if (indexB === -1) return -1\n\n return indexA - indexB\n })\n }\n\n return pinnedCopy\n }, [pinnedColumns, columnOrder])\n\n const sortedVisibleColumnsIds = useMemo(\n () => sortedVisibleColumns.map((col) => col.value),\n [sortedVisibleColumns],\n )\n\n const sortedPinnedColumnsIds = useMemo(\n () => sortedPinnedColumns.map((col) => col.value),\n [sortedPinnedColumns],\n )\n\n // Toggle column visibility\n const toggleVisibility = (columnId: string) => {\n const newState = { ...columnVisibility }\n // If column is currently visible, hide it\n if (newState[columnId] !== false) {\n newState[columnId] = false\n } else {\n // If column is currently hidden, show it\n newState[columnId] = true\n }\n updateColumnVisibility(newState)\n }\n\n // Toggle column pinning\n const togglePinning = (columnId: string) => {\n const newState = { ...columnPinning }\n const newVisibility = { ...columnVisibility }\n\n // If column is currently pinned, unpin it\n if (newState.left?.includes(columnId)) {\n newState.left = newState.left.filter((id) => id !== columnId)\n } else {\n // If column is currently unpinned, pin it\n newState.left = [...(newState.left || []), columnId]\n // If column is hidden, show it\n if (newVisibility[columnId] === false) {\n newVisibility[columnId] = true\n updateColumnVisibility(newVisibility)\n }\n }\n updateColumnPinning(newState)\n }\n\n // When drag starts\n const handleDragStart = (event: DragStartEvent) => {\n const id = event.active.id as string\n setActiveId(id)\n setIsDraggingFromPinned(columnPinning.left?.includes(id) || false)\n }\n\n // Track when dragging over different sections\n const handleDragOver = (event: DragOverEvent) => {\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n // Check if we're dragging a hidden column over a visible column\n const isActiveHidden = columnVisibility[active.id as string] === false\n const isOverVisible = columnVisibility[over.id as string] !== false\n const isOverPinned = columnPinning.left?.includes(over.id as string) || false\n const isOverHidden = columnVisibility[over.id as string] === false\n\n setIsHiddenOverVisible(isActiveHidden && isOverVisible && !isOverPinned)\n setIsDraggingOverPinned(isOverVisible && isOverPinned)\n setIsDraggingOverHidden(isOverHidden)\n\n // Set if we're hovering over the visible (unpinned) section\n setIsHoveringVisibleSection(isOverVisible && !isOverPinned)\n } else {\n // Reset when not over any column\n setIsHoveringVisibleSection(false)\n setIsDraggingOverHidden(false)\n }\n }\n\n // When drag ends, reset all states\n const handleDragEnd = (event: DragEndEvent) => {\n // Reset states\n setIsHiddenOverVisible(false)\n setIsDraggingOverPinned(false)\n setIsDraggingFromPinned(false)\n setIsHoveringVisibleSection(false)\n setIsDraggingOverHidden(false)\n\n const { active, over } = event\n\n if (over && active.id !== over.id) {\n // Find the dragged column and target column\n const activeColumn = [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find(\n (col) => col.value === active.id,\n )\n const overColumn = [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find(\n (col) => col.value === over.id,\n )\n\n if (activeColumn && overColumn) {\n const activeId = active.id as string\n const overId = over.id as string\n const isActiveVisible = columnVisibility[activeId] !== false\n const isOverVisible = columnVisibility[overId] !== false\n const isActivePinned = columnPinning.left?.includes(activeId) || false\n const isOverPinned = columnPinning.left?.includes(overId) || false\n const isOverHidden = columnVisibility[overId] === false\n\n // Create a new config object that we'll update and apply at the end\n const newConfig: ColumnsConfig = {\n columnVisibility: { ...columnVisibility },\n columnOrder: [...columnOrder],\n columnPinning: { ...columnPinning },\n columnSizing: { ...columnSizing },\n }\n\n // If we're moving a column between visible columns (including pinned)\n if (isActiveVisible && isOverVisible) {\n let newPinningLeft = [...(newConfig.columnPinning.left || [])]\n\n // Handle pinning/unpinning based on target section\n if (isActivePinned !== isOverPinned) {\n if (isActivePinned && !isOverPinned) {\n // Moving from pinned to unpinned section\n newPinningLeft = newPinningLeft.filter((id) => id !== activeId)\n } else if (!isActivePinned && isOverPinned) {\n // Moving from unpinned to pinned section\n newPinningLeft = [...newPinningLeft, activeId]\n }\n }\n\n // Update order within the appropriate section\n const allVisibleIds = [...sortedPinnedColumnsIds, ...sortedVisibleColumnsIds]\n const oldIndex = allVisibleIds.indexOf(activeId)\n const newIndex = allVisibleIds.indexOf(overId)\n\n if (oldIndex === -1 || newIndex === -1) {\n console.error('Invalid column order state')\n toast.error('Invalid column order state')\n return\n }\n\n const newOrder = arrayMove(allVisibleIds, oldIndex, newIndex)\n\n // new pinning left should be ordered by the new order\n const newPinningLeftOrdered = newOrder.filter((id) => newPinningLeft.includes(id))\n\n // Update config object\n newConfig.columnOrder = newOrder\n newConfig.columnPinning = {\n ...newConfig.columnPinning,\n left: newPinningLeftOrdered,\n }\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n\n // If we're dragging from hidden to visible\n else if (!isActiveVisible && isOverVisible) {\n // Make the column visible\n newConfig.columnVisibility[activeId] = true\n\n // If dropping into pinned section, also pin the column\n if (isOverPinned) {\n const newPinningLeft = [...(newConfig.columnPinning.left || []), activeId]\n newConfig.columnPinning.left = newPinningLeft\n }\n\n // Update order to place it near the over column\n const allVisibleIds = [...sortedPinnedColumnsIds, ...sortedVisibleColumnsIds]\n\n // Add the column to order if not already there\n if (!allVisibleIds.includes(activeId)) {\n const overIndex = allVisibleIds.indexOf(overId)\n allVisibleIds.splice(overIndex, 0, activeId)\n }\n\n newConfig.columnOrder = allVisibleIds\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n\n // If we're dragging from visible to hidden\n else if (isActiveVisible && isOverHidden) {\n // Make the active column hidden\n newConfig.columnVisibility[activeId] = false\n\n // If the column was pinned, remove it from pinned\n if (isActivePinned) {\n const newPinningLeft = (newConfig.columnPinning.left || []).filter(\n (id) => id !== activeId,\n )\n newConfig.columnPinning.left = newPinningLeft\n }\n\n // Apply all changes at once\n setColumnsConfig(newConfig)\n }\n }\n }\n\n setActiveId(null)\n }\n\n // Find the active column for the drag overlay\n const activeColumn = activeId\n ? [...visibleColumns, ...hiddenColumns, ...pinnedColumns].find((col) => col.value === activeId)\n : null\n\n return (\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n onDragStart={handleDragStart}\n onDragOver={handleDragOver}\n onDragEnd={handleDragEnd}\n >\n <ColumnsContainer>\n {/* Pinned Columns Section */}\n {pinnedColumns.length > 0 && (\n <Section className={isDraggingOverPinned && !isDraggingFromPinned ? 'drop-target' : ''}>\n <SectionTitle>Pinned Columns</SectionTitle>\n <SortableContext\n items={sortedPinnedColumns.map((col) => col.value)}\n strategy={verticalListSortingStrategy}\n >\n <Styled.Menu>\n {sortedPinnedColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={true}\n isHidden={false}\n isDisabled={!!groupBy && column.value === 'name'} // Disable 'name' column if grouping is enabled\n isHighlighted={highlighted === column.value}\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </SortableContext>\n </Section>\n )}\n\n {/* Visible Columns Section */}\n <Section\n className={\n isHiddenOverVisible || (isDraggingFromPinned && isHoveringVisibleSection)\n ? 'drop-target'\n : ''\n }\n >\n <SectionTitle>Visible Columns</SectionTitle>\n <SortableContext\n items={sortedVisibleColumns.map((col) => col.value)}\n strategy={verticalListSortingStrategy}\n >\n <Styled.Menu>\n {sortedVisibleColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={false}\n isHidden={false}\n isHighlighted={highlighted === column.value}\n isDisabled={!!groupBy && column.value === 'name'} // Disable 'name' column if grouping is enabled\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </SortableContext>\n </Section>\n\n {/* Hidden Columns Section */}\n {hiddenColumns.length > 0 && (\n <Section className={isDraggingOverHidden ? 'drop-target' : ''}>\n <SectionTitle>Hidden Columns</SectionTitle>\n <Styled.Menu ref={menuRef}>\n {hiddenColumns.map((column) => (\n <SortableColumnItem\n key={column.value}\n id={column.value}\n column={column}\n isPinned={columnPinning.left?.includes(column.value) || false}\n isHidden={true}\n isHighlighted={highlighted === column.value}\n isDisabled={!!groupBy && column.value === 'name'} // Disable 'name' column if grouping is enabled\n onTogglePinning={togglePinning}\n onToggleVisibility={toggleVisibility}\n />\n ))}\n </Styled.Menu>\n </Section>\n )}\n\n {/* Drag Overlay */}\n <DragOverlay>\n {activeColumn && (\n <ColumnItem\n column={activeColumn}\n isPinned={columnPinning.left?.includes(activeColumn.value) || false}\n isHidden={columnVisibility[activeColumn.value] === false}\n isHighlighted={highlighted === activeColumn.value}\n dragOverlay={true}\n />\n )}\n </DragOverlay>\n </ColumnsContainer>\n </DndContext>\n )\n}\n\n// Styled components\nconst ColumnsContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--base-gap-large);\n`\n\nconst Section = styled.section`\n position: relative;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transition: background-color 0.2s ease;\n border-radius: 4px;\n\n &.drop-target {\n background-color: var(--md-sys-color-surface-container);\n box-shadow: 0 0 0 1px var(--md-sys-color-outline);\n }\n`\n\nconst SectionTitle = styled.div`\n font-weight: 500;\n color: var(--md-sys-color-outline);\n padding: 4px 0;\n`\n\nexport default ColumnsSettings\n"],"names":["_a","activeColumn","activeId","jsx","jsxs","Styled.Menu"],"mappings":"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"}
|
|
@@ -2,21 +2,20 @@
|
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const jsxRuntime = require("../../../../_virtual/jsx-runtime.cjs.js");
|
|
4
4
|
require("../../containers/ProjectTreeTable/ProjectTreeTable.cjs.js");
|
|
5
|
+
require("react-toastify");
|
|
6
|
+
require("../../containers/ProjectTreeTable/context/CellEditingContext.cjs.js");
|
|
7
|
+
require("../../containers/ProjectTreeTable/context/ClipboardContext.cjs.js");
|
|
8
|
+
require("react");
|
|
9
|
+
require("@tanstack/react-table");
|
|
5
10
|
require("../../containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js");
|
|
6
|
-
const ProjectTableContext = require("../../containers/ProjectTreeTable/context/ProjectTableContext.cjs.js");
|
|
7
|
-
require("../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");
|
|
8
|
-
require("../../containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js");
|
|
9
11
|
const ColumnSettingsContext = require("../../containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js");
|
|
10
|
-
const
|
|
12
|
+
const ProjectTableContext = require("../../containers/ProjectTreeTable/context/ProjectTableContext.cjs.js");
|
|
11
13
|
require("lodash");
|
|
12
|
-
require("react-toastify");
|
|
13
14
|
require("../../util/pubsub.cjs.js");
|
|
14
|
-
require("../../containers/ProjectTreeTable/context/
|
|
15
|
-
require("../../containers/ProjectTreeTable/context/
|
|
16
|
-
require("../../containers/ProjectTreeTable/context/ProjectTableSelectionContext.cjs.js");
|
|
15
|
+
require("../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");
|
|
16
|
+
require("../../containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js");
|
|
17
17
|
require("../../containers/ProjectTreeTable/context/ProjectDataContext.cjs.js");
|
|
18
|
-
require("
|
|
19
|
-
require("@tanstack/react-table");
|
|
18
|
+
const ayonReactComponents = require("@ynput/ayon-react-components");
|
|
20
19
|
require("../../containers/ProjectTreeTable/widgets/CollapsedWidget.cjs.js");
|
|
21
20
|
require("../../containers/ProjectTreeTable/widgets/DateWidget.cjs.js");
|
|
22
21
|
require("../../containers/ProjectTreeTable/widgets/EnumWidget.cjs.js");
|
|
@@ -30,51 +29,9 @@ require("../../containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js");
|
|
|
30
29
|
require("clsx");
|
|
31
30
|
require("../../containers/ProjectTreeTable/components/SelectionCell.cjs.js");
|
|
32
31
|
require("../../containers/ProjectTreeTable/components/RowSelectionHeader.cjs.js");
|
|
33
|
-
require("react");
|
|
34
32
|
require("../../containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");
|
|
35
33
|
;/* empty css */
|
|
36
34
|
require("../../containers/ContextMenu/ContextMenuContext.cjs.js");
|
|
37
|
-
require("react-dom");
|
|
38
|
-
require("../../containers/Feed/context/FeedContext.cjs.js");
|
|
39
|
-
require("../../containers/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");
|
|
40
|
-
require("../../containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");
|
|
41
|
-
require("../../containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");
|
|
42
|
-
require("../../containers/Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");
|
|
43
|
-
require("react-markdown");
|
|
44
|
-
require("remark-emoji");
|
|
45
|
-
require("remark-gfm");
|
|
46
|
-
require("remark-directive");
|
|
47
|
-
require("remark-directive-rehype");
|
|
48
|
-
require("../../containers/Feed/components/CommentInput/CommentInput.cjs.js");
|
|
49
|
-
require("../../containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js");
|
|
50
|
-
require("../../containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js");
|
|
51
|
-
require("../../containers/Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");
|
|
52
|
-
require("../../context/RemoteModulesContext.cjs.js");
|
|
53
|
-
require("../../context/DetailsPanelContext.cjs.js");
|
|
54
|
-
require("../../context/ThumbnailUploaderContext.cjs.js");
|
|
55
|
-
const SettingsPanelContext = require("../../context/SettingsPanelContext.cjs.js");
|
|
56
|
-
require("../../context/pip/PiPProvider.cjs.js");
|
|
57
|
-
require("../../context/pip/PiPWrapper.cjs.js");
|
|
58
|
-
require("../../context/AddonProjectContext.cjs.js");
|
|
59
|
-
require("../../context/AddonContext.cjs.js");
|
|
60
|
-
require("../../context/PowerpackContext.cjs.js");
|
|
61
|
-
require("../../containers/Feed/components/CommentInput/quillToMarkdown.cjs.js");
|
|
62
|
-
require("../../containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js");
|
|
63
|
-
require("../../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");
|
|
64
|
-
require("../../containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js");
|
|
65
|
-
require("react-router-dom");
|
|
66
|
-
require("../../containers/Feed/components/ActivityStatus/ActivityStatus.cjs.js");
|
|
67
|
-
require("../../containers/Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");
|
|
68
|
-
require("../../containers/Feed/components/ActivityDate.cjs.js");
|
|
69
|
-
require("../../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");
|
|
70
|
-
require("../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");
|
|
71
|
-
require("../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");
|
|
72
|
-
require("../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");
|
|
73
|
-
require("../../containers/Feed/Feed.styled.cjs.js");
|
|
74
|
-
require("date-fns");
|
|
75
|
-
require("../EmptyPlaceholder/EmptyPlaceholder.cjs.js");
|
|
76
|
-
require("../EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");
|
|
77
|
-
require("../ThumbnailSimple/ThumbnailSimple.cjs.js");
|
|
78
35
|
require("../../api/base/client.cjs.js");
|
|
79
36
|
require("../../api/generated/graphql.cjs.js");
|
|
80
37
|
require("../../api/generated/access.cjs.js");
|
|
@@ -142,46 +99,26 @@ require("../../api/queries/users/updateUsers.cjs.js");
|
|
|
142
99
|
require("../../api/queries/watchers/getWatchers.cjs.js");
|
|
143
100
|
require("../../api/queries/permissions/getPermissions.cjs.js");
|
|
144
101
|
require("../../api/queries/grouping/getGrouping.cjs.js");
|
|
145
|
-
require("
|
|
146
|
-
require("
|
|
147
|
-
require("
|
|
148
|
-
require("axios");
|
|
149
|
-
require("../ReviewablesList/ReviewablesUpload.styled.cjs.js");
|
|
150
|
-
require("../ReviewableCard/ReviewableCard.cjs.js");
|
|
151
|
-
require("../ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");
|
|
152
|
-
require("../FileThumbnail/FileThumbnail.cjs.js");
|
|
153
|
-
require("../Thumbnail/Thumbnail.styled.cjs.js");
|
|
154
|
-
require("../Thumbnail/StackedThumbnails.cjs.js");
|
|
155
|
-
require("../EntityThumbnailUploader/EntityThumbnailUploader.styled.cjs.js");
|
|
156
|
-
require("../ThumbnailUploader/ThumbnailUploader.styled.cjs.js");
|
|
157
|
-
require("../SimpleFormDialog/SimpleFormDialog.cjs.js");
|
|
158
|
-
require("../EntityPath/EntityPath.styled.cjs.js");
|
|
159
|
-
require("../EntityPath/SegmentProvider.cjs.js");
|
|
160
|
-
require("../DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");
|
|
102
|
+
require("../../api/queries/versions/updateVersions.cjs.js");
|
|
103
|
+
require("../../api/queries/products/createProduct.cjs.js");
|
|
104
|
+
require("../../context/RemoteModulesContext.cjs.js");
|
|
161
105
|
require("../../../../_virtual/runtime.cjs.js");
|
|
162
106
|
require("../../../../_virtual/semver.cjs.js");
|
|
107
|
+
require("../../context/DetailsPanelContext.cjs.js");
|
|
108
|
+
require("../../context/ThumbnailUploaderContext.cjs.js");
|
|
109
|
+
const SettingsPanelContext = require("../../context/SettingsPanelContext.cjs.js");
|
|
110
|
+
require("../../context/pip/PiPProvider.cjs.js");
|
|
111
|
+
require("react-dom");
|
|
112
|
+
require("../../context/pip/PiPWrapper.cjs.js");
|
|
113
|
+
require("../../context/AddonProjectContext.cjs.js");
|
|
114
|
+
require("../../context/AddonContext.cjs.js");
|
|
115
|
+
require("../../context/PowerpackContext.cjs.js");
|
|
163
116
|
require("react-redux");
|
|
164
117
|
require("custom-protocol-check");
|
|
165
|
-
require("
|
|
166
|
-
require("
|
|
167
|
-
require("../Powerpack/PricingLink.cjs.js");
|
|
168
|
-
require("../Powerpack/PowerpackDialog.styled.cjs.js");
|
|
118
|
+
require("../../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");
|
|
119
|
+
const styled = require("styled-components");
|
|
169
120
|
const SettingsPanel = require("../SettingsPanel/SettingsPanel.cjs.js");
|
|
170
121
|
require("../SettingsPanel/SettingsPanelItemTemplate.cjs.js");
|
|
171
|
-
require("../AttributeEditor/components/MinMaxField.cjs.js");
|
|
172
|
-
require("../EnumEditor/EnumEditor.styled.cjs.js");
|
|
173
|
-
require("../SearchFilter/filterDates.cjs.js");
|
|
174
|
-
require("../Badge/Badge.cjs.js");
|
|
175
|
-
require("../../containers/DetailsPanel/DetailsPanel.styled.cjs.js");
|
|
176
|
-
require("../../containers/DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");
|
|
177
|
-
require("../../containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");
|
|
178
|
-
require("../../containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");
|
|
179
|
-
require("../../containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");
|
|
180
|
-
require("../../containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");
|
|
181
|
-
require("../../containers/Actions/Actions.styled.cjs.js");
|
|
182
|
-
require("../../containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js");
|
|
183
|
-
require("../../containers/Actions/ActionIcon.cjs.js");
|
|
184
|
-
const styled = require("styled-components");
|
|
185
122
|
const ColumnsSettings = require("./ColumnsSettings.cjs.js");
|
|
186
123
|
const StyledCustomizeButton = styled(ayonReactComponents.Button)`
|
|
187
124
|
min-width: 120px;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectTableSettings.cjs.js","sources":["../../../../../src/components/ProjectTableSettings/ProjectTableSettings.tsx"],"sourcesContent":["import {\n useColumnSettingsContext,\n useProjectTableContext,\n} from '@shared/containers/ProjectTreeTable'\nimport { Button, ButtonProps, theme } from '@ynput/ayon-react-components'\nimport { FC } from 'react'\nimport styled from 'styled-components'\nimport { SettingHighlightedId, useSettingsPanel } from '@shared/context'\nimport { SettingsPanel, SettingConfig } from '@shared/components/SettingsPanel'\nimport ColumnsSettings from './ColumnsSettings'\n\nconst StyledCustomizeButton = styled(Button)`\n min-width: 120px;\n`\n\ninterface Props extends ButtonProps {\n defaultSelected?: string | null\n}\n\nexport const CustomizeButton = ({ defaultSelected, className, ...props }: Props) => {\n const { togglePanel, isPanelOpen } = useSettingsPanel()\n\n return (\n <StyledCustomizeButton\n onClick={() => togglePanel(defaultSelected)}\n icon=\"settings\"\n selected={isPanelOpen}\n {...props}\n >\n Customize\n </StyledCustomizeButton>\n )\n}\n\nexport type OverviewSettingsChange = (setting: 'columns' | 'group-by', value: any) => void\n\nexport type ProjectTableSettingsProps = {\n settings?: SettingConfig[]\n extraColumns?: { value: string; label: string }[]\n highlighted?: SettingHighlightedId\n}\n\nexport const ProjectTableSettings: FC<ProjectTableSettingsProps> = ({\n settings = [],\n extraColumns = [],\n highlighted,\n}) => {\n const { attribFields } = useProjectTableContext()\n const { columnVisibility } = useColumnSettingsContext()\n\n const columns = [\n {\n value: 'thumbnail',\n label: 'Thumbnail',\n },\n {\n value: 'name',\n label: 'Folder / Task',\n },\n {\n value: 'status',\n label: 'Status',\n },\n {\n value: 'subType',\n label: 'Type',\n },\n {\n value: 'assignees',\n label: 'Assignees',\n },\n {\n value: 'tags',\n label: 'Tags',\n },\n ...attribFields.map((field) => ({\n value: 'attrib_' + field.name,\n label: field.data.title || field.name,\n })),\n ...extraColumns,\n ]\n\n const visibleCount = columns.filter(\n (column) => !(column.value in columnVisibility) || columnVisibility[column.value],\n ).length\n\n const defaultSettings: SettingConfig[] = [\n {\n id: 'columns',\n title: 'Columns',\n icon: 'view_column',\n preview: `${visibleCount}/${columns.length}`,\n component: <ColumnsSettings columns={columns} highlighted={highlighted} />,\n },\n ]\n\n settings.forEach((setting) => defaultSettings.push(setting))\n\n return <SettingsPanel settings={defaultSettings} />\n}\n"],"names":["Button","useSettingsPanel","jsx","useProjectTableContext","useColumnSettingsContext","SettingsPanel"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProjectTableSettings.cjs.js","sources":["../../../../../src/components/ProjectTableSettings/ProjectTableSettings.tsx"],"sourcesContent":["import {\n useColumnSettingsContext,\n useProjectTableContext,\n} from '@shared/containers/ProjectTreeTable'\nimport { Button, ButtonProps, theme } from '@ynput/ayon-react-components'\nimport { FC } from 'react'\nimport styled from 'styled-components'\nimport { SettingHighlightedId, useSettingsPanel } from '@shared/context'\nimport { SettingsPanel, SettingConfig } from '@shared/components/SettingsPanel'\nimport ColumnsSettings from './ColumnsSettings'\n\nconst StyledCustomizeButton = styled(Button)`\n min-width: 120px;\n`\n\ninterface Props extends ButtonProps {\n defaultSelected?: string | null\n}\n\nexport const CustomizeButton = ({ defaultSelected, className, ...props }: Props) => {\n const { togglePanel, isPanelOpen } = useSettingsPanel()\n\n return (\n <StyledCustomizeButton\n onClick={() => togglePanel(defaultSelected)}\n icon=\"settings\"\n selected={isPanelOpen}\n {...props}\n >\n Customize\n </StyledCustomizeButton>\n )\n}\n\nexport type OverviewSettingsChange = (setting: 'columns' | 'group-by', value: any) => void\n\nexport type ProjectTableSettingsProps = {\n settings?: SettingConfig[]\n extraColumns?: { value: string; label: string }[]\n highlighted?: SettingHighlightedId\n}\n\nexport const ProjectTableSettings: FC<ProjectTableSettingsProps> = ({\n settings = [],\n extraColumns = [],\n highlighted,\n}) => {\n const { attribFields } = useProjectTableContext()\n const { columnVisibility } = useColumnSettingsContext()\n\n const columns = [\n {\n value: 'thumbnail',\n label: 'Thumbnail',\n },\n {\n value: 'name',\n label: 'Folder / Task',\n },\n {\n value: 'status',\n label: 'Status',\n },\n {\n value: 'subType',\n label: 'Type',\n },\n {\n value: 'assignees',\n label: 'Assignees',\n },\n {\n value: 'tags',\n label: 'Tags',\n },\n ...attribFields.map((field) => ({\n value: 'attrib_' + field.name,\n label: field.data.title || field.name,\n })),\n ...extraColumns,\n ]\n\n const visibleCount = columns.filter(\n (column) => !(column.value in columnVisibility) || columnVisibility[column.value],\n ).length\n\n const defaultSettings: SettingConfig[] = [\n {\n id: 'columns',\n title: 'Columns',\n icon: 'view_column',\n preview: `${visibleCount}/${columns.length}`,\n component: <ColumnsSettings columns={columns} highlighted={highlighted} />,\n },\n ]\n\n settings.forEach((setting) => defaultSettings.push(setting))\n\n return <SettingsPanel settings={defaultSettings} />\n}\n"],"names":["Button","useSettingsPanel","jsx","useProjectTableContext","useColumnSettingsContext","SettingsPanel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,MAAM,wBAAwB,OAAOA,0BAAM;AAAA;AAAA;AAQpC,MAAM,kBAAkB,CAAC,EAAE,iBAAiB,WAAW,GAAG,YAAmB;AAClF,QAAM,EAAE,aAAa,YAAY,IAAIC,sCAAiB;AAGpD,SAAAC,2BAAA,kBAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,SAAS,MAAM,YAAY,eAAe;AAAA,MAC1C,MAAK;AAAA,MACL,UAAU;AAAA,MACT,GAAG;AAAA,MACL,UAAA;AAAA,IAAA;AAAA,EAED;AAEJ;AAUO,MAAM,uBAAsD,CAAC;AAAA,EAClE,WAAW,CAAC;AAAA,EACZ,eAAe,CAAC;AAAA,EAChB;AACF,MAAM;AACE,QAAA,EAAE,aAAa,IAAIC,2CAAuB;AAC1C,QAAA,EAAE,iBAAiB,IAAIC,+CAAyB;AAEtD,QAAM,UAAU;AAAA,IACd;AAAA,MACE,OAAO;AAAA,MACP,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,OAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,OAAO;AAAA,IACT;AAAA,IACA,GAAG,aAAa,IAAI,CAAC,WAAW;AAAA,MAC9B,OAAO,YAAY,MAAM;AAAA,MACzB,OAAO,MAAM,KAAK,SAAS,MAAM;AAAA,IAAA,EACjC;AAAA,IACF,GAAG;AAAA,EACL;AAEA,QAAM,eAAe,QAAQ;AAAA,IAC3B,CAAC,WAAW,EAAE,OAAO,SAAS,qBAAqB,iBAAiB,OAAO,KAAK;AAAA,EAAA,EAChF;AAEF,QAAM,kBAAmC;AAAA,IACvC;AAAA,MACE,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,MAAM;AAAA,MACN,SAAS,GAAG,YAAY,IAAI,QAAQ,MAAM;AAAA,MAC1C,WAAWF,2BAAAA,kBAAAA,IAAC,iBAAgB,EAAA,SAAkB,YAA0B,CAAA;AAAA,IAAA;AAAA,EAE5E;AAEA,WAAS,QAAQ,CAAC,YAAY,gBAAgB,KAAK,OAAO,CAAC;AAEpD,SAAAA,2BAAA,kBAAA,IAACG,cAAc,eAAA,EAAA,UAAU,gBAAiB,CAAA;AACnD;;;"}
|
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
import { j as jsxRuntimeExports } from "../../../../_virtual/jsx-runtime.es.js";
|
|
2
2
|
import "../../containers/ProjectTreeTable/ProjectTreeTable.es.js";
|
|
3
|
+
import "react-toastify";
|
|
4
|
+
import "../../containers/ProjectTreeTable/context/CellEditingContext.es.js";
|
|
5
|
+
import "../../containers/ProjectTreeTable/context/ClipboardContext.es.js";
|
|
6
|
+
import "react";
|
|
7
|
+
import "@tanstack/react-table";
|
|
3
8
|
import "../../containers/ProjectTreeTable/context/SelectionCellsContext.es.js";
|
|
4
|
-
import { useProjectTableContext } from "../../containers/ProjectTreeTable/context/ProjectTableContext.es.js";
|
|
5
|
-
import "../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
|
|
6
|
-
import "../../containers/ProjectTreeTable/context/SelectedRowsContext.es.js";
|
|
7
9
|
import { useColumnSettingsContext } from "../../containers/ProjectTreeTable/context/ColumnSettingsContext.es.js";
|
|
8
|
-
import {
|
|
10
|
+
import { useProjectTableContext } from "../../containers/ProjectTreeTable/context/ProjectTableContext.es.js";
|
|
9
11
|
import "lodash";
|
|
10
|
-
import "react-toastify";
|
|
11
12
|
import "../../util/pubsub.es.js";
|
|
12
|
-
import "../../containers/ProjectTreeTable/context/
|
|
13
|
-
import "../../containers/ProjectTreeTable/context/
|
|
14
|
-
import "../../containers/ProjectTreeTable/context/ProjectTableSelectionContext.es.js";
|
|
13
|
+
import "../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
|
|
14
|
+
import "../../containers/ProjectTreeTable/context/SelectedRowsContext.es.js";
|
|
15
15
|
import "../../containers/ProjectTreeTable/context/ProjectDataContext.es.js";
|
|
16
|
-
import "
|
|
17
|
-
import "@tanstack/react-table";
|
|
16
|
+
import { Button } from "@ynput/ayon-react-components";
|
|
18
17
|
import "../../containers/ProjectTreeTable/widgets/CollapsedWidget.es.js";
|
|
19
18
|
import "../../containers/ProjectTreeTable/widgets/DateWidget.es.js";
|
|
20
19
|
import "../../containers/ProjectTreeTable/widgets/EnumWidget.es.js";
|
|
@@ -28,51 +27,9 @@ import "../../containers/ProjectTreeTable/ProjectTreeTable.styled.es.js";
|
|
|
28
27
|
import "clsx";
|
|
29
28
|
import "../../containers/ProjectTreeTable/components/SelectionCell.es.js";
|
|
30
29
|
import "../../containers/ProjectTreeTable/components/RowSelectionHeader.es.js";
|
|
31
|
-
import "react";
|
|
32
30
|
import "../../containers/ProjectTreeTable/widgets/LoadMoreWidget.es.js";
|
|
33
31
|
/* empty css */
|
|
34
32
|
import "../../containers/ContextMenu/ContextMenuContext.es.js";
|
|
35
|
-
import "react-dom";
|
|
36
|
-
import "../../containers/Feed/context/FeedContext.es.js";
|
|
37
|
-
import "../../containers/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.es.js";
|
|
38
|
-
import "../../containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.es.js";
|
|
39
|
-
import "../../containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.es.js";
|
|
40
|
-
import "../../containers/Feed/components/FileUploadPreview/Mimes/TextMime.es.js";
|
|
41
|
-
import "react-markdown";
|
|
42
|
-
import "remark-emoji";
|
|
43
|
-
import "remark-gfm";
|
|
44
|
-
import "remark-directive";
|
|
45
|
-
import "remark-directive-rehype";
|
|
46
|
-
import "../../containers/Feed/components/CommentInput/CommentInput.es.js";
|
|
47
|
-
import "../../containers/Feed/components/ReactionContainer/Reactions.styled.es.js";
|
|
48
|
-
import "../../containers/Feed/components/FilesGrid/FilesGrid.styled.es.js";
|
|
49
|
-
import "../../containers/Feed/components/FileUploadCard/FileUploadCard.styled.es.js";
|
|
50
|
-
import "../../context/RemoteModulesContext.es.js";
|
|
51
|
-
import "../../context/DetailsPanelContext.es.js";
|
|
52
|
-
import "../../context/ThumbnailUploaderContext.es.js";
|
|
53
|
-
import { useSettingsPanel } from "../../context/SettingsPanelContext.es.js";
|
|
54
|
-
import "../../context/pip/PiPProvider.es.js";
|
|
55
|
-
import "../../context/pip/PiPWrapper.es.js";
|
|
56
|
-
import "../../context/AddonProjectContext.es.js";
|
|
57
|
-
import "../../context/AddonContext.es.js";
|
|
58
|
-
import "../../context/PowerpackContext.es.js";
|
|
59
|
-
import "../../containers/Feed/components/CommentInput/quillToMarkdown.es.js";
|
|
60
|
-
import "../../containers/Feed/components/ActivityComment/ActivityComment.styled.es.js";
|
|
61
|
-
import "../../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.es.js";
|
|
62
|
-
import "../../containers/Feed/components/ActivityReference/ActivityReference.styled.es.js";
|
|
63
|
-
import "react-router-dom";
|
|
64
|
-
import "../../containers/Feed/components/ActivityStatus/ActivityStatus.es.js";
|
|
65
|
-
import "../../containers/Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
|
|
66
|
-
import "../../containers/Feed/components/ActivityDate.es.js";
|
|
67
|
-
import "../../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
|
|
68
|
-
import "../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
|
|
69
|
-
import "../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
|
|
70
|
-
import "../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
|
|
71
|
-
import "../../containers/Feed/Feed.styled.es.js";
|
|
72
|
-
import "date-fns";
|
|
73
|
-
import "../EmptyPlaceholder/EmptyPlaceholder.es.js";
|
|
74
|
-
import "../EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
|
|
75
|
-
import "../ThumbnailSimple/ThumbnailSimple.es.js";
|
|
76
33
|
import "../../api/base/client.es.js";
|
|
77
34
|
import "../../api/generated/graphql.es.js";
|
|
78
35
|
import "../../api/generated/access.es.js";
|
|
@@ -140,46 +97,26 @@ import "../../api/queries/users/updateUsers.es.js";
|
|
|
140
97
|
import "../../api/queries/watchers/getWatchers.es.js";
|
|
141
98
|
import "../../api/queries/permissions/getPermissions.es.js";
|
|
142
99
|
import "../../api/queries/grouping/getGrouping.es.js";
|
|
143
|
-
import "
|
|
144
|
-
import "
|
|
145
|
-
import "
|
|
146
|
-
import "axios";
|
|
147
|
-
import "../ReviewablesList/ReviewablesUpload.styled.es.js";
|
|
148
|
-
import "../ReviewableCard/ReviewableCard.es.js";
|
|
149
|
-
import "../ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
150
|
-
import "../FileThumbnail/FileThumbnail.es.js";
|
|
151
|
-
import "../Thumbnail/Thumbnail.styled.es.js";
|
|
152
|
-
import "../Thumbnail/StackedThumbnails.es.js";
|
|
153
|
-
import "../EntityThumbnailUploader/EntityThumbnailUploader.styled.es.js";
|
|
154
|
-
import "../ThumbnailUploader/ThumbnailUploader.styled.es.js";
|
|
155
|
-
import "../SimpleFormDialog/SimpleFormDialog.es.js";
|
|
156
|
-
import "../EntityPath/EntityPath.styled.es.js";
|
|
157
|
-
import "../EntityPath/SegmentProvider.es.js";
|
|
158
|
-
import "../DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js";
|
|
100
|
+
import "../../api/queries/versions/updateVersions.es.js";
|
|
101
|
+
import "../../api/queries/products/createProduct.es.js";
|
|
102
|
+
import "../../context/RemoteModulesContext.es.js";
|
|
159
103
|
import "../../../../_virtual/runtime.es.js";
|
|
160
104
|
import "../../../../_virtual/semver.es.js";
|
|
105
|
+
import "../../context/DetailsPanelContext.es.js";
|
|
106
|
+
import "../../context/ThumbnailUploaderContext.es.js";
|
|
107
|
+
import { useSettingsPanel } from "../../context/SettingsPanelContext.es.js";
|
|
108
|
+
import "../../context/pip/PiPProvider.es.js";
|
|
109
|
+
import "react-dom";
|
|
110
|
+
import "../../context/pip/PiPWrapper.es.js";
|
|
111
|
+
import "../../context/AddonProjectContext.es.js";
|
|
112
|
+
import "../../context/AddonContext.es.js";
|
|
113
|
+
import "../../context/PowerpackContext.es.js";
|
|
161
114
|
import "react-redux";
|
|
162
115
|
import "custom-protocol-check";
|
|
163
|
-
import "
|
|
164
|
-
import "
|
|
165
|
-
import "../Powerpack/PricingLink.es.js";
|
|
166
|
-
import "../Powerpack/PowerpackDialog.styled.es.js";
|
|
116
|
+
import "../../containers/ProjectTreeTable/components/GroupSettingsFallback.es.js";
|
|
117
|
+
import styled from "styled-components";
|
|
167
118
|
import { SettingsPanel } from "../SettingsPanel/SettingsPanel.es.js";
|
|
168
119
|
import "../SettingsPanel/SettingsPanelItemTemplate.es.js";
|
|
169
|
-
import "../AttributeEditor/components/MinMaxField.es.js";
|
|
170
|
-
import "../EnumEditor/EnumEditor.styled.es.js";
|
|
171
|
-
import "../SearchFilter/filterDates.es.js";
|
|
172
|
-
import "../Badge/Badge.es.js";
|
|
173
|
-
import "../../containers/DetailsPanel/DetailsPanel.styled.es.js";
|
|
174
|
-
import "../../containers/DetailsPanel/FeedFilters/FeedFilters.styled.es.js";
|
|
175
|
-
import "../../containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
|
|
176
|
-
import "../../containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js";
|
|
177
|
-
import "../../containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js";
|
|
178
|
-
import "../../containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.es.js";
|
|
179
|
-
import "../../containers/Actions/Actions.styled.es.js";
|
|
180
|
-
import "../../containers/Actions/ActionsDropdown/ActionsDropdown.es.js";
|
|
181
|
-
import "../../containers/Actions/ActionIcon.es.js";
|
|
182
|
-
import styled from "styled-components";
|
|
183
120
|
import ColumnsSettings from "./ColumnsSettings.es.js";
|
|
184
121
|
const StyledCustomizeButton = styled(Button)`
|
|
185
122
|
min-width: 120px;
|