@ynput/ayon-frontend-shared 0.3.43 → 0.3.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/DetailsPanel.cjs.js +1 -1
- package/dist/DetailsPanel.es.js +38 -34
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +236 -223
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +29 -26
- package/dist/Slicer.es.js.map +1 -1
- package/dist/_virtual/index.cjs4.js +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.cjs8.js +1 -1
- package/dist/_virtual/index.cjs9.js +1 -1
- package/dist/_virtual/index.es4.js +2 -5
- package/dist/_virtual/index.es4.js.map +1 -1
- package/dist/_virtual/index.es5.js +5 -2
- package/dist/_virtual/index.es5.js.map +1 -1
- package/dist/_virtual/index.es8.js +5 -2
- package/dist/_virtual/index.es8.js.map +1 -1
- package/dist/_virtual/index.es9.js +2 -5
- package/dist/_virtual/index.es9.js.map +1 -1
- package/dist/api.cjs.js +1 -1
- package/dist/api.es.js +349 -330
- package/dist/api.es.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +149 -144
- package/dist/components.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +25 -21
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
- package/dist/node_modules/remove-accents/index.cjs.js +1 -1
- package/dist/node_modules/remove-accents/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime/dist/index.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +21 -5
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +18 -2
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +13 -10
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
- package/dist/shared/src/api/queries/bundles/getBundles.cjs.js +2 -0
- package/dist/shared/src/api/queries/bundles/getBundles.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/bundles/getBundles.es.js +65 -0
- package/dist/shared/src/api/queries/bundles/getBundles.es.js.map +1 -0
- package/dist/shared/src/api/queries/bundles/updateBundles.cjs.js +2 -0
- package/dist/shared/src/api/queries/bundles/updateBundles.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/bundles/updateBundles.es.js +159 -0
- package/dist/shared/src/api/queries/bundles/updateBundles.es.js.map +1 -0
- package/dist/shared/src/api/queries/columnStats/groupCounts.cjs.js +2 -0
- package/dist/shared/src/api/queries/columnStats/groupCounts.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/columnStats/groupCounts.es.js +83 -0
- package/dist/shared/src/api/queries/columnStats/groupCounts.es.js.map +1 -0
- package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js +1 -1
- package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/metricTargets.es.js +60 -41
- package/dist/shared/src/api/queries/columnStats/metricTargets.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +6 -3
- package/dist/shared/src/api/queries/entities/getEntityPanel.es.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
- package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/getLists.es.js +45 -42
- package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js +1 -1
- package/dist/shared/src/api/queries/entityLists/listFolders.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/listFolders.es.js +11 -8
- package/dist/shared/src/api/queries/entityLists/listFolders.es.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js +1 -1
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js +5 -4
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js.map +1 -1
- package/dist/shared/src/api/queries/folders/getFolders.cjs.js +1 -1
- package/dist/shared/src/api/queries/folders/getFolders.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/folders/getFolders.es.js +6 -3
- package/dist/shared/src/api/queries/folders/getFolders.es.js.map +1 -1
- package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js +1 -1
- package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/links/getEntityLinks.es.js +5 -2
- package/dist/shared/src/api/queries/links/getEntityLinks.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.es.js +280 -247
- package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/projectFolders/projectFolders.cjs.js +1 -1
- package/dist/shared/src/api/queries/projectFolders/projectFolders.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/projectFolders/projectFolders.es.js +15 -12
- package/dist/shared/src/api/queries/projectFolders/projectFolders.es.js.map +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +8 -5
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
- package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js +1 -1
- package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js +17 -14
- package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js.map +1 -1
- package/dist/shared/src/components/AttributeEditor/attributeTypeMap.cjs.js +1 -1
- package/dist/shared/src/components/AttributeEditor/attributeTypeMap.cjs.js.map +1 -1
- package/dist/shared/src/components/AttributeEditor/attributeTypeMap.es.js +11 -8
- package/dist/shared/src/components/AttributeEditor/attributeTypeMap.es.js.map +1 -1
- package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js +1 -1
- package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js.map +1 -1
- package/dist/shared/src/components/ColumnHeaderMenuUI.es.js +6 -3
- package/dist/shared/src/components/ColumnHeaderMenuUI.es.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +5 -2
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js +5 -5
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +5 -2
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +15 -11
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +6 -3
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +6 -3
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js +4 -4
- package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js +5 -2
- package/dist/shared/src/components/DetailsPanelDetails/DetailsSection.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js +5 -2
- package/dist/shared/src/components/DetailsPanelDetails/FieldLabel.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +6 -3
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js +5 -2
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityFormData.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js +5 -2
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useMentionSystem.es.js.map +1 -1
- package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js +1 -1
- package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityIcon/EntityIcon.es.js +6 -3
- package/dist/shared/src/components/EntityIcon/EntityIcon.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +16 -12
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +18 -14
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
- package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
- package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +6 -3
- package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js +44 -40
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
- package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.cjs.js +4 -0
- package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.cjs.js.map +1 -0
- package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.es.js +133 -0
- package/dist/shared/src/components/FilterErrorActions/FilterErrorActions.es.js.map +1 -0
- package/dist/shared/src/components/InfoMessage/InfoMessage.cjs.js +2 -0
- package/dist/shared/src/components/InfoMessage/InfoMessage.cjs.js.map +1 -0
- package/dist/shared/src/components/InfoMessage/InfoMessage.es.js +48 -0
- package/dist/shared/src/components/InfoMessage/InfoMessage.es.js.map +1 -0
- package/dist/shared/src/components/InfoMessage/InfoMessage.styled.cjs.js +77 -0
- package/dist/shared/src/components/InfoMessage/InfoMessage.styled.cjs.js.map +1 -0
- package/dist/shared/src/components/InfoMessage/InfoMessage.styled.es.js +81 -0
- package/dist/shared/src/components/InfoMessage/InfoMessage.styled.es.js.map +1 -0
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +6 -3
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/CellEditingDialog.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/CellEditingDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/CellEditingDialog.es.js +20 -20
- package/dist/shared/src/components/LinksManager/CellEditingDialog.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +5 -2
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.es.js +6 -3
- package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +17 -13
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +6 -3
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
- package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
- package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
- package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +6 -3
- package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
- package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
- package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/Menu.es.js +6 -3
- package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.es.js +4 -1
- package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
- package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuList.es.js +24 -21
- package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
- 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 +6 -3
- package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +6 -3
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js +5 -2
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +14 -10
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +15 -11
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +6 -3
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +13 -9
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +18 -14
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.es.js +17 -13
- package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +5 -2
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +18 -14
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +19 -15
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +18 -14
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +87 -69
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js +18 -14
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +112 -109
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +6 -3
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +20 -16
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +2 -2
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +36 -24
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +5 -2
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +6 -3
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +5 -2
- package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js +1 -1
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js.map +1 -1
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js +5 -2
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +17 -13
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +46 -41
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContextInstance.cjs.js +2 -0
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContextInstance.cjs.js.map +1 -0
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContextInstance.es.js +6 -0
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContextInstance.es.js.map +1 -0
- package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.es.js +5 -2
- package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +18 -14
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.es.js +117 -102
- package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js +2 -2
- package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js +47 -46
- package/dist/shared/src/containers/Actions/ActionsDropdown/ActionsDropdown.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +18 -14
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +18 -14
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +18 -14
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +18 -14
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +18 -14
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js +6 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +18 -14
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js +2 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js +5 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +17 -13
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +6 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +29 -25
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +18 -14
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +18 -14
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +6 -3
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js +5 -2
- package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +6 -3
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +2 -2
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +75 -69
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +18 -14
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +18 -14
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +18 -14
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.es.js +5 -2
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useExpandedWithInitialFolders.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +6 -3
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.es.js +7 -4
- package/dist/shared/src/containers/EntityPickerDialog/util/buildEntityPickerTableData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.es.js +24 -21
- package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +18 -14
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +18 -14
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +18 -14
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js +5 -2
- package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +20 -16
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +6 -3
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +19 -14
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +22 -18
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +6 -3
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js +5 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +6 -3
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +6 -3
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +6 -3
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +18 -14
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +5 -2
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js +9 -6
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js +5 -2
- package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js +5 -2
- package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +5 -2
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js +5 -2
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js +5 -2
- package/dist/shared/src/containers/Feed/mentionHelpers/getMentionTasks.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js +5 -2
- package/dist/shared/src/containers/Feed/mentionHelpers/getMentionVersions.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.es.js +188 -175
- package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js +15 -11
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +23 -19
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +801 -761
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +15 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +16 -0
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.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 +81 -76
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +17 -13
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +19 -15
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +18 -14
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js +13 -6
- package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js +58 -44
- package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +13 -9
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +5 -5
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +94 -88
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +14 -10
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +17 -13
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContextInstance.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContextInstance.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContextInstance.es.js +6 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContextInstance.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +338 -7
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContextInstance.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContextInstance.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContextInstance.es.js +6 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContextInstance.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +124 -120
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js +5 -2
- package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardValidation.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +162 -134
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +15 -11
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +12 -8
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +13 -9
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +13 -9
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +13 -9
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +454 -237
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +13 -9
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +13 -9
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.es.js +141 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupCounts.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +12 -8
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +12 -8
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +14 -10
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +15 -11
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +13 -9
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +25 -22
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/filterError.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/filterError.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/filterError.es.js +30 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/filterError.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.es.js +32 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/getGroupQueries.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/getGroupQueries.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/getGroupQueries.es.js +36 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/getGroupQueries.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js +4 -5
- package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +18 -14
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +16 -12
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +18 -14
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js +10 -10
- package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js +36 -32
- package/dist/shared/src/containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +26 -22
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +16 -12
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +13 -9
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +5 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +5 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +75 -49
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/versionsToRepresentations.cjs.js +1 -1
- package/dist/shared/src/containers/RepresentationsList/versionsToRepresentations.cjs.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/versionsToRepresentations.es.js +11 -10
- package/dist/shared/src/containers/RepresentationsList/versionsToRepresentations.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +277 -211
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js +83 -5
- package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js +89 -11
- package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js +149 -97
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.es.js +15 -11
- package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +6 -3
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +18 -14
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +62 -58
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +6 -3
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +6 -3
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +13 -9
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +6 -3
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js +6 -3
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js +6 -3
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js +6 -3
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +6 -3
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +5 -2
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js +5 -2
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +6 -3
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +16 -12
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +6 -3
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js +23 -20
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js +5 -2
- package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +5 -2
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +5 -2
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +9 -6
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +5 -2
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +5 -2
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +5 -2
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js +7 -4
- package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.es.js +20 -17
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.es.js +7 -4
- package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.es.js +10 -7
- package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.es.js +16 -13
- package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.es.js +36 -32
- package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContextInstance.cjs.js +2 -0
- package/dist/shared/src/context/ProjectFoldersContextInstance.cjs.js.map +1 -0
- package/dist/shared/src/context/ProjectFoldersContextInstance.es.js +8 -0
- package/dist/shared/src/context/ProjectFoldersContextInstance.es.js.map +1 -0
- package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.es.js +7 -4
- package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.es.js +8 -5
- package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/UriContext.cjs.js +1 -1
- package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
- package/dist/shared/src/context/UriContext.es.js +8 -5
- package/dist/shared/src/context/UriContext.es.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.es.js +20 -16
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.es.js +5 -2
- package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.es.js +6 -3
- package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.es.js +5 -2
- package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
- package/dist/shared/src/hooks/useGetProductionAddon.cjs.js +1 -1
- package/dist/shared/src/hooks/useGetProductionAddon.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGetProductionAddon.es.js +5 -2
- package/dist/shared/src/hooks/useGetProductionAddon.es.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +15 -21
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.es.js +5 -2
- package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js +1 -1
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js +5 -2
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.es.js +7 -4
- package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.es.js +5 -2
- package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.es.js +6 -3
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/shared/src/util/getBundleMode.cjs.js +1 -1
- package/dist/shared/src/util/getBundleMode.cjs.js.map +1 -1
- package/dist/shared/src/util/getBundleMode.es.js +6 -3
- package/dist/shared/src/util/getBundleMode.es.js.map +1 -1
- package/dist/shared/src/util/replaceRoot.cjs.js +2 -0
- package/dist/shared/src/util/replaceRoot.cjs.js.map +1 -0
- package/dist/shared/src/util/replaceRoot.es.js +11 -0
- package/dist/shared/src/util/replaceRoot.es.js.map +1 -0
- package/dist/types/api/generated/graphql.d.ts +20 -0
- package/dist/types/api/generated/graphqlLinks.d.ts +1 -0
- package/dist/types/api/queries/activities/getActivities.d.ts +6 -0
- package/dist/types/api/queries/bundles/getBundles.d.ts +951 -0
- package/dist/types/api/queries/bundles/index.d.ts +2 -0
- package/dist/types/api/queries/bundles/updateBundles.d.ts +1027 -0
- package/dist/types/api/queries/columnStats/groupCounts.d.ts +17 -0
- package/dist/types/api/queries/columnStats/index.d.ts +1 -0
- package/dist/types/api/queries/columnStats/metricTargets.d.ts +8 -1
- package/dist/types/api/queries/entities/getEntity.d.ts +3 -0
- package/dist/types/api/queries/entities/getEntityPanel.d.ts +3 -0
- package/dist/types/api/queries/entities/updateEntity.d.ts +3 -0
- package/dist/types/api/queries/entityLists/getLists.d.ts +3 -0
- package/dist/types/api/queries/index.d.ts +1 -0
- package/dist/types/api/queries/overview/getOverview.d.ts +95 -38
- package/dist/types/api/queries/project/getProject.d.ts +3 -0
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +3 -0
- package/dist/types/api/queries/users/getUsers.d.ts +3 -0
- package/dist/types/api/queries/versions/getVersionsProducts.d.ts +6 -0
- package/dist/types/components/Feedback/FeedbackContext.d.ts +1 -0
- package/dist/types/components/FilterErrorActions/FilterErrorActions.d.ts +5 -0
- package/dist/types/components/FilterErrorActions/index.d.ts +2 -0
- package/dist/types/components/InfoMessage/InfoMessage.d.ts +14 -0
- package/dist/types/components/InfoMessage/InfoMessage.styled.d.ts +1 -0
- package/dist/types/components/InfoMessage/index.d.ts +3 -0
- package/dist/types/components/VersionUploader/context/VersionUploadContext.d.ts +1 -1
- package/dist/types/components/VersionUploader/context/VersionUploadContextInstance.d.ts +2 -0
- package/dist/types/components/index.d.ts +2 -0
- package/dist/types/containers/Actions/ActionsDropdown/ActionsDropdown.d.ts +2 -1
- package/dist/types/containers/EntityPickerDialog/EntityPickerDialog.d.ts +1 -0
- package/dist/types/containers/ListTable/ListTable.d.ts +1 -1
- package/dist/types/containers/ListTable/ListTable.types.d.ts +4 -1
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.styled.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/components/TableFooterRow.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/context/ProjectDataContextInstance.d.ts +2 -0
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +88 -6
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContextInstance.d.ts +2 -0
- package/dist/types/containers/ProjectTreeTable/context/index.d.ts +0 -1
- package/dist/types/containers/ProjectTreeTable/hooks/index.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.d.ts +5 -2
- package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +7 -2
- package/dist/types/containers/ProjectTreeTable/hooks/useGroupCounts.d.ts +39 -0
- package/dist/types/containers/ProjectTreeTable/types/index.d.ts +6 -0
- package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +7 -2
- package/dist/types/containers/ProjectTreeTable/utils/filterError.d.ts +11 -0
- package/dist/types/containers/ProjectTreeTable/utils/getFolderIdsToQueryFromExpanded.d.ts +10 -0
- package/dist/types/containers/ProjectTreeTable/utils/getGroupQueries.d.ts +17 -0
- package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +2 -0
- package/dist/types/containers/ProjectTreeTable/utils/pinningUtils.d.ts +0 -1
- package/dist/types/containers/ProjectTreeTable/widgets/GroupHeaderWidget.d.ts +2 -1
- package/dist/types/containers/RepresentationsList/versionsToRepresentations.d.ts +1 -0
- package/dist/types/containers/SimpleTable/SimpleTable.d.ts +1 -64
- package/dist/types/containers/SimpleTable/SimpleTable.types.d.ts +79 -0
- package/dist/types/containers/SimpleTable/SimpleTableRowTemplate.d.ts +13 -1
- package/dist/types/containers/SimpleTable/hooks/useRowKeydown.d.ts +2 -1
- package/dist/types/containers/SimpleTable/index.d.ts +1 -0
- package/dist/types/containers/Slicer/context/SlicerContext.d.ts +6 -1
- package/dist/types/context/ProjectFoldersContextInstance.d.ts +2 -0
- package/dist/types/hooks/useGroupByRemoteModules.d.ts +0 -17
- package/dist/types/util/index.d.ts +1 -0
- package/dist/types/util/replaceRoot.d.ts +1 -0
- package/dist/util.cjs.js +1 -1
- package/dist/util.es.js +21 -19
- package/dist/util.es.js.map +1 -1
- package/package.json +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +0 -2
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +0 -326
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +0 -1
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +0 -81
package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBuildGroupByTableData.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.ts"],"sourcesContent":["// based on the groupBy field we take a flat list of items and group them\n// each group is a root node with subItems as the grouped items\n// any leftover items that do not match the groupBy field are added as a separate group (\"Ungrouped\")\n\nimport { EntityGroup } from '@shared/api'\nimport { TableGroupBy } from '../context'\nimport { EditorTaskNode, EntitiesMap, EntityMap, ProjectTableAttribute, TableRow } from '../types'\nimport { useGetEntityTypeData } from './useGetEntityTypeData'\nimport { useCallback } from 'react'\nimport { linksToTableData } from '../utils'\nimport { ProjectModelWithProducts, useProjectContext } from '@shared/context'\nexport type GroupByEntityType = 'task' | 'folder' | 'version' | 'product'\n\nexport type GroupData = {\n value: string\n label: string\n color?: string\n icon?: string\n img?: string\n count?: number\n}\n\nexport const NEXT_PAGE_ID = 'next-page'\nexport const UNGROUPED_VALUE = '_ungrouped'\nexport const ROW_ID_SEPARATOR = '__'\n\nconst valueToStringArray = (value?: any): string[] =>\n value\n ? Array.isArray(value)\n ? [...new Set(value.map((v) => v.toString()))] // dedup so an entity can't land in the same group twice (keeps row.id unique)\n : [value.toString()]\n : []\n\n// get group label, color and icon\nconst getGroupData = (groupById: string, groupValue: string, groups?: EntityGroup[]): GroupData => {\n if (!groups)\n return {\n value: groupValue,\n label: groupValue,\n }\n\n const group = groups.find((g) => g.value === groupValue)\n if (!group) {\n return {\n value: groupValue,\n label: groupValue,\n }\n } else {\n return {\n value: group.value,\n label: group.label || group.value,\n color: group.color,\n icon: group.icon,\n count: group.count,\n img: groupById === 'assignees' ? `/api/users/${group.value}/avatar` : undefined,\n }\n }\n}\n\nexport const GROUP_BY_ID = '_GROUP_'\nexport const buildGroupId = (value: string) => `${GROUP_BY_ID}${value}`\nexport const parseGroupId = (groupId: string): string | null => {\n if (!groupId.startsWith(GROUP_BY_ID)) return null\n return groupId.slice(GROUP_BY_ID.length) // +1 for the underscore\n}\nexport const isGroupId = (id: string): boolean => id.startsWith(GROUP_BY_ID)\n\ntype BuildGroupByTableProps = {\n entities: EntitiesMap\n entityType: string\n groups?: EntityGroup[]\n attribFields: ProjectTableAttribute[]\n showEmpty?: boolean\n groupRowFunc?: (node: any) => TableRow\n}\n\n// get sorting ids based on the groupBy field\nconst getSortingIds = (\n groupBy: TableGroupBy,\n project?: ProjectModelWithProducts,\n attribFields: ProjectTableAttribute[] = [],\n): string[] => {\n const attributeId = groupBy.id.replace('attrib.', '')\n\n // for status, taskType, folderType use project data order\n if (attributeId === 'status') {\n return project?.statuses?.map((s) => s.name) || []\n } else if (attributeId === 'taskType') {\n return project?.taskTypes?.map((t) => t.name) || []\n } else if (attributeId === 'folderType') {\n return project?.folderTypes?.map((f) => f.name) || []\n } else if (groupBy.id.startsWith('attrib.')) {\n // for other enum attributes, use the enum values order\n return (\n attribFields\n .find((field) => field.name === attributeId)\n ?.data.enum?.map((e) => e.value.toString()) || []\n )\n } else return []\n}\n\nconst defaultEntityToGroupRow = (\n task: EditorTaskNode,\n group: string | undefined,\n entityType: string,\n project: ProjectModelWithProducts,\n getEntityTypeData: ReturnType<typeof useGetEntityTypeData>,\n): TableRow & { subRows: TableRow[] } => {\n const typeData = getEntityTypeData(entityType, task.taskType)\n return {\n id: task.id + ROW_ID_SEPARATOR + group, // unique id for the task in the folder\n entityId: task.id,\n entityType: entityType,\n parentId: task.folderId,\n folderId: task.folderId,\n name: task.name || '',\n label: task.label || task.name || '',\n icon: typeData?.icon || null,\n color: typeData?.color || null,\n status: task.status,\n assignees: task.assignees,\n tags: task.tags,\n img: null,\n subRows: [],\n subType: task.taskType || null,\n attrib: task.attrib,\n ownAttrib: task.ownAttrib,\n parents: task.parents || [],\n folder: task.parents?.[task.parents.length - 1] || undefined,\n createdAt: task.createdAt,\n updatedAt: task.updatedAt,\n hasReviewables: task.hasReviewables || false,\n links: linksToTableData(task.links, entityType, {\n folderTypes: project?.folderTypes || [],\n productTypes: Object.values(project.productTypes) || [],\n taskTypes: project?.taskTypes || [],\n }),\n subtasks: task.subtasks || [],\n latestComments: task.latestComments || [],\n }\n}\n\nconst useBuildGroupByTableData = ({\n entities,\n entityType,\n groups = [],\n attribFields,\n showEmpty,\n groupRowFunc, // for versions etc\n}: BuildGroupByTableProps) => {\n const project = useProjectContext()\n const getEntityTypeData = useGetEntityTypeData({ projectInfo: project })\n\n const entityToGroupRow = useCallback(\n (task: EditorTaskNode, group?: string): TableRow & { subRows: TableRow[] } => {\n // Use provided groupRowFunc or fall back to default\n const baseRow = groupRowFunc\n ? groupRowFunc(task)\n : defaultEntityToGroupRow(task, group, entityType, project, getEntityTypeData)\n\n // Ensure group-specific fields are set\n return {\n ...baseRow,\n id: task.id + ROW_ID_SEPARATOR + group, // unique id for the task in the group\n subRows: baseRow.subRows || [],\n }\n },\n [groupRowFunc, getEntityTypeData, entityType, project],\n )\n\n const buildGroupByTableData = (groupBy: TableGroupBy): TableRow[] => {\n const groupsMap = new Map<string, TableRow>()\n\n for (const group of groups) {\n const groupValue = group.value?.toString() as string\n const groupId = buildGroupId(groupValue)\n const groupData = getGroupData(groupBy.id, groupValue, groups)\n groupsMap.set(groupValue, {\n id: groupId,\n name: groupValue,\n entityType: 'group',\n subRows: [],\n label: groupData.label,\n group: groupData,\n links: {},\n })\n }\n\n const ungroupedId = buildGroupId(UNGROUPED_VALUE)\n // gets the \"Ungrouped\" group, creating it if it doesn't exist\n const getUnGroupedGroup = () => {\n let ungroupedGroup = groupsMap.get(UNGROUPED_VALUE)\n if (!ungroupedGroup) {\n ungroupedGroup = {\n id: ungroupedId,\n name: 'Ungrouped',\n entityType: 'group',\n subRows: [],\n label: 'Ungrouped',\n group: { value: UNGROUPED_VALUE, label: 'Ungrouped' },\n links: {},\n }\n // create ungrouped group if it doesn't exist\n groupsMap.set(UNGROUPED_VALUE, ungroupedGroup)\n }\n return ungroupedGroup\n }\n\n const canHaveUngrouped =\n groupBy.id === 'tags' || groupBy.id === 'assignees' || groupBy.id.startsWith('attrib.')\n if (canHaveUngrouped) getUnGroupedGroup()\n\n for (const [id, entity] of entities) {\n // if the entity is not of the specified type, skip it\n if (entity.entityType !== entityType) continue\n // add entities to specific group\n let groupValues: string[] = []\n if (groupBy.id.startsWith('attrib.')) {\n // for attribute based grouping, get the value of the attribute\n const attributeId = groupBy.id.split('.')[1]\n groupValues = valueToStringArray(entity.attrib?.[attributeId])\n } else if (groupBy.id === 'folderType' && 'folder' in entity) {\n // folderType is nested under folder for task entities (from TaskPropsFragment)\n groupValues = valueToStringArray(\n (entity as EditorTaskNode & { folder?: { folderType?: string } }).folder?.folderType,\n )\n } else {\n groupValues = valueToStringArray(entity[groupBy.id as keyof EntityMap])\n }\n\n // if there are no values, add to \"Ungrouped\" group\n if (groupValues.length === 0) {\n const ungroupedGroup = getUnGroupedGroup()\n ungroupedGroup.subRows?.push(entityToGroupRow(entity as EditorTaskNode, UNGROUPED_VALUE))\n }\n // for each group value, find it's group and add the entity to it\n // if we can't find the group, add it to \"Ungrouped\"\n for (const groupValue of groupValues) {\n const groupRow = groupsMap.get(groupValue)\n if (groupRow) {\n groupRow.subRows?.push(entityToGroupRow(entity as EditorTaskNode, groupValue))\n } else {\n const ungroupedGroup = getUnGroupedGroup()\n ungroupedGroup.subRows?.push(entityToGroupRow(entity as EditorTaskNode, UNGROUPED_VALUE))\n }\n }\n\n // for groups metadata on entity, check if there is a next page\n if ('groups' in entity && Array.isArray(entity.groups)) {\n for (const group of entity.groups) {\n const hasNextPageGroup = group.hasNextPage\n if (hasNextPageGroup && groupsMap.has(group.value)) {\n // add a next page row to the group\n const groupRow = groupsMap.get(group.value)\n if (groupRow) {\n groupRow.subRows?.push({\n id: `${group.value}-next-page`,\n name: `Load more tasks...`,\n entityType: NEXT_PAGE_ID,\n subRows: [],\n label: `Next page for ${group.value}`,\n group: { value: group.value, label: group.value },\n links: {},\n })\n }\n }\n }\n }\n }\n\n const groupsList = Array.from(groupsMap.values())\n\n const attribSortingIds = getSortingIds(groupBy, project, attribFields)\n\n // sort the groups by their label\n // if the group is an attribute with enum values, sort by the enum values\n const sortDirection = groupBy.desc ? -1 : 1\n groupsList.sort((a, b) => {\n if (a.group?.value === UNGROUPED_VALUE) return 1 // \"Ungrouped\" should always be last\n if (b.group?.value === UNGROUPED_VALUE) return -1 // \"Ungrouped\" should always be last\n if (attribSortingIds.length) {\n // sort by index of the enum value\n const indexA = attribSortingIds.indexOf(a.group?.value || '')\n const indexB = attribSortingIds.indexOf(b.group?.value || '')\n if (indexA !== -1 && indexB !== -1) {\n return (indexA - indexB) * sortDirection\n }\n if (indexA !== -1) return -1 // a is in the enum, b is not\n if (indexB !== -1) return 1 // b is in the enum, a is not\n // if both are not in the enum, sort by label\n return (a.group?.label?.localeCompare(b.group?.label || '') || 0) * sortDirection\n } else {\n // for other groupings, sort by the group label\n return (a.group?.label?.localeCompare(b.group?.label || '') || 0) * sortDirection\n }\n })\n\n // filter out empty groups — Ungrouped has no server count, keep it reachable\n const nonEmptyGroups = groupsList.filter(\n (group) =>\n (group.group?.count ?? 0) > 0 ||\n (group.subRows?.length ?? 0) > 0 ||\n group.group?.value === UNGROUPED_VALUE,\n )\n\n return showEmpty ? groupsList : nonEmptyGroups\n }\n\n return buildGroupByTableData\n}\n\nexport default useBuildGroupByTableData\n"],"names":["NEXT_PAGE_ID","UNGROUPED_VALUE","ROW_ID_SEPARATOR","valueToStringArray","value","v","getGroupData","groupById","groupValue","groups","group","g","GROUP_BY_ID","buildGroupId","parseGroupId","groupId","isGroupId","id","getSortingIds","groupBy","project","attribFields","attributeId","s","t","f","field","e","defaultEntityToGroupRow","task","entityType","getEntityTypeData","typeData","linksToTableData","useBuildGroupByTableData","entities","showEmpty","groupRowFunc","useProjectContext","useGetEntityTypeData","entityToGroupRow","useCallback","baseRow","groupsMap","groupData","ungroupedId","getUnGroupedGroup","ungroupedGroup","entity","groupValues","groupRow","groupsList","attribSortingIds","sortDirection","a","b","indexA","indexB","nonEmptyGroups"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useBuildGroupByTableData.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.ts"],"sourcesContent":["// based on the groupBy field we take a flat list of items and group them\n// each group is a root node with subItems as the grouped items\n// any leftover items that do not match the groupBy field are added as a separate group (\"Ungrouped\")\n\nimport type { GroupCountsMap } from '@shared/api'\nimport { EntityGroup } from '@shared/api'\nimport { TableGroupBy } from '../context'\nimport { EditorTaskNode, EntitiesMap, EntityMap, ProjectTableAttribute, TableRow } from '../types'\nimport { useGetEntityTypeData } from './useGetEntityTypeData'\nimport { useCallback } from 'react'\nimport { linksToTableData } from '../utils'\nimport { ProjectModelWithProducts, useProjectContext } from '@shared/context'\n\nexport type GroupByEntityType = 'task' | 'folder' | 'version' | 'product'\n\nexport type GroupData = {\n value: string\n label: string\n color?: string\n icon?: string\n img?: string\n count?: number\n percentage?: number\n}\n\nexport const NEXT_PAGE_ID = 'next-page'\nexport const UNGROUPED_VALUE = '_ungrouped'\nexport const ROW_ID_SEPARATOR = '__'\n\nconst valueToStringArray = (value?: any): string[] =>\n value\n ? Array.isArray(value)\n ? [...new Set(value.map((v) => v.toString()))] // dedup so an entity can't land in the same group twice (keeps row.id unique)\n : [value.toString()]\n : []\n\n// get group label, color and icon; overlay the filter-aware count + percentage\n// from groupCounts when available (falls back to the grouping endpoint count)\nconst getGroupData = (\n groupById: string,\n groupValue: string,\n groups?: EntityGroup[],\n groupCounts?: GroupCountsMap,\n groupCountsComplete?: boolean,\n): GroupData => {\n const stat = groupCounts?.get(groupValue)\n const group = groups?.find((g) => g.value === groupValue)\n\n const base: GroupData = group\n ? {\n value: group.value,\n label: group.label || group.value,\n color: group.color,\n icon: group.icon,\n count: group.count,\n img: groupById === 'assignees' ? `/api/users/${group.value}/avatar` : undefined,\n }\n : { value: groupValue, label: groupValue }\n\n if (stat) {\n base.count = stat.count\n base.percentage = stat.percentage\n } else if (groupCounts && groupCountsComplete) {\n // stats are authoritative: a named group absent from them truly has 0 matches\n base.count = 0\n base.percentage = undefined\n }\n return base\n}\n\nexport const GROUP_BY_ID = '_GROUP_'\nexport const buildGroupId = (value: string) => `${GROUP_BY_ID}${value}`\nexport const parseGroupId = (groupId: string): string | null => {\n if (!groupId.startsWith(GROUP_BY_ID)) return null\n return groupId.slice(GROUP_BY_ID.length) // +1 for the underscore\n}\nexport const isGroupId = (id: string): boolean => id.startsWith(GROUP_BY_ID)\n\ntype BuildGroupByTableProps = {\n entities: EntitiesMap\n entityType: string\n groups?: EntityGroup[]\n attribFields: ProjectTableAttribute[]\n showEmpty?: boolean\n groupRowFunc?: (node: any) => TableRow\n groupCounts?: GroupCountsMap\n groupCountsComplete?: boolean\n}\n\n// get sorting ids based on the groupBy field\nconst getSortingIds = (\n groupBy: TableGroupBy,\n project?: ProjectModelWithProducts,\n attribFields: ProjectTableAttribute[] = [],\n): string[] => {\n const attributeId = groupBy.id.replace('attrib.', '')\n\n // for status, taskType, folderType use project data order\n if (attributeId === 'status') {\n return project?.statuses?.map((s) => s.name) || []\n } else if (attributeId === 'taskType') {\n return project?.taskTypes?.map((t) => t.name) || []\n } else if (attributeId === 'folderType') {\n return project?.folderTypes?.map((f) => f.name) || []\n } else if (groupBy.id.startsWith('attrib.')) {\n // for other enum attributes, use the enum values order\n return (\n attribFields\n .find((field) => field.name === attributeId)\n ?.data.enum?.map((e) => e.value.toString()) || []\n )\n } else return []\n}\n\nconst defaultEntityToGroupRow = (\n task: EditorTaskNode,\n group: string | undefined,\n entityType: string,\n project: ProjectModelWithProducts,\n getEntityTypeData: ReturnType<typeof useGetEntityTypeData>,\n): TableRow & { subRows: TableRow[] } => {\n const typeData = getEntityTypeData(entityType, task.taskType)\n return {\n id: task.id + ROW_ID_SEPARATOR + group, // unique id for the task in the folder\n entityId: task.id,\n entityType: entityType,\n parentId: task.folderId,\n folderId: task.folderId,\n name: task.name || '',\n label: task.label || task.name || '',\n icon: typeData?.icon || null,\n color: typeData?.color || null,\n status: task.status,\n assignees: task.assignees,\n tags: task.tags,\n img: null,\n subRows: [],\n subType: task.taskType || null,\n attrib: task.attrib,\n ownAttrib: task.ownAttrib,\n parents: task.parents || [],\n folder: task.parents?.[task.parents.length - 1] || undefined,\n createdAt: task.createdAt,\n updatedAt: task.updatedAt,\n hasReviewables: task.hasReviewables || false,\n links: linksToTableData(task.links, entityType, {\n folderTypes: project?.folderTypes || [],\n productTypes: Object.values(project.productTypes) || [],\n taskTypes: project?.taskTypes || [],\n }),\n subtasks: task.subtasks || [],\n latestComments: task.latestComments || [],\n }\n}\n\nconst useBuildGroupByTableData = ({\n entities,\n entityType,\n groups = [],\n attribFields,\n showEmpty,\n groupRowFunc, // for versions etc\n groupCounts,\n groupCountsComplete,\n}: BuildGroupByTableProps) => {\n const project = useProjectContext()\n const getEntityTypeData = useGetEntityTypeData({ projectInfo: project })\n\n const entityToGroupRow = useCallback(\n (task: EditorTaskNode, group?: string): TableRow & { subRows: TableRow[] } => {\n // Use provided groupRowFunc or fall back to default\n const baseRow = groupRowFunc\n ? groupRowFunc(task)\n : defaultEntityToGroupRow(task, group, entityType, project, getEntityTypeData)\n\n // Ensure group-specific fields are set\n return {\n ...baseRow,\n id: task.id + ROW_ID_SEPARATOR + group, // unique id for the task in the group\n subRows: baseRow.subRows || [],\n }\n },\n [groupRowFunc, getEntityTypeData, entityType, project],\n )\n\n return useCallback(\n (groupBy: TableGroupBy): TableRow[] => {\n const groupsMap = new Map<string, TableRow>()\n\n for (const group of groups) {\n const groupValue = group.value?.toString() as string\n const groupId = buildGroupId(groupValue)\n const groupData = getGroupData(\n groupBy.id,\n groupValue,\n groups,\n groupCounts,\n groupCountsComplete,\n )\n groupsMap.set(groupValue, {\n id: groupId,\n name: groupValue,\n entityType: 'group',\n subRows: [],\n label: groupData.label,\n group: groupData,\n links: {},\n })\n }\n\n const ungroupedId = buildGroupId(UNGROUPED_VALUE)\n // gets the \"Ungrouped\" group, creating it if it doesn't exist\n const getUnGroupedGroup = () => {\n let ungroupedGroup = groupsMap.get(UNGROUPED_VALUE)\n if (!ungroupedGroup) {\n const stat = groupCounts?.get(UNGROUPED_VALUE)\n ungroupedGroup = {\n id: ungroupedId,\n name: 'Ungrouped',\n entityType: 'group',\n subRows: [],\n label: 'Ungrouped',\n group: {\n value: UNGROUPED_VALUE,\n label: 'Ungrouped',\n count: stat?.count,\n percentage: stat?.percentage,\n },\n links: {},\n }\n // create ungrouped group if it doesn't exist\n groupsMap.set(UNGROUPED_VALUE, ungroupedGroup)\n }\n return ungroupedGroup\n }\n\n const canHaveUngrouped =\n groupBy.id === 'tags' || groupBy.id === 'assignees' || groupBy.id.startsWith('attrib.')\n if (canHaveUngrouped) getUnGroupedGroup()\n\n for (const [, entity] of entities) {\n // if the entity is not of the specified type, skip it\n if (entity.entityType !== entityType) continue\n // add entities to specific group\n let groupValues: string[] = []\n if (groupBy.id.startsWith('attrib.')) {\n // for attribute based grouping, get the value of the attribute\n const attributeId = groupBy.id.split('.')[1]\n groupValues = valueToStringArray(entity.attrib?.[attributeId])\n } else if (groupBy.id === 'folderType' && 'folder' in entity) {\n // folderType is nested under folder for task entities (from TaskPropsFragment)\n groupValues = valueToStringArray(\n (entity as EditorTaskNode & { folder?: { folderType?: string } }).folder?.folderType,\n )\n } else {\n groupValues = valueToStringArray(entity[groupBy.id as keyof EntityMap])\n }\n\n // if there are no values, add to \"Ungrouped\" group\n if (groupValues.length === 0) {\n const ungroupedGroup = getUnGroupedGroup()\n ungroupedGroup.subRows?.push(entityToGroupRow(entity as EditorTaskNode, UNGROUPED_VALUE))\n }\n // for each group value, find it's group and add the entity to it\n // if we can't find the group, add it to \"Ungrouped\"\n for (const groupValue of groupValues) {\n const groupRow = groupsMap.get(groupValue)\n if (groupRow) {\n groupRow.subRows?.push(entityToGroupRow(entity as EditorTaskNode, groupValue))\n } else {\n const ungroupedGroup = getUnGroupedGroup()\n ungroupedGroup.subRows?.push(\n entityToGroupRow(entity as EditorTaskNode, UNGROUPED_VALUE),\n )\n }\n }\n\n // for groups metadata on entity, check if there is a next page\n if ('groups' in entity && Array.isArray(entity.groups)) {\n for (const group of entity.groups) {\n const hasNextPageGroup = group.hasNextPage\n if (hasNextPageGroup && groupsMap.has(group.value)) {\n // add a next page row to the group\n const groupRow = groupsMap.get(group.value)\n if (groupRow) {\n groupRow.subRows?.push({\n id: `${group.value}-next-page`,\n name: `Load more tasks...`,\n entityType: NEXT_PAGE_ID,\n subRows: [],\n label: `Next page for ${group.value}`,\n group: { value: group.value, label: group.value },\n links: {},\n })\n }\n }\n }\n }\n }\n\n const groupsList = Array.from(groupsMap.values())\n\n const attribSortingIds = getSortingIds(groupBy, project, attribFields)\n\n // sort the groups by their label\n // if the group is an attribute with enum values, sort by the enum values\n const sortDirection = groupBy.desc ? -1 : 1\n groupsList.sort((a, b) => {\n if (a.group?.value === UNGROUPED_VALUE) return 1 // \"Ungrouped\" should always be last\n if (b.group?.value === UNGROUPED_VALUE) return -1 // \"Ungrouped\" should always be last\n if (attribSortingIds.length) {\n // sort by index of the enum value\n const indexA = attribSortingIds.indexOf(a.group?.value || '')\n const indexB = attribSortingIds.indexOf(b.group?.value || '')\n if (indexA !== -1 && indexB !== -1) {\n return (indexA - indexB) * sortDirection\n }\n if (indexA !== -1) return -1 // a is in the enum, b is not\n if (indexB !== -1) return 1 // b is in the enum, a is not\n // if both are not in the enum, sort by label\n return (a.group?.label?.localeCompare(b.group?.label || '') || 0) * sortDirection\n } else {\n // for other groupings, sort by the group label\n return (a.group?.label?.localeCompare(b.group?.label || '') || 0) * sortDirection\n }\n })\n\n // filter out empty groups — Ungrouped has no server count, keep it reachable\n const nonEmptyGroups = groupsList.filter(\n (group) =>\n (group.group?.count ?? 0) > 0 ||\n (group.subRows?.length ?? 0) > 0 ||\n group.group?.value === UNGROUPED_VALUE,\n )\n\n return showEmpty ? groupsList : nonEmptyGroups\n },\n [\n entities,\n entityType,\n groups,\n attribFields,\n showEmpty,\n groupCounts,\n groupCountsComplete,\n entityToGroupRow,\n project,\n ],\n )\n}\n\nexport default useBuildGroupByTableData\n"],"names":["NEXT_PAGE_ID","UNGROUPED_VALUE","ROW_ID_SEPARATOR","valueToStringArray","value","v","getGroupData","groupById","groupValue","groups","groupCounts","groupCountsComplete","stat","group","g","base","GROUP_BY_ID","buildGroupId","parseGroupId","groupId","isGroupId","id","getSortingIds","groupBy","project","attribFields","attributeId","s","f","field","e","defaultEntityToGroupRow","task","entityType","getEntityTypeData","typeData","linksToTableData","useBuildGroupByTableData","entities","showEmpty","groupRowFunc","useProjectContext","useGetEntityTypeData","entityToGroupRow","useCallback","baseRow","groupsMap","groupData","ungroupedId","getUnGroupedGroup","ungroupedGroup","entity","groupValues","groupRow","groupsList","attribSortingIds","sortDirection","a","b","indexA","indexB","nonEmptyGroups"],"mappings":"qjiBAyBaA,EAAe,YACfC,EAAkB,aAClBC,EAAmB,KAE1BC,EAAsBC,GAC1BA,EACI,MAAM,QAAQA,CAAK,EACjB,CAAC,GAAG,IAAI,IAAIA,EAAM,IAAKC,GAAMA,EAAE,SAAA,CAAU,CAAC,CAAC,EAC3C,CAACD,EAAM,SAAA,CAAU,EACnB,CAAA,EAIAE,EAAe,CACnBC,EACAC,EACAC,EACAC,EACAC,IACc,CACd,MAAMC,EAAOF,GAAa,IAAIF,CAAU,EAClCK,EAAQJ,GAAQ,KAAMK,GAAMA,EAAE,QAAUN,CAAU,EAElDO,EAAkBF,EACpB,CACE,MAAOA,EAAM,MACb,MAAOA,EAAM,OAASA,EAAM,MAC5B,MAAOA,EAAM,MACb,KAAMA,EAAM,KACZ,MAAOA,EAAM,MACb,IAAKN,IAAc,YAAc,cAAcM,EAAM,KAAK,UAAY,MAAA,EAExE,CAAE,MAAOL,EAAY,MAAOA,CAAA,EAEhC,OAAII,GACFG,EAAK,MAAQH,EAAK,MAClBG,EAAK,WAAaH,EAAK,YACdF,GAAeC,IAExBI,EAAK,MAAQ,EACbA,EAAK,WAAa,QAEbA,CACT,EAEaC,EAAc,UACdC,EAAgBb,GAAkB,GAAGY,CAAW,GAAGZ,CAAK,GACxDc,EAAgBC,GACtBA,EAAQ,WAAWH,CAAW,EAC5BG,EAAQ,MAAMH,EAAY,MAAM,EADM,KAGlCI,EAAaC,GAAwBA,EAAG,WAAWL,CAAW,EAcrEM,EAAgB,CACpBC,EACAC,EACAC,EAAwC,CAAA,IAC3B,CACb,MAAMC,EAAcH,EAAQ,GAAG,QAAQ,UAAW,EAAE,EAGpD,OAAIG,IAAgB,SACXF,GAAS,UAAU,IAAKG,GAAMA,EAAE,IAAI,GAAK,CAAA,EACvCD,IAAgB,WAClBF,GAAS,WAAW,IAAK,GAAM,EAAE,IAAI,GAAK,CAAA,EACxCE,IAAgB,aAClBF,GAAS,aAAa,IAAKI,GAAMA,EAAE,IAAI,GAAK,CAAA,EAC1CL,EAAQ,GAAG,WAAW,SAAS,EAGtCE,EACG,KAAMI,GAAUA,EAAM,OAASH,CAAW,GACzC,KAAK,MAAM,IAAKI,GAAMA,EAAE,MAAM,SAAA,CAAU,GAAK,CAAA,EAEvC,CAAA,CAChB,EAEMC,EAA0B,CAC9BC,EACAnB,EACAoB,EACAT,EACAU,IACuC,CACvC,MAAMC,EAAWD,EAAkBD,EAAYD,EAAK,QAAQ,EAC5D,MAAO,CACL,GAAIA,EAAK,GAAK9B,EAAmBW,EACjC,SAAUmB,EAAK,GACf,WAAAC,EACA,SAAUD,EAAK,SACf,SAAUA,EAAK,SACf,KAAMA,EAAK,MAAQ,GACnB,MAAOA,EAAK,OAASA,EAAK,MAAQ,GAClC,KAAMG,GAAU,MAAQ,KACxB,MAAOA,GAAU,OAAS,KAC1B,OAAQH,EAAK,OACb,UAAWA,EAAK,UAChB,KAAMA,EAAK,KACX,IAAK,KACL,QAAS,CAAA,EACT,QAASA,EAAK,UAAY,KAC1B,OAAQA,EAAK,OACb,UAAWA,EAAK,UAChB,QAASA,EAAK,SAAW,CAAA,EACzB,OAAQA,EAAK,UAAUA,EAAK,QAAQ,OAAS,CAAC,GAAK,OACnD,UAAWA,EAAK,UAChB,UAAWA,EAAK,UAChB,eAAgBA,EAAK,gBAAkB,GACvC,MAAOI,EAAAA,iBAAiBJ,EAAK,MAAOC,EAAY,CAC9C,YAAaT,GAAS,aAAe,CAAA,EACrC,aAAc,OAAO,OAAOA,EAAQ,YAAY,GAAK,CAAA,EACrD,UAAWA,GAAS,WAAa,CAAA,CAAC,CACnC,EACD,SAAUQ,EAAK,UAAY,CAAA,EAC3B,eAAgBA,EAAK,gBAAkB,CAAA,CAAC,CAE5C,EAEMK,EAA2B,CAAC,CAChC,SAAAC,EACA,WAAAL,EACA,OAAAxB,EAAS,CAAA,EACT,aAAAgB,EACA,UAAAc,EACA,aAAAC,EACA,YAAA9B,EACA,oBAAAC,CACF,IAA8B,CAC5B,MAAMa,EAAUiB,EAAAA,kBAAA,EACVP,EAAoBQ,EAAAA,qBAAqB,CAAE,YAAalB,EAAS,EAEjEmB,EAAmBC,EAAAA,YACvB,CAACZ,EAAsBnB,IAAuD,CAE5E,MAAMgC,EAAUL,EACZA,EAAaR,CAAI,EACjBD,EAAwBC,EAAMnB,EAAOoB,EAAYT,EAASU,CAAiB,EAG/E,MAAO,CACL,GAAGW,EACH,GAAIb,EAAK,GAAK9B,EAAmBW,EACjC,QAASgC,EAAQ,SAAW,CAAA,CAAC,CAEjC,EACA,CAACL,EAAcN,EAAmBD,EAAYT,CAAO,CAAA,EAGvD,OAAOoB,EAAAA,YACJrB,GAAsC,CACrC,MAAMuB,MAAgB,IAEtB,UAAWjC,KAASJ,EAAQ,CAC1B,MAAMD,EAAaK,EAAM,OAAO,SAAA,EAC1BM,EAAUF,EAAaT,CAAU,EACjCuC,EAAYzC,EAChBiB,EAAQ,GACRf,EACAC,EACAC,EACAC,CAAA,EAEFmC,EAAU,IAAItC,EAAY,CACxB,GAAIW,EACJ,KAAMX,EACN,WAAY,QACZ,QAAS,CAAA,EACT,MAAOuC,EAAU,MACjB,MAAOA,EACP,MAAO,CAAA,CAAC,CACT,CACH,CAEA,MAAMC,EAAc/B,EAAahB,CAAe,EAE1CgD,EAAoB,IAAM,CAC9B,IAAIC,EAAiBJ,EAAU,IAAI7C,CAAe,EAClD,GAAI,CAACiD,EAAgB,CACnB,MAAMtC,EAAOF,GAAa,IAAIT,CAAe,EAC7CiD,EAAiB,CACf,GAAIF,EACJ,KAAM,YACN,WAAY,QACZ,QAAS,CAAA,EACT,MAAO,YACP,MAAO,CACL,MAAO/C,EACP,MAAO,YACP,MAAOW,GAAM,MACb,WAAYA,GAAM,UAAA,EAEpB,MAAO,CAAA,CAAC,EAGVkC,EAAU,IAAI7C,EAAiBiD,CAAc,CAC/C,CACA,OAAOA,CACT,GAGE3B,EAAQ,KAAO,QAAUA,EAAQ,KAAO,aAAeA,EAAQ,GAAG,WAAW,SAAS,IAClE0B,EAAA,EAEtB,SAAW,CAAA,CAAGE,CAAM,IAAKb,EAAU,CAEjC,GAAIa,EAAO,aAAelB,EAAY,SAEtC,IAAImB,EAAwB,CAAA,EAC5B,GAAI7B,EAAQ,GAAG,WAAW,SAAS,EAAG,CAEpC,MAAMG,EAAcH,EAAQ,GAAG,MAAM,GAAG,EAAE,CAAC,EAC3C6B,EAAcjD,EAAmBgD,EAAO,SAASzB,CAAW,CAAC,CAC/D,MAAWH,EAAQ,KAAO,cAAgB,WAAY4B,EAEpDC,EAAcjD,EACXgD,EAAiE,QAAQ,UAAA,EAG5EC,EAAcjD,EAAmBgD,EAAO5B,EAAQ,EAAqB,CAAC,EAIpE6B,EAAY,SAAW,GACFH,EAAA,EACR,SAAS,KAAKN,EAAiBQ,EAA0BlD,CAAe,CAAC,EAI1F,UAAWO,KAAc4C,EAAa,CACpC,MAAMC,EAAWP,EAAU,IAAItC,CAAU,EACrC6C,EACFA,EAAS,SAAS,KAAKV,EAAiBQ,EAA0B3C,CAAU,CAAC,EAEtDyC,EAAA,EACR,SAAS,KACtBN,EAAiBQ,EAA0BlD,CAAe,CAAA,CAGhE,CAGA,GAAI,WAAYkD,GAAU,MAAM,QAAQA,EAAO,MAAM,GACnD,UAAWtC,KAASsC,EAAO,OAEzB,GADyBtC,EAAM,aACPiC,EAAU,IAAIjC,EAAM,KAAK,EAAG,CAElD,MAAMwC,EAAWP,EAAU,IAAIjC,EAAM,KAAK,EACtCwC,GACFA,EAAS,SAAS,KAAK,CACrB,GAAI,GAAGxC,EAAM,KAAK,aAClB,KAAM,qBACN,WAAYb,EACZ,QAAS,CAAA,EACT,MAAO,iBAAiBa,EAAM,KAAK,GACnC,MAAO,CAAE,MAAOA,EAAM,MAAO,MAAOA,EAAM,KAAA,EAC1C,MAAO,CAAA,CAAC,CACT,CAEL,EAGN,CAEA,MAAMyC,EAAa,MAAM,KAAKR,EAAU,QAAQ,EAE1CS,EAAmBjC,EAAcC,EAASC,EAASC,CAAY,EAI/D+B,EAAgBjC,EAAQ,KAAO,GAAK,EAC1C+B,EAAW,KAAK,CAACG,EAAGC,IAAM,CACxB,GAAID,EAAE,OAAO,QAAUxD,EAAiB,MAAO,GAC/C,GAAIyD,EAAE,OAAO,QAAUzD,EAAiB,MAAO,GAC/C,GAAIsD,EAAiB,OAAQ,CAE3B,MAAMI,EAASJ,EAAiB,QAAQE,EAAE,OAAO,OAAS,EAAE,EACtDG,EAASL,EAAiB,QAAQG,EAAE,OAAO,OAAS,EAAE,EAC5D,OAAIC,IAAW,IAAMC,IAAW,IACtBD,EAASC,GAAUJ,EAEzBG,IAAW,GAAW,GACtBC,IAAW,GAAW,GAElBH,EAAE,OAAO,OAAO,cAAcC,EAAE,OAAO,OAAS,EAAE,GAAK,GAAKF,CACtE,KAEE,QAAQC,EAAE,OAAO,OAAO,cAAcC,EAAE,OAAO,OAAS,EAAE,GAAK,GAAKF,CAExE,CAAC,EAGD,MAAMK,EAAiBP,EAAW,OAC/BzC,IACEA,EAAM,OAAO,OAAS,GAAK,IAC3BA,EAAM,SAAS,QAAU,GAAK,GAC/BA,EAAM,OAAO,QAAUZ,CAAA,EAG3B,OAAOsC,EAAYe,EAAaO,CAClC,EACA,CACEvB,EACAL,EACAxB,EACAgB,EACAc,EACA7B,EACAC,EACAgC,EACAnB,CAAA,CACF,CAEJ"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { useGetEntityTypeData as
|
|
2
|
-
import { useCallback as
|
|
1
|
+
import { useGetEntityTypeData as P } from "./useGetEntityTypeData.es.js";
|
|
2
|
+
import { useCallback as x } from "react";
|
|
3
3
|
import "@ynput/ayon-react-components";
|
|
4
4
|
import "../../../components/SearchFilter/filterDates.es.js";
|
|
5
5
|
import "date-fns";
|
|
@@ -57,8 +57,11 @@ import "../../../api/queries/addons/updateAddons.es.js";
|
|
|
57
57
|
import "../../../api/queries/attributes/getAttributes.es.js";
|
|
58
58
|
import "../../../api/queries/attributes/updateAttributes.es.js";
|
|
59
59
|
import "../../../api/queries/authentication/getAuthentication.es.js";
|
|
60
|
+
import "../../../api/queries/bundles/getBundles.es.js";
|
|
61
|
+
import "../../../api/queries/bundles/updateBundles.es.js";
|
|
60
62
|
import "../../../api/queries/cloud/cloud.es.js";
|
|
61
63
|
import "../../../api/queries/columnStats/metricTargets.es.js";
|
|
64
|
+
import "../../../api/queries/columnStats/groupCounts.es.js";
|
|
62
65
|
import "../../../api/queries/config/getConfig.es.js";
|
|
63
66
|
import "../../../api/queries/config/updateConfig.es.js";
|
|
64
67
|
import "../../../api/queries/entities/getEntity.es.js";
|
|
@@ -149,8 +152,8 @@ import "../../../context/MoveEntityContext.es.js";
|
|
|
149
152
|
import "../../../context/MenuContext.es.js";
|
|
150
153
|
import "../../../context/WebsocketContext.es.js";
|
|
151
154
|
import "../../../context/GlobalContext.es.js";
|
|
152
|
-
import { useProjectContext as
|
|
153
|
-
import "../../../context/
|
|
155
|
+
import { useProjectContext as S } from "../../../context/ProjectContext.es.js";
|
|
156
|
+
import "../../../context/ProjectFoldersContextInstance.es.js";
|
|
154
157
|
import "react-redux";
|
|
155
158
|
import "custom-protocol-check";
|
|
156
159
|
import "../components/GroupSettingsFallback.es.js";
|
|
@@ -160,6 +163,7 @@ import "../../../components/DoneCheckbox/DoneCheckbox.es.js";
|
|
|
160
163
|
import "../../../components/EarlyPreview/EarlyPreview.es.js";
|
|
161
164
|
import "../../../components/EmptyPlaceholder/EmptyPlaceholder.es.js";
|
|
162
165
|
import "../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
|
|
166
|
+
import "../../../components/InfoMessage/InfoMessage.es.js";
|
|
163
167
|
import "@dnd-kit/core";
|
|
164
168
|
import "@dnd-kit/sortable";
|
|
165
169
|
import "../../../components/EnumEditor/EnumEditor.styled.es.js";
|
|
@@ -209,7 +213,8 @@ import "../widgets/GroupHeaderWidget.es.js";
|
|
|
209
213
|
import "../widgets/ThumbnailWidget.es.js";
|
|
210
214
|
import "../widgets/LinksWidget.es.js";
|
|
211
215
|
import "../../../components/LinksManager/LinksManager.styled.es.js";
|
|
212
|
-
import "../context/
|
|
216
|
+
import "../context/ColumnSettingsContext.es.js";
|
|
217
|
+
import "../context/ProjectTableContextInstance.es.js";
|
|
213
218
|
import "../widgets/EmptyWidget.es.js";
|
|
214
219
|
import "../widgets/ErrorWidget.es.js";
|
|
215
220
|
import "../ProjectTreeTable.styled.es.js";
|
|
@@ -221,18 +226,13 @@ import "../context/ProjectTableQueriesContext.es.js";
|
|
|
221
226
|
import "../components/DeleteConfirmContent.es.js";
|
|
222
227
|
import "../context/ClipboardContext.es.js";
|
|
223
228
|
import "../context/SelectionCellsContext.es.js";
|
|
224
|
-
import "../context/
|
|
229
|
+
import "../context/ProjectDataContextInstance.es.js";
|
|
225
230
|
import "../context/CellEditingContext.es.js";
|
|
226
231
|
import "../components/TableFooterRow.es.js";
|
|
227
232
|
import "../context/SelectedRowsContext.es.js";
|
|
228
|
-
import "../context/ColumnSettingsContext.es.js";
|
|
229
233
|
import "../context/DetailsPanelEntityContext.es.js";
|
|
230
234
|
import "../../EntityPickerDialog/EntityPickerDialog.es.js";
|
|
231
235
|
import "../../Slicer/components/Slicer.es.js";
|
|
232
|
-
import "../../Views/ViewsMenu/ViewsMenu.es.js";
|
|
233
|
-
import "../../Views/context/ViewsContextInstance.es.js";
|
|
234
|
-
import "../../Views/Views.styled.es.js";
|
|
235
|
-
import "../../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
|
|
236
236
|
import "../../Slicer/context/SlicerContextInstance.es.js";
|
|
237
237
|
import "../../Slicer/components/SlicerDropdownFallback.es.js";
|
|
238
238
|
import "../../Slicer/hooks/useTableDataBySlice.es.js";
|
|
@@ -250,6 +250,10 @@ import "../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.
|
|
|
250
250
|
import "../../Actions/Actions.styled.es.js";
|
|
251
251
|
import "../../Actions/ActionsDropdown/ActionsDropdown.es.js";
|
|
252
252
|
import "../../Actions/ActionIcon.es.js";
|
|
253
|
+
import "../../Views/ViewsMenu/ViewsMenu.es.js";
|
|
254
|
+
import "../../Views/context/ViewsContextInstance.es.js";
|
|
255
|
+
import "../../Views/Views.styled.es.js";
|
|
256
|
+
import "../../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
|
|
253
257
|
import "../../ListTable/ListTableRow.es.js";
|
|
254
258
|
import "../../ListTable/ListTable.styled.es.js";
|
|
255
259
|
import "../../../components/EntityPanelUploader/EntityPanelUploader.styled.es.js";
|
|
@@ -284,47 +288,39 @@ import "../../../components/Thumbnail/Thumbnail.styled.es.js";
|
|
|
284
288
|
import "../../../components/Thumbnail/StackedThumbnails.es.js";
|
|
285
289
|
import "../../../components/ThumbnailSimple/ThumbnailSimple.es.js";
|
|
286
290
|
import "../../../components/VersionUploader/components/UploadVersionDialog.es.js";
|
|
287
|
-
import "../../../components/VersionUploader/context/
|
|
291
|
+
import "../../../components/VersionUploader/context/VersionUploadContextInstance.es.js";
|
|
288
292
|
import "../../../components/Watchers/Watchers.es.js";
|
|
289
293
|
import "../../../components/Menu/Menu.styled.es.js";
|
|
290
294
|
import "../../../components/Menu/MenuItem.es.js";
|
|
291
295
|
import "../../../components/ReviewablesSelector/ReviewablesSelector.es.js";
|
|
292
296
|
import "../../../components/ColumnHeaderMenuUI.es.js";
|
|
293
|
-
import { linksToTableData as
|
|
294
|
-
const
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
value: p,
|
|
310
|
-
label: p
|
|
311
|
-
};
|
|
312
|
-
}, g = "_GROUP_", I = (t) => `${g}${t}`, nm = (t) => t.startsWith(g) ? t.slice(g.length) : null, am = (t) => t.startsWith(g), C = (t, p, n = []) => {
|
|
313
|
-
const i = t.id.replace("attrib.", "");
|
|
314
|
-
return i === "status" ? p?.statuses?.map((e) => e.name) || [] : i === "taskType" ? p?.taskTypes?.map((e) => e.name) || [] : i === "folderType" ? p?.folderTypes?.map((e) => e.name) || [] : t.id.startsWith("attrib.") ? n.find((e) => e.name === i)?.data.enum?.map((e) => e.value.toString()) || [] : [];
|
|
315
|
-
}, N = (t, p, n, i, e) => {
|
|
316
|
-
const d = e(n, t.taskType);
|
|
297
|
+
import { linksToTableData as E } from "../utils/linksToTableData.es.js";
|
|
298
|
+
const O = "next-page", c = "_ungrouped", _ = "__", A = (t) => t ? Array.isArray(t) ? [...new Set(t.map((p) => p.toString()))] : [t.toString()] : [], N = (t, p, a, e, m) => {
|
|
299
|
+
const u = e?.get(p), s = a?.find((g) => g.value === p), f = s ? {
|
|
300
|
+
value: s.value,
|
|
301
|
+
label: s.label || s.value,
|
|
302
|
+
color: s.color,
|
|
303
|
+
icon: s.icon,
|
|
304
|
+
count: s.count,
|
|
305
|
+
img: t === "assignees" ? `/api/users/${s.value}/avatar` : void 0
|
|
306
|
+
} : { value: p, label: p };
|
|
307
|
+
return u ? (f.count = u.count, f.percentage = u.percentage) : e && m && (f.count = 0, f.percentage = void 0), f;
|
|
308
|
+
}, T = "_GROUP_", D = (t) => `${T}${t}`, dm = (t) => t.startsWith(T) ? t.slice(T.length) : null, cm = (t) => t.startsWith(T), W = (t, p, a = []) => {
|
|
309
|
+
const e = t.id.replace("attrib.", "");
|
|
310
|
+
return e === "status" ? p?.statuses?.map((m) => m.name) || [] : e === "taskType" ? p?.taskTypes?.map((m) => m.name) || [] : e === "folderType" ? p?.folderTypes?.map((m) => m.name) || [] : t.id.startsWith("attrib.") ? a.find((m) => m.name === e)?.data.enum?.map((m) => m.value.toString()) || [] : [];
|
|
311
|
+
}, $ = (t, p, a, e, m) => {
|
|
312
|
+
const u = m(a, t.taskType);
|
|
317
313
|
return {
|
|
318
|
-
id: t.id +
|
|
314
|
+
id: t.id + _ + p,
|
|
319
315
|
// unique id for the task in the folder
|
|
320
316
|
entityId: t.id,
|
|
321
|
-
entityType:
|
|
317
|
+
entityType: a,
|
|
322
318
|
parentId: t.folderId,
|
|
323
319
|
folderId: t.folderId,
|
|
324
320
|
name: t.name || "",
|
|
325
321
|
label: t.label || t.name || "",
|
|
326
|
-
icon:
|
|
327
|
-
color:
|
|
322
|
+
icon: u?.icon || null,
|
|
323
|
+
color: u?.color || null,
|
|
328
324
|
status: t.status,
|
|
329
325
|
assignees: t.assignees,
|
|
330
326
|
tags: t.tags,
|
|
@@ -338,116 +334,148 @@ const S = "next-page", l = "_ungrouped", D = "__", w = (t) => t ? Array.isArray(
|
|
|
338
334
|
createdAt: t.createdAt,
|
|
339
335
|
updatedAt: t.updatedAt,
|
|
340
336
|
hasReviewables: t.hasReviewables || !1,
|
|
341
|
-
links:
|
|
342
|
-
folderTypes:
|
|
343
|
-
productTypes: Object.values(
|
|
344
|
-
taskTypes:
|
|
337
|
+
links: E(t.links, a, {
|
|
338
|
+
folderTypes: e?.folderTypes || [],
|
|
339
|
+
productTypes: Object.values(e.productTypes) || [],
|
|
340
|
+
taskTypes: e?.taskTypes || []
|
|
345
341
|
}),
|
|
346
342
|
subtasks: t.subtasks || [],
|
|
347
343
|
latestComments: t.latestComments || []
|
|
348
344
|
};
|
|
349
|
-
},
|
|
345
|
+
}, fm = ({
|
|
350
346
|
entities: t,
|
|
351
347
|
entityType: p,
|
|
352
|
-
groups:
|
|
353
|
-
attribFields:
|
|
354
|
-
showEmpty:
|
|
355
|
-
groupRowFunc:
|
|
348
|
+
groups: a = [],
|
|
349
|
+
attribFields: e,
|
|
350
|
+
showEmpty: m,
|
|
351
|
+
groupRowFunc: u,
|
|
356
352
|
// for versions etc
|
|
353
|
+
groupCounts: s,
|
|
354
|
+
groupCountsComplete: f
|
|
357
355
|
}) => {
|
|
358
|
-
const
|
|
359
|
-
(
|
|
360
|
-
const
|
|
356
|
+
const g = S(), I = P({ projectInfo: g }), b = x(
|
|
357
|
+
(n, l) => {
|
|
358
|
+
const v = u ? u(n) : $(n, l, p, g, I);
|
|
361
359
|
return {
|
|
362
|
-
...
|
|
363
|
-
id:
|
|
360
|
+
...v,
|
|
361
|
+
id: n.id + _ + l,
|
|
364
362
|
// unique id for the task in the group
|
|
365
|
-
subRows:
|
|
363
|
+
subRows: v.subRows || []
|
|
366
364
|
};
|
|
367
365
|
},
|
|
368
|
-
[
|
|
366
|
+
[u, I, p, g]
|
|
369
367
|
);
|
|
370
|
-
return (
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
const o
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
subRows: [],
|
|
391
|
-
label: "Ungrouped",
|
|
392
|
-
group: { value: l, label: "Ungrouped" },
|
|
393
|
-
links: {}
|
|
394
|
-
}, u.set(l, m)), m;
|
|
395
|
-
};
|
|
396
|
-
(s.id === "tags" || s.id === "assignees" || s.id.startsWith("attrib.")) && v();
|
|
397
|
-
for (const [m, o] of t) {
|
|
398
|
-
if (o.entityType !== p) continue;
|
|
399
|
-
let a = [];
|
|
400
|
-
if (s.id.startsWith("attrib.")) {
|
|
401
|
-
const r = s.id.split(".")[1];
|
|
402
|
-
a = w(o.attrib?.[r]);
|
|
403
|
-
} else s.id === "folderType" && "folder" in o ? a = w(
|
|
404
|
-
o.folder?.folderType
|
|
405
|
-
) : a = w(o[s.id]);
|
|
406
|
-
a.length === 0 && v().subRows?.push(b(o, l));
|
|
407
|
-
for (const r of a) {
|
|
408
|
-
const R = u.get(r);
|
|
409
|
-
R ? R.subRows?.push(b(o, r)) : v().subRows?.push(b(o, l));
|
|
368
|
+
return x(
|
|
369
|
+
(n) => {
|
|
370
|
+
const l = /* @__PURE__ */ new Map();
|
|
371
|
+
for (const o of a) {
|
|
372
|
+
const i = o.value?.toString(), r = D(i), d = N(
|
|
373
|
+
n.id,
|
|
374
|
+
i,
|
|
375
|
+
a,
|
|
376
|
+
s,
|
|
377
|
+
f
|
|
378
|
+
);
|
|
379
|
+
l.set(i, {
|
|
380
|
+
id: r,
|
|
381
|
+
name: i,
|
|
382
|
+
entityType: "group",
|
|
383
|
+
subRows: [],
|
|
384
|
+
label: d.label,
|
|
385
|
+
group: d,
|
|
386
|
+
links: {}
|
|
387
|
+
});
|
|
410
388
|
}
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
389
|
+
const v = D(c), G = () => {
|
|
390
|
+
let o = l.get(c);
|
|
391
|
+
if (!o) {
|
|
392
|
+
const i = s?.get(c);
|
|
393
|
+
o = {
|
|
394
|
+
id: v,
|
|
395
|
+
name: "Ungrouped",
|
|
396
|
+
entityType: "group",
|
|
397
|
+
subRows: [],
|
|
398
|
+
label: "Ungrouped",
|
|
399
|
+
group: {
|
|
400
|
+
value: c,
|
|
401
|
+
label: "Ungrouped",
|
|
402
|
+
count: i?.count,
|
|
403
|
+
percentage: i?.percentage
|
|
404
|
+
},
|
|
405
|
+
links: {}
|
|
406
|
+
}, l.set(c, o);
|
|
407
|
+
}
|
|
408
|
+
return o;
|
|
409
|
+
};
|
|
410
|
+
(n.id === "tags" || n.id === "assignees" || n.id.startsWith("attrib.")) && G();
|
|
411
|
+
for (const [, o] of t) {
|
|
412
|
+
if (o.entityType !== p) continue;
|
|
413
|
+
let i = [];
|
|
414
|
+
if (n.id.startsWith("attrib.")) {
|
|
415
|
+
const r = n.id.split(".")[1];
|
|
416
|
+
i = A(o.attrib?.[r]);
|
|
417
|
+
} else n.id === "folderType" && "folder" in o ? i = A(
|
|
418
|
+
o.folder?.folderType
|
|
419
|
+
) : i = A(o[n.id]);
|
|
420
|
+
i.length === 0 && G().subRows?.push(b(o, c));
|
|
421
|
+
for (const r of i) {
|
|
422
|
+
const d = l.get(r);
|
|
423
|
+
d ? d.subRows?.push(b(o, r)) : G().subRows?.push(
|
|
424
|
+
b(o, c)
|
|
425
|
+
);
|
|
426
|
+
}
|
|
427
|
+
if ("groups" in o && Array.isArray(o.groups)) {
|
|
428
|
+
for (const r of o.groups)
|
|
429
|
+
if (r.hasNextPage && l.has(r.value)) {
|
|
430
|
+
const y = l.get(r.value);
|
|
431
|
+
y && y.subRows?.push({
|
|
432
|
+
id: `${r.value}-next-page`,
|
|
433
|
+
name: "Load more tasks...",
|
|
434
|
+
entityType: O,
|
|
435
|
+
subRows: [],
|
|
436
|
+
label: `Next page for ${r.value}`,
|
|
437
|
+
group: { value: r.value, label: r.value },
|
|
438
|
+
links: {}
|
|
439
|
+
});
|
|
440
|
+
}
|
|
441
|
+
}
|
|
425
442
|
}
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
443
|
+
const R = Array.from(l.values()), h = W(n, g, e), w = n.desc ? -1 : 1;
|
|
444
|
+
R.sort((o, i) => {
|
|
445
|
+
if (o.group?.value === c) return 1;
|
|
446
|
+
if (i.group?.value === c) return -1;
|
|
447
|
+
if (h.length) {
|
|
448
|
+
const r = h.indexOf(o.group?.value || ""), d = h.indexOf(i.group?.value || "");
|
|
449
|
+
return r !== -1 && d !== -1 ? (r - d) * w : r !== -1 ? -1 : d !== -1 ? 1 : (o.group?.label?.localeCompare(i.group?.label || "") || 0) * w;
|
|
450
|
+
} else
|
|
451
|
+
return (o.group?.label?.localeCompare(i.group?.label || "") || 0) * w;
|
|
452
|
+
});
|
|
453
|
+
const U = R.filter(
|
|
454
|
+
(o) => (o.group?.count ?? 0) > 0 || (o.subRows?.length ?? 0) > 0 || o.group?.value === c
|
|
455
|
+
);
|
|
456
|
+
return m ? R : U;
|
|
457
|
+
},
|
|
458
|
+
[
|
|
459
|
+
t,
|
|
460
|
+
p,
|
|
461
|
+
a,
|
|
462
|
+
e,
|
|
463
|
+
m,
|
|
464
|
+
s,
|
|
465
|
+
f,
|
|
466
|
+
b,
|
|
467
|
+
g
|
|
468
|
+
]
|
|
469
|
+
);
|
|
442
470
|
};
|
|
443
471
|
export {
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
472
|
+
T as GROUP_BY_ID,
|
|
473
|
+
O as NEXT_PAGE_ID,
|
|
474
|
+
_ as ROW_ID_SEPARATOR,
|
|
475
|
+
c as UNGROUPED_VALUE,
|
|
476
|
+
D as buildGroupId,
|
|
477
|
+
fm as default,
|
|
478
|
+
cm as isGroupId,
|
|
479
|
+
dm as parseGroupId
|
|
452
480
|
};
|
|
453
481
|
//# sourceMappingURL=useBuildGroupByTableData.es.js.map
|
package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBuildGroupByTableData.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.ts"],"sourcesContent":["// based on the groupBy field we take a flat list of items and group them\n// each group is a root node with subItems as the grouped items\n// any leftover items that do not match the groupBy field are added as a separate group (\"Ungrouped\")\n\nimport { EntityGroup } from '@shared/api'\nimport { TableGroupBy } from '../context'\nimport { EditorTaskNode, EntitiesMap, EntityMap, ProjectTableAttribute, TableRow } from '../types'\nimport { useGetEntityTypeData } from './useGetEntityTypeData'\nimport { useCallback } from 'react'\nimport { linksToTableData } from '../utils'\nimport { ProjectModelWithProducts, useProjectContext } from '@shared/context'\nexport type GroupByEntityType = 'task' | 'folder' | 'version' | 'product'\n\nexport type GroupData = {\n value: string\n label: string\n color?: string\n icon?: string\n img?: string\n count?: number\n}\n\nexport const NEXT_PAGE_ID = 'next-page'\nexport const UNGROUPED_VALUE = '_ungrouped'\nexport const ROW_ID_SEPARATOR = '__'\n\nconst valueToStringArray = (value?: any): string[] =>\n value\n ? Array.isArray(value)\n ? [...new Set(value.map((v) => v.toString()))] // dedup so an entity can't land in the same group twice (keeps row.id unique)\n : [value.toString()]\n : []\n\n// get group label, color and icon\nconst getGroupData = (groupById: string, groupValue: string, groups?: EntityGroup[]): GroupData => {\n if (!groups)\n return {\n value: groupValue,\n label: groupValue,\n }\n\n const group = groups.find((g) => g.value === groupValue)\n if (!group) {\n return {\n value: groupValue,\n label: groupValue,\n }\n } else {\n return {\n value: group.value,\n label: group.label || group.value,\n color: group.color,\n icon: group.icon,\n count: group.count,\n img: groupById === 'assignees' ? `/api/users/${group.value}/avatar` : undefined,\n }\n }\n}\n\nexport const GROUP_BY_ID = '_GROUP_'\nexport const buildGroupId = (value: string) => `${GROUP_BY_ID}${value}`\nexport const parseGroupId = (groupId: string): string | null => {\n if (!groupId.startsWith(GROUP_BY_ID)) return null\n return groupId.slice(GROUP_BY_ID.length) // +1 for the underscore\n}\nexport const isGroupId = (id: string): boolean => id.startsWith(GROUP_BY_ID)\n\ntype BuildGroupByTableProps = {\n entities: EntitiesMap\n entityType: string\n groups?: EntityGroup[]\n attribFields: ProjectTableAttribute[]\n showEmpty?: boolean\n groupRowFunc?: (node: any) => TableRow\n}\n\n// get sorting ids based on the groupBy field\nconst getSortingIds = (\n groupBy: TableGroupBy,\n project?: ProjectModelWithProducts,\n attribFields: ProjectTableAttribute[] = [],\n): string[] => {\n const attributeId = groupBy.id.replace('attrib.', '')\n\n // for status, taskType, folderType use project data order\n if (attributeId === 'status') {\n return project?.statuses?.map((s) => s.name) || []\n } else if (attributeId === 'taskType') {\n return project?.taskTypes?.map((t) => t.name) || []\n } else if (attributeId === 'folderType') {\n return project?.folderTypes?.map((f) => f.name) || []\n } else if (groupBy.id.startsWith('attrib.')) {\n // for other enum attributes, use the enum values order\n return (\n attribFields\n .find((field) => field.name === attributeId)\n ?.data.enum?.map((e) => e.value.toString()) || []\n )\n } else return []\n}\n\nconst defaultEntityToGroupRow = (\n task: EditorTaskNode,\n group: string | undefined,\n entityType: string,\n project: ProjectModelWithProducts,\n getEntityTypeData: ReturnType<typeof useGetEntityTypeData>,\n): TableRow & { subRows: TableRow[] } => {\n const typeData = getEntityTypeData(entityType, task.taskType)\n return {\n id: task.id + ROW_ID_SEPARATOR + group, // unique id for the task in the folder\n entityId: task.id,\n entityType: entityType,\n parentId: task.folderId,\n folderId: task.folderId,\n name: task.name || '',\n label: task.label || task.name || '',\n icon: typeData?.icon || null,\n color: typeData?.color || null,\n status: task.status,\n assignees: task.assignees,\n tags: task.tags,\n img: null,\n subRows: [],\n subType: task.taskType || null,\n attrib: task.attrib,\n ownAttrib: task.ownAttrib,\n parents: task.parents || [],\n folder: task.parents?.[task.parents.length - 1] || undefined,\n createdAt: task.createdAt,\n updatedAt: task.updatedAt,\n hasReviewables: task.hasReviewables || false,\n links: linksToTableData(task.links, entityType, {\n folderTypes: project?.folderTypes || [],\n productTypes: Object.values(project.productTypes) || [],\n taskTypes: project?.taskTypes || [],\n }),\n subtasks: task.subtasks || [],\n latestComments: task.latestComments || [],\n }\n}\n\nconst useBuildGroupByTableData = ({\n entities,\n entityType,\n groups = [],\n attribFields,\n showEmpty,\n groupRowFunc, // for versions etc\n}: BuildGroupByTableProps) => {\n const project = useProjectContext()\n const getEntityTypeData = useGetEntityTypeData({ projectInfo: project })\n\n const entityToGroupRow = useCallback(\n (task: EditorTaskNode, group?: string): TableRow & { subRows: TableRow[] } => {\n // Use provided groupRowFunc or fall back to default\n const baseRow = groupRowFunc\n ? groupRowFunc(task)\n : defaultEntityToGroupRow(task, group, entityType, project, getEntityTypeData)\n\n // Ensure group-specific fields are set\n return {\n ...baseRow,\n id: task.id + ROW_ID_SEPARATOR + group, // unique id for the task in the group\n subRows: baseRow.subRows || [],\n }\n },\n [groupRowFunc, getEntityTypeData, entityType, project],\n )\n\n const buildGroupByTableData = (groupBy: TableGroupBy): TableRow[] => {\n const groupsMap = new Map<string, TableRow>()\n\n for (const group of groups) {\n const groupValue = group.value?.toString() as string\n const groupId = buildGroupId(groupValue)\n const groupData = getGroupData(groupBy.id, groupValue, groups)\n groupsMap.set(groupValue, {\n id: groupId,\n name: groupValue,\n entityType: 'group',\n subRows: [],\n label: groupData.label,\n group: groupData,\n links: {},\n })\n }\n\n const ungroupedId = buildGroupId(UNGROUPED_VALUE)\n // gets the \"Ungrouped\" group, creating it if it doesn't exist\n const getUnGroupedGroup = () => {\n let ungroupedGroup = groupsMap.get(UNGROUPED_VALUE)\n if (!ungroupedGroup) {\n ungroupedGroup = {\n id: ungroupedId,\n name: 'Ungrouped',\n entityType: 'group',\n subRows: [],\n label: 'Ungrouped',\n group: { value: UNGROUPED_VALUE, label: 'Ungrouped' },\n links: {},\n }\n // create ungrouped group if it doesn't exist\n groupsMap.set(UNGROUPED_VALUE, ungroupedGroup)\n }\n return ungroupedGroup\n }\n\n const canHaveUngrouped =\n groupBy.id === 'tags' || groupBy.id === 'assignees' || groupBy.id.startsWith('attrib.')\n if (canHaveUngrouped) getUnGroupedGroup()\n\n for (const [id, entity] of entities) {\n // if the entity is not of the specified type, skip it\n if (entity.entityType !== entityType) continue\n // add entities to specific group\n let groupValues: string[] = []\n if (groupBy.id.startsWith('attrib.')) {\n // for attribute based grouping, get the value of the attribute\n const attributeId = groupBy.id.split('.')[1]\n groupValues = valueToStringArray(entity.attrib?.[attributeId])\n } else if (groupBy.id === 'folderType' && 'folder' in entity) {\n // folderType is nested under folder for task entities (from TaskPropsFragment)\n groupValues = valueToStringArray(\n (entity as EditorTaskNode & { folder?: { folderType?: string } }).folder?.folderType,\n )\n } else {\n groupValues = valueToStringArray(entity[groupBy.id as keyof EntityMap])\n }\n\n // if there are no values, add to \"Ungrouped\" group\n if (groupValues.length === 0) {\n const ungroupedGroup = getUnGroupedGroup()\n ungroupedGroup.subRows?.push(entityToGroupRow(entity as EditorTaskNode, UNGROUPED_VALUE))\n }\n // for each group value, find it's group and add the entity to it\n // if we can't find the group, add it to \"Ungrouped\"\n for (const groupValue of groupValues) {\n const groupRow = groupsMap.get(groupValue)\n if (groupRow) {\n groupRow.subRows?.push(entityToGroupRow(entity as EditorTaskNode, groupValue))\n } else {\n const ungroupedGroup = getUnGroupedGroup()\n ungroupedGroup.subRows?.push(entityToGroupRow(entity as EditorTaskNode, UNGROUPED_VALUE))\n }\n }\n\n // for groups metadata on entity, check if there is a next page\n if ('groups' in entity && Array.isArray(entity.groups)) {\n for (const group of entity.groups) {\n const hasNextPageGroup = group.hasNextPage\n if (hasNextPageGroup && groupsMap.has(group.value)) {\n // add a next page row to the group\n const groupRow = groupsMap.get(group.value)\n if (groupRow) {\n groupRow.subRows?.push({\n id: `${group.value}-next-page`,\n name: `Load more tasks...`,\n entityType: NEXT_PAGE_ID,\n subRows: [],\n label: `Next page for ${group.value}`,\n group: { value: group.value, label: group.value },\n links: {},\n })\n }\n }\n }\n }\n }\n\n const groupsList = Array.from(groupsMap.values())\n\n const attribSortingIds = getSortingIds(groupBy, project, attribFields)\n\n // sort the groups by their label\n // if the group is an attribute with enum values, sort by the enum values\n const sortDirection = groupBy.desc ? -1 : 1\n groupsList.sort((a, b) => {\n if (a.group?.value === UNGROUPED_VALUE) return 1 // \"Ungrouped\" should always be last\n if (b.group?.value === UNGROUPED_VALUE) return -1 // \"Ungrouped\" should always be last\n if (attribSortingIds.length) {\n // sort by index of the enum value\n const indexA = attribSortingIds.indexOf(a.group?.value || '')\n const indexB = attribSortingIds.indexOf(b.group?.value || '')\n if (indexA !== -1 && indexB !== -1) {\n return (indexA - indexB) * sortDirection\n }\n if (indexA !== -1) return -1 // a is in the enum, b is not\n if (indexB !== -1) return 1 // b is in the enum, a is not\n // if both are not in the enum, sort by label\n return (a.group?.label?.localeCompare(b.group?.label || '') || 0) * sortDirection\n } else {\n // for other groupings, sort by the group label\n return (a.group?.label?.localeCompare(b.group?.label || '') || 0) * sortDirection\n }\n })\n\n // filter out empty groups — Ungrouped has no server count, keep it reachable\n const nonEmptyGroups = groupsList.filter(\n (group) =>\n (group.group?.count ?? 0) > 0 ||\n (group.subRows?.length ?? 0) > 0 ||\n group.group?.value === UNGROUPED_VALUE,\n )\n\n return showEmpty ? groupsList : nonEmptyGroups\n }\n\n return buildGroupByTableData\n}\n\nexport default useBuildGroupByTableData\n"],"names":["NEXT_PAGE_ID","UNGROUPED_VALUE","ROW_ID_SEPARATOR","valueToStringArray","value","v","getGroupData","groupById","groupValue","groups","group","g","GROUP_BY_ID","buildGroupId","parseGroupId","groupId","isGroupId","id","getSortingIds","groupBy","project","attribFields","attributeId","s","t","f","field","defaultEntityToGroupRow","task","entityType","getEntityTypeData","typeData","linksToTableData","useBuildGroupByTableData","entities","showEmpty","groupRowFunc","useProjectContext","useGetEntityTypeData","entityToGroupRow","useCallback","baseRow","groupsMap","groupData","ungroupedId","getUnGroupedGroup","ungroupedGroup","entity","groupValues","groupRow","groupsList","attribSortingIds","sortDirection","a","b","indexA","indexB","nonEmptyGroups"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useBuildGroupByTableData.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.ts"],"sourcesContent":["// based on the groupBy field we take a flat list of items and group them\n// each group is a root node with subItems as the grouped items\n// any leftover items that do not match the groupBy field are added as a separate group (\"Ungrouped\")\n\nimport type { GroupCountsMap } from '@shared/api'\nimport { EntityGroup } from '@shared/api'\nimport { TableGroupBy } from '../context'\nimport { EditorTaskNode, EntitiesMap, EntityMap, ProjectTableAttribute, TableRow } from '../types'\nimport { useGetEntityTypeData } from './useGetEntityTypeData'\nimport { useCallback } from 'react'\nimport { linksToTableData } from '../utils'\nimport { ProjectModelWithProducts, useProjectContext } from '@shared/context'\n\nexport type GroupByEntityType = 'task' | 'folder' | 'version' | 'product'\n\nexport type GroupData = {\n value: string\n label: string\n color?: string\n icon?: string\n img?: string\n count?: number\n percentage?: number\n}\n\nexport const NEXT_PAGE_ID = 'next-page'\nexport const UNGROUPED_VALUE = '_ungrouped'\nexport const ROW_ID_SEPARATOR = '__'\n\nconst valueToStringArray = (value?: any): string[] =>\n value\n ? Array.isArray(value)\n ? [...new Set(value.map((v) => v.toString()))] // dedup so an entity can't land in the same group twice (keeps row.id unique)\n : [value.toString()]\n : []\n\n// get group label, color and icon; overlay the filter-aware count + percentage\n// from groupCounts when available (falls back to the grouping endpoint count)\nconst getGroupData = (\n groupById: string,\n groupValue: string,\n groups?: EntityGroup[],\n groupCounts?: GroupCountsMap,\n groupCountsComplete?: boolean,\n): GroupData => {\n const stat = groupCounts?.get(groupValue)\n const group = groups?.find((g) => g.value === groupValue)\n\n const base: GroupData = group\n ? {\n value: group.value,\n label: group.label || group.value,\n color: group.color,\n icon: group.icon,\n count: group.count,\n img: groupById === 'assignees' ? `/api/users/${group.value}/avatar` : undefined,\n }\n : { value: groupValue, label: groupValue }\n\n if (stat) {\n base.count = stat.count\n base.percentage = stat.percentage\n } else if (groupCounts && groupCountsComplete) {\n // stats are authoritative: a named group absent from them truly has 0 matches\n base.count = 0\n base.percentage = undefined\n }\n return base\n}\n\nexport const GROUP_BY_ID = '_GROUP_'\nexport const buildGroupId = (value: string) => `${GROUP_BY_ID}${value}`\nexport const parseGroupId = (groupId: string): string | null => {\n if (!groupId.startsWith(GROUP_BY_ID)) return null\n return groupId.slice(GROUP_BY_ID.length) // +1 for the underscore\n}\nexport const isGroupId = (id: string): boolean => id.startsWith(GROUP_BY_ID)\n\ntype BuildGroupByTableProps = {\n entities: EntitiesMap\n entityType: string\n groups?: EntityGroup[]\n attribFields: ProjectTableAttribute[]\n showEmpty?: boolean\n groupRowFunc?: (node: any) => TableRow\n groupCounts?: GroupCountsMap\n groupCountsComplete?: boolean\n}\n\n// get sorting ids based on the groupBy field\nconst getSortingIds = (\n groupBy: TableGroupBy,\n project?: ProjectModelWithProducts,\n attribFields: ProjectTableAttribute[] = [],\n): string[] => {\n const attributeId = groupBy.id.replace('attrib.', '')\n\n // for status, taskType, folderType use project data order\n if (attributeId === 'status') {\n return project?.statuses?.map((s) => s.name) || []\n } else if (attributeId === 'taskType') {\n return project?.taskTypes?.map((t) => t.name) || []\n } else if (attributeId === 'folderType') {\n return project?.folderTypes?.map((f) => f.name) || []\n } else if (groupBy.id.startsWith('attrib.')) {\n // for other enum attributes, use the enum values order\n return (\n attribFields\n .find((field) => field.name === attributeId)\n ?.data.enum?.map((e) => e.value.toString()) || []\n )\n } else return []\n}\n\nconst defaultEntityToGroupRow = (\n task: EditorTaskNode,\n group: string | undefined,\n entityType: string,\n project: ProjectModelWithProducts,\n getEntityTypeData: ReturnType<typeof useGetEntityTypeData>,\n): TableRow & { subRows: TableRow[] } => {\n const typeData = getEntityTypeData(entityType, task.taskType)\n return {\n id: task.id + ROW_ID_SEPARATOR + group, // unique id for the task in the folder\n entityId: task.id,\n entityType: entityType,\n parentId: task.folderId,\n folderId: task.folderId,\n name: task.name || '',\n label: task.label || task.name || '',\n icon: typeData?.icon || null,\n color: typeData?.color || null,\n status: task.status,\n assignees: task.assignees,\n tags: task.tags,\n img: null,\n subRows: [],\n subType: task.taskType || null,\n attrib: task.attrib,\n ownAttrib: task.ownAttrib,\n parents: task.parents || [],\n folder: task.parents?.[task.parents.length - 1] || undefined,\n createdAt: task.createdAt,\n updatedAt: task.updatedAt,\n hasReviewables: task.hasReviewables || false,\n links: linksToTableData(task.links, entityType, {\n folderTypes: project?.folderTypes || [],\n productTypes: Object.values(project.productTypes) || [],\n taskTypes: project?.taskTypes || [],\n }),\n subtasks: task.subtasks || [],\n latestComments: task.latestComments || [],\n }\n}\n\nconst useBuildGroupByTableData = ({\n entities,\n entityType,\n groups = [],\n attribFields,\n showEmpty,\n groupRowFunc, // for versions etc\n groupCounts,\n groupCountsComplete,\n}: BuildGroupByTableProps) => {\n const project = useProjectContext()\n const getEntityTypeData = useGetEntityTypeData({ projectInfo: project })\n\n const entityToGroupRow = useCallback(\n (task: EditorTaskNode, group?: string): TableRow & { subRows: TableRow[] } => {\n // Use provided groupRowFunc or fall back to default\n const baseRow = groupRowFunc\n ? groupRowFunc(task)\n : defaultEntityToGroupRow(task, group, entityType, project, getEntityTypeData)\n\n // Ensure group-specific fields are set\n return {\n ...baseRow,\n id: task.id + ROW_ID_SEPARATOR + group, // unique id for the task in the group\n subRows: baseRow.subRows || [],\n }\n },\n [groupRowFunc, getEntityTypeData, entityType, project],\n )\n\n return useCallback(\n (groupBy: TableGroupBy): TableRow[] => {\n const groupsMap = new Map<string, TableRow>()\n\n for (const group of groups) {\n const groupValue = group.value?.toString() as string\n const groupId = buildGroupId(groupValue)\n const groupData = getGroupData(\n groupBy.id,\n groupValue,\n groups,\n groupCounts,\n groupCountsComplete,\n )\n groupsMap.set(groupValue, {\n id: groupId,\n name: groupValue,\n entityType: 'group',\n subRows: [],\n label: groupData.label,\n group: groupData,\n links: {},\n })\n }\n\n const ungroupedId = buildGroupId(UNGROUPED_VALUE)\n // gets the \"Ungrouped\" group, creating it if it doesn't exist\n const getUnGroupedGroup = () => {\n let ungroupedGroup = groupsMap.get(UNGROUPED_VALUE)\n if (!ungroupedGroup) {\n const stat = groupCounts?.get(UNGROUPED_VALUE)\n ungroupedGroup = {\n id: ungroupedId,\n name: 'Ungrouped',\n entityType: 'group',\n subRows: [],\n label: 'Ungrouped',\n group: {\n value: UNGROUPED_VALUE,\n label: 'Ungrouped',\n count: stat?.count,\n percentage: stat?.percentage,\n },\n links: {},\n }\n // create ungrouped group if it doesn't exist\n groupsMap.set(UNGROUPED_VALUE, ungroupedGroup)\n }\n return ungroupedGroup\n }\n\n const canHaveUngrouped =\n groupBy.id === 'tags' || groupBy.id === 'assignees' || groupBy.id.startsWith('attrib.')\n if (canHaveUngrouped) getUnGroupedGroup()\n\n for (const [, entity] of entities) {\n // if the entity is not of the specified type, skip it\n if (entity.entityType !== entityType) continue\n // add entities to specific group\n let groupValues: string[] = []\n if (groupBy.id.startsWith('attrib.')) {\n // for attribute based grouping, get the value of the attribute\n const attributeId = groupBy.id.split('.')[1]\n groupValues = valueToStringArray(entity.attrib?.[attributeId])\n } else if (groupBy.id === 'folderType' && 'folder' in entity) {\n // folderType is nested under folder for task entities (from TaskPropsFragment)\n groupValues = valueToStringArray(\n (entity as EditorTaskNode & { folder?: { folderType?: string } }).folder?.folderType,\n )\n } else {\n groupValues = valueToStringArray(entity[groupBy.id as keyof EntityMap])\n }\n\n // if there are no values, add to \"Ungrouped\" group\n if (groupValues.length === 0) {\n const ungroupedGroup = getUnGroupedGroup()\n ungroupedGroup.subRows?.push(entityToGroupRow(entity as EditorTaskNode, UNGROUPED_VALUE))\n }\n // for each group value, find it's group and add the entity to it\n // if we can't find the group, add it to \"Ungrouped\"\n for (const groupValue of groupValues) {\n const groupRow = groupsMap.get(groupValue)\n if (groupRow) {\n groupRow.subRows?.push(entityToGroupRow(entity as EditorTaskNode, groupValue))\n } else {\n const ungroupedGroup = getUnGroupedGroup()\n ungroupedGroup.subRows?.push(\n entityToGroupRow(entity as EditorTaskNode, UNGROUPED_VALUE),\n )\n }\n }\n\n // for groups metadata on entity, check if there is a next page\n if ('groups' in entity && Array.isArray(entity.groups)) {\n for (const group of entity.groups) {\n const hasNextPageGroup = group.hasNextPage\n if (hasNextPageGroup && groupsMap.has(group.value)) {\n // add a next page row to the group\n const groupRow = groupsMap.get(group.value)\n if (groupRow) {\n groupRow.subRows?.push({\n id: `${group.value}-next-page`,\n name: `Load more tasks...`,\n entityType: NEXT_PAGE_ID,\n subRows: [],\n label: `Next page for ${group.value}`,\n group: { value: group.value, label: group.value },\n links: {},\n })\n }\n }\n }\n }\n }\n\n const groupsList = Array.from(groupsMap.values())\n\n const attribSortingIds = getSortingIds(groupBy, project, attribFields)\n\n // sort the groups by their label\n // if the group is an attribute with enum values, sort by the enum values\n const sortDirection = groupBy.desc ? -1 : 1\n groupsList.sort((a, b) => {\n if (a.group?.value === UNGROUPED_VALUE) return 1 // \"Ungrouped\" should always be last\n if (b.group?.value === UNGROUPED_VALUE) return -1 // \"Ungrouped\" should always be last\n if (attribSortingIds.length) {\n // sort by index of the enum value\n const indexA = attribSortingIds.indexOf(a.group?.value || '')\n const indexB = attribSortingIds.indexOf(b.group?.value || '')\n if (indexA !== -1 && indexB !== -1) {\n return (indexA - indexB) * sortDirection\n }\n if (indexA !== -1) return -1 // a is in the enum, b is not\n if (indexB !== -1) return 1 // b is in the enum, a is not\n // if both are not in the enum, sort by label\n return (a.group?.label?.localeCompare(b.group?.label || '') || 0) * sortDirection\n } else {\n // for other groupings, sort by the group label\n return (a.group?.label?.localeCompare(b.group?.label || '') || 0) * sortDirection\n }\n })\n\n // filter out empty groups — Ungrouped has no server count, keep it reachable\n const nonEmptyGroups = groupsList.filter(\n (group) =>\n (group.group?.count ?? 0) > 0 ||\n (group.subRows?.length ?? 0) > 0 ||\n group.group?.value === UNGROUPED_VALUE,\n )\n\n return showEmpty ? groupsList : nonEmptyGroups\n },\n [\n entities,\n entityType,\n groups,\n attribFields,\n showEmpty,\n groupCounts,\n groupCountsComplete,\n entityToGroupRow,\n project,\n ],\n )\n}\n\nexport default useBuildGroupByTableData\n"],"names":["NEXT_PAGE_ID","UNGROUPED_VALUE","ROW_ID_SEPARATOR","valueToStringArray","value","v","getGroupData","groupById","groupValue","groups","groupCounts","groupCountsComplete","stat","group","base","GROUP_BY_ID","buildGroupId","parseGroupId","groupId","isGroupId","id","getSortingIds","groupBy","project","attribFields","attributeId","s","t","f","field","e","defaultEntityToGroupRow","task","entityType","getEntityTypeData","typeData","linksToTableData","useBuildGroupByTableData","entities","showEmpty","groupRowFunc","useProjectContext","useGetEntityTypeData","entityToGroupRow","useCallback","baseRow","groupsMap","groupData","ungroupedId","getUnGroupedGroup","ungroupedGroup","entity","groupValues","groupRow","groupsList","attribSortingIds","sortDirection","a","b","indexA","indexB","nonEmptyGroups"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBO,MAAMA,IAAe,aACfC,IAAkB,cAClBC,IAAmB,MAE1BC,IAAqB,CAACC,MAC1BA,IACI,MAAM,QAAQA,CAAK,IACjB,CAAC,GAAG,IAAI,IAAIA,EAAM,IAAI,CAACC,MAAMA,EAAE,SAAA,CAAU,CAAC,CAAC,IAC3C,CAACD,EAAM,SAAA,CAAU,IACnB,CAAA,GAIAE,IAAe,CACnBC,GACAC,GACAC,GACAC,GACAC,MACc;AACd,QAAMC,IAAOF,GAAa,IAAIF,CAAU,GAClCK,IAAQJ,GAAQ,KAAK,CAAC,MAAM,EAAE,UAAUD,CAAU,GAElDM,IAAkBD,IACpB;AAAA,IACE,OAAOA,EAAM;AAAA,IACb,OAAOA,EAAM,SAASA,EAAM;AAAA,IAC5B,OAAOA,EAAM;AAAA,IACb,MAAMA,EAAM;AAAA,IACZ,OAAOA,EAAM;AAAA,IACb,KAAKN,MAAc,cAAc,cAAcM,EAAM,KAAK,YAAY;AAAA,EAAA,IAExE,EAAE,OAAOL,GAAY,OAAOA,EAAA;AAEhC,SAAII,KACFE,EAAK,QAAQF,EAAK,OAClBE,EAAK,aAAaF,EAAK,cACdF,KAAeC,MAExBG,EAAK,QAAQ,GACbA,EAAK,aAAa,SAEbA;AACT,GAEaC,IAAc,WACdC,IAAe,CAACZ,MAAkB,GAAGW,CAAW,GAAGX,CAAK,IACxDa,KAAe,CAACC,MACtBA,EAAQ,WAAWH,CAAW,IAC5BG,EAAQ,MAAMH,EAAY,MAAM,IADM,MAGlCI,KAAY,CAACC,MAAwBA,EAAG,WAAWL,CAAW,GAcrEM,IAAgB,CACpBC,GACAC,GACAC,IAAwC,CAAA,MAC3B;AACb,QAAMC,IAAcH,EAAQ,GAAG,QAAQ,WAAW,EAAE;AAGpD,SAAIG,MAAgB,WACXF,GAAS,UAAU,IAAI,CAACG,MAAMA,EAAE,IAAI,KAAK,CAAA,IACvCD,MAAgB,aAClBF,GAAS,WAAW,IAAI,CAACI,MAAMA,EAAE,IAAI,KAAK,CAAA,IACxCF,MAAgB,eAClBF,GAAS,aAAa,IAAI,CAACK,MAAMA,EAAE,IAAI,KAAK,CAAA,IAC1CN,EAAQ,GAAG,WAAW,SAAS,IAGtCE,EACG,KAAK,CAACK,MAAUA,EAAM,SAASJ,CAAW,GACzC,KAAK,MAAM,IAAI,CAACK,MAAMA,EAAE,MAAM,SAAA,CAAU,KAAK,CAAA,IAEvC,CAAA;AAChB,GAEMC,IAA0B,CAC9BC,GACAnB,GACAoB,GACAV,GACAW,MACuC;AACvC,QAAMC,IAAWD,EAAkBD,GAAYD,EAAK,QAAQ;AAC5D,SAAO;AAAA,IACL,IAAIA,EAAK,KAAK9B,IAAmBW;AAAA;AAAA,IACjC,UAAUmB,EAAK;AAAA,IACf,YAAAC;AAAA,IACA,UAAUD,EAAK;AAAA,IACf,UAAUA,EAAK;AAAA,IACf,MAAMA,EAAK,QAAQ;AAAA,IACnB,OAAOA,EAAK,SAASA,EAAK,QAAQ;AAAA,IAClC,MAAMG,GAAU,QAAQ;AAAA,IACxB,OAAOA,GAAU,SAAS;AAAA,IAC1B,QAAQH,EAAK;AAAA,IACb,WAAWA,EAAK;AAAA,IAChB,MAAMA,EAAK;AAAA,IACX,KAAK;AAAA,IACL,SAAS,CAAA;AAAA,IACT,SAASA,EAAK,YAAY;AAAA,IAC1B,QAAQA,EAAK;AAAA,IACb,WAAWA,EAAK;AAAA,IAChB,SAASA,EAAK,WAAW,CAAA;AAAA,IACzB,QAAQA,EAAK,UAAUA,EAAK,QAAQ,SAAS,CAAC,KAAK;AAAA,IACnD,WAAWA,EAAK;AAAA,IAChB,WAAWA,EAAK;AAAA,IAChB,gBAAgBA,EAAK,kBAAkB;AAAA,IACvC,OAAOI,EAAiBJ,EAAK,OAAOC,GAAY;AAAA,MAC9C,aAAaV,GAAS,eAAe,CAAA;AAAA,MACrC,cAAc,OAAO,OAAOA,EAAQ,YAAY,KAAK,CAAA;AAAA,MACrD,WAAWA,GAAS,aAAa,CAAA;AAAA,IAAC,CACnC;AAAA,IACD,UAAUS,EAAK,YAAY,CAAA;AAAA,IAC3B,gBAAgBA,EAAK,kBAAkB,CAAA;AAAA,EAAC;AAE5C,GAEMK,KAA2B,CAAC;AAAA,EAChC,UAAAC;AAAA,EACA,YAAAL;AAAA,EACA,QAAAxB,IAAS,CAAA;AAAA,EACT,cAAAe;AAAA,EACA,WAAAe;AAAA,EACA,cAAAC;AAAA;AAAA,EACA,aAAA9B;AAAA,EACA,qBAAAC;AACF,MAA8B;AAC5B,QAAMY,IAAUkB,EAAA,GACVP,IAAoBQ,EAAqB,EAAE,aAAanB,GAAS,GAEjEoB,IAAmBC;AAAA,IACvB,CAACZ,GAAsBnB,MAAuD;AAE5E,YAAMgC,IAAUL,IACZA,EAAaR,CAAI,IACjBD,EAAwBC,GAAMnB,GAAOoB,GAAYV,GAASW,CAAiB;AAG/E,aAAO;AAAA,QACL,GAAGW;AAAA,QACH,IAAIb,EAAK,KAAK9B,IAAmBW;AAAA;AAAA,QACjC,SAASgC,EAAQ,WAAW,CAAA;AAAA,MAAC;AAAA,IAEjC;AAAA,IACA,CAACL,GAAcN,GAAmBD,GAAYV,CAAO;AAAA,EAAA;AAGvD,SAAOqB;AAAA,IACL,CAACtB,MAAsC;AACrC,YAAMwB,wBAAgB,IAAA;AAEtB,iBAAWjC,KAASJ,GAAQ;AAC1B,cAAMD,IAAaK,EAAM,OAAO,SAAA,GAC1BK,IAAUF,EAAaR,CAAU,GACjCuC,IAAYzC;AAAA,UAChBgB,EAAQ;AAAA,UACRd;AAAA,UACAC;AAAA,UACAC;AAAA,UACAC;AAAA,QAAA;AAEF,QAAAmC,EAAU,IAAItC,GAAY;AAAA,UACxB,IAAIU;AAAA,UACJ,MAAMV;AAAA,UACN,YAAY;AAAA,UACZ,SAAS,CAAA;AAAA,UACT,OAAOuC,EAAU;AAAA,UACjB,OAAOA;AAAA,UACP,OAAO,CAAA;AAAA,QAAC,CACT;AAAA,MACH;AAEA,YAAMC,IAAchC,EAAaf,CAAe,GAE1CgD,IAAoB,MAAM;AAC9B,YAAIC,IAAiBJ,EAAU,IAAI7C,CAAe;AAClD,YAAI,CAACiD,GAAgB;AACnB,gBAAMtC,IAAOF,GAAa,IAAIT,CAAe;AAC7C,UAAAiD,IAAiB;AAAA,YACf,IAAIF;AAAA,YACJ,MAAM;AAAA,YACN,YAAY;AAAA,YACZ,SAAS,CAAA;AAAA,YACT,OAAO;AAAA,YACP,OAAO;AAAA,cACL,OAAO/C;AAAA,cACP,OAAO;AAAA,cACP,OAAOW,GAAM;AAAA,cACb,YAAYA,GAAM;AAAA,YAAA;AAAA,YAEpB,OAAO,CAAA;AAAA,UAAC,GAGVkC,EAAU,IAAI7C,GAAiBiD,CAAc;AAAA,QAC/C;AACA,eAAOA;AAAA,MACT;AAIA,OADE5B,EAAQ,OAAO,UAAUA,EAAQ,OAAO,eAAeA,EAAQ,GAAG,WAAW,SAAS,MAClE2B,EAAA;AAEtB,iBAAW,CAAA,EAAGE,CAAM,KAAKb,GAAU;AAEjC,YAAIa,EAAO,eAAelB,EAAY;AAEtC,YAAImB,IAAwB,CAAA;AAC5B,YAAI9B,EAAQ,GAAG,WAAW,SAAS,GAAG;AAEpC,gBAAMG,IAAcH,EAAQ,GAAG,MAAM,GAAG,EAAE,CAAC;AAC3C,UAAA8B,IAAcjD,EAAmBgD,EAAO,SAAS1B,CAAW,CAAC;AAAA,QAC/D,MAAA,CAAWH,EAAQ,OAAO,gBAAgB,YAAY6B,IAEpDC,IAAcjD;AAAA,UACXgD,EAAiE,QAAQ;AAAA,QAAA,IAG5EC,IAAcjD,EAAmBgD,EAAO7B,EAAQ,EAAqB,CAAC;AAIxE,QAAI8B,EAAY,WAAW,KACFH,EAAA,EACR,SAAS,KAAKN,EAAiBQ,GAA0BlD,CAAe,CAAC;AAI1F,mBAAWO,KAAc4C,GAAa;AACpC,gBAAMC,IAAWP,EAAU,IAAItC,CAAU;AACzC,UAAI6C,IACFA,EAAS,SAAS,KAAKV,EAAiBQ,GAA0B3C,CAAU,CAAC,IAEtDyC,EAAA,EACR,SAAS;AAAA,YACtBN,EAAiBQ,GAA0BlD,CAAe;AAAA,UAAA;AAAA,QAGhE;AAGA,YAAI,YAAYkD,KAAU,MAAM,QAAQA,EAAO,MAAM;AACnD,qBAAWtC,KAASsC,EAAO;AAEzB,gBADyBtC,EAAM,eACPiC,EAAU,IAAIjC,EAAM,KAAK,GAAG;AAElD,oBAAMwC,IAAWP,EAAU,IAAIjC,EAAM,KAAK;AAC1C,cAAIwC,KACFA,EAAS,SAAS,KAAK;AAAA,gBACrB,IAAI,GAAGxC,EAAM,KAAK;AAAA,gBAClB,MAAM;AAAA,gBACN,YAAYb;AAAA,gBACZ,SAAS,CAAA;AAAA,gBACT,OAAO,iBAAiBa,EAAM,KAAK;AAAA,gBACnC,OAAO,EAAE,OAAOA,EAAM,OAAO,OAAOA,EAAM,MAAA;AAAA,gBAC1C,OAAO,CAAA;AAAA,cAAC,CACT;AAAA,YAEL;AAAA;AAAA,MAGN;AAEA,YAAMyC,IAAa,MAAM,KAAKR,EAAU,QAAQ,GAE1CS,IAAmBlC,EAAcC,GAASC,GAASC,CAAY,GAI/DgC,IAAgBlC,EAAQ,OAAO,KAAK;AAC1C,MAAAgC,EAAW,KAAK,CAACG,GAAGC,MAAM;AACxB,YAAID,EAAE,OAAO,UAAUxD,EAAiB,QAAO;AAC/C,YAAIyD,EAAE,OAAO,UAAUzD,EAAiB,QAAO;AAC/C,YAAIsD,EAAiB,QAAQ;AAE3B,gBAAMI,IAASJ,EAAiB,QAAQE,EAAE,OAAO,SAAS,EAAE,GACtDG,IAASL,EAAiB,QAAQG,EAAE,OAAO,SAAS,EAAE;AAC5D,iBAAIC,MAAW,MAAMC,MAAW,MACtBD,IAASC,KAAUJ,IAEzBG,MAAW,KAAW,KACtBC,MAAW,KAAW,KAElBH,EAAE,OAAO,OAAO,cAAcC,EAAE,OAAO,SAAS,EAAE,KAAK,KAAKF;AAAA,QACtE;AAEE,kBAAQC,EAAE,OAAO,OAAO,cAAcC,EAAE,OAAO,SAAS,EAAE,KAAK,KAAKF;AAAA,MAExE,CAAC;AAGD,YAAMK,IAAiBP,EAAW;AAAA,QAChC,CAACzC,OACEA,EAAM,OAAO,SAAS,KAAK,MAC3BA,EAAM,SAAS,UAAU,KAAK,KAC/BA,EAAM,OAAO,UAAUZ;AAAA,MAAA;AAG3B,aAAOsC,IAAYe,IAAaO;AAAA,IAClC;AAAA,IACA;AAAA,MACEvB;AAAA,MACAL;AAAA,MACAxB;AAAA,MACAe;AAAA,MACAe;AAAA,MACA7B;AAAA,MACAC;AAAA,MACAgC;AAAA,MACApB;AAAA,IAAA;AAAA,EACF;AAEJ;"}
|