@ynput/ayon-frontend-shared 0.3.32 → 0.3.34
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 +26 -24
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +218 -214
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +19 -18
- package/dist/Slicer.es.js.map +1 -1
- package/dist/_virtual/index.cjs14.js +1 -1
- package/dist/_virtual/index.cjs15.js +1 -1
- package/dist/_virtual/index.cjs19.js +1 -1
- package/dist/_virtual/index.cjs4.js +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.cjs6.js +1 -1
- package/dist/_virtual/index.cjs8.js +1 -1
- package/dist/_virtual/index.cjs9.js +1 -1
- package/dist/_virtual/index.es10.js +2 -2
- package/dist/_virtual/index.es11.js +2 -2
- package/dist/_virtual/index.es13.js +2 -2
- package/dist/_virtual/index.es14.js +2 -5
- package/dist/_virtual/index.es14.js.map +1 -1
- package/dist/_virtual/index.es15.js +2 -2
- package/dist/_virtual/index.es16.js +2 -2
- package/dist/_virtual/index.es17.js +2 -2
- package/dist/_virtual/index.es18.js +2 -2
- package/dist/_virtual/index.es19.js +2 -2
- package/dist/_virtual/index.es4.js +5 -2
- package/dist/_virtual/index.es4.js.map +1 -1
- package/dist/_virtual/index.es5.js +2 -5
- package/dist/_virtual/index.es5.js.map +1 -1
- package/dist/_virtual/index.es6.js +2 -2
- package/dist/_virtual/index.es8.js +2 -2
- package/dist/_virtual/index.es9.js +5 -2
- package/dist/_virtual/index.es9.js.map +1 -1
- package/dist/api.cjs.js +1 -1
- package/dist/api.es.js +435 -430
- package/dist/api.es.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +83 -80
- package/dist/components.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +13 -11
- 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/error-codes/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime/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/@module-federation/runtime-core/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js.map +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/index.es.js +1 -1
- package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
- package/dist/shared/node_modules/prop-types/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.cjs.js.map +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.cjs.js.map +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.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js.map +1 -1
- package/dist/shared/src/api/base/client.es.js +1 -0
- package/dist/shared/src/api/base/client.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +104 -48
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +175 -115
- 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/getActivities.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.es.js +26 -24
- package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +6 -6
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js +2 -0
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js +68 -0
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js.map +1 -0
- package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -1
- package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/updateLists.es.js +73 -69
- package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +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 +60 -55
- package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.cjs.js +4 -4
- package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.es.js +11 -11
- package/dist/shared/src/api/queries/users/getUsers.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 +3 -2
- 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 +3 -2
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.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 +6 -4
- 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 +3 -2
- 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 +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.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 +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.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 +3 -2
- 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 +6 -4
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +6 -4
- 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 +3 -2
- 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 +5 -4
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
- package/dist/shared/src/components/LinksManager/AddNewLinks.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 +3 -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 +3 -2
- 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 +6 -4
- 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 +3 -2
- 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 +3 -2
- 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 +3 -2
- 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 +1 -0
- 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 +3 -2
- 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 +3 -2
- 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 +3 -2
- 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 +3 -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 +6 -4
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +8 -6
- 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 +3 -2
- 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 +6 -4
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +6 -4
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.es.js +6 -4
- 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 +3 -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 +6 -4
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +7 -5
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +6 -4
- 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 +3 -2
- 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 +6 -4
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js +2 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js +2 -0
- package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js.map +1 -0
- package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js +24 -0
- package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js.map +1 -0
- 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 +7 -6
- 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 +3 -2
- 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 +8 -6
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +6 -4
- 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 +3 -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 +3 -2
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.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 +6 -4
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +10 -8
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
- 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 +3 -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 +6 -4
- 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 +3 -2
- package/dist/shared/src/containers/Actions/Actions.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 +6 -4
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +6 -4
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +6 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +6 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +6 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +6 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +6 -4
- 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 +3 -2
- 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 +19 -17
- 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 +6 -4
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -3
- 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 +3 -2
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.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 +3 -2
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +6 -4
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +6 -4
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +6 -4
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +6 -4
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.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 +3 -2
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.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 +164 -146
- 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 +6 -4
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +131 -144
- 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 +6 -4
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js +3 -3
- package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityDate.es.js +39 -29
- package/dist/shared/src/containers/Feed/components/ActivityDate.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityItem.es.js +24 -20
- package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +345 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js +59 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js +65 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js.map +1 -0
- 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 +3 -2
- 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 +2 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +349 -290
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +89 -12
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +101 -19
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.es.js +34 -0
- package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.es.js.map +1 -0
- 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 +10 -8
- 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 +3 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.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 +3 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.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 +3 -2
- 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 +5 -3
- 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 +3 -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 +6 -5
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useCategoryData.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/hooks/useCategoryData.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/hooks/useCategoryData.es.js +27 -0
- package/dist/shared/src/containers/Feed/hooks/useCategoryData.es.js.map +1 -0
- 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 +88 -68
- 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 +3 -2
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js +113 -0
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js.map +1 -0
- 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 +6 -4
- package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js +6 -4
- 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 +6 -4
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +34 -32
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +6 -4
- 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 +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +5 -4
- 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 +6 -4
- 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 +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +93 -90
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.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 +3 -2
- 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 +9 -7
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +121 -104
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +178 -175
- 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 +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +6 -4
- 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 +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +20 -17
- 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 +6 -4
- 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 +3 -2
- 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 +17 -15
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +61 -61
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.es.js +15 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.es.js.map +1 -0
- 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 +6 -4
- 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 +7 -5
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +8 -6
- 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 +3 -2
- 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 +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +6 -4
- 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 +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.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 +6 -4
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +6 -4
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -2
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/Slicer.es.js +52 -50
- package/dist/shared/src/containers/Slicer/components/Slicer.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 +3 -2
- 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 +6 -4
- 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 +56 -53
- 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 +3 -2
- 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 +3 -2
- 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 +6 -4
- 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 +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js +12 -18
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.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 +3 -2
- 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 +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.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 +3 -2
- 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 +6 -4
- 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 +3 -2
- 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 +5 -4
- package/dist/shared/src/containers/Views/context/ViewsContext.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 +3 -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 +6 -5
- 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 +3 -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 +3 -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 +3 -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 +5 -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 +5 -4
- 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 +5 -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 +7 -6
- 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 +5 -4
- 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 +5 -4
- package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
- 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 +5 -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 +5 -4
- 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 +6 -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 +8 -6
- 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 +3 -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 +3 -2
- 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 +3 -2
- package/dist/shared/src/hooks/useGetEntityGroups.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 +3 -2
- 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 +3 -2
- package/dist/shared/src/hooks/useHierarchyTable.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 +5 -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 +3 -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 +3 -2
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/types/api/generated/graphql.d.ts +129 -0
- package/dist/types/api/generated/graphqlLinks.d.ts +74 -0
- package/dist/types/api/queries/activities/getActivities.d.ts +459 -0
- package/dist/types/api/queries/activities/updateActivities.d.ts +22 -0
- package/dist/types/api/queries/entities/getEntity.d.ts +10 -0
- package/dist/types/api/queries/entities/getEntityPanel.d.ts +10 -0
- package/dist/types/api/queries/entities/updateEntity.d.ts +10 -0
- package/dist/types/api/queries/entityLists/getLists.d.ts +10 -0
- package/dist/types/api/queries/entityLists/index.d.ts +1 -0
- package/dist/types/api/queries/entityLists/listItemsColumnStats.d.ts +312 -0
- package/dist/types/api/queries/entityLists/types.d.ts +3 -0
- package/dist/types/api/queries/overview/getOverview.d.ts +10 -0
- package/dist/types/api/queries/project/getProject.d.ts +10 -0
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +10 -0
- package/dist/types/api/queries/users/getUsers.d.ts +10 -0
- package/dist/types/api/queries/versions/getVersionsProducts.d.ts +20 -0
- package/dist/types/components/SearchFilter/filterScopeRegistry.d.ts +5 -0
- package/dist/types/components/SearchFilter/index.d.ts +1 -0
- package/dist/types/containers/Feed/Feed.d.ts +2 -1
- package/dist/types/containers/Feed/components/ActivityDate.d.ts +3 -1
- package/dist/types/containers/Feed/components/ActivityItem.d.ts +1 -0
- package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.d.ts +21 -0
- package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.d.ts +3 -0
- package/dist/types/containers/Feed/components/CommentInput/CommentInput.d.ts +8 -0
- package/dist/types/containers/Feed/components/CommentInput/CommentInput.styled.d.ts +19 -0
- package/dist/types/containers/Feed/components/CommentInput/VersionReviewPill.d.ts +7 -0
- package/dist/types/containers/Feed/hooks/useCategoryData.d.ts +7 -0
- package/dist/types/containers/Feed/hooks/useCommentMutations.d.ts +2 -0
- package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +3 -0
- package/dist/types/containers/Feed/hooks/useLastVersionReview.d.ts +11 -0
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useQueryFilters.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/types/table.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/utils/sanitizeQueryFilter.d.ts +2 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SortableReviewableCard.es.js","sources":["../../../../../src/components/ReviewablesList/SortableReviewableCard.tsx"],"sourcesContent":["import { FC } from 'react'\nimport { useSortable } from '@dnd-kit/sortable'\nimport { CSS } from '@dnd-kit/utilities'\nimport { ReviewableCardProps, ReviewableCard } from '@shared/components'\n\ntype SortableReviewableCardProps = ReviewableCardProps\n\nconst SortableReviewableCard: FC<SortableReviewableCardProps> = ({ ...props }) => {\n const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({\n id: props.fileId,\n animateLayoutChanges: () => false,\n })\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n }\n\n return (\n <div ref={setNodeRef} style={style}>\n <ReviewableCard\n isDropPlaceholder={isDragging}\n dragProps={{ ...attributes, ...listeners }}\n disabled={props.sortingDisabled}\n {...props}\n />\n </div>\n )\n}\n\nexport default SortableReviewableCard\n"],"names":["SortableReviewableCard","props","attributes","listeners","setNodeRef","transform","transition","isDragging","useSortable","style","CSS","jsx","ReviewableCard"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SortableReviewableCard.es.js","sources":["../../../../../src/components/ReviewablesList/SortableReviewableCard.tsx"],"sourcesContent":["import { FC } from 'react'\nimport { useSortable } from '@dnd-kit/sortable'\nimport { CSS } from '@dnd-kit/utilities'\nimport { ReviewableCardProps, ReviewableCard } from '@shared/components'\n\ntype SortableReviewableCardProps = ReviewableCardProps\n\nconst SortableReviewableCard: FC<SortableReviewableCardProps> = ({ ...props }) => {\n const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({\n id: props.fileId,\n animateLayoutChanges: () => false,\n })\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n }\n\n return (\n <div ref={setNodeRef} style={style}>\n <ReviewableCard\n isDropPlaceholder={isDragging}\n dragProps={{ ...attributes, ...listeners }}\n disabled={props.sortingDisabled}\n {...props}\n />\n </div>\n )\n}\n\nexport default SortableReviewableCard\n"],"names":["SortableReviewableCard","props","attributes","listeners","setNodeRef","transform","transition","isDragging","useSortable","style","CSS","jsx","ReviewableCard"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAMA,KAA0D,CAAC,EAAE,GAAGC,QAAY;AAChF,QAAM,EAAE,YAAAC,GAAY,WAAAC,GAAW,YAAAC,GAAY,WAAAC,GAAW,YAAAC,GAAY,YAAAC,EAAA,IAAeC,EAAY;AAAA,IAC3F,IAAIP,EAAM;AAAA,IACV,sBAAsB,MAAM;AAAA,EAAA,CAC7B,GAEKQ,IAAQ;AAAA,IACZ,WAAWC,EAAI,UAAU,SAASL,CAAS;AAAA,IAC3C,YAAAC;AAAA,EAAA;AAGF,SACEK,gBAAAA,EAAAA,IAAC,OAAA,EAAI,KAAKP,GAAY,OAAAK,GACpB,UAAAE,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,mBAAmBL;AAAA,MACnB,WAAW,EAAE,GAAGL,GAAY,GAAGC,EAAA;AAAA,MAC/B,UAAUF,EAAM;AAAA,MACf,GAAGA;AAAA,IAAA;AAAA,EAAA,GAER;AAEJ;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),z=require("axios"),x=require("react-toastify"),w=require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/updateActivities.cjs.js");require("../../api/queries/activities/updateReaction.cjs.js");require("../../api/queries/activities/getMentions.cjs.js");require("../../api/queries/activities/getCategories.cjs.js");require("../../api/queries/addons/getAddons.cjs.js");require("../../api/queries/addons/updateAddons.cjs.js");require("../../api/queries/attributes/getAttributes.cjs.js");require("../../api/queries/attributes/updateAttributes.cjs.js");require("../../api/queries/authentication/getAuthentication.cjs.js");require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/columnStats/metricTargets.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/products/getFolderProducts.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/projectFolders/projectFolders.cjs.js");require("../../api/queries/review/getReview.cjs.js");const A=require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/tasks/getTasks.cjs.js");require("../../api/queries/tasks/updateTasks.cjs.js");require("../../api/queries/teams/getTeams.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");const c=a=>{const u=a.replace(/[^\x00-\xFF]/g,"").trim(),p=u.replace(/\.[^/.]+$/,""),o=u.split(".").pop();return p.length===0?"unnamed"+(o?`.${o}`:""):u},C=({projectName:a,versionId:u,taskId:p,folderId:o,productId:b,dispatch:l,onUpload:y,onProgress:$})=>{const[m,g]=f.useState({}),U=f.useCallback(F=>{u&&g(v=>({...v,[u]:v[u]?.filter(r=>r.name!==F)||[]}))},[u]);return{handleFileUpload:f.useCallback(async(F,v)=>{const r=v||u;if(!r||!a)return;const h=Array.from(F),R=h.map(i=>({name:c(i.name),size:i.size,progress:0})),T=[...m[r]||[],...R];g({...m,[r]:T});const P=i=>e=>{if(!r)return;console.log(`Upload successful for ${i.name}`);const t=e.data;a&&(l(A.reviewablesQueries.util.updateQueryData("getReviewablesForVersion",{projectName:a,versionId:r},n=>{n.reviewables||(n.reviewables=[]),n.reviewables.push(t)})),b&&l(w.api.util.invalidateTags([{type:"viewer",id:b}])),l(w.api.util.invalidateTags([{type:"viewer",id:r}])),o&&l(w.api.util.invalidateTags([{type:"viewer",id:o}])),p&&l(w.api.util.invalidateTags([{type:"viewer",id:p}])),U(c(i.name)))},H=i=>e=>{r&&(console.error(`Upload failed for ${i.name}: ${e}`),x.toast.error(`Failed to upload file: ${i.name}`),g(t=>{const s=(t[r]||[]).map(q=>q.name!==c(i.name)?q:(console.log(e),{...q,error:e.response||e.message}));return{...t,[r]:s}}))},M=i=>r?e=>g(t=>{const s=(t[r]||[]).map(d=>d.name!==c(i.name)?d:{...d,progress:e.total?Math.round(e.loaded/e.total*100):0}),q=s.reduce((d,V)=>d+(V.progress||0),0),S=Math.round(q/s.length);return $?.(S),{...t,[r]:s}}):()=>{};try{const i=h.map(e=>{const t=c(e.name),n=t.split(".").slice(0,-1).join(".")||"unnamed",s=`/api/projects/${a}/versions/${r}/reviewables?label=${n}`,q={"content-type":e.type,"x-file-name":t};return z.post(s,e,{headers:q,onUploadProgress:M(e)}).then(P(e)).catch(H(e))});await Promise.all(i),y&&y()}catch(i){console.error(i),x.toast.error("Failed to upload file/s")}},[u,a,m,l,b,o,p,U,y,$]),handleRemoveUpload:U,uploading:m}};exports.parseFilename=c;exports.useReviewablesUpload=C;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),z=require("axios"),x=require("react-toastify"),w=require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/updateActivities.cjs.js");require("../../api/queries/activities/updateReaction.cjs.js");require("../../api/queries/activities/getMentions.cjs.js");require("../../api/queries/activities/getCategories.cjs.js");require("../../api/queries/addons/getAddons.cjs.js");require("../../api/queries/addons/updateAddons.cjs.js");require("../../api/queries/attributes/getAttributes.cjs.js");require("../../api/queries/attributes/updateAttributes.cjs.js");require("../../api/queries/authentication/getAuthentication.cjs.js");require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/columnStats/metricTargets.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/products/getFolderProducts.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/projectFolders/projectFolders.cjs.js");require("../../api/queries/review/getReview.cjs.js");const A=require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/tasks/getTasks.cjs.js");require("../../api/queries/tasks/updateTasks.cjs.js");require("../../api/queries/teams/getTeams.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");const c=a=>{const u=a.replace(/[^\x00-\xFF]/g,"").trim(),p=u.replace(/\.[^/.]+$/,""),o=u.split(".").pop();return p.length===0?"unnamed"+(o?`.${o}`:""):u},C=({projectName:a,versionId:u,taskId:p,folderId:o,productId:b,dispatch:l,onUpload:y,onProgress:$})=>{const[m,g]=f.useState({}),U=f.useCallback(F=>{u&&g(v=>({...v,[u]:v[u]?.filter(r=>r.name!==F)||[]}))},[u]);return{handleFileUpload:f.useCallback(async(F,v)=>{const r=v||u;if(!r||!a)return;const h=Array.from(F),R=h.map(i=>({name:c(i.name),size:i.size,progress:0})),T=[...m[r]||[],...R];g({...m,[r]:T});const P=i=>e=>{if(!r)return;console.log(`Upload successful for ${i.name}`);const t=e.data;a&&(l(A.reviewablesQueries.util.updateQueryData("getReviewablesForVersion",{projectName:a,versionId:r},n=>{n.reviewables||(n.reviewables=[]),n.reviewables.push(t)})),b&&l(w.api.util.invalidateTags([{type:"viewer",id:b}])),l(w.api.util.invalidateTags([{type:"viewer",id:r}])),o&&l(w.api.util.invalidateTags([{type:"viewer",id:o}])),p&&l(w.api.util.invalidateTags([{type:"viewer",id:p}])),U(c(i.name)))},H=i=>e=>{r&&(console.error(`Upload failed for ${i.name}: ${e}`),x.toast.error(`Failed to upload file: ${i.name}`),g(t=>{const s=(t[r]||[]).map(q=>q.name!==c(i.name)?q:(console.log(e),{...q,error:e.response||e.message}));return{...t,[r]:s}}))},M=i=>r?e=>g(t=>{const s=(t[r]||[]).map(d=>d.name!==c(i.name)?d:{...d,progress:e.total?Math.round(e.loaded/e.total*100):0}),q=s.reduce((d,V)=>d+(V.progress||0),0),S=Math.round(q/s.length);return $?.(S),{...t,[r]:s}}):()=>{};try{const i=h.map(e=>{const t=c(e.name),n=t.split(".").slice(0,-1).join(".")||"unnamed",s=`/api/projects/${a}/versions/${r}/reviewables?label=${n}`,q={"content-type":e.type,"x-file-name":t};return z.post(s,e,{headers:q,onUploadProgress:M(e)}).then(P(e)).catch(H(e))});await Promise.all(i),y&&y()}catch(i){console.error(i),x.toast.error("Failed to upload file/s")}},[u,a,m,l,b,o,p,U,y,$]),handleRemoveUpload:U,uploading:m}};exports.parseFilename=c;exports.useReviewablesUpload=C;
|
|
2
2
|
//# sourceMappingURL=useReviewablesUpload.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useReviewablesUpload.cjs.js","sources":["../../../../../src/components/ReviewablesList/useReviewablesUpload.ts"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport axios, { AxiosProgressEvent, AxiosResponse } from 'axios'\nimport { toast } from 'react-toastify'\n\nimport api, { reviewablesQueries } from '@shared/api'\nimport type { UploadReviewableApiResponse } from '@shared/api'\nimport type { ReviewableProgress } from '@shared/components'\n\n// strip out non-ISO-8859-1 characters like Narrow No-Break Space and emojis\n// then check it is not an empty string without extension, if so replace with \"unnamed\"\nexport const parseFilename = (filename: string) => {\n const parsed = filename.replace(/[^\\x00-\\xFF]/g, '').trim()\n // without extension\n const nameWithoutExtension = parsed.replace(/\\.[^/.]+$/, '')\n const extension = parsed.split('.').pop()\n if (nameWithoutExtension.length === 0) {\n return 'unnamed' + (extension ? `.${extension}` : '')\n } else {\n return parsed\n }\n}\n\nexport interface UseReviewablesUploadProps {\n projectName: string | null\n versionId?: string | null\n taskId?: string | null\n folderId?: string | null\n productId?: string | null\n dispatch: any\n onUpload?: () => void\n onProgress?: (progress: number) => void\n}\n\nexport interface UploadHandlers {\n handleFileUpload: (files: FileList | File[], versionId?: string) => Promise<void>\n handleRemoveUpload: (name: string) => void\n uploading: { [key: string]: ReviewableProgress[] }\n}\n\nexport const useReviewablesUpload = ({\n projectName,\n versionId,\n taskId,\n folderId,\n productId,\n dispatch,\n onUpload,\n onProgress,\n}: UseReviewablesUploadProps): UploadHandlers => {\n const [uploading, setUploads] = useState<{ [key: string]: ReviewableProgress[] }>({})\n\n const handleRemoveUpload = useCallback(\n (name: string) => {\n if (!versionId) return\n setUploads((uploads) => ({\n ...uploads,\n [versionId]: uploads[versionId]?.filter((upload) => upload.name !== name) || [],\n }))\n },\n [versionId],\n )\n\n const handleFileUpload = useCallback(\n async (files: FileList | File[], fileVersionId?: string) => {\n // use the passed versionId or the one from props\n const reviewableVersionId = fileVersionId || versionId\n if (!reviewableVersionId || !projectName) return\n\n const fileArray = Array.from(files)\n\n const uploadingFiles = fileArray.map((file) => ({\n name: parseFilename(file.name),\n size: file.size,\n progress: 0,\n }))\n\n const newUploadsForVersion = [...(uploading[reviewableVersionId] || []), ...uploadingFiles]\n\n setUploads({ ...uploading, [reviewableVersionId]: newUploadsForVersion })\n\n const successHandler = (file: File) => (response: AxiosResponse) => {\n if (!reviewableVersionId) return\n // Handle successful upload\n console.log(`Upload successful for ${file.name}`)\n // patch the new data into the reviewables cache\n const data = response.data as UploadReviewableApiResponse\n\n if (!projectName) return\n\n dispatch(\n // @ts-ignore\n reviewablesQueries.util.updateQueryData(\n 'getReviewablesForVersion',\n { projectName, versionId: reviewableVersionId },\n (draft) => {\n if (!draft.reviewables) {\n draft.reviewables = []\n }\n // @ts-ignore\n draft.reviewables.push(data)\n },\n ),\n )\n\n // also invalidate the viewer cache\n productId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: productId }]))\n dispatch(api.util.invalidateTags([{ type: 'viewer', id: reviewableVersionId }]))\n folderId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: folderId }]))\n taskId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: taskId }]))\n // remove the file from the list\n handleRemoveUpload(parseFilename(file.name))\n }\n\n const errorHandler = (file: File) => (error: any) => {\n if (!reviewableVersionId) return\n console.error(`Upload failed for ${file.name}: ${error}`)\n toast.error(`Failed to upload file: ${file.name}`)\n // add error to the file\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n console.log(error)\n return {\n ...upload,\n error: error.response || error.message,\n }\n })\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n const progressHandler = (file: File) => {\n if (!reviewableVersionId) return () => {}\n return (progressEvent: AxiosProgressEvent) =>\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n return {\n ...upload,\n progress: progressEvent.total\n ? Math.round((progressEvent.loaded / progressEvent.total) * 100)\n : 0,\n }\n })\n\n // Calculate overall progress across all files\n const totalProgress = updatedUploads.reduce(\n (sum, upload) => sum + (upload.progress || 0),\n 0,\n )\n const overallProgress = Math.round(totalProgress / updatedUploads.length)\n\n // Call the onProgress callback with overall progress\n onProgress?.(overallProgress)\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n try {\n // upload the files\n const uploadPromises = fileArray.map((file) => {\n const fileName = parseFilename(file.name)\n const autoLabel = fileName.split('.').slice(0, -1).join('.') || 'unnamed'\n\n const url = `/api/projects/${projectName}/versions/${reviewableVersionId}/reviewables?label=${autoLabel}`\n const headers = { 'content-type': file.type, 'x-file-name': fileName }\n return axios\n .post(url, file, { headers, onUploadProgress: progressHandler(file) })\n .then(successHandler(file))\n .catch(errorHandler(file))\n })\n\n // Wait for all uploads to complete\n await Promise.all(uploadPromises)\n\n // Callback after all uploads are finished\n onUpload && onUpload()\n } catch (error) {\n // something went wrong with everything, EEEEK!\n console.error(error)\n toast.error('Failed to upload file/s')\n }\n },\n [\n versionId,\n projectName,\n uploading,\n dispatch,\n productId,\n folderId,\n taskId,\n handleRemoveUpload,\n onUpload,\n onProgress,\n ],\n )\n\n return {\n handleFileUpload,\n handleRemoveUpload,\n uploading,\n }\n}\n"],"names":["parseFilename","filename","parsed","nameWithoutExtension","extension","useReviewablesUpload","projectName","versionId","taskId","folderId","productId","dispatch","onUpload","onProgress","uploading","setUploads","useState","handleRemoveUpload","useCallback","name","uploads","upload","files","fileVersionId","reviewableVersionId","fileArray","uploadingFiles","file","newUploadsForVersion","successHandler","response","data","reviewablesQueries","draft","api","errorHandler","error","toast","updatedUploads","progressHandler","progressEvent","totalProgress","sum","overallProgress","uploadPromises","fileName","autoLabel","url","headers","axios"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useReviewablesUpload.cjs.js","sources":["../../../../../src/components/ReviewablesList/useReviewablesUpload.ts"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport axios, { AxiosProgressEvent, AxiosResponse } from 'axios'\nimport { toast } from 'react-toastify'\n\nimport api, { reviewablesQueries } from '@shared/api'\nimport type { UploadReviewableApiResponse } from '@shared/api'\nimport type { ReviewableProgress } from '@shared/components'\n\n// strip out non-ISO-8859-1 characters like Narrow No-Break Space and emojis\n// then check it is not an empty string without extension, if so replace with \"unnamed\"\nexport const parseFilename = (filename: string) => {\n const parsed = filename.replace(/[^\\x00-\\xFF]/g, '').trim()\n // without extension\n const nameWithoutExtension = parsed.replace(/\\.[^/.]+$/, '')\n const extension = parsed.split('.').pop()\n if (nameWithoutExtension.length === 0) {\n return 'unnamed' + (extension ? `.${extension}` : '')\n } else {\n return parsed\n }\n}\n\nexport interface UseReviewablesUploadProps {\n projectName: string | null\n versionId?: string | null\n taskId?: string | null\n folderId?: string | null\n productId?: string | null\n dispatch: any\n onUpload?: () => void\n onProgress?: (progress: number) => void\n}\n\nexport interface UploadHandlers {\n handleFileUpload: (files: FileList | File[], versionId?: string) => Promise<void>\n handleRemoveUpload: (name: string) => void\n uploading: { [key: string]: ReviewableProgress[] }\n}\n\nexport const useReviewablesUpload = ({\n projectName,\n versionId,\n taskId,\n folderId,\n productId,\n dispatch,\n onUpload,\n onProgress,\n}: UseReviewablesUploadProps): UploadHandlers => {\n const [uploading, setUploads] = useState<{ [key: string]: ReviewableProgress[] }>({})\n\n const handleRemoveUpload = useCallback(\n (name: string) => {\n if (!versionId) return\n setUploads((uploads) => ({\n ...uploads,\n [versionId]: uploads[versionId]?.filter((upload) => upload.name !== name) || [],\n }))\n },\n [versionId],\n )\n\n const handleFileUpload = useCallback(\n async (files: FileList | File[], fileVersionId?: string) => {\n // use the passed versionId or the one from props\n const reviewableVersionId = fileVersionId || versionId\n if (!reviewableVersionId || !projectName) return\n\n const fileArray = Array.from(files)\n\n const uploadingFiles = fileArray.map((file) => ({\n name: parseFilename(file.name),\n size: file.size,\n progress: 0,\n }))\n\n const newUploadsForVersion = [...(uploading[reviewableVersionId] || []), ...uploadingFiles]\n\n setUploads({ ...uploading, [reviewableVersionId]: newUploadsForVersion })\n\n const successHandler = (file: File) => (response: AxiosResponse) => {\n if (!reviewableVersionId) return\n // Handle successful upload\n console.log(`Upload successful for ${file.name}`)\n // patch the new data into the reviewables cache\n const data = response.data as UploadReviewableApiResponse\n\n if (!projectName) return\n\n dispatch(\n // @ts-ignore\n reviewablesQueries.util.updateQueryData(\n 'getReviewablesForVersion',\n { projectName, versionId: reviewableVersionId },\n (draft) => {\n if (!draft.reviewables) {\n draft.reviewables = []\n }\n // @ts-ignore\n draft.reviewables.push(data)\n },\n ),\n )\n\n // also invalidate the viewer cache\n productId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: productId }]))\n dispatch(api.util.invalidateTags([{ type: 'viewer', id: reviewableVersionId }]))\n folderId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: folderId }]))\n taskId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: taskId }]))\n // remove the file from the list\n handleRemoveUpload(parseFilename(file.name))\n }\n\n const errorHandler = (file: File) => (error: any) => {\n if (!reviewableVersionId) return\n console.error(`Upload failed for ${file.name}: ${error}`)\n toast.error(`Failed to upload file: ${file.name}`)\n // add error to the file\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n console.log(error)\n return {\n ...upload,\n error: error.response || error.message,\n }\n })\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n const progressHandler = (file: File) => {\n if (!reviewableVersionId) return () => {}\n return (progressEvent: AxiosProgressEvent) =>\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n return {\n ...upload,\n progress: progressEvent.total\n ? Math.round((progressEvent.loaded / progressEvent.total) * 100)\n : 0,\n }\n })\n\n // Calculate overall progress across all files\n const totalProgress = updatedUploads.reduce(\n (sum, upload) => sum + (upload.progress || 0),\n 0,\n )\n const overallProgress = Math.round(totalProgress / updatedUploads.length)\n\n // Call the onProgress callback with overall progress\n onProgress?.(overallProgress)\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n try {\n // upload the files\n const uploadPromises = fileArray.map((file) => {\n const fileName = parseFilename(file.name)\n const autoLabel = fileName.split('.').slice(0, -1).join('.') || 'unnamed'\n\n const url = `/api/projects/${projectName}/versions/${reviewableVersionId}/reviewables?label=${autoLabel}`\n const headers = { 'content-type': file.type, 'x-file-name': fileName }\n return axios\n .post(url, file, { headers, onUploadProgress: progressHandler(file) })\n .then(successHandler(file))\n .catch(errorHandler(file))\n })\n\n // Wait for all uploads to complete\n await Promise.all(uploadPromises)\n\n // Callback after all uploads are finished\n onUpload && onUpload()\n } catch (error) {\n // something went wrong with everything, EEEEK!\n console.error(error)\n toast.error('Failed to upload file/s')\n }\n },\n [\n versionId,\n projectName,\n uploading,\n dispatch,\n productId,\n folderId,\n taskId,\n handleRemoveUpload,\n onUpload,\n onProgress,\n ],\n )\n\n return {\n handleFileUpload,\n handleRemoveUpload,\n uploading,\n }\n}\n"],"names":["parseFilename","filename","parsed","nameWithoutExtension","extension","useReviewablesUpload","projectName","versionId","taskId","folderId","productId","dispatch","onUpload","onProgress","uploading","setUploads","useState","handleRemoveUpload","useCallback","name","uploads","upload","files","fileVersionId","reviewableVersionId","fileArray","uploadingFiles","file","newUploadsForVersion","successHandler","response","data","reviewablesQueries","draft","api","errorHandler","error","toast","updatedUploads","progressHandler","progressEvent","totalProgress","sum","overallProgress","uploadPromises","fileName","autoLabel","url","headers","axios"],"mappings":"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"}
|
|
@@ -66,6 +66,7 @@ import "../../api/queries/entities/updateEntity.es.js";
|
|
|
66
66
|
import "../../api/queries/entityLists/getLists.es.js";
|
|
67
67
|
import "../../api/queries/entityLists/updateLists.es.js";
|
|
68
68
|
import "../../api/queries/entityLists/getListsAttributes.es.js";
|
|
69
|
+
import "../../api/queries/entityLists/listItemsColumnStats.es.js";
|
|
69
70
|
import "../../api/queries/entityLists/updateListsAttributes.es.js";
|
|
70
71
|
import "../../api/queries/entityLists/listFolders.es.js";
|
|
71
72
|
import "../../api/queries/folders/getFolders.es.js";
|
|
@@ -98,7 +99,7 @@ import "../../api/queries/uris/getUris.es.js";
|
|
|
98
99
|
const d = (p) => {
|
|
99
100
|
const i = p.replace(/[^\x00-\xFF]/g, "").trim(), u = i.replace(/\.[^/.]+$/, ""), s = i.split(".").pop();
|
|
100
101
|
return u.length === 0 ? "unnamed" + (s ? `.${s}` : "") : i;
|
|
101
|
-
},
|
|
102
|
+
}, Ht = ({
|
|
102
103
|
projectName: p,
|
|
103
104
|
versionId: i,
|
|
104
105
|
taskId: u,
|
|
@@ -196,6 +197,6 @@ const d = (p) => {
|
|
|
196
197
|
};
|
|
197
198
|
export {
|
|
198
199
|
d as parseFilename,
|
|
199
|
-
|
|
200
|
+
Ht as useReviewablesUpload
|
|
200
201
|
};
|
|
201
202
|
//# sourceMappingURL=useReviewablesUpload.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useReviewablesUpload.es.js","sources":["../../../../../src/components/ReviewablesList/useReviewablesUpload.ts"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport axios, { AxiosProgressEvent, AxiosResponse } from 'axios'\nimport { toast } from 'react-toastify'\n\nimport api, { reviewablesQueries } from '@shared/api'\nimport type { UploadReviewableApiResponse } from '@shared/api'\nimport type { ReviewableProgress } from '@shared/components'\n\n// strip out non-ISO-8859-1 characters like Narrow No-Break Space and emojis\n// then check it is not an empty string without extension, if so replace with \"unnamed\"\nexport const parseFilename = (filename: string) => {\n const parsed = filename.replace(/[^\\x00-\\xFF]/g, '').trim()\n // without extension\n const nameWithoutExtension = parsed.replace(/\\.[^/.]+$/, '')\n const extension = parsed.split('.').pop()\n if (nameWithoutExtension.length === 0) {\n return 'unnamed' + (extension ? `.${extension}` : '')\n } else {\n return parsed\n }\n}\n\nexport interface UseReviewablesUploadProps {\n projectName: string | null\n versionId?: string | null\n taskId?: string | null\n folderId?: string | null\n productId?: string | null\n dispatch: any\n onUpload?: () => void\n onProgress?: (progress: number) => void\n}\n\nexport interface UploadHandlers {\n handleFileUpload: (files: FileList | File[], versionId?: string) => Promise<void>\n handleRemoveUpload: (name: string) => void\n uploading: { [key: string]: ReviewableProgress[] }\n}\n\nexport const useReviewablesUpload = ({\n projectName,\n versionId,\n taskId,\n folderId,\n productId,\n dispatch,\n onUpload,\n onProgress,\n}: UseReviewablesUploadProps): UploadHandlers => {\n const [uploading, setUploads] = useState<{ [key: string]: ReviewableProgress[] }>({})\n\n const handleRemoveUpload = useCallback(\n (name: string) => {\n if (!versionId) return\n setUploads((uploads) => ({\n ...uploads,\n [versionId]: uploads[versionId]?.filter((upload) => upload.name !== name) || [],\n }))\n },\n [versionId],\n )\n\n const handleFileUpload = useCallback(\n async (files: FileList | File[], fileVersionId?: string) => {\n // use the passed versionId or the one from props\n const reviewableVersionId = fileVersionId || versionId\n if (!reviewableVersionId || !projectName) return\n\n const fileArray = Array.from(files)\n\n const uploadingFiles = fileArray.map((file) => ({\n name: parseFilename(file.name),\n size: file.size,\n progress: 0,\n }))\n\n const newUploadsForVersion = [...(uploading[reviewableVersionId] || []), ...uploadingFiles]\n\n setUploads({ ...uploading, [reviewableVersionId]: newUploadsForVersion })\n\n const successHandler = (file: File) => (response: AxiosResponse) => {\n if (!reviewableVersionId) return\n // Handle successful upload\n console.log(`Upload successful for ${file.name}`)\n // patch the new data into the reviewables cache\n const data = response.data as UploadReviewableApiResponse\n\n if (!projectName) return\n\n dispatch(\n // @ts-ignore\n reviewablesQueries.util.updateQueryData(\n 'getReviewablesForVersion',\n { projectName, versionId: reviewableVersionId },\n (draft) => {\n if (!draft.reviewables) {\n draft.reviewables = []\n }\n // @ts-ignore\n draft.reviewables.push(data)\n },\n ),\n )\n\n // also invalidate the viewer cache\n productId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: productId }]))\n dispatch(api.util.invalidateTags([{ type: 'viewer', id: reviewableVersionId }]))\n folderId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: folderId }]))\n taskId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: taskId }]))\n // remove the file from the list\n handleRemoveUpload(parseFilename(file.name))\n }\n\n const errorHandler = (file: File) => (error: any) => {\n if (!reviewableVersionId) return\n console.error(`Upload failed for ${file.name}: ${error}`)\n toast.error(`Failed to upload file: ${file.name}`)\n // add error to the file\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n console.log(error)\n return {\n ...upload,\n error: error.response || error.message,\n }\n })\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n const progressHandler = (file: File) => {\n if (!reviewableVersionId) return () => {}\n return (progressEvent: AxiosProgressEvent) =>\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n return {\n ...upload,\n progress: progressEvent.total\n ? Math.round((progressEvent.loaded / progressEvent.total) * 100)\n : 0,\n }\n })\n\n // Calculate overall progress across all files\n const totalProgress = updatedUploads.reduce(\n (sum, upload) => sum + (upload.progress || 0),\n 0,\n )\n const overallProgress = Math.round(totalProgress / updatedUploads.length)\n\n // Call the onProgress callback with overall progress\n onProgress?.(overallProgress)\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n try {\n // upload the files\n const uploadPromises = fileArray.map((file) => {\n const fileName = parseFilename(file.name)\n const autoLabel = fileName.split('.').slice(0, -1).join('.') || 'unnamed'\n\n const url = `/api/projects/${projectName}/versions/${reviewableVersionId}/reviewables?label=${autoLabel}`\n const headers = { 'content-type': file.type, 'x-file-name': fileName }\n return axios\n .post(url, file, { headers, onUploadProgress: progressHandler(file) })\n .then(successHandler(file))\n .catch(errorHandler(file))\n })\n\n // Wait for all uploads to complete\n await Promise.all(uploadPromises)\n\n // Callback after all uploads are finished\n onUpload && onUpload()\n } catch (error) {\n // something went wrong with everything, EEEEK!\n console.error(error)\n toast.error('Failed to upload file/s')\n }\n },\n [\n versionId,\n projectName,\n uploading,\n dispatch,\n productId,\n folderId,\n taskId,\n handleRemoveUpload,\n onUpload,\n onProgress,\n ],\n )\n\n return {\n handleFileUpload,\n handleRemoveUpload,\n uploading,\n }\n}\n"],"names":["parseFilename","filename","parsed","nameWithoutExtension","extension","useReviewablesUpload","projectName","versionId","taskId","folderId","productId","dispatch","onUpload","onProgress","uploading","setUploads","useState","handleRemoveUpload","useCallback","name","uploads","upload","files","fileVersionId","reviewableVersionId","fileArray","uploadingFiles","file","newUploadsForVersion","successHandler","response","data","reviewablesQueries","draft","api","errorHandler","error","toast","updatedUploads","progressHandler","progressEvent","totalProgress","sum","overallProgress","uploadPromises","fileName","autoLabel","url","headers","axios"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useReviewablesUpload.es.js","sources":["../../../../../src/components/ReviewablesList/useReviewablesUpload.ts"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport axios, { AxiosProgressEvent, AxiosResponse } from 'axios'\nimport { toast } from 'react-toastify'\n\nimport api, { reviewablesQueries } from '@shared/api'\nimport type { UploadReviewableApiResponse } from '@shared/api'\nimport type { ReviewableProgress } from '@shared/components'\n\n// strip out non-ISO-8859-1 characters like Narrow No-Break Space and emojis\n// then check it is not an empty string without extension, if so replace with \"unnamed\"\nexport const parseFilename = (filename: string) => {\n const parsed = filename.replace(/[^\\x00-\\xFF]/g, '').trim()\n // without extension\n const nameWithoutExtension = parsed.replace(/\\.[^/.]+$/, '')\n const extension = parsed.split('.').pop()\n if (nameWithoutExtension.length === 0) {\n return 'unnamed' + (extension ? `.${extension}` : '')\n } else {\n return parsed\n }\n}\n\nexport interface UseReviewablesUploadProps {\n projectName: string | null\n versionId?: string | null\n taskId?: string | null\n folderId?: string | null\n productId?: string | null\n dispatch: any\n onUpload?: () => void\n onProgress?: (progress: number) => void\n}\n\nexport interface UploadHandlers {\n handleFileUpload: (files: FileList | File[], versionId?: string) => Promise<void>\n handleRemoveUpload: (name: string) => void\n uploading: { [key: string]: ReviewableProgress[] }\n}\n\nexport const useReviewablesUpload = ({\n projectName,\n versionId,\n taskId,\n folderId,\n productId,\n dispatch,\n onUpload,\n onProgress,\n}: UseReviewablesUploadProps): UploadHandlers => {\n const [uploading, setUploads] = useState<{ [key: string]: ReviewableProgress[] }>({})\n\n const handleRemoveUpload = useCallback(\n (name: string) => {\n if (!versionId) return\n setUploads((uploads) => ({\n ...uploads,\n [versionId]: uploads[versionId]?.filter((upload) => upload.name !== name) || [],\n }))\n },\n [versionId],\n )\n\n const handleFileUpload = useCallback(\n async (files: FileList | File[], fileVersionId?: string) => {\n // use the passed versionId or the one from props\n const reviewableVersionId = fileVersionId || versionId\n if (!reviewableVersionId || !projectName) return\n\n const fileArray = Array.from(files)\n\n const uploadingFiles = fileArray.map((file) => ({\n name: parseFilename(file.name),\n size: file.size,\n progress: 0,\n }))\n\n const newUploadsForVersion = [...(uploading[reviewableVersionId] || []), ...uploadingFiles]\n\n setUploads({ ...uploading, [reviewableVersionId]: newUploadsForVersion })\n\n const successHandler = (file: File) => (response: AxiosResponse) => {\n if (!reviewableVersionId) return\n // Handle successful upload\n console.log(`Upload successful for ${file.name}`)\n // patch the new data into the reviewables cache\n const data = response.data as UploadReviewableApiResponse\n\n if (!projectName) return\n\n dispatch(\n // @ts-ignore\n reviewablesQueries.util.updateQueryData(\n 'getReviewablesForVersion',\n { projectName, versionId: reviewableVersionId },\n (draft) => {\n if (!draft.reviewables) {\n draft.reviewables = []\n }\n // @ts-ignore\n draft.reviewables.push(data)\n },\n ),\n )\n\n // also invalidate the viewer cache\n productId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: productId }]))\n dispatch(api.util.invalidateTags([{ type: 'viewer', id: reviewableVersionId }]))\n folderId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: folderId }]))\n taskId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: taskId }]))\n // remove the file from the list\n handleRemoveUpload(parseFilename(file.name))\n }\n\n const errorHandler = (file: File) => (error: any) => {\n if (!reviewableVersionId) return\n console.error(`Upload failed for ${file.name}: ${error}`)\n toast.error(`Failed to upload file: ${file.name}`)\n // add error to the file\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n console.log(error)\n return {\n ...upload,\n error: error.response || error.message,\n }\n })\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n const progressHandler = (file: File) => {\n if (!reviewableVersionId) return () => {}\n return (progressEvent: AxiosProgressEvent) =>\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n return {\n ...upload,\n progress: progressEvent.total\n ? Math.round((progressEvent.loaded / progressEvent.total) * 100)\n : 0,\n }\n })\n\n // Calculate overall progress across all files\n const totalProgress = updatedUploads.reduce(\n (sum, upload) => sum + (upload.progress || 0),\n 0,\n )\n const overallProgress = Math.round(totalProgress / updatedUploads.length)\n\n // Call the onProgress callback with overall progress\n onProgress?.(overallProgress)\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n try {\n // upload the files\n const uploadPromises = fileArray.map((file) => {\n const fileName = parseFilename(file.name)\n const autoLabel = fileName.split('.').slice(0, -1).join('.') || 'unnamed'\n\n const url = `/api/projects/${projectName}/versions/${reviewableVersionId}/reviewables?label=${autoLabel}`\n const headers = { 'content-type': file.type, 'x-file-name': fileName }\n return axios\n .post(url, file, { headers, onUploadProgress: progressHandler(file) })\n .then(successHandler(file))\n .catch(errorHandler(file))\n })\n\n // Wait for all uploads to complete\n await Promise.all(uploadPromises)\n\n // Callback after all uploads are finished\n onUpload && onUpload()\n } catch (error) {\n // something went wrong with everything, EEEEK!\n console.error(error)\n toast.error('Failed to upload file/s')\n }\n },\n [\n versionId,\n projectName,\n uploading,\n dispatch,\n productId,\n folderId,\n taskId,\n handleRemoveUpload,\n onUpload,\n onProgress,\n ],\n )\n\n return {\n handleFileUpload,\n handleRemoveUpload,\n uploading,\n }\n}\n"],"names":["parseFilename","filename","parsed","nameWithoutExtension","extension","useReviewablesUpload","projectName","versionId","taskId","folderId","productId","dispatch","onUpload","onProgress","uploading","setUploads","useState","handleRemoveUpload","useCallback","name","uploads","upload","files","fileVersionId","reviewableVersionId","fileArray","uploadingFiles","file","newUploadsForVersion","successHandler","response","data","reviewablesQueries","draft","api","errorHandler","error","toast","updatedUploads","progressHandler","progressEvent","totalProgress","sum","overallProgress","uploadPromises","fileName","autoLabel","url","headers","axios"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const i=require("../../../../_virtual/jsx-runtime.cjs.js"),p=require("clsx");require("../AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("react");require("../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("@ynput/ayon-react-components");require("../AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../AccessUser/AccessUser.cjs.js");require("../AttributeEditor/AttributeEditor.cjs.js");require("../AttributeEditor/attributeTypeMap.cjs.js");require("../Badge/Badge.cjs.js");require("../Chips/Chips.cjs.js");require("react-dom");require("date-fns");require("../DateRangePicker/DateRangePicker.styled.cjs.js");require("../LinksManager/CellEditingDialog.cjs.js");require("react-toastify");require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/updateActivities.cjs.js");require("../../api/queries/activities/updateReaction.cjs.js");require("../../api/queries/activities/getMentions.cjs.js");require("../../api/queries/activities/getCategories.cjs.js");require("../../api/queries/addons/getAddons.cjs.js");require("../../api/queries/addons/updateAddons.cjs.js");require("../../api/queries/attributes/getAttributes.cjs.js");require("../../api/queries/attributes/updateAttributes.cjs.js");require("../../api/queries/authentication/getAuthentication.cjs.js");require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/columnStats/metricTargets.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/products/getFolderProducts.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/projectFolders/projectFolders.cjs.js");require("../../api/queries/review/getReview.cjs.js");require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/tasks/getTasks.cjs.js");require("../../api/queries/tasks/updateTasks.cjs.js");require("../../api/queries/teams/getTeams.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");require("../../../../_virtual/index.cjs.js");require("../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../util/pubsub.cjs.js");require("../DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../DetailsPanelDetails/BorderedSection.cjs.js");require("../QuillListStyles/QuillListStyles.cjs.js");require("../DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("../../containers/Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../containers/Feed/components/CommentInput/modules/index.cjs.js");require("../../context/RemoteModulesContext.cjs.js");require("../../../../_virtual/runtime.cjs.js");require("../../../../_virtual/semver.cjs.js");require("../../context/PowerpackContextInstance.cjs.js");require("../../context/UriContext.cjs.js");require("../../context/DetailsPanelContextInstance.cjs.js");require("../../context/SubtasksModulesContextInstance.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../DetailsPanelDetails/DetailsSection.cjs.js");require("../DetailsPanelDetails/FieldLabel.cjs.js");require("../DoneCheckbox/DoneCheckbox.cjs.js");require("../EarlyPreview/EarlyPreview.cjs.js");require("../EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../EnumEditor/EnumEditor.styled.cjs.js");require("../../containers/ContextMenu/ContextMenuContext.cjs.js");;/* empty css */const j=require("../../containers/ContextMenu/useCreateContextMenu.cjs.js");require("../../containers/Feed/context/FeedContext.cjs.js");require("../../containers/Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../../containers/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.cjs.js");require("../../containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../containers/Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("remark-emoji");require("remark-directive");require("remark-directive-rehype");require("../../containers/Feed/components/CommentInput/CommentInput.cjs.js");require("../../containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../containers/Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../containers/Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../containers/Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../containers/Feed/components/ActivityDate.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../containers/Feed/Feed.styled.cjs.js");require("../../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("../../containers/ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/DateWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../../containers/ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../LinksManager/LinksManager.styled.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../containers/ProjectTreeTable/context/CellEditingContext.cjs.js");require("../SearchFilter/filterDates.cjs.js");require("short-uuid");require("../../containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../containers/ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../containers/ProjectTreeTable/components/SelectionCell.cjs.js");require("../../containers/ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../containers/ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../../containers/ProjectTreeTable/components/TableFooterRow.cjs.js");require("../../containers/EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../containers/Slicer/components/Slicer.cjs.js");require("../../containers/Slicer/context/SlicerContext.cjs.js");require("../../containers/Slicer/hooks/useTableDataBySlice.cjs.js");require("../../containers/DetailsPanel/DetailsPanel.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../PlayableIcon/PlayableIcon.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../containers/Actions/Actions.styled.cjs.js");require("../../containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../containers/Actions/ActionIcon.cjs.js");require("../../containers/Views/ViewsMenu/ViewsMenu.cjs.js");require("../../containers/Views/context/ViewsContextInstance.cjs.js");require("../../containers/Views/Views.styled.cjs.js");require("../../containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../containers/ListTable/ListTableRow.cjs.js");require("../../containers/ListTable/ListTable.styled.cjs.js");require("../EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../ReviewablesList/ReviewablesList.styled.cjs.js");require("../ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../EntityPath/EntityPath.styled.cjs.js");require("../EntityPath/SegmentProvider.cjs.js");require("../FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../Feedback/FeedbackContextInstance.cjs.js");require("../Feedback/SupportBubble.cjs.js");const C=require("../FileThumbnail/FileThumbnail.cjs.js");require("../LegacyBadge/LegacyBadge.cjs.js");require("../Powerpack/PowerpackButton.cjs.js");require("../Powerpack/FreeTrialLink.cjs.js");require("../Powerpack/PowerpackDialog.styled.cjs.js");require("../Powerpack/CTAButton.cjs.js");require("../Powerpack/RequiredAddonVersion.cjs.js");require("../ProjectTableSettings/ProjectTableSettings.cjs.js");require("../SizeSlider/SizeSlider.cjs.js");require("../ReviewableCard/ReviewableCard.cjs.js");require("../ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../SettingsPanel/SettingsPanel.cjs.js");require("../SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../ShareOptionIcon/ShareOptionIcon.cjs.js");require("../SimpleFormDialog/SimpleFormDialog.cjs.js");require("../StyledLink/StyledLink.cjs.js");require("../TableGridSwitch/TableGridSwitch.cjs.js");require("../Thumbnail/Thumbnail.styled.cjs.js");require("../Thumbnail/StackedThumbnails.cjs.js");require("../ThumbnailSimple/ThumbnailSimple.cjs.js");require("../VersionUploader/components/UploadVersionDialog.cjs.js");require("../VersionUploader/context/VersionUploadContext.cjs.js");require("../Watchers/Watchers.cjs.js");require("../Menu/Menu.styled.cjs.js");require("../Menu/MenuItem.cjs.js");require("./ReviewablesSelector.cjs.js");require("../ColumnHeaderMenuUI.cjs.js");const t=require("./ReviewablesSelector.styled.cjs.js");function b({fileId:r,label:s,selected:n,projectName:o,onKeyDown:a,onMouseOver:c,onChange:x,tag:u,contextMenuItems:q,selectionVariant:l="primary"}){const[m]=j.useCreateContextMenu();return i.jsxRuntimeExports.jsxs(t.ReviewableCard,{id:"preview-"+r,onClick:e=>x?.(r,e.metaKey||e.ctrlKey),className:p("reviewable-card",{selected:n},l),onMouseOver:e=>c(e,{label:s}),onKeyDown:a,onContextMenu:e=>{q&&(e.preventDefault(),m(e,q))},tabIndex:0,children:[i.jsxRuntimeExports.jsx(C.FileThumbnail,{src:`/api/projects/${o}/files/${r}/thumbnail`}),u&&i.jsxRuntimeExports.jsx(t.Tag,{children:u})]},r)}module.exports=b;
|
|
1
|
+
"use strict";const i=require("../../../../_virtual/jsx-runtime.cjs.js"),p=require("clsx");require("../AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("react");require("../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("@ynput/ayon-react-components");require("../AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../AccessUser/AccessUser.cjs.js");require("../AttributeEditor/AttributeEditor.cjs.js");require("../AttributeEditor/attributeTypeMap.cjs.js");require("../Badge/Badge.cjs.js");require("../Chips/Chips.cjs.js");require("react-dom");require("date-fns");require("../DateRangePicker/DateRangePicker.styled.cjs.js");require("../LinksManager/CellEditingDialog.cjs.js");require("react-toastify");require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/updateActivities.cjs.js");require("../../api/queries/activities/updateReaction.cjs.js");require("../../api/queries/activities/getMentions.cjs.js");require("../../api/queries/activities/getCategories.cjs.js");require("../../api/queries/addons/getAddons.cjs.js");require("../../api/queries/addons/updateAddons.cjs.js");require("../../api/queries/attributes/getAttributes.cjs.js");require("../../api/queries/attributes/updateAttributes.cjs.js");require("../../api/queries/authentication/getAuthentication.cjs.js");require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/columnStats/metricTargets.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/products/getFolderProducts.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/projectFolders/projectFolders.cjs.js");require("../../api/queries/review/getReview.cjs.js");require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/tasks/getTasks.cjs.js");require("../../api/queries/tasks/updateTasks.cjs.js");require("../../api/queries/teams/getTeams.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");require("../../../../_virtual/index.cjs.js");require("../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../util/pubsub.cjs.js");require("../DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../DetailsPanelDetails/BorderedSection.cjs.js");require("../QuillListStyles/QuillListStyles.cjs.js");require("../DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("../../containers/Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../containers/Feed/components/CommentInput/modules/index.cjs.js");require("../../context/RemoteModulesContext.cjs.js");require("../../../../_virtual/runtime.cjs.js");require("../../../../_virtual/semver.cjs.js");require("../../context/PowerpackContextInstance.cjs.js");require("../../context/UriContext.cjs.js");require("../../context/DetailsPanelContextInstance.cjs.js");require("../../context/SubtasksModulesContextInstance.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../DetailsPanelDetails/DetailsSection.cjs.js");require("../DetailsPanelDetails/FieldLabel.cjs.js");require("../DoneCheckbox/DoneCheckbox.cjs.js");require("../EarlyPreview/EarlyPreview.cjs.js");require("../EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../EnumEditor/EnumEditor.styled.cjs.js");require("../../containers/ContextMenu/ContextMenuContext.cjs.js");;/* empty css */const j=require("../../containers/ContextMenu/useCreateContextMenu.cjs.js");require("../../containers/Feed/context/FeedContext.cjs.js");require("../../containers/Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../../containers/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.cjs.js");require("../../containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../containers/Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("remark-emoji");require("remark-directive");require("remark-directive-rehype");require("../../containers/Feed/components/CommentInput/CommentInput.cjs.js");require("../../containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../containers/Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../containers/Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../containers/Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../containers/Feed/components/ActivityDate.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../containers/Feed/Feed.styled.cjs.js");require("../../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("../../containers/ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/DateWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../../containers/ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../LinksManager/LinksManager.styled.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../containers/ProjectTreeTable/context/CellEditingContext.cjs.js");require("../SearchFilter/filterDates.cjs.js");require("short-uuid");require("../../containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../containers/ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../containers/ProjectTreeTable/components/SelectionCell.cjs.js");require("../../containers/ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../containers/ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../../containers/ProjectTreeTable/components/TableFooterRow.cjs.js");require("../../containers/EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../containers/Slicer/components/Slicer.cjs.js");require("../../containers/Slicer/context/SlicerContext.cjs.js");require("../../containers/Slicer/hooks/useTableDataBySlice.cjs.js");require("../../containers/DetailsPanel/DetailsPanel.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../PlayableIcon/PlayableIcon.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../containers/Actions/Actions.styled.cjs.js");require("../../containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../containers/Actions/ActionIcon.cjs.js");require("../../containers/Views/ViewsMenu/ViewsMenu.cjs.js");require("../../containers/Views/context/ViewsContextInstance.cjs.js");require("../../containers/Views/Views.styled.cjs.js");require("../../containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../containers/ListTable/ListTableRow.cjs.js");require("../../containers/ListTable/ListTable.styled.cjs.js");require("../EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../ReviewablesList/ReviewablesList.styled.cjs.js");require("../ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../EntityPath/EntityPath.styled.cjs.js");require("../EntityPath/SegmentProvider.cjs.js");require("../FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../Feedback/FeedbackContextInstance.cjs.js");require("../Feedback/SupportBubble.cjs.js");const C=require("../FileThumbnail/FileThumbnail.cjs.js");require("../LegacyBadge/LegacyBadge.cjs.js");require("../Powerpack/PowerpackButton.cjs.js");require("../Powerpack/FreeTrialLink.cjs.js");require("../Powerpack/PowerpackDialog.styled.cjs.js");require("../Powerpack/CTAButton.cjs.js");require("../Powerpack/RequiredAddonVersion.cjs.js");require("../ProjectTableSettings/ProjectTableSettings.cjs.js");require("../SizeSlider/SizeSlider.cjs.js");require("../ReviewableCard/ReviewableCard.cjs.js");require("../ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../SettingsPanel/SettingsPanel.cjs.js");require("../SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../ShareOptionIcon/ShareOptionIcon.cjs.js");require("../SimpleFormDialog/SimpleFormDialog.cjs.js");require("../StyledLink/StyledLink.cjs.js");require("../TableGridSwitch/TableGridSwitch.cjs.js");require("../Thumbnail/Thumbnail.styled.cjs.js");require("../Thumbnail/StackedThumbnails.cjs.js");require("../ThumbnailSimple/ThumbnailSimple.cjs.js");require("../VersionUploader/components/UploadVersionDialog.cjs.js");require("../VersionUploader/context/VersionUploadContext.cjs.js");require("../Watchers/Watchers.cjs.js");require("../Menu/Menu.styled.cjs.js");require("../Menu/MenuItem.cjs.js");require("./ReviewablesSelector.cjs.js");require("../ColumnHeaderMenuUI.cjs.js");const t=require("./ReviewablesSelector.styled.cjs.js");function b({fileId:r,label:s,selected:n,projectName:o,onKeyDown:a,onMouseOver:c,onChange:x,tag:u,contextMenuItems:q,selectionVariant:l="primary"}){const[m]=j.useCreateContextMenu();return i.jsxRuntimeExports.jsxs(t.ReviewableCard,{id:"preview-"+r,onClick:e=>x?.(r,e.metaKey||e.ctrlKey),className:p("reviewable-card",{selected:n},l),onMouseOver:e=>c(e,{label:s}),onKeyDown:a,onContextMenu:e=>{q&&(e.preventDefault(),m(e,q))},tabIndex:0,children:[i.jsxRuntimeExports.jsx(C.FileThumbnail,{src:`/api/projects/${o}/files/${r}/thumbnail`}),u&&i.jsxRuntimeExports.jsx(t.Tag,{children:u})]},r)}module.exports=b;
|
|
2
2
|
//# sourceMappingURL=Card.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.cjs.js","sources":["../../../../../src/components/ReviewablesSelector/Card.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport { FileThumbnail } from '@shared/components'\nimport { ReviewableModel } from '@shared/api'\nimport { ContextMenuItemType, useCreateContextMenu } from '@shared/containers'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { KeyboardEvent, MouseEvent } from 'react'\n\nexport type ReviewableCard = Pick<ReviewableModel, 'fileId' | 'label'> & {\n tag?: JSX.Element,\n contextMenuItems?: ContextMenuItemType[],\n selectionVariant?: 'primary' | 'tertiary',\n}\n\nexport type ReviewableCardProps = ReviewableCard & {\n projectName: string | null,\n selected: boolean,\n onChange?: (fileId: string, modifier?: boolean) => void,\n onKeyDown: (event: KeyboardEvent<HTMLDivElement>) => void,\n onMouseOver: (event: MouseEvent<HTMLDivElement>, { label }: { label?: string }) => void,\n}\n\nexport default function Card({\n fileId,\n label,\n selected,\n projectName,\n onKeyDown,\n onMouseOver,\n onChange,\n tag,\n contextMenuItems,\n selectionVariant = 'primary',\n}: ReviewableCardProps) {\n const [contextMenuShow] = useCreateContextMenu()\n\n return (\n <Styled.ReviewableCard\n key={fileId}\n id={'preview-' + fileId}\n onClick={(event) => onChange?.(fileId, event.metaKey || event.ctrlKey)}\n className={clsx('reviewable-card', { selected }, selectionVariant)}\n onMouseOver={(e) => onMouseOver(e, { label })}\n onKeyDown={onKeyDown}\n onContextMenu={(event) => {\n if (!contextMenuItems) return\n\n event.preventDefault()\n contextMenuShow(event, contextMenuItems)\n }}\n tabIndex={0}\n >\n <FileThumbnail src={`/api/projects/${projectName}/files/${fileId}/thumbnail`} />\n {\n tag && <Styled.Tag>{tag}</Styled.Tag>\n }\n </Styled.ReviewableCard>\n )\n}\n"],"names":["Card","fileId","label","selected","projectName","onKeyDown","onMouseOver","onChange","tag","contextMenuItems","selectionVariant","contextMenuShow","useCreateContextMenu","jsxs","Styled.ReviewableCard","event","clsx","jsx","FileThumbnail","Styled.Tag"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Card.cjs.js","sources":["../../../../../src/components/ReviewablesSelector/Card.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport { FileThumbnail } from '@shared/components'\nimport { ReviewableModel } from '@shared/api'\nimport { ContextMenuItemType, useCreateContextMenu } from '@shared/containers'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { KeyboardEvent, MouseEvent } from 'react'\n\nexport type ReviewableCard = Pick<ReviewableModel, 'fileId' | 'label'> & {\n tag?: JSX.Element,\n contextMenuItems?: ContextMenuItemType[],\n selectionVariant?: 'primary' | 'tertiary',\n}\n\nexport type ReviewableCardProps = ReviewableCard & {\n projectName: string | null,\n selected: boolean,\n onChange?: (fileId: string, modifier?: boolean) => void,\n onKeyDown: (event: KeyboardEvent<HTMLDivElement>) => void,\n onMouseOver: (event: MouseEvent<HTMLDivElement>, { label }: { label?: string }) => void,\n}\n\nexport default function Card({\n fileId,\n label,\n selected,\n projectName,\n onKeyDown,\n onMouseOver,\n onChange,\n tag,\n contextMenuItems,\n selectionVariant = 'primary',\n}: ReviewableCardProps) {\n const [contextMenuShow] = useCreateContextMenu()\n\n return (\n <Styled.ReviewableCard\n key={fileId}\n id={'preview-' + fileId}\n onClick={(event) => onChange?.(fileId, event.metaKey || event.ctrlKey)}\n className={clsx('reviewable-card', { selected }, selectionVariant)}\n onMouseOver={(e) => onMouseOver(e, { label })}\n onKeyDown={onKeyDown}\n onContextMenu={(event) => {\n if (!contextMenuItems) return\n\n event.preventDefault()\n contextMenuShow(event, contextMenuItems)\n }}\n tabIndex={0}\n >\n <FileThumbnail src={`/api/projects/${projectName}/files/${fileId}/thumbnail`} />\n {\n tag && <Styled.Tag>{tag}</Styled.Tag>\n }\n </Styled.ReviewableCard>\n )\n}\n"],"names":["Card","fileId","label","selected","projectName","onKeyDown","onMouseOver","onChange","tag","contextMenuItems","selectionVariant","contextMenuShow","useCreateContextMenu","jsxs","Styled.ReviewableCard","event","clsx","jsx","FileThumbnail","Styled.Tag"],"mappings":"49gBAqBA,SAAwBA,EAAK,CAC3B,OAAAC,EACA,MAAAC,EACA,SAAAC,EACA,YAAAC,EACA,UAAAC,EACA,YAAAC,EACA,SAAAC,EACA,IAAAC,EACA,iBAAAC,EACA,iBAAAC,EAAmB,SACrB,EAAwB,CACtB,KAAM,CAACC,CAAe,EAAIC,uBAAA,EAE1B,OACEC,EAAAA,kBAAAA,KAACC,EAAAA,eAAA,CAEC,GAAI,WAAab,EACjB,QAAUc,GAAUR,IAAWN,EAAQc,EAAM,SAAWA,EAAM,OAAO,EACrE,UAAWC,EAAK,kBAAmB,CAAE,SAAAb,CAAA,EAAYO,CAAgB,EACjE,YAAc,GAAMJ,EAAY,EAAG,CAAE,MAAAJ,EAAO,EAC5C,UAAAG,EACA,cAAgBU,GAAU,CACnBN,IAELM,EAAM,eAAA,EACNJ,EAAgBI,EAAON,CAAgB,EACzC,EACA,SAAU,EAEV,SAAA,CAAAQ,wBAACC,EAAAA,eAAc,IAAK,iBAAiBd,CAAW,UAAUH,CAAM,aAAc,EAE5EO,GAAOS,EAAAA,kBAAAA,IAACE,EAAAA,IAAA,CAAY,SAAAX,CAAA,CAAI,CAAA,CAAA,EAhBrBP,CAAA,CAoBX"}
|
|
@@ -80,6 +80,7 @@ import "../../api/queries/entities/updateEntity.es.js";
|
|
|
80
80
|
import "../../api/queries/entityLists/getLists.es.js";
|
|
81
81
|
import "../../api/queries/entityLists/updateLists.es.js";
|
|
82
82
|
import "../../api/queries/entityLists/getListsAttributes.es.js";
|
|
83
|
+
import "../../api/queries/entityLists/listItemsColumnStats.es.js";
|
|
83
84
|
import "../../api/queries/entityLists/updateListsAttributes.es.js";
|
|
84
85
|
import "../../api/queries/entityLists/listFolders.es.js";
|
|
85
86
|
import "../../api/queries/folders/getFolders.es.js";
|
|
@@ -188,10 +189,11 @@ import "../../containers/Feed/components/ActivityStatusChange/ActivityStatusChan
|
|
|
188
189
|
import "../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
|
|
189
190
|
import "../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
|
|
190
191
|
import "../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
|
|
191
|
-
import "../../containers/Feed/
|
|
192
|
-
import "../../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
|
|
192
|
+
import "../../containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js";
|
|
193
193
|
import "../../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
|
|
194
194
|
import "../../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
|
|
195
|
+
import "../../containers/Feed/Feed.styled.es.js";
|
|
196
|
+
import "../../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
|
|
195
197
|
import "@tanstack/react-virtual";
|
|
196
198
|
import "@tanstack/react-table";
|
|
197
199
|
import "../../containers/ProjectTreeTable/widgets/CollapsedWidget.es.js";
|
|
@@ -284,7 +286,7 @@ import "../Menu/MenuItem.es.js";
|
|
|
284
286
|
import "./ReviewablesSelector.es.js";
|
|
285
287
|
import "../ColumnHeaderMenuUI.es.js";
|
|
286
288
|
import { ReviewableCard as C, Tag as b } from "./ReviewablesSelector.styled.es.js";
|
|
287
|
-
function
|
|
289
|
+
function zm({
|
|
288
290
|
fileId: o,
|
|
289
291
|
label: p,
|
|
290
292
|
selected: e,
|
|
@@ -318,6 +320,6 @@ function gm({
|
|
|
318
320
|
);
|
|
319
321
|
}
|
|
320
322
|
export {
|
|
321
|
-
|
|
323
|
+
zm as default
|
|
322
324
|
};
|
|
323
325
|
//# sourceMappingURL=Card.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.es.js","sources":["../../../../../src/components/ReviewablesSelector/Card.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport { FileThumbnail } from '@shared/components'\nimport { ReviewableModel } from '@shared/api'\nimport { ContextMenuItemType, useCreateContextMenu } from '@shared/containers'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { KeyboardEvent, MouseEvent } from 'react'\n\nexport type ReviewableCard = Pick<ReviewableModel, 'fileId' | 'label'> & {\n tag?: JSX.Element,\n contextMenuItems?: ContextMenuItemType[],\n selectionVariant?: 'primary' | 'tertiary',\n}\n\nexport type ReviewableCardProps = ReviewableCard & {\n projectName: string | null,\n selected: boolean,\n onChange?: (fileId: string, modifier?: boolean) => void,\n onKeyDown: (event: KeyboardEvent<HTMLDivElement>) => void,\n onMouseOver: (event: MouseEvent<HTMLDivElement>, { label }: { label?: string }) => void,\n}\n\nexport default function Card({\n fileId,\n label,\n selected,\n projectName,\n onKeyDown,\n onMouseOver,\n onChange,\n tag,\n contextMenuItems,\n selectionVariant = 'primary',\n}: ReviewableCardProps) {\n const [contextMenuShow] = useCreateContextMenu()\n\n return (\n <Styled.ReviewableCard\n key={fileId}\n id={'preview-' + fileId}\n onClick={(event) => onChange?.(fileId, event.metaKey || event.ctrlKey)}\n className={clsx('reviewable-card', { selected }, selectionVariant)}\n onMouseOver={(e) => onMouseOver(e, { label })}\n onKeyDown={onKeyDown}\n onContextMenu={(event) => {\n if (!contextMenuItems) return\n\n event.preventDefault()\n contextMenuShow(event, contextMenuItems)\n }}\n tabIndex={0}\n >\n <FileThumbnail src={`/api/projects/${projectName}/files/${fileId}/thumbnail`} />\n {\n tag && <Styled.Tag>{tag}</Styled.Tag>\n }\n </Styled.ReviewableCard>\n )\n}\n"],"names":["Card","fileId","label","selected","projectName","onKeyDown","onMouseOver","onChange","tag","contextMenuItems","selectionVariant","contextMenuShow","useCreateContextMenu","jsxs","Styled.ReviewableCard","event","clsx","e","jsx","FileThumbnail","Styled.Tag"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Card.es.js","sources":["../../../../../src/components/ReviewablesSelector/Card.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport { FileThumbnail } from '@shared/components'\nimport { ReviewableModel } from '@shared/api'\nimport { ContextMenuItemType, useCreateContextMenu } from '@shared/containers'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { KeyboardEvent, MouseEvent } from 'react'\n\nexport type ReviewableCard = Pick<ReviewableModel, 'fileId' | 'label'> & {\n tag?: JSX.Element,\n contextMenuItems?: ContextMenuItemType[],\n selectionVariant?: 'primary' | 'tertiary',\n}\n\nexport type ReviewableCardProps = ReviewableCard & {\n projectName: string | null,\n selected: boolean,\n onChange?: (fileId: string, modifier?: boolean) => void,\n onKeyDown: (event: KeyboardEvent<HTMLDivElement>) => void,\n onMouseOver: (event: MouseEvent<HTMLDivElement>, { label }: { label?: string }) => void,\n}\n\nexport default function Card({\n fileId,\n label,\n selected,\n projectName,\n onKeyDown,\n onMouseOver,\n onChange,\n tag,\n contextMenuItems,\n selectionVariant = 'primary',\n}: ReviewableCardProps) {\n const [contextMenuShow] = useCreateContextMenu()\n\n return (\n <Styled.ReviewableCard\n key={fileId}\n id={'preview-' + fileId}\n onClick={(event) => onChange?.(fileId, event.metaKey || event.ctrlKey)}\n className={clsx('reviewable-card', { selected }, selectionVariant)}\n onMouseOver={(e) => onMouseOver(e, { label })}\n onKeyDown={onKeyDown}\n onContextMenu={(event) => {\n if (!contextMenuItems) return\n\n event.preventDefault()\n contextMenuShow(event, contextMenuItems)\n }}\n tabIndex={0}\n >\n <FileThumbnail src={`/api/projects/${projectName}/files/${fileId}/thumbnail`} />\n {\n tag && <Styled.Tag>{tag}</Styled.Tag>\n }\n </Styled.ReviewableCard>\n )\n}\n"],"names":["Card","fileId","label","selected","projectName","onKeyDown","onMouseOver","onChange","tag","contextMenuItems","selectionVariant","contextMenuShow","useCreateContextMenu","jsxs","Styled.ReviewableCard","event","clsx","e","jsx","FileThumbnail","Styled.Tag"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,SAAwBA,GAAK;AAAA,EAC3B,QAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,KAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,kBAAAC,IAAmB;AACrB,GAAwB;AACtB,QAAM,CAACC,CAAe,IAAIC,EAAA;AAE1B,SACEC,gBAAAA,EAAAA;AAAAA,IAACC;AAAAA,IAAA;AAAA,MAEC,IAAI,aAAab;AAAA,MACjB,SAAS,CAACc,MAAUR,IAAWN,GAAQc,EAAM,WAAWA,EAAM,OAAO;AAAA,MACrE,WAAWC,EAAK,mBAAmB,EAAE,UAAAb,EAAA,GAAYO,CAAgB;AAAA,MACjE,aAAa,CAACO,MAAMX,EAAYW,GAAG,EAAE,OAAAf,GAAO;AAAA,MAC5C,WAAAG;AAAA,MACA,eAAe,CAACU,MAAU;AACxB,QAAKN,MAELM,EAAM,eAAA,GACNJ,EAAgBI,GAAON,CAAgB;AAAA,MACzC;AAAA,MACA,UAAU;AAAA,MAEV,UAAA;AAAA,QAAAS,gBAAAA,MAACC,KAAc,KAAK,iBAAiBf,CAAW,UAAUH,CAAM,cAAc;AAAA,QAE5EO,KAAOU,gBAAAA,EAAAA,IAACE,GAAA,EAAY,UAAAZ,EAAA,CAAI;AAAA,MAAA;AAAA,IAAA;AAAA,IAhBrBP;AAAA,EAAA;AAoBX;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const l=require("../../../../_virtual/jsx-runtime.cjs.js"),n=require("react"),i=require("./ReviewablesSelector.styled.cjs.js"),y=require("./Card.cjs.js"),S=n.forwardRef(({reviewables:p=[],selected:w=[],projectName:b,onChange:u,onUpload:d},j)=>{const f=n.useRef(null),a=n.useRef(null),[m,c]=n.useState(null),[R,v]=n.useState(null),x=()=>a.current?.scrollTop||0,E=e=>{const o=a.current,t=document.getElementById("preview-"+e);if(!o||!t)return;const s=o.getBoundingClientRect(),r=t.getBoundingClientRect();r.top<s.top?o.scrollTop-=s.top-r.top:r.bottom>s.bottom&&(o.scrollTop+=r.bottom-s.bottom),f.current?.updateScroll?.()};n.useImperativeHandle(j,()=>({notifyNavigation:({fileId:e,label:o})=>{requestAnimationFrame(()=>E(e)),c(o??null);const t=document.getElementById("preview-"+e);if(t){const s=t.offsetTop+t.offsetHeight/2-x();v(s),t.focus({preventScroll:!0})}}}),[]),n.useEffect(()=>{const e=o=>{o.target.closest(".reviewables")||c(null)};return window.addEventListener("mousemove",e),()=>{window.removeEventListener("mousemove",e)}},[]);const g=(e,{label:o})=>{const t=e.target.closest(".reviewable-card");if(!t)return;c(o??null);const s=t.offsetTop+t.offsetHeight/2-x();v(s)},T=e=>{if(e.key==="Enter"||e.key===" "){const o=e.target.closest(".reviewable-card");if(!o)return;const t=o.id.replace("preview-","");u&&u(t)}};return p.length?l.jsxRuntimeExports.jsxs(i.ReviewablesSelector,{children:[l.jsxRuntimeExports.jsxs(i.Scrollable,{className:"reviewables",ref:f,containerRef:e=>{a.current=e},children:[p.map(({fileId:e,label:o,tag:t,selectionVariant:s,contextMenuItems:r})=>l.jsxRuntimeExports.jsx(y,{projectName:b,fileId:e,label:o,selected:w.includes(e),selectionVariant:s,tag:t,contextMenuItems:r,onChange:u,onKeyDown:T,onMouseOver:g})),!!d&&l.jsxRuntimeExports.jsx(i.AddButton,{icon:"add",onClick:d,onMouseEnter:()=>c(null)})]}),m&&R&&l.jsxRuntimeExports.jsx(i.Label,{style:{top:R},children:m})]}):l.jsxRuntimeExports.jsx("div",{})});module.exports=S;
|
|
1
|
+
"use strict";const l=require("../../../../_virtual/jsx-runtime.cjs.js"),n=require("react"),i=require("./ReviewablesSelector.styled.cjs.js"),y=require("./Card.cjs.js"),S=n.forwardRef(({reviewables:p=[],selected:w=[],projectName:b,onChange:u,onUpload:d},j)=>{const f=n.useRef(null),a=n.useRef(null),[m,c]=n.useState(null),[R,v]=n.useState(null),x=()=>a.current?.scrollTop||0,E=e=>{const o=a.current,t=document.getElementById("preview-"+e);if(!o||!t)return;const s=o.getBoundingClientRect(),r=t.getBoundingClientRect();r.top<s.top?o.scrollTop-=s.top-r.top:r.bottom>s.bottom&&(o.scrollTop+=r.bottom-s.bottom),f.current?.updateScroll?.()};n.useImperativeHandle(j,()=>({notifyNavigation:({fileId:e,label:o})=>{requestAnimationFrame(()=>E(e)),c(o??null);const t=document.getElementById("preview-"+e);if(t){const s=t.offsetTop+t.offsetHeight/2-x();v(s),t.focus({preventScroll:!0})}}}),[]),n.useEffect(()=>{const e=o=>{o.target.closest(".reviewables")||c(null)};return window.addEventListener("mousemove",e),()=>{window.removeEventListener("mousemove",e)}},[]);const g=(e,{label:o})=>{const t=e.target.closest(".reviewable-card");if(!t)return;c(o??null);const s=t.offsetTop+t.offsetHeight/2-x();v(s)},T=e=>{if(e.key==="Enter"||e.key===" "){const o=e.target.closest(".reviewable-card");if(!o)return;const t=o.id.replace("preview-","");u&&u(t)}};return p.length?l.jsxRuntimeExports.jsxs(i.ReviewablesSelector,{children:[l.jsxRuntimeExports.jsxs(i.Scrollable,{className:"reviewables",ref:f,containerRef:e=>{a.current=e},children:[p.map(({fileId:e,label:o,tag:t,selectionVariant:s,contextMenuItems:r})=>l.jsxRuntimeExports.jsx(y,{projectName:b,fileId:e,label:o,selected:w.includes(e),selectionVariant:s,tag:t,contextMenuItems:r,onChange:u,onKeyDown:T,onMouseOver:g},e)),!!d&&l.jsxRuntimeExports.jsx(i.AddButton,{icon:"add",onClick:d,onMouseEnter:()=>c(null)})]}),m&&R&&l.jsxRuntimeExports.jsx(i.Label,{style:{top:R},children:m})]}):l.jsxRuntimeExports.jsx("div",{})});module.exports=S;
|
|
2
2
|
//# sourceMappingURL=ReviewablesSelector.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReviewablesSelector.cjs.js","sources":["../../../../../src/components/ReviewablesSelector/ReviewablesSelector.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport ScrollBar from 'react-perfect-scrollbar'\nimport Card, { ReviewableCard, ReviewableCardProps } from './Card'\n\ninterface ReviewablesSelectorProps {\n reviewables: ReviewableCard[]\n selected: string[]\n projectName: string | null\n onChange?: (fileId: string, modifier?: boolean) => void\n onUpload?: () => void\n}\n\nexport type ReviewablesSelectorHandle = {\n notifyNavigation: (next: { fileId: string; label?: string | null }) => void\n}\n\nconst ReviewablesSelector = forwardRef<ReviewablesSelectorHandle, ReviewablesSelectorProps>(({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}, ref) => {\n const scrollRef = useRef<ScrollBar>(null)\n const scrollContainerRef = useRef<HTMLElement | null>(null)\n const [labelTooltip, setLabelTooltip] = useState<null | string>(null)\n const [labelTooltipYPos, setLabelTooltipYPos] = useState<null | number>(null)\n\n const getScrollTop = (): number => {\n return scrollContainerRef.current?.scrollTop || 0\n }\n\n const scrollReviewableIntoView = (fileId: string) => {\n const container = scrollContainerRef.current\n const el = document.getElementById('preview-' + fileId)\n if (!container || !el) return\n\n const containerRect = container.getBoundingClientRect()\n const itemRect = el.getBoundingClientRect()\n\n if (itemRect.top < containerRect.top) {\n container.scrollTop -= containerRect.top - itemRect.top\n } else if (itemRect.bottom > containerRect.bottom) {\n container.scrollTop += itemRect.bottom - containerRect.bottom\n }\n\n // keep the custom scrollbar thumb in sync with manual scrollTop updates\n // @ts-ignore\n scrollRef.current?.updateScroll?.()\n }\n\n // Imperative hook for the parent: keyboard nav lives upstream so it works\n // in theatre mode (where this component is unmounted). When nav happens,\n // we still update scroll + tooltip via this handle.\n useImperativeHandle(\n ref,\n () => ({\n notifyNavigation: ({ fileId, label }) => {\n requestAnimationFrame(() => scrollReviewableIntoView(fileId))\n setLabelTooltip(label ?? null)\n const el = document.getElementById('preview-' + fileId)\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n el.focus({ preventScroll: true })\n }\n },\n }),\n [],\n )\n\n // keep track of when NOT hovering over the reviewable cards\n useEffect(() => {\n const handleMouseMove = (event: MouseEvent) => {\n // check if the mouse is over a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewables')\n if (!closest) {\n setLabelTooltip(null)\n }\n }\n\n window.addEventListener('mousemove', handleMouseMove)\n\n return () => {\n window.removeEventListener('mousemove', handleMouseMove)\n }\n }, [])\n\n const handleMouseOver = (\n event: React.MouseEvent<HTMLDivElement>,\n { label }: Pick<ReviewableCardProps, 'label'>,\n ) => {\n // check event is coming from a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n setLabelTooltip(label ?? null)\n // set label tooltip position\n const top = closest.offsetTop + closest.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n\n // select with enter or space key when focused on a reviewable card\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n const fileId = closest.id.replace('preview-', '')\n onChange && onChange(fileId)\n }\n }\n\n // if no reviewables, return null\n if (!reviewables.length) return <div />\n\n return (\n <Styled.ReviewablesSelector>\n <Styled.Scrollable\n className=\"reviewables\"\n ref={scrollRef}\n containerRef={(el) => {\n scrollContainerRef.current = el\n }}\n >\n {reviewables.map(({ fileId, label, tag, selectionVariant, contextMenuItems }) => (\n <Card\n projectName={projectName}\n fileId={fileId}\n label={label}\n selected={selected.includes(fileId)}\n selectionVariant={selectionVariant}\n tag={tag}\n contextMenuItems={contextMenuItems}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n onMouseOver={handleMouseOver}\n />\n ))}\n {!!onUpload && (\n <Styled.AddButton\n icon=\"add\"\n onClick={onUpload}\n onMouseEnter={() => setLabelTooltip(null)}\n />\n )}\n </Styled.Scrollable>\n {labelTooltip && labelTooltipYPos && (\n <Styled.Label style={{ top: labelTooltipYPos }}>{labelTooltip}</Styled.Label>\n )}\n </Styled.ReviewablesSelector>\n )\n})\n\nexport default ReviewablesSelector\n"],"names":["ReviewablesSelector","forwardRef","reviewables","selected","projectName","onChange","onUpload","ref","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useImperativeHandle","label","top","useEffect","handleMouseMove","event","handleMouseOver","closest","handleKeyDown","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","tag","selectionVariant","contextMenuItems","jsx","Card","Styled.AddButton","Styled.Label"],"mappings":"uKAiBMA,EAAsBC,EAAAA,WAAgE,CAAC,CAC3F,YAAAC,EAAc,CAAA,EACd,SAAAC,EAAW,CAAA,EACX,YAAAC,EACA,SAAAC,EACA,SAAAC,CACF,EAAGC,IAAQ,CACT,MAAMC,EAAYC,EAAAA,OAAkB,IAAI,EAClCC,EAAqBD,EAAAA,OAA2B,IAAI,EACpD,CAACE,EAAcC,CAAe,EAAIC,EAAAA,SAAwB,IAAI,EAC9D,CAACC,EAAkBC,CAAmB,EAAIF,EAAAA,SAAwB,IAAI,EAEtEG,EAAe,IACZN,EAAmB,SAAS,WAAa,EAG5CO,EAA4BC,GAAmB,CACnD,MAAMC,EAAYT,EAAmB,QAC/BU,EAAK,SAAS,eAAe,WAAaF,CAAM,EACtD,GAAI,CAACC,GAAa,CAACC,EAAI,OAEvB,MAAMC,EAAgBF,EAAU,sBAAA,EAC1BG,EAAWF,EAAG,sBAAA,EAEhBE,EAAS,IAAMD,EAAc,IAC/BF,EAAU,WAAaE,EAAc,IAAMC,EAAS,IAC3CA,EAAS,OAASD,EAAc,SACzCF,EAAU,WAAaG,EAAS,OAASD,EAAc,QAKzDb,EAAU,SAAS,eAAA,CACrB,EAKAe,EAAAA,oBACEhB,EACA,KAAO,CACL,iBAAkB,CAAC,CAAE,OAAAW,EAAQ,MAAAM,KAAY,CACvC,sBAAsB,IAAMP,EAAyBC,CAAM,CAAC,EAC5DN,EAAgBY,GAAS,IAAI,EAC7B,MAAMJ,EAAK,SAAS,eAAe,WAAaF,CAAM,EACtD,GAAIE,EAAI,CACN,MAAMK,EAAML,EAAG,UAAYA,EAAG,aAAe,EAAIJ,EAAA,EACjDD,EAAoBU,CAAG,EACvBL,EAAG,MAAM,CAAE,cAAe,EAAA,CAAM,CAClC,CACF,CAAA,GAEF,CAAA,CAAC,EAIHM,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAmBC,GAAsB,CAE5BA,EAAM,OAAuB,QAAQ,cAAc,GAElEhB,EAAgB,IAAI,CAExB,EAEA,cAAO,iBAAiB,YAAae,CAAe,EAE7C,IAAM,CACX,OAAO,oBAAoB,YAAaA,CAAe,CACzD,CACF,EAAG,CAAA,CAAE,EAEL,MAAME,EAAkB,CACtBD,EACA,CAAE,MAAAJ,KACC,CAEH,MAAMM,EAAWF,EAAM,OAAuB,QAAQ,kBAAkB,EACxE,GAAI,CAACE,EAAS,OACdlB,EAAgBY,GAAS,IAAI,EAE7B,MAAMC,EAAMK,EAAQ,UAAYA,EAAQ,aAAe,EAAId,EAAA,EAC3DD,EAAoBU,CAAG,CACzB,EAGMM,EAAiBH,GAA+C,CACpE,GAAIA,EAAM,MAAQ,SAAWA,EAAM,MAAQ,IAAK,CAC9C,MAAME,EAAWF,EAAM,OAAuB,QAAQ,kBAAkB,EACxE,GAAI,CAACE,EAAS,OACd,MAAMZ,EAASY,EAAQ,GAAG,QAAQ,WAAY,EAAE,EAChDzB,GAAYA,EAASa,CAAM,CAC7B,CACF,EAGA,OAAKhB,EAAY,OAGf8B,EAAAA,kBAAAA,KAACC,sBAAA,CACC,SAAA,CAAAD,EAAAA,kBAAAA,KAACE,EAAAA,WAAA,CACC,UAAU,cACV,IAAK1B,EACL,aAAeY,GAAO,CACpBV,EAAmB,QAAUU,CAC/B,EAEC,SAAA,CAAAlB,EAAY,IAAI,CAAC,CAAE,OAAAgB,EAAQ,MAAAM,EAAO,IAAAW,EAAK,iBAAAC,EAAkB,iBAAAC,KACxDC,EAAAA,kBAAAA,IAACC,EAAA,
|
|
1
|
+
{"version":3,"file":"ReviewablesSelector.cjs.js","sources":["../../../../../src/components/ReviewablesSelector/ReviewablesSelector.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport ScrollBar from 'react-perfect-scrollbar'\nimport Card, { ReviewableCard, ReviewableCardProps } from './Card'\n\ninterface ReviewablesSelectorProps {\n reviewables: ReviewableCard[]\n selected: string[]\n projectName: string | null\n onChange?: (fileId: string, modifier?: boolean) => void\n onUpload?: () => void\n}\n\nexport type ReviewablesSelectorHandle = {\n notifyNavigation: (next: { fileId: string; label?: string | null }) => void\n}\n\nconst ReviewablesSelector = forwardRef<ReviewablesSelectorHandle, ReviewablesSelectorProps>(({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}, ref) => {\n const scrollRef = useRef<ScrollBar>(null)\n const scrollContainerRef = useRef<HTMLElement | null>(null)\n const [labelTooltip, setLabelTooltip] = useState<null | string>(null)\n const [labelTooltipYPos, setLabelTooltipYPos] = useState<null | number>(null)\n\n const getScrollTop = (): number => {\n return scrollContainerRef.current?.scrollTop || 0\n }\n\n const scrollReviewableIntoView = (fileId: string) => {\n const container = scrollContainerRef.current\n const el = document.getElementById('preview-' + fileId)\n if (!container || !el) return\n\n const containerRect = container.getBoundingClientRect()\n const itemRect = el.getBoundingClientRect()\n\n if (itemRect.top < containerRect.top) {\n container.scrollTop -= containerRect.top - itemRect.top\n } else if (itemRect.bottom > containerRect.bottom) {\n container.scrollTop += itemRect.bottom - containerRect.bottom\n }\n\n // keep the custom scrollbar thumb in sync with manual scrollTop updates\n // @ts-ignore\n scrollRef.current?.updateScroll?.()\n }\n\n // Imperative hook for the parent: keyboard nav lives upstream so it works\n // in theatre mode (where this component is unmounted). When nav happens,\n // we still update scroll + tooltip via this handle.\n useImperativeHandle(\n ref,\n () => ({\n notifyNavigation: ({ fileId, label }) => {\n requestAnimationFrame(() => scrollReviewableIntoView(fileId))\n setLabelTooltip(label ?? null)\n const el = document.getElementById('preview-' + fileId)\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n el.focus({ preventScroll: true })\n }\n },\n }),\n [],\n )\n\n // keep track of when NOT hovering over the reviewable cards\n useEffect(() => {\n const handleMouseMove = (event: MouseEvent) => {\n // check if the mouse is over a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewables')\n if (!closest) {\n setLabelTooltip(null)\n }\n }\n\n window.addEventListener('mousemove', handleMouseMove)\n\n return () => {\n window.removeEventListener('mousemove', handleMouseMove)\n }\n }, [])\n\n const handleMouseOver = (\n event: React.MouseEvent<HTMLDivElement>,\n { label }: Pick<ReviewableCardProps, 'label'>,\n ) => {\n // check event is coming from a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n setLabelTooltip(label ?? null)\n // set label tooltip position\n const top = closest.offsetTop + closest.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n\n // select with enter or space key when focused on a reviewable card\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n const fileId = closest.id.replace('preview-', '')\n onChange && onChange(fileId)\n }\n }\n\n // if no reviewables, return null\n if (!reviewables.length) return <div />\n\n return (\n <Styled.ReviewablesSelector>\n <Styled.Scrollable\n className=\"reviewables\"\n ref={scrollRef}\n containerRef={(el) => {\n scrollContainerRef.current = el\n }}\n >\n {reviewables.map(({ fileId, label, tag, selectionVariant, contextMenuItems }) => (\n <Card\n key={fileId}\n projectName={projectName}\n fileId={fileId}\n label={label}\n selected={selected.includes(fileId)}\n selectionVariant={selectionVariant}\n tag={tag}\n contextMenuItems={contextMenuItems}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n onMouseOver={handleMouseOver}\n />\n ))}\n {!!onUpload && (\n <Styled.AddButton\n icon=\"add\"\n onClick={onUpload}\n onMouseEnter={() => setLabelTooltip(null)}\n />\n )}\n </Styled.Scrollable>\n {labelTooltip && labelTooltipYPos && (\n <Styled.Label style={{ top: labelTooltipYPos }}>{labelTooltip}</Styled.Label>\n )}\n </Styled.ReviewablesSelector>\n )\n})\n\nexport default ReviewablesSelector\n"],"names":["ReviewablesSelector","forwardRef","reviewables","selected","projectName","onChange","onUpload","ref","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useImperativeHandle","label","top","useEffect","handleMouseMove","event","handleMouseOver","closest","handleKeyDown","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","tag","selectionVariant","contextMenuItems","jsx","Card","Styled.AddButton","Styled.Label"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReviewablesSelector.es.js","sources":["../../../../../src/components/ReviewablesSelector/ReviewablesSelector.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport ScrollBar from 'react-perfect-scrollbar'\nimport Card, { ReviewableCard, ReviewableCardProps } from './Card'\n\ninterface ReviewablesSelectorProps {\n reviewables: ReviewableCard[]\n selected: string[]\n projectName: string | null\n onChange?: (fileId: string, modifier?: boolean) => void\n onUpload?: () => void\n}\n\nexport type ReviewablesSelectorHandle = {\n notifyNavigation: (next: { fileId: string; label?: string | null }) => void\n}\n\nconst ReviewablesSelector = forwardRef<ReviewablesSelectorHandle, ReviewablesSelectorProps>(({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}, ref) => {\n const scrollRef = useRef<ScrollBar>(null)\n const scrollContainerRef = useRef<HTMLElement | null>(null)\n const [labelTooltip, setLabelTooltip] = useState<null | string>(null)\n const [labelTooltipYPos, setLabelTooltipYPos] = useState<null | number>(null)\n\n const getScrollTop = (): number => {\n return scrollContainerRef.current?.scrollTop || 0\n }\n\n const scrollReviewableIntoView = (fileId: string) => {\n const container = scrollContainerRef.current\n const el = document.getElementById('preview-' + fileId)\n if (!container || !el) return\n\n const containerRect = container.getBoundingClientRect()\n const itemRect = el.getBoundingClientRect()\n\n if (itemRect.top < containerRect.top) {\n container.scrollTop -= containerRect.top - itemRect.top\n } else if (itemRect.bottom > containerRect.bottom) {\n container.scrollTop += itemRect.bottom - containerRect.bottom\n }\n\n // keep the custom scrollbar thumb in sync with manual scrollTop updates\n // @ts-ignore\n scrollRef.current?.updateScroll?.()\n }\n\n // Imperative hook for the parent: keyboard nav lives upstream so it works\n // in theatre mode (where this component is unmounted). When nav happens,\n // we still update scroll + tooltip via this handle.\n useImperativeHandle(\n ref,\n () => ({\n notifyNavigation: ({ fileId, label }) => {\n requestAnimationFrame(() => scrollReviewableIntoView(fileId))\n setLabelTooltip(label ?? null)\n const el = document.getElementById('preview-' + fileId)\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n el.focus({ preventScroll: true })\n }\n },\n }),\n [],\n )\n\n // keep track of when NOT hovering over the reviewable cards\n useEffect(() => {\n const handleMouseMove = (event: MouseEvent) => {\n // check if the mouse is over a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewables')\n if (!closest) {\n setLabelTooltip(null)\n }\n }\n\n window.addEventListener('mousemove', handleMouseMove)\n\n return () => {\n window.removeEventListener('mousemove', handleMouseMove)\n }\n }, [])\n\n const handleMouseOver = (\n event: React.MouseEvent<HTMLDivElement>,\n { label }: Pick<ReviewableCardProps, 'label'>,\n ) => {\n // check event is coming from a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n setLabelTooltip(label ?? null)\n // set label tooltip position\n const top = closest.offsetTop + closest.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n\n // select with enter or space key when focused on a reviewable card\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n const fileId = closest.id.replace('preview-', '')\n onChange && onChange(fileId)\n }\n }\n\n // if no reviewables, return null\n if (!reviewables.length) return <div />\n\n return (\n <Styled.ReviewablesSelector>\n <Styled.Scrollable\n className=\"reviewables\"\n ref={scrollRef}\n containerRef={(el) => {\n scrollContainerRef.current = el\n }}\n >\n {reviewables.map(({ fileId, label, tag, selectionVariant, contextMenuItems }) => (\n <Card\n projectName={projectName}\n fileId={fileId}\n label={label}\n selected={selected.includes(fileId)}\n selectionVariant={selectionVariant}\n tag={tag}\n contextMenuItems={contextMenuItems}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n onMouseOver={handleMouseOver}\n />\n ))}\n {!!onUpload && (\n <Styled.AddButton\n icon=\"add\"\n onClick={onUpload}\n onMouseEnter={() => setLabelTooltip(null)}\n />\n )}\n </Styled.Scrollable>\n {labelTooltip && labelTooltipYPos && (\n <Styled.Label style={{ top: labelTooltipYPos }}>{labelTooltip}</Styled.Label>\n )}\n </Styled.ReviewablesSelector>\n )\n})\n\nexport default ReviewablesSelector\n"],"names":["ReviewablesSelector","forwardRef","reviewables","selected","projectName","onChange","onUpload","ref","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useImperativeHandle","label","top","useEffect","handleMouseMove","event","handleMouseOver","closest","handleKeyDown","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","tag","selectionVariant","contextMenuItems","jsx","Card","Styled.AddButton","Styled.Label"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ReviewablesSelector.es.js","sources":["../../../../../src/components/ReviewablesSelector/ReviewablesSelector.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport ScrollBar from 'react-perfect-scrollbar'\nimport Card, { ReviewableCard, ReviewableCardProps } from './Card'\n\ninterface ReviewablesSelectorProps {\n reviewables: ReviewableCard[]\n selected: string[]\n projectName: string | null\n onChange?: (fileId: string, modifier?: boolean) => void\n onUpload?: () => void\n}\n\nexport type ReviewablesSelectorHandle = {\n notifyNavigation: (next: { fileId: string; label?: string | null }) => void\n}\n\nconst ReviewablesSelector = forwardRef<ReviewablesSelectorHandle, ReviewablesSelectorProps>(({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}, ref) => {\n const scrollRef = useRef<ScrollBar>(null)\n const scrollContainerRef = useRef<HTMLElement | null>(null)\n const [labelTooltip, setLabelTooltip] = useState<null | string>(null)\n const [labelTooltipYPos, setLabelTooltipYPos] = useState<null | number>(null)\n\n const getScrollTop = (): number => {\n return scrollContainerRef.current?.scrollTop || 0\n }\n\n const scrollReviewableIntoView = (fileId: string) => {\n const container = scrollContainerRef.current\n const el = document.getElementById('preview-' + fileId)\n if (!container || !el) return\n\n const containerRect = container.getBoundingClientRect()\n const itemRect = el.getBoundingClientRect()\n\n if (itemRect.top < containerRect.top) {\n container.scrollTop -= containerRect.top - itemRect.top\n } else if (itemRect.bottom > containerRect.bottom) {\n container.scrollTop += itemRect.bottom - containerRect.bottom\n }\n\n // keep the custom scrollbar thumb in sync with manual scrollTop updates\n // @ts-ignore\n scrollRef.current?.updateScroll?.()\n }\n\n // Imperative hook for the parent: keyboard nav lives upstream so it works\n // in theatre mode (where this component is unmounted). When nav happens,\n // we still update scroll + tooltip via this handle.\n useImperativeHandle(\n ref,\n () => ({\n notifyNavigation: ({ fileId, label }) => {\n requestAnimationFrame(() => scrollReviewableIntoView(fileId))\n setLabelTooltip(label ?? null)\n const el = document.getElementById('preview-' + fileId)\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n el.focus({ preventScroll: true })\n }\n },\n }),\n [],\n )\n\n // keep track of when NOT hovering over the reviewable cards\n useEffect(() => {\n const handleMouseMove = (event: MouseEvent) => {\n // check if the mouse is over a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewables')\n if (!closest) {\n setLabelTooltip(null)\n }\n }\n\n window.addEventListener('mousemove', handleMouseMove)\n\n return () => {\n window.removeEventListener('mousemove', handleMouseMove)\n }\n }, [])\n\n const handleMouseOver = (\n event: React.MouseEvent<HTMLDivElement>,\n { label }: Pick<ReviewableCardProps, 'label'>,\n ) => {\n // check event is coming from a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n setLabelTooltip(label ?? null)\n // set label tooltip position\n const top = closest.offsetTop + closest.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n\n // select with enter or space key when focused on a reviewable card\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n const fileId = closest.id.replace('preview-', '')\n onChange && onChange(fileId)\n }\n }\n\n // if no reviewables, return null\n if (!reviewables.length) return <div />\n\n return (\n <Styled.ReviewablesSelector>\n <Styled.Scrollable\n className=\"reviewables\"\n ref={scrollRef}\n containerRef={(el) => {\n scrollContainerRef.current = el\n }}\n >\n {reviewables.map(({ fileId, label, tag, selectionVariant, contextMenuItems }) => (\n <Card\n key={fileId}\n projectName={projectName}\n fileId={fileId}\n label={label}\n selected={selected.includes(fileId)}\n selectionVariant={selectionVariant}\n tag={tag}\n contextMenuItems={contextMenuItems}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n onMouseOver={handleMouseOver}\n />\n ))}\n {!!onUpload && (\n <Styled.AddButton\n icon=\"add\"\n onClick={onUpload}\n onMouseEnter={() => setLabelTooltip(null)}\n />\n )}\n </Styled.Scrollable>\n {labelTooltip && labelTooltipYPos && (\n <Styled.Label style={{ top: labelTooltipYPos }}>{labelTooltip}</Styled.Label>\n )}\n </Styled.ReviewablesSelector>\n )\n})\n\nexport default ReviewablesSelector\n"],"names":["ReviewablesSelector","forwardRef","reviewables","selected","projectName","onChange","onUpload","ref","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useImperativeHandle","label","top","useEffect","handleMouseMove","event","handleMouseOver","closest","handleKeyDown","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","tag","selectionVariant","contextMenuItems","jsx","Card","Styled.AddButton","Styled.Label"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=["status","tags","attributes","createdAt","updatedAt"],s={folder:[...e,"name","folderType"],task:[...e,"name","taskType","folderType","assignees"],version:[...e,"productType","productBaseType","author","version","hasReviewables","taskType","folderType"],product:[...e,"productName","productBaseType"],user:[...e]},d=(r,a)=>r.map(t=>({scope:t,filterTypes:s[t].filter(o=>!a?.[t]?.includes(o))}));exports.FILTER_TYPES_BY_SCOPE=s;exports.buildScopes=d;
|
|
2
|
+
//# sourceMappingURL=filterScopeRegistry.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filterScopeRegistry.cjs.js","sources":["../../../../../src/components/SearchFilter/filterScopeRegistry.ts"],"sourcesContent":["import type { FilterFieldType, ScopeWithFilterTypes } from '@shared/components'\n\ntype ScopeType = ScopeWithFilterTypes['scope']\n\nconst BASE: FilterFieldType[] = ['status', 'tags', 'attributes', 'createdAt', 'updatedAt']\n\n// Single source of truth for which filter options each entity scope offers.\n// Pages differ only by which scopes they include, never by the field list per scope.\nexport const FILTER_TYPES_BY_SCOPE: Record<ScopeType, FilterFieldType[]> = {\n folder: [...BASE, 'name', 'folderType'],\n task: [...BASE, 'name', 'taskType', 'folderType', 'assignees'],\n version: [\n ...BASE,\n 'productType',\n 'productBaseType',\n 'author',\n 'version',\n 'hasReviewables',\n 'taskType',\n 'folderType',\n ],\n product: [...BASE, 'productName', 'productBaseType'],\n user: [...BASE],\n}\n\n// exclude lets a page subtract fields its backend endpoint cannot filter by,\n// but never add page-specific ones — additions belong in FILTER_TYPES_BY_SCOPE.\nexport const buildScopes = (\n scopes: ScopeType[],\n exclude?: Partial<Record<ScopeType, FilterFieldType[]>>,\n): ScopeWithFilterTypes[] =>\n scopes.map((scope) => ({\n scope,\n filterTypes: FILTER_TYPES_BY_SCOPE[scope].filter((t) => !exclude?.[scope]?.includes(t)),\n }))\n"],"names":["BASE","FILTER_TYPES_BY_SCOPE","buildScopes","scopes","exclude","scope","t"],"mappings":"gFAIA,MAAMA,EAA0B,CAAC,SAAU,OAAQ,aAAc,YAAa,WAAW,EAI5EC,EAA8D,CACzE,OAAQ,CAAC,GAAGD,EAAM,OAAQ,YAAY,EACtC,KAAM,CAAC,GAAGA,EAAM,OAAQ,WAAY,aAAc,WAAW,EAC7D,QAAS,CACP,GAAGA,EACH,cACA,kBACA,SACA,UACA,iBACA,WACA,YAAA,EAEF,QAAS,CAAC,GAAGA,EAAM,cAAe,iBAAiB,EACnD,KAAM,CAAC,GAAGA,CAAI,CAChB,EAIaE,EAAc,CACzBC,EACAC,IAEAD,EAAO,IAAKE,IAAW,CACrB,MAAAA,EACA,YAAaJ,EAAsBI,CAAK,EAAE,OAAQC,GAAM,CAACF,IAAUC,CAAK,GAAG,SAASC,CAAC,CAAC,CACxF,EAAE"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
const e = ["status", "tags", "attributes", "createdAt", "updatedAt"], p = {
|
|
2
|
+
folder: [...e, "name", "folderType"],
|
|
3
|
+
task: [...e, "name", "taskType", "folderType", "assignees"],
|
|
4
|
+
version: [
|
|
5
|
+
...e,
|
|
6
|
+
"productType",
|
|
7
|
+
"productBaseType",
|
|
8
|
+
"author",
|
|
9
|
+
"version",
|
|
10
|
+
"hasReviewables",
|
|
11
|
+
"taskType",
|
|
12
|
+
"folderType"
|
|
13
|
+
],
|
|
14
|
+
product: [...e, "productName", "productBaseType"],
|
|
15
|
+
user: [...e]
|
|
16
|
+
}, o = (s, a) => s.map((t) => ({
|
|
17
|
+
scope: t,
|
|
18
|
+
filterTypes: p[t].filter((r) => !a?.[t]?.includes(r))
|
|
19
|
+
}));
|
|
20
|
+
export {
|
|
21
|
+
p as FILTER_TYPES_BY_SCOPE,
|
|
22
|
+
o as buildScopes
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=filterScopeRegistry.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filterScopeRegistry.es.js","sources":["../../../../../src/components/SearchFilter/filterScopeRegistry.ts"],"sourcesContent":["import type { FilterFieldType, ScopeWithFilterTypes } from '@shared/components'\n\ntype ScopeType = ScopeWithFilterTypes['scope']\n\nconst BASE: FilterFieldType[] = ['status', 'tags', 'attributes', 'createdAt', 'updatedAt']\n\n// Single source of truth for which filter options each entity scope offers.\n// Pages differ only by which scopes they include, never by the field list per scope.\nexport const FILTER_TYPES_BY_SCOPE: Record<ScopeType, FilterFieldType[]> = {\n folder: [...BASE, 'name', 'folderType'],\n task: [...BASE, 'name', 'taskType', 'folderType', 'assignees'],\n version: [\n ...BASE,\n 'productType',\n 'productBaseType',\n 'author',\n 'version',\n 'hasReviewables',\n 'taskType',\n 'folderType',\n ],\n product: [...BASE, 'productName', 'productBaseType'],\n user: [...BASE],\n}\n\n// exclude lets a page subtract fields its backend endpoint cannot filter by,\n// but never add page-specific ones — additions belong in FILTER_TYPES_BY_SCOPE.\nexport const buildScopes = (\n scopes: ScopeType[],\n exclude?: Partial<Record<ScopeType, FilterFieldType[]>>,\n): ScopeWithFilterTypes[] =>\n scopes.map((scope) => ({\n scope,\n filterTypes: FILTER_TYPES_BY_SCOPE[scope].filter((t) => !exclude?.[scope]?.includes(t)),\n }))\n"],"names":["BASE","FILTER_TYPES_BY_SCOPE","buildScopes","scopes","exclude","scope","t"],"mappings":"AAIA,MAAMA,IAA0B,CAAC,UAAU,QAAQ,cAAc,aAAa,WAAW,GAI5EC,IAA8D;AAAA,EACzE,QAAQ,CAAC,GAAGD,GAAM,QAAQ,YAAY;AAAA,EACtC,MAAM,CAAC,GAAGA,GAAM,QAAQ,YAAY,cAAc,WAAW;AAAA,EAC7D,SAAS;AAAA,IACP,GAAGA;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAAA,EAEF,SAAS,CAAC,GAAGA,GAAM,eAAe,iBAAiB;AAAA,EACnD,MAAM,CAAC,GAAGA,CAAI;AAChB,GAIaE,IAAc,CACzBC,GACAC,MAEAD,EAAO,IAAI,CAACE,OAAW;AAAA,EACrB,OAAAA;AAAA,EACA,aAAaJ,EAAsBI,CAAK,EAAE,OAAO,CAACC,MAAM,CAACF,IAAUC,CAAK,GAAG,SAASC,CAAC,CAAC;AACxF,EAAE;"}
|