@ynput/ayon-frontend-shared 0.3.51 → 0.3.53
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 +33 -31
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/NewEntity.cjs.js +2 -0
- package/dist/NewEntity.cjs.js.map +1 -0
- package/dist/NewEntity.es.js +16 -0
- package/dist/NewEntity.es.js.map +1 -0
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +236 -230
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +34 -30
- package/dist/Slicer.es.js.map +1 -1
- package/dist/_virtual/index.cjs4.js +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.es4.js +4 -4
- package/dist/_virtual/index.es5.js +4 -4
- package/dist/_virtual/index.es6.js +2 -2
- package/dist/_virtual/index.es7.js +2 -2
- package/dist/context.cjs.js +1 -1
- package/dist/context.es.js +54 -56
- package/dist/context.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +20 -18
- 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/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.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/queries/actions/refreshActiveAndPurgeOthers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/actions/refreshActiveAndPurgeOthers.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 +31 -21
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +55 -52
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.es.js +129 -127
- package/dist/shared/src/api/queries/entities/updateEntity.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 +96 -93
- package/dist/shared/src/api/queries/overview/updateOverview.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 +40 -38
- package/dist/shared/src/components/ColumnHeaderMenuUI.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 +13 -11
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +40 -38
- 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 +40 -38
- 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 +40 -38
- 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 +40 -38
- 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 +40 -38
- 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 +13 -11
- 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 +40 -38
- package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js +44 -42
- package/dist/shared/src/components/Feedback/FeedbackContext.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 +40 -38
- 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 +40 -38
- 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 +40 -38
- 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 +40 -38
- 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 +40 -38
- 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 +38 -36
- 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 +40 -38
- 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 +40 -38
- 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 +40 -38
- package/dist/shared/src/components/Powerpack/PowerpackDialog.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 +11 -9
- 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 +9 -7
- 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 +40 -38
- 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 +113 -111
- 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 +40 -38
- 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 +40 -38
- package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +13 -11
- 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 +14 -12
- 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 +13 -11
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js +13 -11
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +76 -74
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js +1 -1
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.es.js +43 -41
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.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 +40 -38
- 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 +15 -13
- 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 +13 -11
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/SyncButton/SyncButton.cjs.js +1 -1
- package/dist/shared/src/components/SyncButton/SyncButton.cjs.js.map +1 -1
- package/dist/shared/src/components/SyncButton/SyncButton.es.js +2 -3
- package/dist/shared/src/components/SyncButton/SyncButton.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 +40 -38
- 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 +13 -11
- 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 +17 -15
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +13 -11
- 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 +40 -38
- 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 +13 -11
- 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 +13 -11
- 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 +13 -11
- 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 +13 -11
- 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 +118 -119
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js +40 -38
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +13 -11
- 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 +13 -11
- 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 +40 -38
- 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 +21 -19
- 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 +13 -11
- 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 +7 -5
- 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 +5 -3
- 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 +40 -38
- 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 +12 -10
- 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 +13 -11
- 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 +13 -11
- 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 +13 -11
- 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 +40 -38
- 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 +6 -4
- 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 +13 -11
- 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 +13 -11
- 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 +13 -11
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.es.js +171 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/{ActivityStatusChange/ActivityStatusChange.styled.cjs.js → ActivityFieldChange/ActivityFieldChange.styled.cjs.js} +5 -11
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.styled.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/{ActivityStatusChange/ActivityStatusChange.styled.es.js → ActivityFieldChange/ActivityFieldChange.styled.es.js} +8 -14
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.styled.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/FieldValue.cjs.js +21 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/FieldValue.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/FieldValue.es.js +36 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/FieldValue.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/hooks/getContextParents.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/hooks/getContextParents.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/hooks/getContextParents.es.js +8 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/hooks/getContextParents.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityGroup/ActivityGroup.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityGroup/ActivityGroup.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 +36 -25
- package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +15 -13
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +52 -57
- 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 +34 -32
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +17 -15
- 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 +40 -38
- 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 +40 -38
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +37 -35
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +40 -38
- 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 +7 -5
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.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 +43 -41
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/getActivityUserName.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/helpers/getActivityUserName.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/getActivityUserName.es.js +1 -1
- package/dist/shared/src/containers/Feed/helpers/getActivityUserName.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/mergeSimilarActivities.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/helpers/mergeSimilarActivities.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/mergeSimilarActivities.es.js +14 -17
- package/dist/shared/src/containers/Feed/helpers/mergeSimilarActivities.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js +36 -26
- package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.es.js +13 -11
- 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 +7 -5
- 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 +13 -11
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.cjs.js +2 -0
- package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.cjs.js.map +1 -0
- package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.es.js +35 -0
- package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.es.js +309 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.styled.cjs.js +122 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.styled.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.styled.es.js +135 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.styled.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntity.cjs.js +47 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntity.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntity.es.js +661 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntity.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntityForm.cjs.js +66 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntityForm.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntityForm.es.js +141 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntityForm.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/TypeEditor.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/components/TypeEditor.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/TypeEditor.es.js +43 -0
- package/dist/shared/src/containers/NewEntity/components/TypeEditor.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContext.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContext.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContext.es.js +554 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContext.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContextInstance.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContextInstance.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContextInstance.es.js +6 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContextInstance.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/hooks/useCreateEntityShortcuts.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/hooks/useCreateEntityShortcuts.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/hooks/useCreateEntityShortcuts.es.js +26 -0
- package/dist/shared/src/containers/NewEntity/hooks/useCreateEntityShortcuts.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/util/entityDefinitions.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/util/entityDefinitions.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/util/entityDefinitions.es.js +16 -0
- package/dist/shared/src/containers/NewEntity/util/entityDefinitions.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/util/getSequence.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/util/getSequence.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/util/getSequence.es.js +16 -0
- package/dist/shared/src/containers/NewEntity/util/getSequence.es.js.map +1 -0
- 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 +642 -675
- 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 +13 -11
- 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 +41 -39
- 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 +44 -42
- 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 +13 -11
- 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 +11 -9
- 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 +44 -42
- 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 +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.es.js +22 -16
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.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 +42 -40
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +156 -153
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.es.js +7 -6
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js +7 -6
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.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 +8 -6
- 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 +40 -38
- 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 +16 -14
- 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 +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +233 -218
- 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 +11 -9
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +13 -11
- 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 +40 -38
- 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 +43 -41
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +13 -11
- 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 +11 -9
- 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 +121 -150
- 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 +39 -37
- 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 +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +13 -11
- 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 +38 -36
- 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 +24 -22
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js +47 -30
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.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 +113 -91
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +13 -11
- 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 +33 -31
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.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 +15 -13
- 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 +39 -37
- 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 +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +13 -11
- 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 +40 -38
- 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 +13 -11
- 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 +256 -246
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js +15 -15
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.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 +206 -162
- 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 +40 -38
- 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 +13 -11
- 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 +82 -74
- 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 +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.es.js +470 -0
- package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.es.js.map +1 -0
- 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 +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.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 +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.es.js +42 -40
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +50 -48
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.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 +40 -38
- 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 +40 -38
- 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 +40 -38
- 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 +42 -40
- package/dist/shared/src/containers/Views/context/ViewsContext.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 +43 -41
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.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 +44 -42
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/EntityUpdatesContext.cjs.js +1 -1
- package/dist/shared/src/context/EntityUpdatesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/EntityUpdatesContext.es.js +46 -44
- package/dist/shared/src/context/EntityUpdatesContext.es.js.map +1 -1
- package/dist/shared/src/context/MenuContext.cjs.js +1 -1
- package/dist/shared/src/context/MenuContext.cjs.js.map +1 -1
- package/dist/shared/src/context/MenuContext.es.js +1 -0
- package/dist/shared/src/context/MenuContext.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 +44 -42
- package/dist/shared/src/context/PowerpackContext.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 +126 -99
- package/dist/shared/src/context/ProjectFoldersContext.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 +42 -40
- package/dist/shared/src/context/SubtasksModulesContext.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 +15 -13
- package/dist/shared/src/context/WebsocketContext.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 +40 -38
- package/dist/shared/src/hooks/useEntityUpdate.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 +40 -38
- 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 +40 -38
- package/dist/shared/src/hooks/useHierarchyTable.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 +40 -38
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/types/NewEntity.d.ts +2 -0
- package/dist/types/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.d.ts +36 -0
- package/dist/types/containers/Feed/components/{ActivityStatusChange/ActivityStatusChange.styled.d.ts → ActivityFieldChange/ActivityFieldChange.styled.d.ts} +1 -1
- package/dist/types/containers/Feed/components/ActivityFieldChange/FieldValue.d.ts +11 -0
- package/dist/types/containers/Feed/components/ActivityGroup/ActivityGroup.d.ts +1 -0
- package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.d.ts +1 -1
- package/dist/types/containers/MoveEntityDialog/MoveEntityDialog.d.ts +10 -0
- package/dist/types/containers/MoveEntityDialog/index.d.ts +2 -0
- package/dist/types/containers/MoveEntityDialog/types.d.ts +12 -0
- package/dist/types/containers/NewEntity/components/FolderSequence.d.ts +36 -0
- package/dist/types/containers/NewEntity/components/FolderSequence.styled.d.ts +20 -0
- package/dist/types/containers/NewEntity/components/NewEntity.d.ts +12 -0
- package/dist/types/containers/NewEntity/components/NewEntityForm.d.ts +15 -0
- package/dist/types/containers/NewEntity/components/TypeEditor.d.ts +18 -0
- package/dist/types/containers/NewEntity/context/NewEntityContext.d.ts +37 -0
- package/dist/types/containers/NewEntity/context/NewEntityContextInstance.d.ts +2 -0
- package/dist/types/containers/NewEntity/hooks/useCreateEntityShortcuts.d.ts +21 -0
- package/dist/types/containers/NewEntity/index.d.ts +4 -0
- package/dist/types/containers/NewEntity/util/entityDefinitions.d.ts +7 -0
- package/dist/types/containers/NewEntity/util/getSequence.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/context/SelectedRowsContext.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/context/SelectionCellsContext.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useMoveEntities.d.ts +5 -7
- package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +3 -6
- package/dist/types/containers/ProjectTreeTable/utils/queryFilterToClientFilter.d.ts +6 -0
- package/dist/types/containers/SimpleTable/SimpleTable.types.d.ts +3 -0
- package/dist/types/containers/SimpleTable/SimpleTableRowTemplate.d.ts +1 -1
- package/dist/types/containers/Slicer/components/Slicer.d.ts +2 -1
- package/dist/types/containers/Slicer/context/SlicerContext.d.ts +6 -1
- package/dist/types/containers/Slicer/hooks/index.d.ts +1 -0
- package/dist/types/containers/Slicer/hooks/useHierarchyContextMenuItems.d.ts +15 -0
- package/dist/types/containers/index.d.ts +1 -0
- package/dist/types/context/MenuContext.d.ts +1 -0
- package/dist/types/context/ProjectFoldersContext.d.ts +1 -0
- package/dist/types/context/index.d.ts +0 -1
- package/package.json +13 -4
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.cjs.js +0 -2
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.cjs.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.es.js +0 -44
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.es.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.cjs.js +0 -11
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.cjs.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.es.js +0 -27
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.es.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/hooks/getContextParents.cjs.js +0 -2
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/hooks/getContextParents.cjs.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/hooks/getContextParents.es.js +0 -8
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/hooks/getContextParents.es.js.map +0 -1
- package/dist/shared/src/context/MoveEntityContext.cjs.js +0 -2
- package/dist/shared/src/context/MoveEntityContext.cjs.js.map +0 -1
- package/dist/shared/src/context/MoveEntityContext.es.js +0 -34
- package/dist/shared/src/context/MoveEntityContext.es.js.map +0 -1
- package/dist/types/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.d.ts +0 -19
- package/dist/types/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.d.ts +0 -7
- package/dist/types/context/MoveEntityContext.d.ts +0 -28
- /package/dist/types/containers/Feed/components/{ActivityStatusChange → ActivityFieldChange}/hooks/getContextParents.d.ts +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("../../../../_virtual/jsx-runtime.cjs.js"),I=require("react"),te=require("./MenuItem.cjs.js"),qe=require("@ynput/ayon-react-components"),O=require("./Menu.styled.cjs.js");require("../../context/RemoteModulesContext.cjs.js");const ne=require("../../context/PowerpackContext.cjs.js");require("../../context/UriContext.cjs.js");require("../../../node_modules/@module-federation/runtime/dist/index.cjs.js");require("../../../../_virtual/semver.cjs.js");require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/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/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/bundles/getBundles.cjs.js");require("../../api/queries/bundles/updateBundles.cjs.js");require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/columnStats/metricTargets.cjs.js");require("../../api/queries/columnStats/groupCounts.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("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("uuid");require("../../util/pubsub.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("react-dom");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/ProjectFoldersContextInstance.cjs.js");require("../../context/EntityUpdatesContextInstance.cjs.js");require("../../containers/ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("clsx");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("react-markdown");require("remark-emoji");require("remark-gfm");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/CommentInput/quillToMarkdown.cjs.js");require("../../containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");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("date-fns");require("../DateRangePicker/DateRangePicker.styled.cjs.js");require("../LinksManager/CellEditingDialog.cjs.js");require("../DeleteEntitiesConfirm/DeleteConfirmContent.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("../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("rehype-raw");require("../DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../containers/Feed/components/CommentInput/modules/index.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("../InfoMessage/InfoMessage.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../EnumEditor/EnumEditor.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");require("../FileThumbnail/FileThumbnail.cjs.js");require("../LegacyBadge/LegacyBadge.cjs.js");require("../LinksManager/LinksManager.styled.cjs.js");require("../../containers/EntityPickerDialog/EntityPickerDialog.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("react-router-dom");require("../../containers/Slicer/components/Slicer.cjs.js");require("../../containers/Slicer/context/SlicerContextInstance.cjs.js");require("../../containers/Slicer/components/SlicerDropdownFallback.cjs.js");require("../../containers/Slicer/hooks/useTableDataBySlice.cjs.js");require("../ReviewableCard/ReviewableCard.cjs.js");require("../ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../SearchFilter/filterDates.cjs.js");require("../SearchFilter/CustomDateRangeDialog.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("../SyncButton/SyncButton.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/VersionUploadContextInstance.cjs.js");require("../Watchers/Watchers.cjs.js");require("../ReviewablesSelector/ReviewablesSelector.cjs.js");require("../ColumnHeaderMenuUI.cjs.js");require("../../containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js");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/ActivityStatusChange/ActivityStatusSecondary.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/Feed/components/FeedSearchFilter.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/widgets/LinksWidget.cjs.js");require("short-uuid");require("../../containers/ProjectTreeTable/context/CellEditingContext.cjs.js");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/context/SelectedRowsContext.cjs.js");require("../../containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectDataContextInstance.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableContextInstance.cjs.js");require("../../containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ErrorWidget.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/DetailsPanel/DetailsPanel.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.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/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../../containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.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("../../context/DeleteEntitiesContext.cjs.js");const oe=({items:V,handleClick:W,onSubMenu:H,onSubMenuLayout:T,subMenu:a,level:A,id:y="root-menu",parentRef:M,style:l,placement:k,onClose:K,onMenuClose:_,itemClassName:Y,itemStyle:z,setPowerpackDialog:G,...J})=>{const D=I.useRef({}),E=I.useRef(null),S=(r,p,d)=>{const g=D.current[p],h=E.current;if(!g||!h)return;const m=(h.offsetParent??document.body).getBoundingClientRect(),f=g.getBoundingClientRect(),i=(h.querySelector("menu")??h).getBoundingClientRect(),P=window.innerWidth,v=window.innerHeight,u=8,n=Math.max(240,i.width),L=Math.min(d.length*36+16,480),w=4,t=()=>Math.max(u,i.left-n-w),R=()=>i.right+w,x=R()+n<=P-u,e=t()>=u;let o,s;k==="left"&&e?(o="left",s=t()):x?(o="right",s=R()):e?(o="left",s=t()):(o="left",s=Math.max(u,P-n-u));let c=f.top-8;c+L>v-u&&(c=Math.max(u,v-L-u));const j=o==="left"?s-16:s;H?.(r,{id:p,style:{top:c-m.top,left:j-m.left},items:d,level:A,placement:o,parentEl:g})},Q=r=>{a&&H?.(r,{id:"parent",items:[]})};return I.useEffect(()=>{a&&E.current&&E.current.querySelectorAll("li, button")[0]?.focus()},[a]),I.useLayoutEffect(()=>{if(!a||!E.current||!M||!T||!y)return;const r=E.current,p=M,d=p.closest(".menu-list, .sub-menu");if(!d)return;const g=r.querySelector("menu")??r,h=d.querySelector("menu")??d,m=(r.offsetParent??document.body).getBoundingClientRect(),f=r.getBoundingClientRect(),q=g.getBoundingClientRect(),i=h.getBoundingClientRect(),P=p.getBoundingClientRect(),v=q.left-f.left,u=q.width,n=q.height,L=window.innerWidth,w=window.innerHeight,t=8,R=4,x=()=>Math.max(t,i.left-u-R),e=()=>i.right+R,o=e()+u<=L-t,s=x()>=t;let b,c;k==="left"&&s?(b="left",c=x()):o?(b="right",c=e()):s?(b="left",c=x()):(b="left",c=Math.max(t,L-u-t));const j=g.querySelector(":scope > li")?.getBoundingClientRect(),X=P.top,Z=j?j.top:f.top+8,ee=X-Z;let F=f.top+ee;F+n>w-t&&(F=Math.max(t,w-n-t));const re=b==="left"?c-v:c,$=F-m.top,N=re-m.left,ie=typeof l?.top=="number"?l.top:parseFloat(String(l?.top)),ue=typeof l?.left=="number"?l.left:parseFloat(String(l?.left));(Math.abs($-ie)>1||Math.abs(N-ue)>1)&&T(y,{top:$,left:N},b)},[a,V,M,y,k,l?.top,l?.left,T]),C.jsxRuntimeExports.jsx(O.MenuWrapper,{style:{paddingLeft:a?16:0,...l},className:a?"sub-menu":"menu-list",id:y,onMouseLeave:Q,...J,ref:E,children:C.jsxRuntimeExports.jsx(O.Menu,{children:V.filter(r=>!r.hidden).map((r,p)=>{if(r.node)return r.node;if(r?.id==="divider"||r?.separator)return C.jsxRuntimeExports.jsx("hr",{},p);const{label:d,icon:g,img:h,highlighted:B,onClick:m,link:f,items:q=[],id:i,disableClose:P,selected:v,disabled:u,powerFeature:n,active:L,...w}=r,{powerLicense:t}=ne.usePowerpack(),R=!t&&n,x=e=>{e.preventDefault(),e.stopPropagation(),n&&G?.(n),_?.()};return C.jsxRuntimeExports.jsx(te,{tabIndex:0,label:d,icon:g,img:h,highlighted:B,items:q,selected:v,disabled:u,powerFeature:n,active:L,isLink:f,onClick:e=>R?x(e):q.length?S(e,i,q):W(e,m,f,P),onKeyDown:e=>{e.key==="Enter"&&(R?x(e):q.length?S(e,i,q):W(e,m,f));const o=!e.target.nextSibling;e.key==="Tab"&&o&&!e.shiftKey&&(e.preventDefault(),e.stopPropagation(),E.current?.querySelectorAll("li, button")[0]?.focus()),e.key==="Escape"&&a&&M&&(e.preventDefault(),e.stopPropagation(),M.focus(),K?.(i))},style:{paddingRight:q.length?"0":"16px",...z},ref:e=>D.current[i]=e,onMouseEnter:e=>S(e,i,q),onMouseLeave:e=>S(e,i,[]),className:`${Y} ${w.className||""}`,...w,children:!!q.length&&C.jsxRuntimeExports.jsx(qe.Icon,{icon:"arrow_right",style:{marginLeft:"auto"}})},`${i}-${p}`)})})})};exports.MenuList=oe;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("../../../../_virtual/jsx-runtime.cjs.js"),I=require("react"),te=require("./MenuItem.cjs.js"),qe=require("@ynput/ayon-react-components"),O=require("./Menu.styled.cjs.js");require("../../context/RemoteModulesContext.cjs.js");const ne=require("../../context/PowerpackContext.cjs.js");require("../../context/UriContext.cjs.js");require("../../../node_modules/@module-federation/runtime/dist/index.cjs.js");require("../../../../_virtual/semver.cjs.js");require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/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/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/bundles/getBundles.cjs.js");require("../../api/queries/bundles/updateBundles.cjs.js");require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/columnStats/metricTargets.cjs.js");require("../../api/queries/columnStats/groupCounts.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("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("uuid");require("../../util/pubsub.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("react-dom");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContextInstance.cjs.js");require("../../context/EntityUpdatesContextInstance.cjs.js");require("../../containers/ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("clsx");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("react-markdown");require("remark-emoji");require("remark-gfm");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/CommentInput/quillToMarkdown.cjs.js");require("../../containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");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("date-fns");require("../DateRangePicker/DateRangePicker.styled.cjs.js");require("../LinksManager/CellEditingDialog.cjs.js");require("../DeleteEntitiesConfirm/DeleteConfirmContent.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("../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("rehype-raw");require("../DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../containers/Feed/components/CommentInput/modules/index.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("../InfoMessage/InfoMessage.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../EnumEditor/EnumEditor.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");require("../FileThumbnail/FileThumbnail.cjs.js");require("../LegacyBadge/LegacyBadge.cjs.js");require("../LinksManager/LinksManager.styled.cjs.js");require("../../containers/EntityPickerDialog/EntityPickerDialog.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("react-router-dom");require("../../containers/Slicer/components/Slicer.cjs.js");require("../../containers/Slicer/context/SlicerContextInstance.cjs.js");require("../../containers/Slicer/components/SlicerDropdownFallback.cjs.js");require("../../containers/NewEntity/components/NewEntity.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/widgets/LinksWidget.cjs.js");require("short-uuid");require("../SearchFilter/filterDates.cjs.js");require("../../containers/ProjectTreeTable/context/CellEditingContext.cjs.js");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/context/SelectedRowsContext.cjs.js");require("../../containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectDataContextInstance.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableContextInstance.cjs.js");require("../../containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ErrorWidget.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/NewEntity/context/NewEntityContextInstance.cjs.js");require("../../containers/NewEntity/components/NewEntityForm.cjs.js");require("../../containers/Slicer/hooks/useTableDataBySlice.cjs.js");require("../ReviewableCard/ReviewableCard.cjs.js");require("../ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../SearchFilter/CustomDateRangeDialog.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("../SyncButton/SyncButton.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/VersionUploadContextInstance.cjs.js");require("../Watchers/Watchers.cjs.js");require("../ReviewablesSelector/ReviewablesSelector.cjs.js");require("../ColumnHeaderMenuUI.cjs.js");require("../../containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js");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/ActivityFieldChange/ActivityFieldChange.styled.cjs.js");require("../../containers/Feed/components/ActivityFieldChange/FieldValue.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/Feed/components/FeedSearchFilter.cjs.js");require("../../containers/DetailsPanel/DetailsPanel.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.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/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../../containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.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("../../context/DeleteEntitiesContext.cjs.js");const oe=({items:V,handleClick:W,onSubMenu:H,onSubMenuLayout:T,subMenu:a,level:A,id:y="root-menu",parentRef:M,style:l,placement:k,onClose:K,onMenuClose:_,itemClassName:Y,itemStyle:z,setPowerpackDialog:G,...J})=>{const D=I.useRef({}),E=I.useRef(null),S=(r,p,d)=>{const g=D.current[p],h=E.current;if(!g||!h)return;const m=(h.offsetParent??document.body).getBoundingClientRect(),f=g.getBoundingClientRect(),i=(h.querySelector("menu")??h).getBoundingClientRect(),P=window.innerWidth,v=window.innerHeight,u=8,n=Math.max(240,i.width),L=Math.min(d.length*36+16,480),w=4,t=()=>Math.max(u,i.left-n-w),R=()=>i.right+w,x=R()+n<=P-u,e=t()>=u;let o,s;k==="left"&&e?(o="left",s=t()):x?(o="right",s=R()):e?(o="left",s=t()):(o="left",s=Math.max(u,P-n-u));let c=f.top-8;c+L>v-u&&(c=Math.max(u,v-L-u));const j=o==="left"?s-16:s;H?.(r,{id:p,style:{top:c-m.top,left:j-m.left},items:d,level:A,placement:o,parentEl:g})},Q=r=>{a&&H?.(r,{id:"parent",items:[]})};return I.useEffect(()=>{a&&E.current&&E.current.querySelectorAll("li, button")[0]?.focus()},[a]),I.useLayoutEffect(()=>{if(!a||!E.current||!M||!T||!y)return;const r=E.current,p=M,d=p.closest(".menu-list, .sub-menu");if(!d)return;const g=r.querySelector("menu")??r,h=d.querySelector("menu")??d,m=(r.offsetParent??document.body).getBoundingClientRect(),f=r.getBoundingClientRect(),q=g.getBoundingClientRect(),i=h.getBoundingClientRect(),P=p.getBoundingClientRect(),v=q.left-f.left,u=q.width,n=q.height,L=window.innerWidth,w=window.innerHeight,t=8,R=4,x=()=>Math.max(t,i.left-u-R),e=()=>i.right+R,o=e()+u<=L-t,s=x()>=t;let b,c;k==="left"&&s?(b="left",c=x()):o?(b="right",c=e()):s?(b="left",c=x()):(b="left",c=Math.max(t,L-u-t));const j=g.querySelector(":scope > li")?.getBoundingClientRect(),X=P.top,Z=j?j.top:f.top+8,ee=X-Z;let F=f.top+ee;F+n>w-t&&(F=Math.max(t,w-n-t));const re=b==="left"?c-v:c,$=F-m.top,N=re-m.left,ie=typeof l?.top=="number"?l.top:parseFloat(String(l?.top)),ue=typeof l?.left=="number"?l.left:parseFloat(String(l?.left));(Math.abs($-ie)>1||Math.abs(N-ue)>1)&&T(y,{top:$,left:N},b)},[a,V,M,y,k,l?.top,l?.left,T]),C.jsxRuntimeExports.jsx(O.MenuWrapper,{style:{paddingLeft:a?16:0,...l},className:a?"sub-menu":"menu-list",id:y,onMouseLeave:Q,...J,ref:E,children:C.jsxRuntimeExports.jsx(O.Menu,{children:V.filter(r=>!r.hidden).map((r,p)=>{if(r.node)return r.node;if(r?.id==="divider"||r?.separator)return C.jsxRuntimeExports.jsx("hr",{},p);const{label:d,icon:g,img:h,highlighted:B,onClick:m,link:f,items:q=[],id:i,disableClose:P,selected:v,disabled:u,powerFeature:n,active:L,...w}=r,{powerLicense:t}=ne.usePowerpack(),R=!t&&n,x=e=>{e.preventDefault(),e.stopPropagation(),n&&G?.(n),_?.()};return C.jsxRuntimeExports.jsx(te,{tabIndex:0,label:d,icon:g,img:h,highlighted:B,items:q,selected:v,disabled:u,powerFeature:n,active:L,isLink:f,onClick:e=>R?x(e):q.length?S(e,i,q):W(e,m,f,P),onKeyDown:e=>{e.key==="Enter"&&(R?x(e):q.length?S(e,i,q):W(e,m,f));const o=!e.target.nextSibling;e.key==="Tab"&&o&&!e.shiftKey&&(e.preventDefault(),e.stopPropagation(),E.current?.querySelectorAll("li, button")[0]?.focus()),e.key==="Escape"&&a&&M&&(e.preventDefault(),e.stopPropagation(),M.focus(),K?.(i))},style:{paddingRight:q.length?"0":"16px",...z},ref:e=>D.current[i]=e,onMouseEnter:e=>S(e,i,q),onMouseLeave:e=>S(e,i,[]),className:`${Y} ${w.className||""}`,...w,children:!!q.length&&C.jsxRuntimeExports.jsx(qe.Icon,{icon:"arrow_right",style:{marginLeft:"auto"}})},`${i}-${p}`)})})})};exports.MenuList=oe;
|
|
2
2
|
//# sourceMappingURL=MenuList.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.cjs.js","sources":["../../../../../src/components/Menu/MenuList.tsx"],"sourcesContent":["import React, { useEffect, useLayoutEffect, useRef } from 'react'\nimport MenuItem from './MenuItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport * as Styled from './Menu.styled'\nimport { PowerpackFeature, usePowerpack } from '@shared/context'\nimport type { MenuItemType } from './Menu'\n\ninterface MenuListProps {\n items: MenuItemType[]\n handleClick: (\n e: React.MouseEvent,\n onClick?: (e: React.MouseEvent) => void,\n url?: string,\n disableClose?: boolean,\n ) => void\n onSubMenu?: (e: React.MouseEvent, menu: any) => void\n /** Called by a sub-menu after it mounts, with its real measured style. Lets the parent\n * refit using actual width/height instead of the open-time estimate. */\n onSubMenuLayout?: (id: string, style: React.CSSProperties, placement: 'left' | 'right') => void\n subMenu?: boolean\n level: number\n id?: string\n parentRef?: HTMLElement | null\n style?: React.CSSProperties\n /** Placement of THIS menu relative to its parent. Inherited by descendants so once\n * a chain flips to one side it stays there. */\n placement?: 'left' | 'right'\n onClose?: (id?: string) => void\n onMenuClose?: () => void\n itemClassName?: string\n itemStyle?: React.CSSProperties\n setPowerpackDialog?: (feature: PowerpackFeature) => void\n [key: string]: any\n}\n\nexport const MenuList: React.FC<MenuListProps> = ({\n items,\n handleClick,\n onSubMenu,\n onSubMenuLayout,\n subMenu,\n level,\n id = 'root-menu',\n parentRef,\n style,\n placement,\n onClose,\n onMenuClose,\n itemClassName,\n itemStyle,\n setPowerpackDialog,\n ...props\n}) => {\n const itemRefs = useRef<{ [key: string]: HTMLElement | null }>({})\n const menuRef = useRef<HTMLDivElement>(null)\n\n const handleSubMenu = (e: React.MouseEvent, id: string, items: MenuItemType[]) => {\n const itemEl = itemRefs.current[id]\n const parentMenuEl = menuRef.current\n if (!itemEl || !parentMenuEl) return\n\n // Sub-menus render absolute inside DialogContent. Compute viewport-anchored coords\n // from this item's bounding rect, then translate into the offsetParent's coord space.\n // Each level computes independently — no inherited offsets that drift across depth.\n const offsetParent = (parentMenuEl.offsetParent as HTMLElement | null) ?? document.body\n const offsetParentRect = offsetParent.getBoundingClientRect()\n const itemRect = itemEl.getBoundingClientRect()\n // Use the visible inner <menu> element if present — the wrapper has 16px paddingLeft\n // for sub-menus which would otherwise produce a phantom gap on flip-left chains.\n const parentVisibleEl = (parentMenuEl.querySelector('menu') as HTMLElement | null) ?? parentMenuEl\n const parentVisibleRect = parentVisibleEl.getBoundingClientRect()\n\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n const padding = 8\n // Use the parent's visible width as the initial estimate — sub-menus tend to be\n // similar size or smaller. Falls back to 240 if parent is unusually narrow.\n const estimatedWidth = Math.max(240, parentVisibleRect.width)\n const estimatedHeight = Math.min(items.length * 36 + 16, 480)\n\n // Choose horizontal placement. If an ancestor sub-menu has already flipped to the\n // left, every descendant sub-menu also goes left — DetailsPanel scenarios put the\n // root menu near the right edge of the screen, so flipping flip-flop on each level\n // would push deep menus back into the panel content.\n const gap = 4\n const computeLeftSide = () => Math.max(padding, parentVisibleRect.left - estimatedWidth - gap)\n const computeRightSide = () => parentVisibleRect.right + gap\n const fitsRight = computeRightSide() + estimatedWidth <= viewportWidth - padding\n const fitsLeft = computeLeftSide() >= padding\n\n let nextPlacement: 'left' | 'right'\n let viewportLeft: number\n if (placement === 'left' && fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else if (fitsRight) {\n nextPlacement = 'right'\n viewportLeft = computeRightSide()\n } else if (fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else {\n // Neither side fits cleanly — clamp to viewport, prefer left.\n nextPlacement = 'left'\n viewportLeft = Math.max(padding, viewportWidth - estimatedWidth - padding)\n }\n\n // Align first sub-menu item with the hovered parent item. The visible <menu> has\n // 8px top padding, so the wrapper top sits 8px above the item top.\n const innerTopOffset = 8\n let viewportTop = itemRect.top - innerTopOffset\n if (viewportTop + estimatedHeight > viewportHeight - padding) {\n viewportTop = Math.max(padding, viewportHeight - estimatedHeight - padding)\n }\n\n // Sub-menu wrappers carry 16px paddingLeft (so their wrapper rect is wider than\n // the visible menu). When we anchor on the LEFT side, the visible menu sits 16px\n // inside the wrapper — pull the wrapper left so the visible right edge lines up\n // with parentVisibleRect.left.\n const subMenuPaddingLeft = 16\n const wrapperLeft = nextPlacement === 'left' ? viewportLeft - subMenuPaddingLeft : viewportLeft\n\n onSubMenu?.(e, {\n id,\n style: {\n top: viewportTop - offsetParentRect.top,\n left: wrapperLeft - offsetParentRect.left,\n },\n items,\n level: level,\n placement: nextPlacement,\n // Pass the actual menu-item element so sub-menu measurement uses the <li>\n // instead of whatever inner span the mouse event bubbled from.\n parentEl: itemEl,\n })\n }\n\n const handleMouseLeave = (e: React.MouseEvent) => {\n if (subMenu) {\n onSubMenu?.(e, { id: 'parent', items: [] })\n }\n }\n\n // when a subMenu open, set focus on the first item\n useEffect(() => {\n if (subMenu && menuRef.current) {\n const first = menuRef.current.querySelectorAll('li, button')[0] as HTMLElement\n first?.focus()\n }\n }, [subMenu])\n\n // Sub-menus open with an estimated width — once mounted, measure for real and refit.\n // Reuses the same flip/clamp rules as handleSubMenu but with the actual rendered size.\n useLayoutEffect(() => {\n if (!subMenu || !menuRef.current || !parentRef || !onSubMenuLayout || !id) return\n const wrapperEl = menuRef.current\n const parentItemEl = parentRef\n const parentMenuEl = parentItemEl.closest('.menu-list, .sub-menu') as HTMLElement | null\n if (!parentMenuEl) return\n // Measure visible boxes (the inner <menu> tag), not wrappers. Sub-menu wrappers\n // carry 16px paddingLeft which inflates the rect on the left side and would\n // otherwise produce phantom gaps when flipping left.\n const ownVisibleEl = (wrapperEl.querySelector('menu') as HTMLElement | null) ?? wrapperEl\n const parentVisibleEl = (parentMenuEl.querySelector('menu') as HTMLElement | null) ?? parentMenuEl\n\n const offsetParent = (wrapperEl.offsetParent as HTMLElement | null) ?? document.body\n const offsetParentRect = offsetParent.getBoundingClientRect()\n const wrapperRect = wrapperEl.getBoundingClientRect()\n const ownVisibleRect = ownVisibleEl.getBoundingClientRect()\n const parentVisibleRect = parentVisibleEl.getBoundingClientRect()\n const parentItemRect = parentItemEl.getBoundingClientRect()\n\n // Some wrappers have 16px left padding (sub-menus). Track it so we can place the\n // wrapper such that the visible-menu edge — not the wrapper edge — lines up.\n const subMenuPaddingLeft = ownVisibleRect.left - wrapperRect.left\n const visibleWidth = ownVisibleRect.width\n const visibleHeight = ownVisibleRect.height\n\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n const padding = 8\n\n const gap = 4\n const computeLeftSide = () => Math.max(padding, parentVisibleRect.left - visibleWidth - gap)\n const computeRightSide = () => parentVisibleRect.right + gap\n const fitsRight = computeRightSide() + visibleWidth <= viewportWidth - padding\n const fitsLeft = computeLeftSide() >= padding\n\n let nextPlacement: 'left' | 'right'\n let viewportLeft: number\n if (placement === 'left' && fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else if (fitsRight) {\n nextPlacement = 'right'\n viewportLeft = computeRightSide()\n } else if (fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else {\n nextPlacement = 'left'\n viewportLeft = Math.max(padding, viewportWidth - visibleWidth - padding)\n }\n\n // Align this sub-menu's first <li> with the hovered parent item.\n // Direct DOM measurement is more robust than computed-style math across nested\n // levels — picks up any box-sizing / margin quirks that pure padding values miss.\n const firstItemEl = ownVisibleEl.querySelector(':scope > li') as HTMLElement | null\n const firstItemRect = firstItemEl?.getBoundingClientRect()\n // Move the wrapper by exactly the delta between where the first <li> currently is\n // and where we want it (parent item's top). Avoids any cascading offset arithmetic.\n const desiredFirstItemTop = parentItemRect.top\n const currentFirstItemTop = firstItemRect ? firstItemRect.top : wrapperRect.top + 8\n const deltaY = desiredFirstItemTop - currentFirstItemTop\n let viewportTop = wrapperRect.top + deltaY\n if (viewportTop + visibleHeight > viewportHeight - padding) {\n viewportTop = Math.max(padding, viewportHeight - visibleHeight - padding)\n }\n\n // Wrapper origin: visible target minus the wrapper's left padding when on the left.\n const wrapperLeft =\n nextPlacement === 'left' ? viewportLeft - subMenuPaddingLeft : viewportLeft\n\n const targetTop = viewportTop - offsetParentRect.top\n const targetLeft = wrapperLeft - offsetParentRect.left\n const currentTop = typeof style?.top === 'number' ? style.top : parseFloat(String(style?.top))\n const currentLeft =\n typeof style?.left === 'number' ? style.left : parseFloat(String(style?.left))\n\n // Idempotent guard: only emit a layout update when the target differs by >1px\n // from what's already applied. This makes the effect safe to re-run on every\n // dependency change — including `style`, which we update from inside this effect.\n // After a successful update, the new style flows back as props, the effect runs\n // once more, current ≈ target, and the guard is a no-op. No infinite loop.\n if (Math.abs(targetTop - currentTop) > 1 || Math.abs(targetLeft - currentLeft) > 1) {\n onSubMenuLayout(id, { top: targetTop, left: targetLeft }, nextPlacement)\n }\n }, [subMenu, items, parentRef, id, placement, style?.top, style?.left, onSubMenuLayout])\n\n return (\n <Styled.MenuWrapper\n style={{ paddingLeft: subMenu ? 16 : 0, ...style }}\n className={subMenu ? 'sub-menu' : 'menu-list'}\n id={id}\n onMouseLeave={handleMouseLeave}\n {...props}\n ref={menuRef}\n >\n <Styled.Menu>\n {items\n .filter((item) => !item.hidden)\n .map((item, i) => {\n // if item is a node, return it\n if (item.node) {\n return item.node\n }\n\n if (item?.id === 'divider' || item?.separator ) return <hr key={i} />\n\n const {\n label,\n icon,\n img,\n highlighted,\n onClick,\n link,\n items = [],\n id,\n disableClose,\n selected,\n disabled,\n powerFeature,\n active,\n ...props\n } = item\n\n const { powerLicense } = usePowerpack()\n const isPowerFeature = !powerLicense && powerFeature\n\n const handleClickPowerFeature = (e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n if (powerFeature) {\n setPowerpackDialog?.(powerFeature)\n }\n\n // close the menu\n onMenuClose?.()\n }\n\n return (\n <MenuItem\n tabIndex={0}\n key={`${id}-${i}`}\n {...{\n label,\n icon,\n img,\n highlighted,\n items,\n selected,\n disabled,\n powerFeature,\n active,\n }}\n isLink={link}\n onClick={(e) =>\n isPowerFeature\n ? handleClickPowerFeature(e)\n : items.length\n ? handleSubMenu(e, id, items)\n : handleClick(e, onClick, link, disableClose)\n }\n onKeyDown={(e: React.KeyboardEvent<HTMLElement>) => {\n if (e.key === 'Enter') {\n if (isPowerFeature) {\n handleClickPowerFeature(e as any)\n } else if (items.length) {\n handleSubMenu(e as any, id, items)\n } else {\n handleClick(e as any, onClick, link)\n }\n }\n const isLastChild = !(e.target as HTMLElement).nextSibling\n if (e.key === 'Tab' && isLastChild && !e.shiftKey) {\n e.preventDefault()\n e.stopPropagation()\n // when at bottom of list, tab goes to top\n const first = menuRef.current?.querySelectorAll('li, button')[0] as HTMLElement\n first?.focus()\n }\n // when a submenu is open, esc closes it and sets focus on the parent\n if (e.key === 'Escape' && subMenu && parentRef) {\n e.preventDefault()\n e.stopPropagation()\n parentRef.focus()\n onClose?.(id)\n }\n }}\n style={{ paddingRight: items.length ? '0' : '16px', ...itemStyle }}\n ref={(e) => (itemRefs.current[id] = e)}\n onMouseEnter={(e) => handleSubMenu(e, id, items)}\n onMouseLeave={(e) => handleSubMenu(e, id, [])}\n className={`${itemClassName} ${props.className || ''}`}\n {...props}\n >\n {!!items.length && <Icon icon=\"arrow_right\" style={{ marginLeft: 'auto' }} />}\n </MenuItem>\n )\n })}\n </Styled.Menu>\n </Styled.MenuWrapper>\n )\n}\n"],"names":["MenuList","items","handleClick","onSubMenu","onSubMenuLayout","subMenu","level","id","parentRef","style","placement","onClose","onMenuClose","itemClassName","itemStyle","setPowerpackDialog","props","itemRefs","useRef","menuRef","handleSubMenu","e","itemEl","parentMenuEl","offsetParentRect","itemRect","parentVisibleRect","viewportWidth","viewportHeight","padding","estimatedWidth","estimatedHeight","gap","computeLeftSide","computeRightSide","fitsRight","fitsLeft","nextPlacement","viewportLeft","viewportTop","wrapperLeft","handleMouseLeave","useEffect","useLayoutEffect","wrapperEl","parentItemEl","ownVisibleEl","parentVisibleEl","wrapperRect","ownVisibleRect","parentItemRect","subMenuPaddingLeft","visibleWidth","visibleHeight","firstItemRect","desiredFirstItemTop","currentFirstItemTop","deltaY","targetTop","targetLeft","currentTop","currentLeft","jsx","Styled.MenuWrapper","Styled.Menu","item","i","label","icon","img","highlighted","onClick","link","disableClose","selected","disabled","powerFeature","active","powerLicense","usePowerpack","isPowerFeature","handleClickPowerFeature","MenuItem","isLastChild","Icon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MenuList.cjs.js","sources":["../../../../../src/components/Menu/MenuList.tsx"],"sourcesContent":["import React, { useEffect, useLayoutEffect, useRef } from 'react'\nimport MenuItem from './MenuItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport * as Styled from './Menu.styled'\nimport { PowerpackFeature, usePowerpack } from '@shared/context'\nimport type { MenuItemType } from './Menu'\n\ninterface MenuListProps {\n items: MenuItemType[]\n handleClick: (\n e: React.MouseEvent,\n onClick?: (e: React.MouseEvent) => void,\n url?: string,\n disableClose?: boolean,\n ) => void\n onSubMenu?: (e: React.MouseEvent, menu: any) => void\n /** Called by a sub-menu after it mounts, with its real measured style. Lets the parent\n * refit using actual width/height instead of the open-time estimate. */\n onSubMenuLayout?: (id: string, style: React.CSSProperties, placement: 'left' | 'right') => void\n subMenu?: boolean\n level: number\n id?: string\n parentRef?: HTMLElement | null\n style?: React.CSSProperties\n /** Placement of THIS menu relative to its parent. Inherited by descendants so once\n * a chain flips to one side it stays there. */\n placement?: 'left' | 'right'\n onClose?: (id?: string) => void\n onMenuClose?: () => void\n itemClassName?: string\n itemStyle?: React.CSSProperties\n setPowerpackDialog?: (feature: PowerpackFeature) => void\n [key: string]: any\n}\n\nexport const MenuList: React.FC<MenuListProps> = ({\n items,\n handleClick,\n onSubMenu,\n onSubMenuLayout,\n subMenu,\n level,\n id = 'root-menu',\n parentRef,\n style,\n placement,\n onClose,\n onMenuClose,\n itemClassName,\n itemStyle,\n setPowerpackDialog,\n ...props\n}) => {\n const itemRefs = useRef<{ [key: string]: HTMLElement | null }>({})\n const menuRef = useRef<HTMLDivElement>(null)\n\n const handleSubMenu = (e: React.MouseEvent, id: string, items: MenuItemType[]) => {\n const itemEl = itemRefs.current[id]\n const parentMenuEl = menuRef.current\n if (!itemEl || !parentMenuEl) return\n\n // Sub-menus render absolute inside DialogContent. Compute viewport-anchored coords\n // from this item's bounding rect, then translate into the offsetParent's coord space.\n // Each level computes independently — no inherited offsets that drift across depth.\n const offsetParent = (parentMenuEl.offsetParent as HTMLElement | null) ?? document.body\n const offsetParentRect = offsetParent.getBoundingClientRect()\n const itemRect = itemEl.getBoundingClientRect()\n // Use the visible inner <menu> element if present — the wrapper has 16px paddingLeft\n // for sub-menus which would otherwise produce a phantom gap on flip-left chains.\n const parentVisibleEl = (parentMenuEl.querySelector('menu') as HTMLElement | null) ?? parentMenuEl\n const parentVisibleRect = parentVisibleEl.getBoundingClientRect()\n\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n const padding = 8\n // Use the parent's visible width as the initial estimate — sub-menus tend to be\n // similar size or smaller. Falls back to 240 if parent is unusually narrow.\n const estimatedWidth = Math.max(240, parentVisibleRect.width)\n const estimatedHeight = Math.min(items.length * 36 + 16, 480)\n\n // Choose horizontal placement. If an ancestor sub-menu has already flipped to the\n // left, every descendant sub-menu also goes left — DetailsPanel scenarios put the\n // root menu near the right edge of the screen, so flipping flip-flop on each level\n // would push deep menus back into the panel content.\n const gap = 4\n const computeLeftSide = () => Math.max(padding, parentVisibleRect.left - estimatedWidth - gap)\n const computeRightSide = () => parentVisibleRect.right + gap\n const fitsRight = computeRightSide() + estimatedWidth <= viewportWidth - padding\n const fitsLeft = computeLeftSide() >= padding\n\n let nextPlacement: 'left' | 'right'\n let viewportLeft: number\n if (placement === 'left' && fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else if (fitsRight) {\n nextPlacement = 'right'\n viewportLeft = computeRightSide()\n } else if (fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else {\n // Neither side fits cleanly — clamp to viewport, prefer left.\n nextPlacement = 'left'\n viewportLeft = Math.max(padding, viewportWidth - estimatedWidth - padding)\n }\n\n // Align first sub-menu item with the hovered parent item. The visible <menu> has\n // 8px top padding, so the wrapper top sits 8px above the item top.\n const innerTopOffset = 8\n let viewportTop = itemRect.top - innerTopOffset\n if (viewportTop + estimatedHeight > viewportHeight - padding) {\n viewportTop = Math.max(padding, viewportHeight - estimatedHeight - padding)\n }\n\n // Sub-menu wrappers carry 16px paddingLeft (so their wrapper rect is wider than\n // the visible menu). When we anchor on the LEFT side, the visible menu sits 16px\n // inside the wrapper — pull the wrapper left so the visible right edge lines up\n // with parentVisibleRect.left.\n const subMenuPaddingLeft = 16\n const wrapperLeft = nextPlacement === 'left' ? viewportLeft - subMenuPaddingLeft : viewportLeft\n\n onSubMenu?.(e, {\n id,\n style: {\n top: viewportTop - offsetParentRect.top,\n left: wrapperLeft - offsetParentRect.left,\n },\n items,\n level: level,\n placement: nextPlacement,\n // Pass the actual menu-item element so sub-menu measurement uses the <li>\n // instead of whatever inner span the mouse event bubbled from.\n parentEl: itemEl,\n })\n }\n\n const handleMouseLeave = (e: React.MouseEvent) => {\n if (subMenu) {\n onSubMenu?.(e, { id: 'parent', items: [] })\n }\n }\n\n // when a subMenu open, set focus on the first item\n useEffect(() => {\n if (subMenu && menuRef.current) {\n const first = menuRef.current.querySelectorAll('li, button')[0] as HTMLElement\n first?.focus()\n }\n }, [subMenu])\n\n // Sub-menus open with an estimated width — once mounted, measure for real and refit.\n // Reuses the same flip/clamp rules as handleSubMenu but with the actual rendered size.\n useLayoutEffect(() => {\n if (!subMenu || !menuRef.current || !parentRef || !onSubMenuLayout || !id) return\n const wrapperEl = menuRef.current\n const parentItemEl = parentRef\n const parentMenuEl = parentItemEl.closest('.menu-list, .sub-menu') as HTMLElement | null\n if (!parentMenuEl) return\n // Measure visible boxes (the inner <menu> tag), not wrappers. Sub-menu wrappers\n // carry 16px paddingLeft which inflates the rect on the left side and would\n // otherwise produce phantom gaps when flipping left.\n const ownVisibleEl = (wrapperEl.querySelector('menu') as HTMLElement | null) ?? wrapperEl\n const parentVisibleEl = (parentMenuEl.querySelector('menu') as HTMLElement | null) ?? parentMenuEl\n\n const offsetParent = (wrapperEl.offsetParent as HTMLElement | null) ?? document.body\n const offsetParentRect = offsetParent.getBoundingClientRect()\n const wrapperRect = wrapperEl.getBoundingClientRect()\n const ownVisibleRect = ownVisibleEl.getBoundingClientRect()\n const parentVisibleRect = parentVisibleEl.getBoundingClientRect()\n const parentItemRect = parentItemEl.getBoundingClientRect()\n\n // Some wrappers have 16px left padding (sub-menus). Track it so we can place the\n // wrapper such that the visible-menu edge — not the wrapper edge — lines up.\n const subMenuPaddingLeft = ownVisibleRect.left - wrapperRect.left\n const visibleWidth = ownVisibleRect.width\n const visibleHeight = ownVisibleRect.height\n\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n const padding = 8\n\n const gap = 4\n const computeLeftSide = () => Math.max(padding, parentVisibleRect.left - visibleWidth - gap)\n const computeRightSide = () => parentVisibleRect.right + gap\n const fitsRight = computeRightSide() + visibleWidth <= viewportWidth - padding\n const fitsLeft = computeLeftSide() >= padding\n\n let nextPlacement: 'left' | 'right'\n let viewportLeft: number\n if (placement === 'left' && fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else if (fitsRight) {\n nextPlacement = 'right'\n viewportLeft = computeRightSide()\n } else if (fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else {\n nextPlacement = 'left'\n viewportLeft = Math.max(padding, viewportWidth - visibleWidth - padding)\n }\n\n // Align this sub-menu's first <li> with the hovered parent item.\n // Direct DOM measurement is more robust than computed-style math across nested\n // levels — picks up any box-sizing / margin quirks that pure padding values miss.\n const firstItemEl = ownVisibleEl.querySelector(':scope > li') as HTMLElement | null\n const firstItemRect = firstItemEl?.getBoundingClientRect()\n // Move the wrapper by exactly the delta between where the first <li> currently is\n // and where we want it (parent item's top). Avoids any cascading offset arithmetic.\n const desiredFirstItemTop = parentItemRect.top\n const currentFirstItemTop = firstItemRect ? firstItemRect.top : wrapperRect.top + 8\n const deltaY = desiredFirstItemTop - currentFirstItemTop\n let viewportTop = wrapperRect.top + deltaY\n if (viewportTop + visibleHeight > viewportHeight - padding) {\n viewportTop = Math.max(padding, viewportHeight - visibleHeight - padding)\n }\n\n // Wrapper origin: visible target minus the wrapper's left padding when on the left.\n const wrapperLeft =\n nextPlacement === 'left' ? viewportLeft - subMenuPaddingLeft : viewportLeft\n\n const targetTop = viewportTop - offsetParentRect.top\n const targetLeft = wrapperLeft - offsetParentRect.left\n const currentTop = typeof style?.top === 'number' ? style.top : parseFloat(String(style?.top))\n const currentLeft =\n typeof style?.left === 'number' ? style.left : parseFloat(String(style?.left))\n\n // Idempotent guard: only emit a layout update when the target differs by >1px\n // from what's already applied. This makes the effect safe to re-run on every\n // dependency change — including `style`, which we update from inside this effect.\n // After a successful update, the new style flows back as props, the effect runs\n // once more, current ≈ target, and the guard is a no-op. No infinite loop.\n if (Math.abs(targetTop - currentTop) > 1 || Math.abs(targetLeft - currentLeft) > 1) {\n onSubMenuLayout(id, { top: targetTop, left: targetLeft }, nextPlacement)\n }\n }, [subMenu, items, parentRef, id, placement, style?.top, style?.left, onSubMenuLayout])\n\n return (\n <Styled.MenuWrapper\n style={{ paddingLeft: subMenu ? 16 : 0, ...style }}\n className={subMenu ? 'sub-menu' : 'menu-list'}\n id={id}\n onMouseLeave={handleMouseLeave}\n {...props}\n ref={menuRef}\n >\n <Styled.Menu>\n {items\n .filter((item) => !item.hidden)\n .map((item, i) => {\n // if item is a node, return it\n if (item.node) {\n return item.node\n }\n\n if (item?.id === 'divider' || item?.separator ) return <hr key={i} />\n\n const {\n label,\n icon,\n img,\n highlighted,\n onClick,\n link,\n items = [],\n id,\n disableClose,\n selected,\n disabled,\n powerFeature,\n active,\n ...props\n } = item\n\n const { powerLicense } = usePowerpack()\n const isPowerFeature = !powerLicense && powerFeature\n\n const handleClickPowerFeature = (e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n if (powerFeature) {\n setPowerpackDialog?.(powerFeature)\n }\n\n // close the menu\n onMenuClose?.()\n }\n\n return (\n <MenuItem\n tabIndex={0}\n key={`${id}-${i}`}\n {...{\n label,\n icon,\n img,\n highlighted,\n items,\n selected,\n disabled,\n powerFeature,\n active,\n }}\n isLink={link}\n onClick={(e) =>\n isPowerFeature\n ? handleClickPowerFeature(e)\n : items.length\n ? handleSubMenu(e, id, items)\n : handleClick(e, onClick, link, disableClose)\n }\n onKeyDown={(e: React.KeyboardEvent<HTMLElement>) => {\n if (e.key === 'Enter') {\n if (isPowerFeature) {\n handleClickPowerFeature(e as any)\n } else if (items.length) {\n handleSubMenu(e as any, id, items)\n } else {\n handleClick(e as any, onClick, link)\n }\n }\n const isLastChild = !(e.target as HTMLElement).nextSibling\n if (e.key === 'Tab' && isLastChild && !e.shiftKey) {\n e.preventDefault()\n e.stopPropagation()\n // when at bottom of list, tab goes to top\n const first = menuRef.current?.querySelectorAll('li, button')[0] as HTMLElement\n first?.focus()\n }\n // when a submenu is open, esc closes it and sets focus on the parent\n if (e.key === 'Escape' && subMenu && parentRef) {\n e.preventDefault()\n e.stopPropagation()\n parentRef.focus()\n onClose?.(id)\n }\n }}\n style={{ paddingRight: items.length ? '0' : '16px', ...itemStyle }}\n ref={(e) => (itemRefs.current[id] = e)}\n onMouseEnter={(e) => handleSubMenu(e, id, items)}\n onMouseLeave={(e) => handleSubMenu(e, id, [])}\n className={`${itemClassName} ${props.className || ''}`}\n {...props}\n >\n {!!items.length && <Icon icon=\"arrow_right\" style={{ marginLeft: 'auto' }} />}\n </MenuItem>\n )\n })}\n </Styled.Menu>\n </Styled.MenuWrapper>\n )\n}\n"],"names":["MenuList","items","handleClick","onSubMenu","onSubMenuLayout","subMenu","level","id","parentRef","style","placement","onClose","onMenuClose","itemClassName","itemStyle","setPowerpackDialog","props","itemRefs","useRef","menuRef","handleSubMenu","e","itemEl","parentMenuEl","offsetParentRect","itemRect","parentVisibleRect","viewportWidth","viewportHeight","padding","estimatedWidth","estimatedHeight","gap","computeLeftSide","computeRightSide","fitsRight","fitsLeft","nextPlacement","viewportLeft","viewportTop","wrapperLeft","handleMouseLeave","useEffect","useLayoutEffect","wrapperEl","parentItemEl","ownVisibleEl","parentVisibleEl","wrapperRect","ownVisibleRect","parentItemRect","subMenuPaddingLeft","visibleWidth","visibleHeight","firstItemRect","desiredFirstItemTop","currentFirstItemTop","deltaY","targetTop","targetLeft","currentTop","currentLeft","jsx","Styled.MenuWrapper","Styled.Menu","item","i","label","icon","img","highlighted","onClick","link","disableClose","selected","disabled","powerFeature","active","powerLicense","usePowerpack","isPowerFeature","handleClickPowerFeature","MenuItem","isLastChild","Icon"],"mappings":"69iBAmCO,MAAMA,GAAoC,CAAC,CAChD,MAAAC,EACA,YAAAC,EACA,UAAAC,EACA,gBAAAC,EACA,QAAAC,EACA,MAAAC,EACA,GAAAC,EAAK,YACL,UAAAC,EACA,MAAAC,EACA,UAAAC,EACA,QAAAC,EACA,YAAAC,EACA,cAAAC,EACA,UAAAC,EACA,mBAAAC,EACA,GAAGC,CACL,IAAM,CACJ,MAAMC,EAAWC,EAAAA,OAA8C,EAAE,EAC3DC,EAAUD,EAAAA,OAAuB,IAAI,EAErCE,EAAgB,CAACC,EAAqBd,EAAYN,IAA0B,CAChF,MAAMqB,EAASL,EAAS,QAAQV,CAAE,EAC5BgB,EAAeJ,EAAQ,QAC7B,GAAI,CAACG,GAAU,CAACC,EAAc,OAM9B,MAAMC,GADgBD,EAAa,cAAuC,SAAS,MAC7C,sBAAA,EAChCE,EAAWH,EAAO,sBAAA,EAIlBI,GADmBH,EAAa,cAAc,MAAM,GAA4BA,GAC5C,sBAAA,EAEpCI,EAAgB,OAAO,WACvBC,EAAiB,OAAO,YACxBC,EAAU,EAGVC,EAAiB,KAAK,IAAI,IAAKJ,EAAkB,KAAK,EACtDK,EAAkB,KAAK,IAAI9B,EAAM,OAAS,GAAK,GAAI,GAAG,EAMtD+B,EAAM,EACNC,EAAkB,IAAM,KAAK,IAAIJ,EAASH,EAAkB,KAAOI,EAAiBE,CAAG,EACvFE,EAAmB,IAAMR,EAAkB,MAAQM,EACnDG,EAAYD,EAAA,EAAqBJ,GAAkBH,EAAgBE,EACnEO,EAAWH,KAAqBJ,EAEtC,IAAIQ,EACAC,EACA5B,IAAc,QAAU0B,GAC1BC,EAAgB,OAChBC,EAAeL,EAAA,GACNE,GACTE,EAAgB,QAChBC,EAAeJ,EAAA,GACNE,GACTC,EAAgB,OAChBC,EAAeL,EAAA,IAGfI,EAAgB,OAChBC,EAAe,KAAK,IAAIT,EAASF,EAAgBG,EAAiBD,CAAO,GAM3E,IAAIU,EAAcd,EAAS,IADJ,EAEnBc,EAAcR,EAAkBH,EAAiBC,IACnDU,EAAc,KAAK,IAAIV,EAASD,EAAiBG,EAAkBF,CAAO,GAQ5E,MAAMW,EAAcH,IAAkB,OAASC,EADpB,GACwDA,EAEnFnC,IAAYkB,EAAG,CACb,GAAAd,EACA,MAAO,CACL,IAAKgC,EAAcf,EAAiB,IACpC,KAAMgB,EAAchB,EAAiB,IAAA,EAEvC,MAAAvB,EACA,MAAAK,EACA,UAAW+B,EAGX,SAAUf,CAAA,CACX,CACH,EAEMmB,EAAoBpB,GAAwB,CAC5ChB,GACFF,IAAYkB,EAAG,CAAE,GAAI,SAAU,MAAO,CAAA,EAAI,CAE9C,EAGAqB,OAAAA,EAAAA,UAAU,IAAM,CACVrC,GAAWc,EAAQ,SACPA,EAAQ,QAAQ,iBAAiB,YAAY,EAAE,CAAC,GACvD,MAAA,CAEX,EAAG,CAACd,CAAO,CAAC,EAIZsC,EAAAA,gBAAgB,IAAM,CACpB,GAAI,CAACtC,GAAW,CAACc,EAAQ,SAAW,CAACX,GAAa,CAACJ,GAAmB,CAACG,EAAI,OAC3E,MAAMqC,EAAYzB,EAAQ,QACpB0B,EAAerC,EACfe,EAAesB,EAAa,QAAQ,uBAAuB,EACjE,GAAI,CAACtB,EAAc,OAInB,MAAMuB,EAAgBF,EAAU,cAAc,MAAM,GAA4BA,EAC1EG,EAAmBxB,EAAa,cAAc,MAAM,GAA4BA,EAGhFC,GADgBoB,EAAU,cAAuC,SAAS,MAC1C,sBAAA,EAChCI,EAAcJ,EAAU,sBAAA,EACxBK,EAAiBH,EAAa,sBAAA,EAC9BpB,EAAoBqB,EAAgB,sBAAA,EACpCG,EAAiBL,EAAa,sBAAA,EAI9BM,EAAqBF,EAAe,KAAOD,EAAY,KACvDI,EAAeH,EAAe,MAC9BI,EAAgBJ,EAAe,OAE/BtB,EAAgB,OAAO,WACvBC,EAAiB,OAAO,YACxBC,EAAU,EAEVG,EAAM,EACNC,EAAkB,IAAM,KAAK,IAAIJ,EAASH,EAAkB,KAAO0B,EAAepB,CAAG,EACrFE,EAAmB,IAAMR,EAAkB,MAAQM,EACnDG,EAAYD,EAAA,EAAqBkB,GAAgBzB,EAAgBE,EACjEO,EAAWH,KAAqBJ,EAEtC,IAAIQ,EACAC,EACA5B,IAAc,QAAU0B,GAC1BC,EAAgB,OAChBC,EAAeL,EAAA,GACNE,GACTE,EAAgB,QAChBC,EAAeJ,EAAA,GACNE,GACTC,EAAgB,OAChBC,EAAeL,EAAA,IAEfI,EAAgB,OAChBC,EAAe,KAAK,IAAIT,EAASF,EAAgByB,EAAevB,CAAO,GAOzE,MAAMyB,EADcR,EAAa,cAAc,aAAa,GACzB,sBAAA,EAG7BS,EAAsBL,EAAe,IACrCM,EAAsBF,EAAgBA,EAAc,IAAMN,EAAY,IAAM,EAC5ES,GAASF,EAAsBC,EACrC,IAAIjB,EAAcS,EAAY,IAAMS,GAChClB,EAAcc,EAAgBzB,EAAiBC,IACjDU,EAAc,KAAK,IAAIV,EAASD,EAAiByB,EAAgBxB,CAAO,GAI1E,MAAMW,GACJH,IAAkB,OAASC,EAAea,EAAqBb,EAE3DoB,EAAYnB,EAAcf,EAAiB,IAC3CmC,EAAanB,GAAchB,EAAiB,KAC5CoC,GAAa,OAAOnD,GAAO,KAAQ,SAAWA,EAAM,IAAM,WAAW,OAAOA,GAAO,GAAG,CAAC,EACvFoD,GACJ,OAAOpD,GAAO,MAAS,SAAWA,EAAM,KAAO,WAAW,OAAOA,GAAO,IAAI,CAAC,GAO3E,KAAK,IAAIiD,EAAYE,EAAU,EAAI,GAAK,KAAK,IAAID,EAAaE,EAAW,EAAI,IAC/EzD,EAAgBG,EAAI,CAAE,IAAKmD,EAAW,KAAMC,CAAA,EAActB,CAAa,CAE3E,EAAG,CAAChC,EAASJ,EAAOO,EAAWD,EAAIG,EAAWD,GAAO,IAAKA,GAAO,KAAML,CAAe,CAAC,EAGrF0D,EAAAA,kBAAAA,IAACC,EAAAA,YAAA,CACC,MAAO,CAAE,YAAa1D,EAAU,GAAK,EAAG,GAAGI,CAAA,EAC3C,UAAWJ,EAAU,WAAa,YAClC,GAAAE,EACA,aAAckC,EACb,GAAGzB,EACJ,IAAKG,EAEL,SAAA2C,EAAAA,kBAAAA,IAACE,EAAAA,KAAA,CACE,WACE,OAAQC,GAAS,CAACA,EAAK,MAAM,EAC7B,IAAI,CAACA,EAAMC,IAAM,CAEhB,GAAID,EAAK,KACP,OAAOA,EAAK,KAGd,GAAIA,GAAM,KAAO,WAAaA,GAAM,UAAY,OAAOH,wBAAC,QAAQI,CAAG,EAEnE,KAAM,CACJ,MAAAC,EACA,KAAAC,EACA,IAAAC,EACA,YAAAC,EACA,QAAAC,EACA,KAAAC,EACA,MAAAvE,EAAQ,CAAA,EACR,GAAAM,EACA,aAAAkE,EACA,SAAAC,EACA,SAAAC,EACA,aAAAC,EACA,OAAAC,EACA,GAAG7D,CAAA,EACDiD,EAEE,CAAE,aAAAa,CAAA,EAAiBC,gBAAA,EACnBC,EAAiB,CAACF,GAAgBF,EAElCK,EAA2B,GAAwB,CACvD,EAAE,eAAA,EACF,EAAE,gBAAA,EACEL,GACF7D,IAAqB6D,CAAY,EAInChE,IAAA,CACF,EAEA,OACEkD,EAAAA,kBAAAA,IAACoB,GAAA,CACC,SAAU,EAGR,MAAAf,EACA,KAAAC,EACA,IAAAC,EACA,YAAAC,EACA,MAAArE,EACA,SAAAyE,EACA,SAAAC,EACA,aAAAC,EACA,OAAAC,EAEF,OAAQL,EACR,QAAU,GACRQ,EACIC,EAAwB,CAAC,EACzBhF,EAAM,OACNmB,EAAc,EAAGb,EAAIN,CAAK,EAC1BC,EAAY,EAAGqE,EAASC,EAAMC,CAAY,EAEhD,UAAY,GAAwC,CAC9C,EAAE,MAAQ,UACRO,EACFC,EAAwB,CAAQ,EACvBhF,EAAM,OACfmB,EAAc,EAAUb,EAAIN,CAAK,EAEjCC,EAAY,EAAUqE,EAASC,CAAI,GAGvC,MAAMW,EAAc,CAAE,EAAE,OAAuB,YAC3C,EAAE,MAAQ,OAASA,GAAe,CAAC,EAAE,WACvC,EAAE,eAAA,EACF,EAAE,gBAAA,EAEYhE,EAAQ,SAAS,iBAAiB,YAAY,EAAE,CAAC,GACxD,MAAA,GAGL,EAAE,MAAQ,UAAYd,GAAWG,IACnC,EAAE,eAAA,EACF,EAAE,gBAAA,EACFA,EAAU,MAAA,EACVG,IAAUJ,CAAE,EAEhB,EACA,MAAO,CAAE,aAAcN,EAAM,OAAS,IAAM,OAAQ,GAAGa,CAAA,EACvD,IAAM,GAAOG,EAAS,QAAQV,CAAE,EAAI,EACpC,aAAe,GAAMa,EAAc,EAAGb,EAAIN,CAAK,EAC/C,aAAe,GAAMmB,EAAc,EAAGb,EAAI,CAAA,CAAE,EAC5C,UAAW,GAAGM,CAAa,IAAIG,EAAM,WAAa,EAAE,GACnD,GAAGA,EAEH,SAAA,CAAC,CAACf,EAAM,QAAU6D,EAAAA,kBAAAA,IAACsB,GAAAA,KAAA,CAAK,KAAK,cAAc,MAAO,CAAE,WAAY,MAAA,CAAO,CAAG,CAAA,EArDtE,GAAG7E,CAAE,IAAI2D,CAAC,EAAA,CAwDrB,CAAC,CAAA,CACL,CAAA,CAAA,CAGN"}
|
|
@@ -121,7 +121,6 @@ import "react-dom";
|
|
|
121
121
|
import "../../context/pip/PiPWrapper.es.js";
|
|
122
122
|
import "../../context/AddonProjectContext.es.js";
|
|
123
123
|
import "../../context/AddonContext.es.js";
|
|
124
|
-
import "../../context/MoveEntityContext.es.js";
|
|
125
124
|
import "../../context/MenuContext.es.js";
|
|
126
125
|
import "../../context/WebsocketContext.es.js";
|
|
127
126
|
import "../../context/GlobalContext.es.js";
|
|
@@ -209,41 +208,7 @@ import "react-router-dom";
|
|
|
209
208
|
import "../../containers/Slicer/components/Slicer.es.js";
|
|
210
209
|
import "../../containers/Slicer/context/SlicerContextInstance.es.js";
|
|
211
210
|
import "../../containers/Slicer/components/SlicerDropdownFallback.es.js";
|
|
212
|
-
import "../../containers/
|
|
213
|
-
import "../ReviewableCard/ReviewableCard.es.js";
|
|
214
|
-
import "../ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
215
|
-
import "../SearchFilter/filterDates.es.js";
|
|
216
|
-
import "../SearchFilter/CustomDateRangeDialog.es.js";
|
|
217
|
-
import "../SettingsPanel/SettingsPanel.es.js";
|
|
218
|
-
import "../SettingsPanel/SettingsPanelItemTemplate.es.js";
|
|
219
|
-
import "../ShareOptionIcon/ShareOptionIcon.es.js";
|
|
220
|
-
import "../SimpleFormDialog/SimpleFormDialog.es.js";
|
|
221
|
-
import "../StyledLink/StyledLink.es.js";
|
|
222
|
-
import "../SyncButton/SyncButton.es.js";
|
|
223
|
-
import "../TableGridSwitch/TableGridSwitch.es.js";
|
|
224
|
-
import "../Thumbnail/Thumbnail.styled.es.js";
|
|
225
|
-
import "../Thumbnail/StackedThumbnails.es.js";
|
|
226
|
-
import "../ThumbnailSimple/ThumbnailSimple.es.js";
|
|
227
|
-
import "../VersionUploader/components/UploadVersionDialog.es.js";
|
|
228
|
-
import "../VersionUploader/context/VersionUploadContextInstance.es.js";
|
|
229
|
-
import "../Watchers/Watchers.es.js";
|
|
230
|
-
import "../ReviewablesSelector/ReviewablesSelector.es.js";
|
|
231
|
-
import "../ColumnHeaderMenuUI.es.js";
|
|
232
|
-
import "../../containers/Feed/components/ActivityReference/ActivityReference.styled.es.js";
|
|
233
|
-
import "../../containers/Feed/components/ActivityStatus/ActivityStatus.es.js";
|
|
234
|
-
import "../../containers/Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
|
|
235
|
-
import "../../containers/Feed/components/ActivityDate.es.js";
|
|
236
|
-
import "../../containers/Feed/components/ActivityCategorySelect/CategoryTag.es.js";
|
|
237
|
-
import "../../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
|
|
238
|
-
import "../../containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.es.js";
|
|
239
|
-
import "../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
|
|
240
|
-
import "../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
|
|
241
|
-
import "../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
|
|
242
|
-
import "../../containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js";
|
|
243
|
-
import "../../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
|
|
244
|
-
import "../../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
|
|
245
|
-
import "../../containers/Feed/Feed.styled.es.js";
|
|
246
|
-
import "../../containers/Feed/components/FeedSearchFilter.es.js";
|
|
211
|
+
import "../../containers/NewEntity/components/NewEntity.es.js";
|
|
247
212
|
import "@tanstack/react-virtual";
|
|
248
213
|
import "@tanstack/react-table";
|
|
249
214
|
import "../../containers/ProjectTreeTable/widgets/CollapsedWidget.es.js";
|
|
@@ -259,6 +224,7 @@ import "../../containers/ProjectTreeTable/widgets/GroupHeaderWidget.es.js";
|
|
|
259
224
|
import "../../containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js";
|
|
260
225
|
import "../../containers/ProjectTreeTable/widgets/LinksWidget.es.js";
|
|
261
226
|
import "short-uuid";
|
|
227
|
+
import "../SearchFilter/filterDates.es.js";
|
|
262
228
|
import "../../containers/ProjectTreeTable/context/CellEditingContext.es.js";
|
|
263
229
|
import "../../containers/ProjectTreeTable/context/SelectionCellsContext.es.js";
|
|
264
230
|
import "../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
|
|
@@ -276,6 +242,42 @@ import "../../containers/ProjectTreeTable/components/RowSelectionHeader.es.js";
|
|
|
276
242
|
import "../../containers/ProjectTreeTable/widgets/LoadMoreWidget.es.js";
|
|
277
243
|
import "../../containers/ProjectTreeTable/components/HeaderActionButton.es.js";
|
|
278
244
|
import "../../containers/ProjectTreeTable/components/TableFooterRow.es.js";
|
|
245
|
+
import "../../containers/NewEntity/context/NewEntityContextInstance.es.js";
|
|
246
|
+
import "../../containers/NewEntity/components/NewEntityForm.es.js";
|
|
247
|
+
import "../../containers/Slicer/hooks/useTableDataBySlice.es.js";
|
|
248
|
+
import "../ReviewableCard/ReviewableCard.es.js";
|
|
249
|
+
import "../ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
250
|
+
import "../SearchFilter/CustomDateRangeDialog.es.js";
|
|
251
|
+
import "../SettingsPanel/SettingsPanel.es.js";
|
|
252
|
+
import "../SettingsPanel/SettingsPanelItemTemplate.es.js";
|
|
253
|
+
import "../ShareOptionIcon/ShareOptionIcon.es.js";
|
|
254
|
+
import "../SimpleFormDialog/SimpleFormDialog.es.js";
|
|
255
|
+
import "../StyledLink/StyledLink.es.js";
|
|
256
|
+
import "../SyncButton/SyncButton.es.js";
|
|
257
|
+
import "../TableGridSwitch/TableGridSwitch.es.js";
|
|
258
|
+
import "../Thumbnail/Thumbnail.styled.es.js";
|
|
259
|
+
import "../Thumbnail/StackedThumbnails.es.js";
|
|
260
|
+
import "../ThumbnailSimple/ThumbnailSimple.es.js";
|
|
261
|
+
import "../VersionUploader/components/UploadVersionDialog.es.js";
|
|
262
|
+
import "../VersionUploader/context/VersionUploadContextInstance.es.js";
|
|
263
|
+
import "../Watchers/Watchers.es.js";
|
|
264
|
+
import "../ReviewablesSelector/ReviewablesSelector.es.js";
|
|
265
|
+
import "../ColumnHeaderMenuUI.es.js";
|
|
266
|
+
import "../../containers/Feed/components/ActivityReference/ActivityReference.styled.es.js";
|
|
267
|
+
import "../../containers/Feed/components/ActivityStatus/ActivityStatus.es.js";
|
|
268
|
+
import "../../containers/Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
|
|
269
|
+
import "../../containers/Feed/components/ActivityDate.es.js";
|
|
270
|
+
import "../../containers/Feed/components/ActivityCategorySelect/CategoryTag.es.js";
|
|
271
|
+
import "../../containers/Feed/components/ActivityFieldChange/ActivityFieldChange.styled.es.js";
|
|
272
|
+
import "../../containers/Feed/components/ActivityFieldChange/FieldValue.es.js";
|
|
273
|
+
import "../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
|
|
274
|
+
import "../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
|
|
275
|
+
import "../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
|
|
276
|
+
import "../../containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js";
|
|
277
|
+
import "../../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
|
|
278
|
+
import "../../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
|
|
279
|
+
import "../../containers/Feed/Feed.styled.es.js";
|
|
280
|
+
import "../../containers/Feed/components/FeedSearchFilter.es.js";
|
|
279
281
|
import "../../containers/DetailsPanel/DetailsPanel.styled.es.js";
|
|
280
282
|
import "../../containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.es.js";
|
|
281
283
|
import "../../containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.styled.es.js";
|
|
@@ -297,7 +299,7 @@ import "../../containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
|
|
|
297
299
|
import "../../containers/ListTable/ListTableRow.es.js";
|
|
298
300
|
import "../../containers/ListTable/ListTable.styled.es.js";
|
|
299
301
|
import "../../context/DeleteEntitiesContext.es.js";
|
|
300
|
-
const
|
|
302
|
+
const Am = ({
|
|
301
303
|
items: V,
|
|
302
304
|
handleClick: W,
|
|
303
305
|
onSubMenu: q,
|
|
@@ -420,6 +422,6 @@ const $m = ({
|
|
|
420
422
|
);
|
|
421
423
|
};
|
|
422
424
|
export {
|
|
423
|
-
|
|
425
|
+
Am as MenuList
|
|
424
426
|
};
|
|
425
427
|
//# sourceMappingURL=MenuList.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.es.js","sources":["../../../../../src/components/Menu/MenuList.tsx"],"sourcesContent":["import React, { useEffect, useLayoutEffect, useRef } from 'react'\nimport MenuItem from './MenuItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport * as Styled from './Menu.styled'\nimport { PowerpackFeature, usePowerpack } from '@shared/context'\nimport type { MenuItemType } from './Menu'\n\ninterface MenuListProps {\n items: MenuItemType[]\n handleClick: (\n e: React.MouseEvent,\n onClick?: (e: React.MouseEvent) => void,\n url?: string,\n disableClose?: boolean,\n ) => void\n onSubMenu?: (e: React.MouseEvent, menu: any) => void\n /** Called by a sub-menu after it mounts, with its real measured style. Lets the parent\n * refit using actual width/height instead of the open-time estimate. */\n onSubMenuLayout?: (id: string, style: React.CSSProperties, placement: 'left' | 'right') => void\n subMenu?: boolean\n level: number\n id?: string\n parentRef?: HTMLElement | null\n style?: React.CSSProperties\n /** Placement of THIS menu relative to its parent. Inherited by descendants so once\n * a chain flips to one side it stays there. */\n placement?: 'left' | 'right'\n onClose?: (id?: string) => void\n onMenuClose?: () => void\n itemClassName?: string\n itemStyle?: React.CSSProperties\n setPowerpackDialog?: (feature: PowerpackFeature) => void\n [key: string]: any\n}\n\nexport const MenuList: React.FC<MenuListProps> = ({\n items,\n handleClick,\n onSubMenu,\n onSubMenuLayout,\n subMenu,\n level,\n id = 'root-menu',\n parentRef,\n style,\n placement,\n onClose,\n onMenuClose,\n itemClassName,\n itemStyle,\n setPowerpackDialog,\n ...props\n}) => {\n const itemRefs = useRef<{ [key: string]: HTMLElement | null }>({})\n const menuRef = useRef<HTMLDivElement>(null)\n\n const handleSubMenu = (e: React.MouseEvent, id: string, items: MenuItemType[]) => {\n const itemEl = itemRefs.current[id]\n const parentMenuEl = menuRef.current\n if (!itemEl || !parentMenuEl) return\n\n // Sub-menus render absolute inside DialogContent. Compute viewport-anchored coords\n // from this item's bounding rect, then translate into the offsetParent's coord space.\n // Each level computes independently — no inherited offsets that drift across depth.\n const offsetParent = (parentMenuEl.offsetParent as HTMLElement | null) ?? document.body\n const offsetParentRect = offsetParent.getBoundingClientRect()\n const itemRect = itemEl.getBoundingClientRect()\n // Use the visible inner <menu> element if present — the wrapper has 16px paddingLeft\n // for sub-menus which would otherwise produce a phantom gap on flip-left chains.\n const parentVisibleEl = (parentMenuEl.querySelector('menu') as HTMLElement | null) ?? parentMenuEl\n const parentVisibleRect = parentVisibleEl.getBoundingClientRect()\n\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n const padding = 8\n // Use the parent's visible width as the initial estimate — sub-menus tend to be\n // similar size or smaller. Falls back to 240 if parent is unusually narrow.\n const estimatedWidth = Math.max(240, parentVisibleRect.width)\n const estimatedHeight = Math.min(items.length * 36 + 16, 480)\n\n // Choose horizontal placement. If an ancestor sub-menu has already flipped to the\n // left, every descendant sub-menu also goes left — DetailsPanel scenarios put the\n // root menu near the right edge of the screen, so flipping flip-flop on each level\n // would push deep menus back into the panel content.\n const gap = 4\n const computeLeftSide = () => Math.max(padding, parentVisibleRect.left - estimatedWidth - gap)\n const computeRightSide = () => parentVisibleRect.right + gap\n const fitsRight = computeRightSide() + estimatedWidth <= viewportWidth - padding\n const fitsLeft = computeLeftSide() >= padding\n\n let nextPlacement: 'left' | 'right'\n let viewportLeft: number\n if (placement === 'left' && fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else if (fitsRight) {\n nextPlacement = 'right'\n viewportLeft = computeRightSide()\n } else if (fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else {\n // Neither side fits cleanly — clamp to viewport, prefer left.\n nextPlacement = 'left'\n viewportLeft = Math.max(padding, viewportWidth - estimatedWidth - padding)\n }\n\n // Align first sub-menu item with the hovered parent item. The visible <menu> has\n // 8px top padding, so the wrapper top sits 8px above the item top.\n const innerTopOffset = 8\n let viewportTop = itemRect.top - innerTopOffset\n if (viewportTop + estimatedHeight > viewportHeight - padding) {\n viewportTop = Math.max(padding, viewportHeight - estimatedHeight - padding)\n }\n\n // Sub-menu wrappers carry 16px paddingLeft (so their wrapper rect is wider than\n // the visible menu). When we anchor on the LEFT side, the visible menu sits 16px\n // inside the wrapper — pull the wrapper left so the visible right edge lines up\n // with parentVisibleRect.left.\n const subMenuPaddingLeft = 16\n const wrapperLeft = nextPlacement === 'left' ? viewportLeft - subMenuPaddingLeft : viewportLeft\n\n onSubMenu?.(e, {\n id,\n style: {\n top: viewportTop - offsetParentRect.top,\n left: wrapperLeft - offsetParentRect.left,\n },\n items,\n level: level,\n placement: nextPlacement,\n // Pass the actual menu-item element so sub-menu measurement uses the <li>\n // instead of whatever inner span the mouse event bubbled from.\n parentEl: itemEl,\n })\n }\n\n const handleMouseLeave = (e: React.MouseEvent) => {\n if (subMenu) {\n onSubMenu?.(e, { id: 'parent', items: [] })\n }\n }\n\n // when a subMenu open, set focus on the first item\n useEffect(() => {\n if (subMenu && menuRef.current) {\n const first = menuRef.current.querySelectorAll('li, button')[0] as HTMLElement\n first?.focus()\n }\n }, [subMenu])\n\n // Sub-menus open with an estimated width — once mounted, measure for real and refit.\n // Reuses the same flip/clamp rules as handleSubMenu but with the actual rendered size.\n useLayoutEffect(() => {\n if (!subMenu || !menuRef.current || !parentRef || !onSubMenuLayout || !id) return\n const wrapperEl = menuRef.current\n const parentItemEl = parentRef\n const parentMenuEl = parentItemEl.closest('.menu-list, .sub-menu') as HTMLElement | null\n if (!parentMenuEl) return\n // Measure visible boxes (the inner <menu> tag), not wrappers. Sub-menu wrappers\n // carry 16px paddingLeft which inflates the rect on the left side and would\n // otherwise produce phantom gaps when flipping left.\n const ownVisibleEl = (wrapperEl.querySelector('menu') as HTMLElement | null) ?? wrapperEl\n const parentVisibleEl = (parentMenuEl.querySelector('menu') as HTMLElement | null) ?? parentMenuEl\n\n const offsetParent = (wrapperEl.offsetParent as HTMLElement | null) ?? document.body\n const offsetParentRect = offsetParent.getBoundingClientRect()\n const wrapperRect = wrapperEl.getBoundingClientRect()\n const ownVisibleRect = ownVisibleEl.getBoundingClientRect()\n const parentVisibleRect = parentVisibleEl.getBoundingClientRect()\n const parentItemRect = parentItemEl.getBoundingClientRect()\n\n // Some wrappers have 16px left padding (sub-menus). Track it so we can place the\n // wrapper such that the visible-menu edge — not the wrapper edge — lines up.\n const subMenuPaddingLeft = ownVisibleRect.left - wrapperRect.left\n const visibleWidth = ownVisibleRect.width\n const visibleHeight = ownVisibleRect.height\n\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n const padding = 8\n\n const gap = 4\n const computeLeftSide = () => Math.max(padding, parentVisibleRect.left - visibleWidth - gap)\n const computeRightSide = () => parentVisibleRect.right + gap\n const fitsRight = computeRightSide() + visibleWidth <= viewportWidth - padding\n const fitsLeft = computeLeftSide() >= padding\n\n let nextPlacement: 'left' | 'right'\n let viewportLeft: number\n if (placement === 'left' && fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else if (fitsRight) {\n nextPlacement = 'right'\n viewportLeft = computeRightSide()\n } else if (fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else {\n nextPlacement = 'left'\n viewportLeft = Math.max(padding, viewportWidth - visibleWidth - padding)\n }\n\n // Align this sub-menu's first <li> with the hovered parent item.\n // Direct DOM measurement is more robust than computed-style math across nested\n // levels — picks up any box-sizing / margin quirks that pure padding values miss.\n const firstItemEl = ownVisibleEl.querySelector(':scope > li') as HTMLElement | null\n const firstItemRect = firstItemEl?.getBoundingClientRect()\n // Move the wrapper by exactly the delta between where the first <li> currently is\n // and where we want it (parent item's top). Avoids any cascading offset arithmetic.\n const desiredFirstItemTop = parentItemRect.top\n const currentFirstItemTop = firstItemRect ? firstItemRect.top : wrapperRect.top + 8\n const deltaY = desiredFirstItemTop - currentFirstItemTop\n let viewportTop = wrapperRect.top + deltaY\n if (viewportTop + visibleHeight > viewportHeight - padding) {\n viewportTop = Math.max(padding, viewportHeight - visibleHeight - padding)\n }\n\n // Wrapper origin: visible target minus the wrapper's left padding when on the left.\n const wrapperLeft =\n nextPlacement === 'left' ? viewportLeft - subMenuPaddingLeft : viewportLeft\n\n const targetTop = viewportTop - offsetParentRect.top\n const targetLeft = wrapperLeft - offsetParentRect.left\n const currentTop = typeof style?.top === 'number' ? style.top : parseFloat(String(style?.top))\n const currentLeft =\n typeof style?.left === 'number' ? style.left : parseFloat(String(style?.left))\n\n // Idempotent guard: only emit a layout update when the target differs by >1px\n // from what's already applied. This makes the effect safe to re-run on every\n // dependency change — including `style`, which we update from inside this effect.\n // After a successful update, the new style flows back as props, the effect runs\n // once more, current ≈ target, and the guard is a no-op. No infinite loop.\n if (Math.abs(targetTop - currentTop) > 1 || Math.abs(targetLeft - currentLeft) > 1) {\n onSubMenuLayout(id, { top: targetTop, left: targetLeft }, nextPlacement)\n }\n }, [subMenu, items, parentRef, id, placement, style?.top, style?.left, onSubMenuLayout])\n\n return (\n <Styled.MenuWrapper\n style={{ paddingLeft: subMenu ? 16 : 0, ...style }}\n className={subMenu ? 'sub-menu' : 'menu-list'}\n id={id}\n onMouseLeave={handleMouseLeave}\n {...props}\n ref={menuRef}\n >\n <Styled.Menu>\n {items\n .filter((item) => !item.hidden)\n .map((item, i) => {\n // if item is a node, return it\n if (item.node) {\n return item.node\n }\n\n if (item?.id === 'divider' || item?.separator ) return <hr key={i} />\n\n const {\n label,\n icon,\n img,\n highlighted,\n onClick,\n link,\n items = [],\n id,\n disableClose,\n selected,\n disabled,\n powerFeature,\n active,\n ...props\n } = item\n\n const { powerLicense } = usePowerpack()\n const isPowerFeature = !powerLicense && powerFeature\n\n const handleClickPowerFeature = (e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n if (powerFeature) {\n setPowerpackDialog?.(powerFeature)\n }\n\n // close the menu\n onMenuClose?.()\n }\n\n return (\n <MenuItem\n tabIndex={0}\n key={`${id}-${i}`}\n {...{\n label,\n icon,\n img,\n highlighted,\n items,\n selected,\n disabled,\n powerFeature,\n active,\n }}\n isLink={link}\n onClick={(e) =>\n isPowerFeature\n ? handleClickPowerFeature(e)\n : items.length\n ? handleSubMenu(e, id, items)\n : handleClick(e, onClick, link, disableClose)\n }\n onKeyDown={(e: React.KeyboardEvent<HTMLElement>) => {\n if (e.key === 'Enter') {\n if (isPowerFeature) {\n handleClickPowerFeature(e as any)\n } else if (items.length) {\n handleSubMenu(e as any, id, items)\n } else {\n handleClick(e as any, onClick, link)\n }\n }\n const isLastChild = !(e.target as HTMLElement).nextSibling\n if (e.key === 'Tab' && isLastChild && !e.shiftKey) {\n e.preventDefault()\n e.stopPropagation()\n // when at bottom of list, tab goes to top\n const first = menuRef.current?.querySelectorAll('li, button')[0] as HTMLElement\n first?.focus()\n }\n // when a submenu is open, esc closes it and sets focus on the parent\n if (e.key === 'Escape' && subMenu && parentRef) {\n e.preventDefault()\n e.stopPropagation()\n parentRef.focus()\n onClose?.(id)\n }\n }}\n style={{ paddingRight: items.length ? '0' : '16px', ...itemStyle }}\n ref={(e) => (itemRefs.current[id] = e)}\n onMouseEnter={(e) => handleSubMenu(e, id, items)}\n onMouseLeave={(e) => handleSubMenu(e, id, [])}\n className={`${itemClassName} ${props.className || ''}`}\n {...props}\n >\n {!!items.length && <Icon icon=\"arrow_right\" style={{ marginLeft: 'auto' }} />}\n </MenuItem>\n )\n })}\n </Styled.Menu>\n </Styled.MenuWrapper>\n )\n}\n"],"names":["MenuList","items","handleClick","onSubMenu","onSubMenuLayout","subMenu","level","id","parentRef","style","placement","onClose","onMenuClose","itemClassName","itemStyle","setPowerpackDialog","props","itemRefs","useRef","menuRef","handleSubMenu","e","itemEl","parentMenuEl","offsetParentRect","itemRect","parentVisibleRect","viewportWidth","viewportHeight","padding","estimatedWidth","estimatedHeight","gap","computeLeftSide","computeRightSide","fitsRight","fitsLeft","nextPlacement","viewportLeft","viewportTop","wrapperLeft","handleMouseLeave","useEffect","useLayoutEffect","wrapperEl","parentItemEl","ownVisibleEl","parentVisibleEl","wrapperRect","ownVisibleRect","parentItemRect","subMenuPaddingLeft","visibleWidth","visibleHeight","firstItemRect","desiredFirstItemTop","currentFirstItemTop","deltaY","targetTop","targetLeft","currentTop","currentLeft","jsx","Styled.MenuWrapper","Styled.Menu","item","i","label","icon","img","highlighted","onClick","link","disableClose","selected","disabled","powerFeature","active","powerLicense","usePowerpack","isPowerFeature","handleClickPowerFeature","MenuItem","isLastChild","Icon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MenuList.es.js","sources":["../../../../../src/components/Menu/MenuList.tsx"],"sourcesContent":["import React, { useEffect, useLayoutEffect, useRef } from 'react'\nimport MenuItem from './MenuItem'\nimport { Icon } from '@ynput/ayon-react-components'\nimport * as Styled from './Menu.styled'\nimport { PowerpackFeature, usePowerpack } from '@shared/context'\nimport type { MenuItemType } from './Menu'\n\ninterface MenuListProps {\n items: MenuItemType[]\n handleClick: (\n e: React.MouseEvent,\n onClick?: (e: React.MouseEvent) => void,\n url?: string,\n disableClose?: boolean,\n ) => void\n onSubMenu?: (e: React.MouseEvent, menu: any) => void\n /** Called by a sub-menu after it mounts, with its real measured style. Lets the parent\n * refit using actual width/height instead of the open-time estimate. */\n onSubMenuLayout?: (id: string, style: React.CSSProperties, placement: 'left' | 'right') => void\n subMenu?: boolean\n level: number\n id?: string\n parentRef?: HTMLElement | null\n style?: React.CSSProperties\n /** Placement of THIS menu relative to its parent. Inherited by descendants so once\n * a chain flips to one side it stays there. */\n placement?: 'left' | 'right'\n onClose?: (id?: string) => void\n onMenuClose?: () => void\n itemClassName?: string\n itemStyle?: React.CSSProperties\n setPowerpackDialog?: (feature: PowerpackFeature) => void\n [key: string]: any\n}\n\nexport const MenuList: React.FC<MenuListProps> = ({\n items,\n handleClick,\n onSubMenu,\n onSubMenuLayout,\n subMenu,\n level,\n id = 'root-menu',\n parentRef,\n style,\n placement,\n onClose,\n onMenuClose,\n itemClassName,\n itemStyle,\n setPowerpackDialog,\n ...props\n}) => {\n const itemRefs = useRef<{ [key: string]: HTMLElement | null }>({})\n const menuRef = useRef<HTMLDivElement>(null)\n\n const handleSubMenu = (e: React.MouseEvent, id: string, items: MenuItemType[]) => {\n const itemEl = itemRefs.current[id]\n const parentMenuEl = menuRef.current\n if (!itemEl || !parentMenuEl) return\n\n // Sub-menus render absolute inside DialogContent. Compute viewport-anchored coords\n // from this item's bounding rect, then translate into the offsetParent's coord space.\n // Each level computes independently — no inherited offsets that drift across depth.\n const offsetParent = (parentMenuEl.offsetParent as HTMLElement | null) ?? document.body\n const offsetParentRect = offsetParent.getBoundingClientRect()\n const itemRect = itemEl.getBoundingClientRect()\n // Use the visible inner <menu> element if present — the wrapper has 16px paddingLeft\n // for sub-menus which would otherwise produce a phantom gap on flip-left chains.\n const parentVisibleEl = (parentMenuEl.querySelector('menu') as HTMLElement | null) ?? parentMenuEl\n const parentVisibleRect = parentVisibleEl.getBoundingClientRect()\n\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n const padding = 8\n // Use the parent's visible width as the initial estimate — sub-menus tend to be\n // similar size or smaller. Falls back to 240 if parent is unusually narrow.\n const estimatedWidth = Math.max(240, parentVisibleRect.width)\n const estimatedHeight = Math.min(items.length * 36 + 16, 480)\n\n // Choose horizontal placement. If an ancestor sub-menu has already flipped to the\n // left, every descendant sub-menu also goes left — DetailsPanel scenarios put the\n // root menu near the right edge of the screen, so flipping flip-flop on each level\n // would push deep menus back into the panel content.\n const gap = 4\n const computeLeftSide = () => Math.max(padding, parentVisibleRect.left - estimatedWidth - gap)\n const computeRightSide = () => parentVisibleRect.right + gap\n const fitsRight = computeRightSide() + estimatedWidth <= viewportWidth - padding\n const fitsLeft = computeLeftSide() >= padding\n\n let nextPlacement: 'left' | 'right'\n let viewportLeft: number\n if (placement === 'left' && fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else if (fitsRight) {\n nextPlacement = 'right'\n viewportLeft = computeRightSide()\n } else if (fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else {\n // Neither side fits cleanly — clamp to viewport, prefer left.\n nextPlacement = 'left'\n viewportLeft = Math.max(padding, viewportWidth - estimatedWidth - padding)\n }\n\n // Align first sub-menu item with the hovered parent item. The visible <menu> has\n // 8px top padding, so the wrapper top sits 8px above the item top.\n const innerTopOffset = 8\n let viewportTop = itemRect.top - innerTopOffset\n if (viewportTop + estimatedHeight > viewportHeight - padding) {\n viewportTop = Math.max(padding, viewportHeight - estimatedHeight - padding)\n }\n\n // Sub-menu wrappers carry 16px paddingLeft (so their wrapper rect is wider than\n // the visible menu). When we anchor on the LEFT side, the visible menu sits 16px\n // inside the wrapper — pull the wrapper left so the visible right edge lines up\n // with parentVisibleRect.left.\n const subMenuPaddingLeft = 16\n const wrapperLeft = nextPlacement === 'left' ? viewportLeft - subMenuPaddingLeft : viewportLeft\n\n onSubMenu?.(e, {\n id,\n style: {\n top: viewportTop - offsetParentRect.top,\n left: wrapperLeft - offsetParentRect.left,\n },\n items,\n level: level,\n placement: nextPlacement,\n // Pass the actual menu-item element so sub-menu measurement uses the <li>\n // instead of whatever inner span the mouse event bubbled from.\n parentEl: itemEl,\n })\n }\n\n const handleMouseLeave = (e: React.MouseEvent) => {\n if (subMenu) {\n onSubMenu?.(e, { id: 'parent', items: [] })\n }\n }\n\n // when a subMenu open, set focus on the first item\n useEffect(() => {\n if (subMenu && menuRef.current) {\n const first = menuRef.current.querySelectorAll('li, button')[0] as HTMLElement\n first?.focus()\n }\n }, [subMenu])\n\n // Sub-menus open with an estimated width — once mounted, measure for real and refit.\n // Reuses the same flip/clamp rules as handleSubMenu but with the actual rendered size.\n useLayoutEffect(() => {\n if (!subMenu || !menuRef.current || !parentRef || !onSubMenuLayout || !id) return\n const wrapperEl = menuRef.current\n const parentItemEl = parentRef\n const parentMenuEl = parentItemEl.closest('.menu-list, .sub-menu') as HTMLElement | null\n if (!parentMenuEl) return\n // Measure visible boxes (the inner <menu> tag), not wrappers. Sub-menu wrappers\n // carry 16px paddingLeft which inflates the rect on the left side and would\n // otherwise produce phantom gaps when flipping left.\n const ownVisibleEl = (wrapperEl.querySelector('menu') as HTMLElement | null) ?? wrapperEl\n const parentVisibleEl = (parentMenuEl.querySelector('menu') as HTMLElement | null) ?? parentMenuEl\n\n const offsetParent = (wrapperEl.offsetParent as HTMLElement | null) ?? document.body\n const offsetParentRect = offsetParent.getBoundingClientRect()\n const wrapperRect = wrapperEl.getBoundingClientRect()\n const ownVisibleRect = ownVisibleEl.getBoundingClientRect()\n const parentVisibleRect = parentVisibleEl.getBoundingClientRect()\n const parentItemRect = parentItemEl.getBoundingClientRect()\n\n // Some wrappers have 16px left padding (sub-menus). Track it so we can place the\n // wrapper such that the visible-menu edge — not the wrapper edge — lines up.\n const subMenuPaddingLeft = ownVisibleRect.left - wrapperRect.left\n const visibleWidth = ownVisibleRect.width\n const visibleHeight = ownVisibleRect.height\n\n const viewportWidth = window.innerWidth\n const viewportHeight = window.innerHeight\n const padding = 8\n\n const gap = 4\n const computeLeftSide = () => Math.max(padding, parentVisibleRect.left - visibleWidth - gap)\n const computeRightSide = () => parentVisibleRect.right + gap\n const fitsRight = computeRightSide() + visibleWidth <= viewportWidth - padding\n const fitsLeft = computeLeftSide() >= padding\n\n let nextPlacement: 'left' | 'right'\n let viewportLeft: number\n if (placement === 'left' && fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else if (fitsRight) {\n nextPlacement = 'right'\n viewportLeft = computeRightSide()\n } else if (fitsLeft) {\n nextPlacement = 'left'\n viewportLeft = computeLeftSide()\n } else {\n nextPlacement = 'left'\n viewportLeft = Math.max(padding, viewportWidth - visibleWidth - padding)\n }\n\n // Align this sub-menu's first <li> with the hovered parent item.\n // Direct DOM measurement is more robust than computed-style math across nested\n // levels — picks up any box-sizing / margin quirks that pure padding values miss.\n const firstItemEl = ownVisibleEl.querySelector(':scope > li') as HTMLElement | null\n const firstItemRect = firstItemEl?.getBoundingClientRect()\n // Move the wrapper by exactly the delta between where the first <li> currently is\n // and where we want it (parent item's top). Avoids any cascading offset arithmetic.\n const desiredFirstItemTop = parentItemRect.top\n const currentFirstItemTop = firstItemRect ? firstItemRect.top : wrapperRect.top + 8\n const deltaY = desiredFirstItemTop - currentFirstItemTop\n let viewportTop = wrapperRect.top + deltaY\n if (viewportTop + visibleHeight > viewportHeight - padding) {\n viewportTop = Math.max(padding, viewportHeight - visibleHeight - padding)\n }\n\n // Wrapper origin: visible target minus the wrapper's left padding when on the left.\n const wrapperLeft =\n nextPlacement === 'left' ? viewportLeft - subMenuPaddingLeft : viewportLeft\n\n const targetTop = viewportTop - offsetParentRect.top\n const targetLeft = wrapperLeft - offsetParentRect.left\n const currentTop = typeof style?.top === 'number' ? style.top : parseFloat(String(style?.top))\n const currentLeft =\n typeof style?.left === 'number' ? style.left : parseFloat(String(style?.left))\n\n // Idempotent guard: only emit a layout update when the target differs by >1px\n // from what's already applied. This makes the effect safe to re-run on every\n // dependency change — including `style`, which we update from inside this effect.\n // After a successful update, the new style flows back as props, the effect runs\n // once more, current ≈ target, and the guard is a no-op. No infinite loop.\n if (Math.abs(targetTop - currentTop) > 1 || Math.abs(targetLeft - currentLeft) > 1) {\n onSubMenuLayout(id, { top: targetTop, left: targetLeft }, nextPlacement)\n }\n }, [subMenu, items, parentRef, id, placement, style?.top, style?.left, onSubMenuLayout])\n\n return (\n <Styled.MenuWrapper\n style={{ paddingLeft: subMenu ? 16 : 0, ...style }}\n className={subMenu ? 'sub-menu' : 'menu-list'}\n id={id}\n onMouseLeave={handleMouseLeave}\n {...props}\n ref={menuRef}\n >\n <Styled.Menu>\n {items\n .filter((item) => !item.hidden)\n .map((item, i) => {\n // if item is a node, return it\n if (item.node) {\n return item.node\n }\n\n if (item?.id === 'divider' || item?.separator ) return <hr key={i} />\n\n const {\n label,\n icon,\n img,\n highlighted,\n onClick,\n link,\n items = [],\n id,\n disableClose,\n selected,\n disabled,\n powerFeature,\n active,\n ...props\n } = item\n\n const { powerLicense } = usePowerpack()\n const isPowerFeature = !powerLicense && powerFeature\n\n const handleClickPowerFeature = (e: React.MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n if (powerFeature) {\n setPowerpackDialog?.(powerFeature)\n }\n\n // close the menu\n onMenuClose?.()\n }\n\n return (\n <MenuItem\n tabIndex={0}\n key={`${id}-${i}`}\n {...{\n label,\n icon,\n img,\n highlighted,\n items,\n selected,\n disabled,\n powerFeature,\n active,\n }}\n isLink={link}\n onClick={(e) =>\n isPowerFeature\n ? handleClickPowerFeature(e)\n : items.length\n ? handleSubMenu(e, id, items)\n : handleClick(e, onClick, link, disableClose)\n }\n onKeyDown={(e: React.KeyboardEvent<HTMLElement>) => {\n if (e.key === 'Enter') {\n if (isPowerFeature) {\n handleClickPowerFeature(e as any)\n } else if (items.length) {\n handleSubMenu(e as any, id, items)\n } else {\n handleClick(e as any, onClick, link)\n }\n }\n const isLastChild = !(e.target as HTMLElement).nextSibling\n if (e.key === 'Tab' && isLastChild && !e.shiftKey) {\n e.preventDefault()\n e.stopPropagation()\n // when at bottom of list, tab goes to top\n const first = menuRef.current?.querySelectorAll('li, button')[0] as HTMLElement\n first?.focus()\n }\n // when a submenu is open, esc closes it and sets focus on the parent\n if (e.key === 'Escape' && subMenu && parentRef) {\n e.preventDefault()\n e.stopPropagation()\n parentRef.focus()\n onClose?.(id)\n }\n }}\n style={{ paddingRight: items.length ? '0' : '16px', ...itemStyle }}\n ref={(e) => (itemRefs.current[id] = e)}\n onMouseEnter={(e) => handleSubMenu(e, id, items)}\n onMouseLeave={(e) => handleSubMenu(e, id, [])}\n className={`${itemClassName} ${props.className || ''}`}\n {...props}\n >\n {!!items.length && <Icon icon=\"arrow_right\" style={{ marginLeft: 'auto' }} />}\n </MenuItem>\n )\n })}\n </Styled.Menu>\n </Styled.MenuWrapper>\n )\n}\n"],"names":["MenuList","items","handleClick","onSubMenu","onSubMenuLayout","subMenu","level","id","parentRef","style","placement","onClose","onMenuClose","itemClassName","itemStyle","setPowerpackDialog","props","itemRefs","useRef","menuRef","handleSubMenu","e","itemEl","parentMenuEl","offsetParentRect","itemRect","parentVisibleRect","viewportWidth","viewportHeight","padding","estimatedWidth","estimatedHeight","gap","computeLeftSide","computeRightSide","fitsRight","fitsLeft","nextPlacement","viewportLeft","viewportTop","wrapperLeft","handleMouseLeave","useEffect","useLayoutEffect","wrapperEl","parentItemEl","ownVisibleEl","parentVisibleEl","wrapperRect","ownVisibleRect","parentItemRect","subMenuPaddingLeft","visibleWidth","visibleHeight","firstItemRect","desiredFirstItemTop","currentFirstItemTop","deltaY","targetTop","targetLeft","currentTop","currentLeft","jsx","Styled.MenuWrapper","Styled.Menu","item","i","label","icon","img","highlighted","onClick","link","disableClose","selected","disabled","powerFeature","active","powerLicense","usePowerpack","isPowerFeature","handleClickPowerFeature","MenuItem","isLastChild","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCO,MAAMA,KAAoC,CAAC;AAAA,EAChD,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,SAAAC;AAAA,EACA,OAAAC;AAAA,EACA,IAAAC,IAAK;AAAA,EACL,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,aAAAC;AAAA,EACA,eAAAC;AAAA,EACA,WAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAMC,IAAWC,EAA8C,EAAE,GAC3DC,IAAUD,EAAuB,IAAI,GAErCE,IAAgB,CAACC,GAAqBd,GAAYN,MAA0B;AAChF,UAAMqB,IAASL,EAAS,QAAQV,CAAE,GAC5BgB,IAAeJ,EAAQ;AAC7B,QAAI,CAACG,KAAU,CAACC,EAAc;AAM9B,UAAMC,KADgBD,EAAa,gBAAuC,SAAS,MAC7C,sBAAA,GAChCE,IAAWH,EAAO,sBAAA,GAIlBI,KADmBH,EAAa,cAAc,MAAM,KAA4BA,GAC5C,sBAAA,GAEpCI,IAAgB,OAAO,YACvBC,IAAiB,OAAO,aACxBC,IAAU,GAGVC,IAAiB,KAAK,IAAI,KAAKJ,EAAkB,KAAK,GACtDK,IAAkB,KAAK,IAAI9B,EAAM,SAAS,KAAK,IAAI,GAAG,GAMtD+B,IAAM,GACNC,IAAkB,MAAM,KAAK,IAAIJ,GAASH,EAAkB,OAAOI,IAAiBE,CAAG,GACvFE,IAAmB,MAAMR,EAAkB,QAAQM,GACnDG,IAAYD,EAAA,IAAqBJ,KAAkBH,IAAgBE,GACnEO,IAAWH,OAAqBJ;AAEtC,QAAIQ,GACAC;AACJ,IAAI5B,MAAc,UAAU0B,KAC1BC,IAAgB,QAChBC,IAAeL,EAAA,KACNE,KACTE,IAAgB,SAChBC,IAAeJ,EAAA,KACNE,KACTC,IAAgB,QAChBC,IAAeL,EAAA,MAGfI,IAAgB,QAChBC,IAAe,KAAK,IAAIT,GAASF,IAAgBG,IAAiBD,CAAO;AAM3E,QAAIU,IAAcd,EAAS,MADJ;AAEvB,IAAIc,IAAcR,IAAkBH,IAAiBC,MACnDU,IAAc,KAAK,IAAIV,GAASD,IAAiBG,IAAkBF,CAAO;AAQ5E,UAAMW,IAAcH,MAAkB,SAASC,IADpB,KACwDA;AAEnF,IAAAnC,IAAYkB,GAAG;AAAA,MACb,IAAAd;AAAAA,MACA,OAAO;AAAA,QACL,KAAKgC,IAAcf,EAAiB;AAAA,QACpC,MAAMgB,IAAchB,EAAiB;AAAA,MAAA;AAAA,MAEvC,OAAAvB;AAAAA,MACA,OAAAK;AAAA,MACA,WAAW+B;AAAA;AAAA;AAAA,MAGX,UAAUf;AAAA,IAAA,CACX;AAAA,EACH,GAEMmB,IAAmB,CAACpB,MAAwB;AAChD,IAAIhB,KACFF,IAAYkB,GAAG,EAAE,IAAI,UAAU,OAAO,CAAA,GAAI;AAAA,EAE9C;AAGA,SAAAqB,GAAU,MAAM;AACd,IAAIrC,KAAWc,EAAQ,WACPA,EAAQ,QAAQ,iBAAiB,YAAY,EAAE,CAAC,GACvD,MAAA;AAAA,EAEX,GAAG,CAACd,CAAO,CAAC,GAIZsC,GAAgB,MAAM;AACpB,QAAI,CAACtC,KAAW,CAACc,EAAQ,WAAW,CAACX,KAAa,CAACJ,KAAmB,CAACG,EAAI;AAC3E,UAAMqC,IAAYzB,EAAQ,SACpB0B,IAAerC,GACfe,IAAesB,EAAa,QAAQ,uBAAuB;AACjE,QAAI,CAACtB,EAAc;AAInB,UAAMuB,IAAgBF,EAAU,cAAc,MAAM,KAA4BA,GAC1EG,IAAmBxB,EAAa,cAAc,MAAM,KAA4BA,GAGhFC,KADgBoB,EAAU,gBAAuC,SAAS,MAC1C,sBAAA,GAChCI,IAAcJ,EAAU,sBAAA,GACxBK,IAAiBH,EAAa,sBAAA,GAC9BpB,IAAoBqB,EAAgB,sBAAA,GACpCG,IAAiBL,EAAa,sBAAA,GAI9BM,IAAqBF,EAAe,OAAOD,EAAY,MACvDI,IAAeH,EAAe,OAC9BI,IAAgBJ,EAAe,QAE/BtB,IAAgB,OAAO,YACvBC,IAAiB,OAAO,aACxBC,IAAU,GAEVG,IAAM,GACNC,IAAkB,MAAM,KAAK,IAAIJ,GAASH,EAAkB,OAAO0B,IAAepB,CAAG,GACrFE,IAAmB,MAAMR,EAAkB,QAAQM,GACnDG,IAAYD,EAAA,IAAqBkB,KAAgBzB,IAAgBE,GACjEO,IAAWH,OAAqBJ;AAEtC,QAAIQ,GACAC;AACJ,IAAI5B,MAAc,UAAU0B,KAC1BC,IAAgB,QAChBC,IAAeL,EAAA,KACNE,KACTE,IAAgB,SAChBC,IAAeJ,EAAA,KACNE,KACTC,IAAgB,QAChBC,IAAeL,EAAA,MAEfI,IAAgB,QAChBC,IAAe,KAAK,IAAIT,GAASF,IAAgByB,IAAevB,CAAO;AAOzE,UAAMyB,IADcR,EAAa,cAAc,aAAa,GACzB,sBAAA,GAG7BS,IAAsBL,EAAe,KACrCM,IAAsBF,IAAgBA,EAAc,MAAMN,EAAY,MAAM,GAC5ES,IAASF,IAAsBC;AACrC,QAAIjB,IAAcS,EAAY,MAAMS;AACpC,IAAIlB,IAAcc,IAAgBzB,IAAiBC,MACjDU,IAAc,KAAK,IAAIV,GAASD,IAAiByB,IAAgBxB,CAAO;AAI1E,UAAMW,KACJH,MAAkB,SAASC,IAAea,IAAqBb,GAE3DoB,IAAYnB,IAAcf,EAAiB,KAC3CmC,IAAanB,KAAchB,EAAiB,MAC5CoC,KAAa,OAAOnD,GAAO,OAAQ,WAAWA,EAAM,MAAM,WAAW,OAAOA,GAAO,GAAG,CAAC,GACvFoD,KACJ,OAAOpD,GAAO,QAAS,WAAWA,EAAM,OAAO,WAAW,OAAOA,GAAO,IAAI,CAAC;AAO/E,KAAI,KAAK,IAAIiD,IAAYE,EAAU,IAAI,KAAK,KAAK,IAAID,IAAaE,EAAW,IAAI,MAC/EzD,EAAgBG,GAAI,EAAE,KAAKmD,GAAW,MAAMC,EAAA,GAActB,CAAa;AAAA,EAE3E,GAAG,CAAChC,GAASJ,GAAOO,GAAWD,GAAIG,GAAWD,GAAO,KAAKA,GAAO,MAAML,CAAe,CAAC,GAGrF0D,gBAAAA,EAAAA;AAAAA,IAACC;AAAAA,IAAA;AAAA,MACC,OAAO,EAAE,aAAa1D,IAAU,KAAK,GAAG,GAAGI,EAAA;AAAA,MAC3C,WAAWJ,IAAU,aAAa;AAAA,MAClC,IAAAE;AAAA,MACA,cAAckC;AAAA,MACb,GAAGzB;AAAA,MACJ,KAAKG;AAAA,MAEL,UAAA2C,gBAAAA,EAAAA,IAACE,IAAA,EACE,YACE,OAAO,CAACC,MAAS,CAACA,EAAK,MAAM,EAC7B,IAAI,CAACA,GAAMC,MAAM;AAEhB,YAAID,EAAK;AACP,iBAAOA,EAAK;AAGd,YAAIA,GAAM,OAAO,aAAaA,GAAM,UAAY,QAAOH,gBAAAA,MAAC,UAAQI,CAAG;AAEnE,cAAM;AAAA,UACJ,OAAAC;AAAA,UACA,MAAAC;AAAA,UACA,KAAAC;AAAA,UACA,aAAAC;AAAA,UACA,SAAAC;AAAA,UACA,MAAAC;AAAA,UACA,OAAAvE,IAAQ,CAAA;AAAA,UACR,IAAAM;AAAAA,UACA,cAAAkE;AAAA,UACA,UAAAC;AAAA,UACA,UAAAC;AAAA,UACA,cAAAC;AAAA,UACA,QAAAC;AAAA,UACA,GAAG7D;AAAAA,QAAA,IACDiD,GAEE,EAAE,cAAAa,EAAA,IAAiBC,GAAA,GACnBC,IAAiB,CAACF,KAAgBF,GAElCK,IAA0B,CAAC5D,MAAwB;AACvD,UAAAA,EAAE,eAAA,GACFA,EAAE,gBAAA,GACEuD,KACF7D,IAAqB6D,CAAY,GAInChE,IAAA;AAAA,QACF;AAEA,eACEkD,gBAAAA,EAAAA;AAAAA,UAACoB;AAAA,UAAA;AAAA,YACC,UAAU;AAAA,YAGR,OAAAf;AAAA,YACA,MAAAC;AAAA,YACA,KAAAC;AAAA,YACA,aAAAC;AAAA,YACA,OAAArE;AAAAA,YACA,UAAAyE;AAAA,YACA,UAAAC;AAAA,YACA,cAAAC;AAAA,YACA,QAAAC;AAAA,YAEF,QAAQL;AAAA,YACR,SAAS,CAACnD,MACR2D,IACIC,EAAwB5D,CAAC,IACzBpB,EAAM,SACNmB,EAAcC,GAAGd,GAAIN,CAAK,IAC1BC,EAAYmB,GAAGkD,GAASC,GAAMC,CAAY;AAAA,YAEhD,WAAW,CAACpD,MAAwC;AAClD,cAAIA,EAAE,QAAQ,YACR2D,IACFC,EAAwB5D,CAAQ,IACvBpB,EAAM,SACfmB,EAAcC,GAAUd,GAAIN,CAAK,IAEjCC,EAAYmB,GAAUkD,GAASC,CAAI;AAGvC,oBAAMW,IAAc,CAAE9D,EAAE,OAAuB;AAC/C,cAAIA,EAAE,QAAQ,SAAS8D,KAAe,CAAC9D,EAAE,aACvCA,EAAE,eAAA,GACFA,EAAE,gBAAA,GAEYF,EAAQ,SAAS,iBAAiB,YAAY,EAAE,CAAC,GACxD,MAAA,IAGLE,EAAE,QAAQ,YAAYhB,KAAWG,MACnCa,EAAE,eAAA,GACFA,EAAE,gBAAA,GACFb,EAAU,MAAA,GACVG,IAAUJ,CAAE;AAAA,YAEhB;AAAA,YACA,OAAO,EAAE,cAAcN,EAAM,SAAS,MAAM,QAAQ,GAAGa,EAAA;AAAA,YACvD,KAAK,CAACO,MAAOJ,EAAS,QAAQV,CAAE,IAAIc;AAAA,YACpC,cAAc,CAACA,MAAMD,EAAcC,GAAGd,GAAIN,CAAK;AAAA,YAC/C,cAAc,CAACoB,MAAMD,EAAcC,GAAGd,GAAI,CAAA,CAAE;AAAA,YAC5C,WAAW,GAAGM,CAAa,IAAIG,EAAM,aAAa,EAAE;AAAA,YACnD,GAAGA;AAAAA,YAEH,UAAA,CAAC,CAACf,EAAM,UAAU6D,gBAAAA,EAAAA,IAACsB,IAAA,EAAK,MAAK,eAAc,OAAO,EAAE,YAAY,OAAA,EAAO,CAAG;AAAA,UAAA;AAAA,UArDtE,GAAG7E,CAAE,IAAI2D,CAAC;AAAA,QAAA;AAAA,MAwDrB,CAAC,EAAA,CACL;AAAA,IAAA;AAAA,EAAA;AAGN;"}
|