@ynput/ayon-frontend-shared 0.2.38 → 0.2.40
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 +72 -66
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +169 -167
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Views.cjs.js.map +1 -1
- package/dist/Views.es.js.map +1 -1
- package/dist/_virtual/index.cjs10.js +1 -1
- package/dist/_virtual/index.cjs11.js +1 -1
- package/dist/_virtual/index.cjs12.js +1 -1
- package/dist/_virtual/index.cjs2.js +1 -1
- package/dist/_virtual/index.cjs3.js +1 -1
- package/dist/_virtual/index.cjs4.js +1 -1
- package/dist/_virtual/index.es10.js +3 -3
- package/dist/_virtual/index.es11.js +5 -5
- package/dist/_virtual/index.es12.js +5 -5
- package/dist/_virtual/index.es2.js +5 -2
- package/dist/_virtual/index.es2.js.map +1 -1
- package/dist/_virtual/index.es3.js +2 -5
- package/dist/_virtual/index.es3.js.map +1 -1
- package/dist/_virtual/index.es4.js +2 -2
- package/dist/api.cjs.js +1 -1
- package/dist/api.es.js +22 -20
- package/dist/api.es.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +139 -133
- package/dist/components.es.js.map +1 -1
- package/dist/context.cjs.js +1 -1
- package/dist/context.es.js +45 -38
- package/dist/context.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +61 -55
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/react-use-websocket/dist/index.cjs.js +1 -1
- package/dist/node_modules/react-use-websocket/dist/index.es.js +1 -1
- package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
- package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
- package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype-parse/lib/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/generated/graphql.cjs.js +4 -0
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +4 -0
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
- package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/views.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 +8 -3
- 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 +4 -3
- 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 +70 -66
- package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/uris/getUris.cjs.js +2 -0
- package/dist/shared/src/api/queries/uris/getUris.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/uris/getUris.es.js +47 -0
- package/dist/shared/src/api/queries/uris/getUris.es.js.map +1 -0
- package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
- package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.es.js +19 -18
- package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
- package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.cjs.js +28 -0
- package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.cjs.js.map +1 -0
- package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.es.js +54 -0
- package/dist/shared/src/components/AddonLoadingScreen/AddonLoadingScreen.es.js.map +1 -0
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +5 -2
- 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 +5 -2
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +5 -2
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +5 -2
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.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 +75 -69
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
- package/dist/shared/src/components/EntityPath/EntityPath.cjs.js +1 -1
- package/dist/shared/src/components/EntityPath/EntityPath.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPath/EntityPath.es.js +51 -53
- package/dist/shared/src/components/EntityPath/EntityPath.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 +4 -2
- package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js +7 -4
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +60 -54
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/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 +66 -60
- 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 +5 -2
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
- package/dist/shared/src/components/Menu/Menu.cjs.js +2 -0
- package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -0
- package/dist/shared/src/components/Menu/Menu.es.js +92 -0
- package/dist/shared/src/components/Menu/Menu.es.js.map +1 -0
- package/dist/shared/src/components/Menu/Menu.styled.cjs.js.map +1 -0
- package/dist/shared/src/components/Menu/Menu.styled.es.js.map +1 -0
- package/dist/shared/src/components/Menu/MenuContainer.cjs.js +2 -0
- package/dist/shared/src/components/Menu/MenuContainer.cjs.js.map +1 -0
- package/dist/shared/src/components/Menu/MenuContainer.es.js +88 -0
- package/dist/shared/src/components/Menu/MenuContainer.es.js.map +1 -0
- package/dist/shared/src/components/Menu/MenuItem.cjs.js +2 -0
- package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -0
- package/dist/{src/components/Menu/MenuComponents → shared/src/components/Menu}/MenuItem.es.js +26 -24
- package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -0
- package/dist/shared/src/components/Menu/MenuList.cjs.js +2 -0
- package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -0
- package/dist/shared/src/components/Menu/MenuList.es.js +131 -0
- package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -0
- package/dist/shared/src/components/Menu/useMenuPosition.cjs.js +2 -0
- package/dist/shared/src/components/Menu/useMenuPosition.cjs.js.map +1 -0
- package/dist/shared/src/components/Menu/useMenuPosition.es.js +50 -0
- package/dist/shared/src/components/Menu/useMenuPosition.es.js.map +1 -0
- package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +7 -5
- 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 +49 -43
- package/dist/shared/src/components/Powerpack/PowerpackDialog.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 +46 -40
- 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 +48 -42
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.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 +66 -60
- package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +64 -58
- 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 +54 -48
- 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 +53 -47
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/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 +219 -190
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +2 -2
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +20 -18
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.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 +52 -46
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +2 -2
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +13 -11
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +2 -2
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +56 -50
- 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 +5 -4
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
- package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +53 -47
- 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 +5 -2
- package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +54 -48
- 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 +293 -229
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js +10 -4
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js +13 -7
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.styled.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +49 -43
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +68 -62
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +92 -86
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +9 -5
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +194 -5
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +4 -2
- package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useDetailsPanelURLSync.cjs.js +2 -0
- package/dist/shared/src/containers/DetailsPanel/hooks/useDetailsPanelURLSync.cjs.js.map +1 -0
- package/dist/shared/src/containers/DetailsPanel/hooks/useDetailsPanelURLSync.es.js +21 -0
- package/dist/shared/src/containers/DetailsPanel/hooks/useDetailsPanelURLSync.es.js.map +1 -0
- 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 +20 -17
- 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 +49 -43
- 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 +53 -47
- 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 +53 -47
- 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 +53 -47
- 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 +5 -2
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.es.js +109 -99
- package/dist/shared/src/containers/Feed/Feed.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 +446 -212
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js +20 -16
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js +21 -17
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +288 -0
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -0
- 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 +23 -11
- package/dist/shared/src/containers/Feed/components/ActivityItem.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 +4 -2
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +372 -183
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.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 +4 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +12 -10
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +28 -26
- 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 +194 -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 +8 -5
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useScrollToHighlighted.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useScrollToHighlighted.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useScrollToHighlighted.es.js +24 -26
- package/dist/shared/src/containers/Feed/hooks/useScrollToHighlighted.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +434 -435
- 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 +126 -120
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +52 -46
- 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 +57 -51
- 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 +79 -72
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.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 +7 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +72 -65
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +47 -41
- 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 +12 -10
- 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 +8 -5
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +5 -2
- 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 +55 -49
- 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 +81 -66
- 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 +51 -45
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.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 +106 -111
- 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 +51 -45
- 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 +51 -45
- 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 +54 -48
- 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 +122 -119
- 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 +61 -55
- 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 +45 -39
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.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 +98 -94
- 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 +62 -56
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +22 -20
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +19 -17
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +68 -62
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +51 -45
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js +45 -44
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.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 +120 -114
- 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 +53 -47
- package/dist/shared/src/containers/SimpleTable/SimpleTable.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 +5 -2
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.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 +14 -12
- 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 +90 -91
- 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 +5 -2
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +5 -2
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
- package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.es.js +117 -75
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.es.js +5 -4
- package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.es.js +18 -15
- package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.es.js +44 -40
- package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js +2 -0
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -0
- package/dist/shared/src/context/ProjectFoldersContext.es.js +177 -0
- package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -0
- package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
- package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/UriContext.cjs.js +2 -0
- package/dist/shared/src/context/UriContext.cjs.js.map +1 -0
- package/dist/shared/src/context/UriContext.es.js +131 -0
- package/dist/shared/src/context/UriContext.es.js.map +1 -0
- 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 +51 -45
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
- package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.es.js +5 -2
- package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
- package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +5 -2
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.es.js +43 -119
- package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
- package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.es.js +5 -2
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/shared/src/util/extractEntityHierarchyFromParents.cjs.js +2 -0
- package/dist/shared/src/util/extractEntityHierarchyFromParents.cjs.js.map +1 -0
- package/dist/shared/src/util/extractEntityHierarchyFromParents.es.js +25 -0
- package/dist/shared/src/util/extractEntityHierarchyFromParents.es.js.map +1 -0
- package/dist/shared/src/util/uriUtils.cjs.js +2 -0
- package/dist/shared/src/util/uriUtils.cjs.js.map +1 -0
- package/dist/shared/src/util/uriUtils.es.js +49 -0
- package/dist/shared/src/util/uriUtils.es.js.map +1 -0
- package/dist/types/api/generated/graphql.d.ts +55 -4
- package/dist/types/api/generated/graphqlLinks.d.ts +47 -0
- package/dist/types/api/generated/views.d.ts +15 -13
- package/dist/types/api/queries/entities/transformDetailsPanelData.d.ts +1 -0
- package/dist/types/api/queries/entityLists/getLists.d.ts +180 -180
- package/dist/types/api/queries/index.d.ts +1 -0
- package/dist/types/api/queries/uris/getUris.d.ts +161 -0
- package/dist/types/api/queries/uris/index.d.ts +1 -0
- package/dist/types/components/AddonLoadingScreen/AddonLoadingScreen.d.ts +25 -0
- package/dist/types/components/AddonLoadingScreen/index.d.ts +1 -0
- package/dist/types/components/Menu/Menu.d.ts +30 -0
- package/dist/types/components/Menu/Menu.styled.d.ts +8 -0
- package/dist/types/components/Menu/MenuContainer.d.ts +14 -0
- package/dist/types/components/Menu/MenuItem.d.ts +21 -0
- package/dist/types/components/Menu/MenuList.d.ts +21 -0
- package/dist/types/components/Menu/index.d.ts +4 -0
- package/dist/types/components/Menu/useMenuPosition.d.ts +12 -0
- package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +3 -1
- package/dist/types/components/index.d.ts +32 -31
- package/dist/types/containers/DetailsPanel/DetailsPanel.d.ts +6 -2
- package/dist/types/containers/DetailsPanel/FeedWrapper.d.ts +1 -0
- package/dist/types/containers/DetailsPanel/hooks/useDetailsPanelURLSync.d.ts +12 -0
- package/dist/types/containers/Feed/Feed.d.ts +2 -1
- package/dist/types/containers/Feed/components/ActivityComment/ActivityComment.d.ts +2 -1
- package/dist/types/containers/Feed/components/ActivityComment/ActivityCommentMenu.d.ts +9 -0
- package/dist/types/containers/Feed/components/ActivityItem.d.ts +1 -0
- package/dist/types/containers/Feed/hooks/useScrollToHighlighted.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +2 -0
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +4 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useUpdateTableData.d.ts +1 -0
- package/dist/types/containers/Views/index.d.ts +1 -1
- package/dist/types/context/AddonProjectContext.d.ts +12 -7
- package/dist/types/context/DetailsPanelContext.d.ts +1 -0
- package/dist/types/context/ProjectFoldersContext.d.ts +19 -0
- package/dist/types/context/UriContext.d.ts +40 -0
- package/dist/types/context/index.d.ts +2 -0
- package/dist/types/hooks/useGroupByRemoteModules.d.ts +1 -2
- package/dist/types/util/extractEntityHierarchyFromParents.d.ts +6 -0
- package/dist/types/util/index.d.ts +2 -0
- package/dist/types/util/uriUtils.d.ts +15 -0
- package/dist/util.cjs.js +1 -1
- package/dist/util.es.js +44 -37
- package/dist/util.es.js.map +1 -1
- package/package.json +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +0 -2
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +0 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +0 -263
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/Menu.cjs.js +0 -2
- package/dist/src/components/Menu/MenuComponents/Menu.cjs.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/Menu.es.js +0 -82
- package/dist/src/components/Menu/MenuComponents/Menu.es.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/Menu.styled.cjs.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/Menu.styled.es.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/MenuContainer2.cjs.js +0 -2
- package/dist/src/components/Menu/MenuComponents/MenuContainer2.cjs.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/MenuContainer2.es.js +0 -80
- package/dist/src/components/Menu/MenuComponents/MenuContainer2.es.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js +0 -2
- package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/MenuItem.es.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js +0 -2
- package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/MenuList.es.js +0 -135
- package/dist/src/components/Menu/MenuComponents/MenuList.es.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/useMenuPosition.cjs.js +0 -2
- package/dist/src/components/Menu/MenuComponents/useMenuPosition.cjs.js.map +0 -1
- package/dist/src/components/Menu/MenuComponents/useMenuPosition.es.js +0 -35
- package/dist/src/components/Menu/MenuComponents/useMenuPosition.es.js.map +0 -1
- package/dist/types/components/RemotePage/RemotePageWrapper.d.ts +0 -29
- package/dist/types/components/RemotePage/index.d.ts +0 -1
- /package/dist/{src/components/Menu/MenuComponents → shared/src/components/Menu}/Menu.styled.cjs.js +0 -0
- /package/dist/{src/components/Menu/MenuComponents → shared/src/components/Menu}/Menu.styled.es.js +0 -0
|
@@ -1,68 +1,66 @@
|
|
|
1
1
|
import { j as e } from "../../../../_virtual/jsx-runtime.es.js";
|
|
2
2
|
import { useRef as P, useState as b, useLayoutEffect as L, createElement as _, Fragment as H } from "react";
|
|
3
|
-
import { Path as J, Segment as
|
|
3
|
+
import { Path as J, Segment as j, MoreModal as U, MoreList as $, MoreItem as q, SegmentWrapper as K, FinalSegmentLabel as Q } from "./EntityPath.styled.es.js";
|
|
4
4
|
import V from "clsx";
|
|
5
|
-
import
|
|
5
|
+
import S from "./SegmentProvider.es.js";
|
|
6
6
|
import { Icon as X } from "@ynput/ayon-react-components";
|
|
7
7
|
const I = () => /* @__PURE__ */ e.jsx("span", { className: "slash", children: "/" }), Y = ["more", "versions"], z = (i) => {
|
|
8
|
-
var
|
|
9
|
-
const s = i.target, n = ((
|
|
8
|
+
var a;
|
|
9
|
+
const s = i.target, n = ((a = s.closest(".dropdown")) == null ? void 0 : a.id) || "";
|
|
10
10
|
return [s, n];
|
|
11
11
|
}, oe = ({
|
|
12
12
|
projectName: i,
|
|
13
13
|
hideProjectName: s,
|
|
14
14
|
segments: n,
|
|
15
|
-
versions:
|
|
15
|
+
versions: a = [],
|
|
16
16
|
isLoading: m,
|
|
17
|
-
entityType:
|
|
18
|
-
scope:
|
|
17
|
+
entityType: p,
|
|
18
|
+
scope: u
|
|
19
19
|
}) => {
|
|
20
|
-
const o = P(null), [
|
|
20
|
+
const o = P(null), [l, c] = b(null), [r, v] = b(null), [G, W] = b(!1), M = P(null);
|
|
21
21
|
L(() => {
|
|
22
|
-
v(null),
|
|
22
|
+
v(null), W(!0);
|
|
23
23
|
}, [n]), L(() => {
|
|
24
24
|
var T;
|
|
25
25
|
if (!o.current) {
|
|
26
|
-
|
|
26
|
+
W(!1);
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
|
-
const t = o.current, h = t.clientWidth,
|
|
30
|
-
if (!
|
|
31
|
-
const
|
|
29
|
+
const t = o.current, h = t.clientWidth, d = B(t);
|
|
30
|
+
if (!d) return;
|
|
31
|
+
const y = t.children;
|
|
32
32
|
let F = h;
|
|
33
33
|
const O = t.childElementCount;
|
|
34
|
-
let
|
|
35
|
-
for (; F >
|
|
36
|
-
|
|
37
|
-
let E = ((T = Array.from(
|
|
34
|
+
let g = O;
|
|
35
|
+
for (; F > d && g > 0; )
|
|
36
|
+
g -= 2, F = Z(y, g, O);
|
|
37
|
+
let E = ((T = Array.from(y).slice(0, g).filter(
|
|
38
38
|
(A) => A.nodeType === Node.ELEMENT_NODE && A.className.includes("full")
|
|
39
39
|
)) == null ? void 0 : T.length) || 2;
|
|
40
|
-
E = Math.max(E, 1), v(E),
|
|
40
|
+
E = Math.max(E, 1), v(E), W(!1);
|
|
41
41
|
}, [o.current, G]), L(() => {
|
|
42
|
-
if (!o.current || !
|
|
43
|
-
const t = o.current, h = B(t) ?? 1 / 0,
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
let g, N = C;
|
|
51
|
-
u === "version" && n.length > 0 && (g = n[n.length - 1], N = C.slice(0, -1));
|
|
42
|
+
if (!o.current || !M.current || !r) return;
|
|
43
|
+
const t = o.current, h = B(t) ?? 1 / 0, d = t.clientWidth - h;
|
|
44
|
+
d <= 0 || M.current.clientWidth - d;
|
|
45
|
+
}, [r]);
|
|
46
|
+
const C = r && n.length > r ? n.slice(-r) : n, w = r && n.length > r ? n.slice(0, -r) : [];
|
|
47
|
+
s && w.unshift({ type: "project", label: i, id: i });
|
|
48
|
+
let f, N = C;
|
|
49
|
+
p === "version" && n.length > 0 && (f = n[n.length - 1], N = C.slice(0, -1));
|
|
52
50
|
const k = (t) => {
|
|
53
51
|
const [, h] = z(t);
|
|
54
|
-
h && !
|
|
52
|
+
h && !l && c(h);
|
|
55
53
|
}, R = () => c(null), D = (t) => {
|
|
56
|
-
const [h,
|
|
57
|
-
if (!Y.includes(
|
|
58
|
-
!!h.closest("li") ? c(null) :
|
|
59
|
-
},
|
|
54
|
+
const [h, d] = z(t);
|
|
55
|
+
if (!Y.includes(d)) return;
|
|
56
|
+
!!h.closest("li") ? c(null) : l !== d && c(d);
|
|
57
|
+
}, x = { scope: u, projectName: i };
|
|
60
58
|
return /* @__PURE__ */ e.jsxs(J, { className: V({ loading: m }), id: "entity-path", ref: o, children: [
|
|
61
|
-
!s && /* @__PURE__ */ e.jsx(
|
|
62
|
-
!!
|
|
59
|
+
!s && /* @__PURE__ */ e.jsx(j, { children: i }),
|
|
60
|
+
!!w.length && /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
63
61
|
!s && /* @__PURE__ */ e.jsx(I, {}),
|
|
64
62
|
/* @__PURE__ */ e.jsxs(
|
|
65
|
-
|
|
63
|
+
j,
|
|
66
64
|
{
|
|
67
65
|
className: "dropdown more",
|
|
68
66
|
id: "more",
|
|
@@ -71,16 +69,16 @@ const I = () => /* @__PURE__ */ e.jsx("span", { className: "slash", children: "/
|
|
|
71
69
|
onClick: D,
|
|
72
70
|
children: [
|
|
73
71
|
"...",
|
|
74
|
-
|
|
72
|
+
l === "more" && /* @__PURE__ */ e.jsx(U, { children: /* @__PURE__ */ e.jsx($, { children: w.map((t) => /* @__PURE__ */ _(S, { ...x, segment: t, key: t.id }, /* @__PURE__ */ e.jsx(q, { children: t.label }))) }) })
|
|
75
73
|
]
|
|
76
74
|
}
|
|
77
75
|
)
|
|
78
76
|
] }),
|
|
79
77
|
N.map((t) => /* @__PURE__ */ e.jsxs(H, { children: [
|
|
80
78
|
/* @__PURE__ */ e.jsx(I, {}),
|
|
81
|
-
/* @__PURE__ */ e.jsx(
|
|
79
|
+
/* @__PURE__ */ e.jsx(S, { ...x, segment: t, className: "full", children: /* @__PURE__ */ e.jsx(j, { children: /* @__PURE__ */ e.jsx("span", { className: "label", children: t.label }) }) })
|
|
82
80
|
] }, t.id)),
|
|
83
|
-
|
|
81
|
+
f && /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
84
82
|
/* @__PURE__ */ e.jsx(I, {}),
|
|
85
83
|
/* @__PURE__ */ e.jsxs(
|
|
86
84
|
K,
|
|
@@ -92,18 +90,18 @@ const I = () => /* @__PURE__ */ e.jsx("span", { className: "slash", children: "/
|
|
|
92
90
|
onClick: D,
|
|
93
91
|
children: [
|
|
94
92
|
/* @__PURE__ */ e.jsx(
|
|
95
|
-
|
|
93
|
+
S,
|
|
96
94
|
{
|
|
97
|
-
...
|
|
98
|
-
segment:
|
|
99
|
-
isOpen:
|
|
100
|
-
children: /* @__PURE__ */ e.jsxs(
|
|
101
|
-
/* @__PURE__ */ e.jsx(Q, { ref:
|
|
95
|
+
...x,
|
|
96
|
+
segment: f,
|
|
97
|
+
isOpen: l === "versions",
|
|
98
|
+
children: /* @__PURE__ */ e.jsxs(j, { children: [
|
|
99
|
+
/* @__PURE__ */ e.jsx(Q, { ref: M, className: "label", children: f.label }),
|
|
102
100
|
/* @__PURE__ */ e.jsx(X, { icon: "expand_more" })
|
|
103
101
|
] })
|
|
104
102
|
}
|
|
105
103
|
),
|
|
106
|
-
|
|
104
|
+
l === "versions" && /* @__PURE__ */ e.jsx(U, { children: /* @__PURE__ */ e.jsx($, { children: a.map((t) => /* @__PURE__ */ _(S, { ...x, segment: t, key: t.id }, /* @__PURE__ */ e.jsx(q, { children: t.label }))) }) })
|
|
107
105
|
]
|
|
108
106
|
}
|
|
109
107
|
)
|
|
@@ -112,18 +110,18 @@ const I = () => /* @__PURE__ */ e.jsx("span", { className: "slash", children: "/
|
|
|
112
110
|
}, B = (i) => {
|
|
113
111
|
const s = i.parentElement;
|
|
114
112
|
if (!s) return;
|
|
115
|
-
const n = getComputedStyle(s),
|
|
116
|
-
(c,
|
|
113
|
+
const n = getComputedStyle(s), a = parseInt(n.paddingLeft) || 0, m = parseInt(n.paddingRight) || 0, p = parseInt(n.gap) || 0, u = s.clientWidth - a - m, o = Array.from(s.children).filter((c) => c.id !== "entity-path"), l = Array.from(o).reduce(
|
|
114
|
+
(c, r) => c + r.clientWidth,
|
|
117
115
|
0
|
|
118
116
|
);
|
|
119
|
-
return
|
|
117
|
+
return u - l - p * (o.length - 1);
|
|
120
118
|
}, Z = (i, s, n) => {
|
|
121
119
|
var o;
|
|
122
|
-
const
|
|
120
|
+
const a = n - s;
|
|
123
121
|
let m = 0;
|
|
124
|
-
for (let
|
|
125
|
-
const c =
|
|
126
|
-
isNaN(
|
|
122
|
+
for (let l = 0; l < n - a; l++) {
|
|
123
|
+
const c = l > 1 ? l + a : l, r = (o = i[c]) == null ? void 0 : o.clientWidth;
|
|
124
|
+
isNaN(r) || (m += r);
|
|
127
125
|
}
|
|
128
126
|
return m + (4 * s - 1) + 40;
|
|
129
127
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityPath.es.js","sources":["../../../../../src/components/EntityPath/EntityPath.tsx"],"sourcesContent":["import { FC, Fragment, MouseEvent, useLayoutEffect, useRef, useState } from 'react'\nimport * as Styled from './EntityPath.styled'\nimport clsx from 'clsx'\nimport SegmentProvider from './SegmentProvider'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { DetailsPanelEntityType } from '@shared/api'\n\nconst Slash = () => <span className=\"slash\">/</span>\n\nexport type PathSegment = {\n type: DetailsPanelEntityType | 'product' | 'project'\n label: string\n id: string\n}\n\nconst dropdownStates = ['more', 'versions']\ntype DropdownState = (typeof dropdownStates)[number]\n\ntype DropdownMouseEvent = MouseEvent<HTMLSpanElement>\nconst getDropdownElements = (e: DropdownMouseEvent): [HTMLElement, string] => {\n const target = e.target as HTMLElement\n const dropdownId = target.closest('.dropdown')?.id || ''\n return [target, dropdownId]\n}\n\nexport interface EntityPathProps {\n projectName: string\n hideProjectName: boolean\n segments: PathSegment[]\n isLoading: boolean\n entityType: string\n versions: PathSegment[]\n scope: string\n}\n\nexport const EntityPath: FC<EntityPathProps> = ({\n projectName,\n hideProjectName,\n segments,\n versions = [],\n isLoading,\n entityType,\n scope,\n}) => {\n const containerRef = useRef<HTMLDivElement>(null)\n const [dropdownOpen, setDropdownOpen] = useState<null | DropdownState>(null)\n // defaults to whole path\n const [maxSegments, setMaxSegments] = useState<null | number>(null)\n const [calcMaxWidth, setCalcMaxWidth] = useState(false)\n const finalSegmentRef = useRef<HTMLSpanElement>(null)\n\n useLayoutEffect(() => {\n setMaxSegments(null)\n setCalcMaxWidth(true)\n }, [segments])\n\n useLayoutEffect(() => {\n if (!containerRef.current) {\n setCalcMaxWidth(false)\n return\n }\n // find max width the path can be\n const container = containerRef.current\n const pathWidth = container.clientWidth\n const maxWidth = getPathMaxWidth(container)\n\n if (!maxWidth) return\n\n // we need to reduce the number of segments shown\n // but maybe even then it is still longer than the max width\n // so we need to reduce the number of segments until the total width is less than the max width\n const children = container.children\n let totalWidth = pathWidth\n // number of segments to keep\n const fullCount = container.childElementCount\n let segmentsCount = fullCount\n // while loop that removes segments until the total width is less than the max width\n while (totalWidth > maxWidth && segmentsCount > 0) {\n // remove 2 segments at a time (because of slashes)\n segmentsCount -= 2\n totalWidth = totalUpSegmentsWidth(children, segmentsCount, fullCount)\n }\n\n // count number of \"full\" segments left\n // if something goes wrong, removing 1 (2) is probably enough\n let newMaxSegments =\n Array.from(children)\n .slice(0, segmentsCount)\n .filter(\n (segment) => segment.nodeType === Node.ELEMENT_NODE && segment.className.includes('full'),\n )?.length || 2\n\n // cap at 1\n newMaxSegments = Math.max(newMaxSegments, 1)\n\n setMaxSegments(newMaxSegments)\n setCalcMaxWidth(false)\n }, [containerRef.current, calcMaxWidth])\n\n // Ensure that, even if the collapsed segments still aren't\n // enough to fit the path within the available space,\n // we fit everything in by truncating the last segment's label.\n // This segment is typically the product + version name,\n // which is typically also shown in much larger font below,\n // so there's no reason to always show it in full.\n useLayoutEffect(() => {\n if (!containerRef.current || !finalSegmentRef.current || !maxSegments) return\n const container = containerRef.current\n\n // The amount of truncation is exactly the difference between the container's width\n // and the maximum available width.\n const maxWidth = getPathMaxWidth(container) ?? Infinity\n const diff = container.clientWidth - maxWidth\n if (diff <= 0) return\n\n // Reduce the segment's width by the difference\n const newWidth = `${finalSegmentRef.current.clientWidth - diff}px`\n finalSegmentRef.current.style.width = newWidth\n }, [maxSegments])\n\n // Check if there are fewer than or equal to maxSegments segments\n const segmentsToShow =\n maxSegments && segments.length > maxSegments ? segments.slice(-maxSegments) : segments\n const hiddenSegments =\n maxSegments && segments.length > maxSegments ? segments.slice(0, -maxSegments) : []\n\n // if there is no project name, add to hidden segments\n if (hideProjectName)\n hiddenSegments.unshift({ type: 'project', label: projectName, id: projectName })\n\n // if the entityType is a version, separate the version\n let versionSegment\n let finalSegmentsToShow = segmentsToShow\n\n if (entityType === 'version' && segments.length > 0) {\n versionSegment = segments[segments.length - 1]\n finalSegmentsToShow = segmentsToShow.slice(0, -1)\n }\n\n const handleMouseEnter = (e: DropdownMouseEvent) => {\n const [, id] = getDropdownElements(e)\n if (id && !dropdownOpen) setDropdownOpen(id)\n }\n const handleMouseLeave = () => setDropdownOpen(null)\n\n const handleDropdownClick = (e: DropdownMouseEvent) => {\n const [target, id] = getDropdownElements(e)\n\n if (!dropdownStates.includes(id)) return\n const isListItem = !!target.closest('li')\n\n if (isListItem) setDropdownOpen(null)\n else if (dropdownOpen !== id) setDropdownOpen(id)\n }\n\n const segmentProps = { scope, projectName }\n\n return (\n <Styled.Path className={clsx({ loading: isLoading })} id=\"entity-path\" ref={containerRef}>\n {!hideProjectName && <Styled.Segment>{projectName}</Styled.Segment>}\n\n {!!hiddenSegments.length && (\n <>\n {!hideProjectName && <Slash />}\n <Styled.Segment\n className=\"dropdown more\"\n id=\"more\"\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onClick={handleDropdownClick}\n >\n ...\n {dropdownOpen === 'more' && (\n <Styled.MoreModal>\n <Styled.MoreList>\n {hiddenSegments.map((segment) => (\n <SegmentProvider {...segmentProps} segment={segment} key={segment.id}>\n <Styled.MoreItem>{segment.label}</Styled.MoreItem>\n </SegmentProvider>\n ))}\n </Styled.MoreList>\n </Styled.MoreModal>\n )}\n </Styled.Segment>\n </>\n )}\n\n {finalSegmentsToShow.map((segment) => (\n <Fragment key={segment.id}>\n <Slash />\n\n <SegmentProvider {...segmentProps} segment={segment} className=\"full\">\n <Styled.Segment>\n <span className=\"label\">{segment.label}</span>\n </Styled.Segment>\n </SegmentProvider>\n </Fragment>\n ))}\n\n {versionSegment && (\n <>\n <Slash />\n <Styled.SegmentWrapper\n className=\"full dropdown\"\n id=\"versions\"\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onClick={handleDropdownClick}\n >\n <SegmentProvider\n {...segmentProps}\n segment={versionSegment}\n isOpen={dropdownOpen === 'versions'}\n >\n <Styled.Segment>\n <Styled.FinalSegmentLabel ref={finalSegmentRef} className=\"label\">\n {versionSegment.label}\n </Styled.FinalSegmentLabel>\n <Icon icon=\"expand_more\" />\n </Styled.Segment>\n </SegmentProvider>\n {dropdownOpen === 'versions' && (\n <Styled.MoreModal>\n <Styled.MoreList>\n {versions.map((version) => (\n <SegmentProvider {...segmentProps} segment={version} key={version.id}>\n <Styled.MoreItem>{version.label}</Styled.MoreItem>\n </SegmentProvider>\n ))}\n </Styled.MoreList>\n </Styled.MoreModal>\n )}\n </Styled.SegmentWrapper>\n </>\n )}\n </Styled.Path>\n )\n}\n\nconst getPathMaxWidth = (pathEl: HTMLDivElement) => {\n const toolbar = pathEl.parentElement\n if (!toolbar) return\n // get width of toolbar without padding\n const toolbarStyle = getComputedStyle(toolbar)\n const paddingLeft = parseInt(toolbarStyle.paddingLeft) || 0\n const paddingRight = parseInt(toolbarStyle.paddingRight) || 0\n const gap = parseInt(toolbarStyle.gap) || 0\n const toolbarWidth = toolbar.clientWidth - paddingLeft - paddingRight\n\n // get child elements that are not path\n const children = Array.from(toolbar.children).filter((child) => child.id !== 'entity-path')\n // find total width of children including the gap between them\n const childrenWidth = Array.from(children).reduce(\n (acc, child) => acc + (child as HTMLElement).clientWidth,\n 0,\n )\n\n return toolbarWidth - childrenWidth - gap * (children.length - 1)\n}\n\nconst totalUpSegmentsWidth = (children: HTMLCollection, count: number, full: number) => {\n const skip = full - count\n let total = 0\n for (let i = 0; i < full - skip; i++) {\n const index = i > 1 ? i + skip : i\n const width = (children[index] as Element)?.clientWidth\n if (isNaN(width)) continue\n total += width\n }\n const gap = 4\n const moreWidth = 40\n return total + (gap * count - 1) + moreWidth\n}\n"],"names":["Slash","jsx","dropdownStates","getDropdownElements","e","target","dropdownId","_a","EntityPath","projectName","hideProjectName","segments","versions","isLoading","entityType","scope","containerRef","useRef","dropdownOpen","setDropdownOpen","useState","maxSegments","setMaxSegments","calcMaxWidth","setCalcMaxWidth","finalSegmentRef","useLayoutEffect","container","pathWidth","maxWidth","getPathMaxWidth","children","totalWidth","fullCount","segmentsCount","totalUpSegmentsWidth","newMaxSegments","segment","diff","newWidth","segmentsToShow","hiddenSegments","versionSegment","finalSegmentsToShow","handleMouseEnter","id","handleMouseLeave","handleDropdownClick","segmentProps","jsxs","Styled.Path","clsx","Styled.Segment","Fragment","Styled.MoreModal","Styled.MoreList","createElement","SegmentProvider","Styled.MoreItem","Styled.SegmentWrapper","Styled.FinalSegmentLabel","Icon","version","pathEl","toolbar","toolbarStyle","paddingLeft","paddingRight","gap","toolbarWidth","child","childrenWidth","acc","count","full","skip","total","i","index","width"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EntityPath.es.js","sources":["../../../../../src/components/EntityPath/EntityPath.tsx"],"sourcesContent":["import { FC, Fragment, MouseEvent, useLayoutEffect, useRef, useState } from 'react'\nimport * as Styled from './EntityPath.styled'\nimport clsx from 'clsx'\nimport SegmentProvider from './SegmentProvider'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { DetailsPanelEntityType } from '@shared/api'\n\nconst Slash = () => <span className=\"slash\">/</span>\n\nexport type PathSegment = {\n type: DetailsPanelEntityType | 'product' | 'project'\n label: string\n id: string\n}\n\nconst dropdownStates = ['more', 'versions']\ntype DropdownState = (typeof dropdownStates)[number]\n\ntype DropdownMouseEvent = MouseEvent<HTMLSpanElement>\nconst getDropdownElements = (e: DropdownMouseEvent): [HTMLElement, string] => {\n const target = e.target as HTMLElement\n const dropdownId = target.closest('.dropdown')?.id || ''\n return [target, dropdownId]\n}\n\nexport interface EntityPathProps {\n projectName: string\n hideProjectName: boolean\n segments: PathSegment[]\n isLoading: boolean\n entityType: string\n versions: PathSegment[]\n scope: string\n}\n\nexport const EntityPath: FC<EntityPathProps> = ({\n projectName,\n hideProjectName,\n segments,\n versions = [],\n isLoading,\n entityType,\n scope,\n}) => {\n const containerRef = useRef<HTMLDivElement>(null)\n const [dropdownOpen, setDropdownOpen] = useState<null | DropdownState>(null)\n // defaults to whole path\n const [maxSegments, setMaxSegments] = useState<null | number>(null)\n const [calcMaxWidth, setCalcMaxWidth] = useState(false)\n const finalSegmentRef = useRef<HTMLSpanElement>(null)\n\n useLayoutEffect(() => {\n setMaxSegments(null)\n setCalcMaxWidth(true)\n }, [segments])\n\n useLayoutEffect(() => {\n if (!containerRef.current) {\n setCalcMaxWidth(false)\n return\n }\n // find max width the path can be\n const container = containerRef.current\n const pathWidth = container.clientWidth\n const maxWidth = getPathMaxWidth(container)\n\n if (!maxWidth) return\n\n // we need to reduce the number of segments shown\n // but maybe even then it is still longer than the max width\n // so we need to reduce the number of segments until the total width is less than the max width\n const children = container.children\n let totalWidth = pathWidth\n // number of segments to keep\n const fullCount = container.childElementCount\n let segmentsCount = fullCount\n // while loop that removes segments until the total width is less than the max width\n while (totalWidth > maxWidth && segmentsCount > 0) {\n // remove 2 segments at a time (because of slashes)\n segmentsCount -= 2\n totalWidth = totalUpSegmentsWidth(children, segmentsCount, fullCount)\n }\n\n // count number of \"full\" segments left\n // if something goes wrong, removing 1 (2) is probably enough\n let newMaxSegments =\n Array.from(children)\n .slice(0, segmentsCount)\n .filter(\n (segment) => segment.nodeType === Node.ELEMENT_NODE && segment.className.includes('full'),\n )?.length || 2\n\n // cap at 1\n newMaxSegments = Math.max(newMaxSegments, 1)\n\n setMaxSegments(newMaxSegments)\n setCalcMaxWidth(false)\n }, [containerRef.current, calcMaxWidth])\n\n // Ensure that, even if the collapsed segments still aren't\n // enough to fit the path within the available space,\n // we fit everything in by truncating the last segment's label.\n // This segment is typically the product + version name,\n // which is typically also shown in much larger font below,\n // so there's no reason to always show it in full.\n useLayoutEffect(() => {\n if (!containerRef.current || !finalSegmentRef.current || !maxSegments) return\n const container = containerRef.current\n\n // The amount of truncation is exactly the difference between the container's width\n // and the maximum available width.\n const maxWidth = getPathMaxWidth(container) ?? Infinity\n const diff = container.clientWidth - maxWidth\n if (diff <= 0) return\n\n // Reduce the segment's width by the difference\n const newWidth = `${finalSegmentRef.current.clientWidth - diff}px`\n // finalSegmentRef.current.style.width = newWidth\n }, [maxSegments])\n\n // Check if there are fewer than or equal to maxSegments segments\n const segmentsToShow =\n maxSegments && segments.length > maxSegments ? segments.slice(-maxSegments) : segments\n const hiddenSegments =\n maxSegments && segments.length > maxSegments ? segments.slice(0, -maxSegments) : []\n\n // if there is no project name, add to hidden segments\n if (hideProjectName)\n hiddenSegments.unshift({ type: 'project', label: projectName, id: projectName })\n\n // if the entityType is a version, separate the version\n let versionSegment\n let finalSegmentsToShow = segmentsToShow\n\n if (entityType === 'version' && segments.length > 0) {\n versionSegment = segments[segments.length - 1]\n finalSegmentsToShow = segmentsToShow.slice(0, -1)\n }\n\n const handleMouseEnter = (e: DropdownMouseEvent) => {\n const [, id] = getDropdownElements(e)\n if (id && !dropdownOpen) setDropdownOpen(id)\n }\n const handleMouseLeave = () => setDropdownOpen(null)\n\n const handleDropdownClick = (e: DropdownMouseEvent) => {\n const [target, id] = getDropdownElements(e)\n\n if (!dropdownStates.includes(id)) return\n const isListItem = !!target.closest('li')\n\n if (isListItem) setDropdownOpen(null)\n else if (dropdownOpen !== id) setDropdownOpen(id)\n }\n\n const segmentProps = { scope, projectName }\n\n return (\n <Styled.Path className={clsx({ loading: isLoading })} id=\"entity-path\" ref={containerRef}>\n {!hideProjectName && <Styled.Segment>{projectName}</Styled.Segment>}\n\n {!!hiddenSegments.length && (\n <>\n {!hideProjectName && <Slash />}\n <Styled.Segment\n className=\"dropdown more\"\n id=\"more\"\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onClick={handleDropdownClick}\n >\n ...\n {dropdownOpen === 'more' && (\n <Styled.MoreModal>\n <Styled.MoreList>\n {hiddenSegments.map((segment) => (\n <SegmentProvider {...segmentProps} segment={segment} key={segment.id}>\n <Styled.MoreItem>{segment.label}</Styled.MoreItem>\n </SegmentProvider>\n ))}\n </Styled.MoreList>\n </Styled.MoreModal>\n )}\n </Styled.Segment>\n </>\n )}\n\n {finalSegmentsToShow.map((segment) => (\n <Fragment key={segment.id}>\n <Slash />\n\n <SegmentProvider {...segmentProps} segment={segment} className=\"full\">\n <Styled.Segment>\n <span className=\"label\">{segment.label}</span>\n </Styled.Segment>\n </SegmentProvider>\n </Fragment>\n ))}\n\n {versionSegment && (\n <>\n <Slash />\n <Styled.SegmentWrapper\n className=\"full dropdown\"\n id=\"versions\"\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onClick={handleDropdownClick}\n >\n <SegmentProvider\n {...segmentProps}\n segment={versionSegment}\n isOpen={dropdownOpen === 'versions'}\n >\n <Styled.Segment>\n <Styled.FinalSegmentLabel ref={finalSegmentRef} className=\"label\">\n {versionSegment.label}\n </Styled.FinalSegmentLabel>\n <Icon icon=\"expand_more\" />\n </Styled.Segment>\n </SegmentProvider>\n {dropdownOpen === 'versions' && (\n <Styled.MoreModal>\n <Styled.MoreList>\n {versions.map((version) => (\n <SegmentProvider {...segmentProps} segment={version} key={version.id}>\n <Styled.MoreItem>{version.label}</Styled.MoreItem>\n </SegmentProvider>\n ))}\n </Styled.MoreList>\n </Styled.MoreModal>\n )}\n </Styled.SegmentWrapper>\n </>\n )}\n </Styled.Path>\n )\n}\n\nconst getPathMaxWidth = (pathEl: HTMLDivElement) => {\n const toolbar = pathEl.parentElement\n if (!toolbar) return\n // get width of toolbar without padding\n const toolbarStyle = getComputedStyle(toolbar)\n const paddingLeft = parseInt(toolbarStyle.paddingLeft) || 0\n const paddingRight = parseInt(toolbarStyle.paddingRight) || 0\n const gap = parseInt(toolbarStyle.gap) || 0\n const toolbarWidth = toolbar.clientWidth - paddingLeft - paddingRight\n\n // get child elements that are not path\n const children = Array.from(toolbar.children).filter((child) => child.id !== 'entity-path')\n // find total width of children including the gap between them\n const childrenWidth = Array.from(children).reduce(\n (acc, child) => acc + (child as HTMLElement).clientWidth,\n 0,\n )\n\n return toolbarWidth - childrenWidth - gap * (children.length - 1)\n}\n\nconst totalUpSegmentsWidth = (children: HTMLCollection, count: number, full: number) => {\n const skip = full - count\n let total = 0\n for (let i = 0; i < full - skip; i++) {\n const index = i > 1 ? i + skip : i\n const width = (children[index] as Element)?.clientWidth\n if (isNaN(width)) continue\n total += width\n }\n const gap = 4\n const moreWidth = 40\n return total + (gap * count - 1) + moreWidth\n}\n"],"names":["Slash","jsx","dropdownStates","getDropdownElements","e","target","dropdownId","_a","EntityPath","projectName","hideProjectName","segments","versions","isLoading","entityType","scope","containerRef","useRef","dropdownOpen","setDropdownOpen","useState","maxSegments","setMaxSegments","calcMaxWidth","setCalcMaxWidth","finalSegmentRef","useLayoutEffect","container","pathWidth","maxWidth","getPathMaxWidth","children","totalWidth","fullCount","segmentsCount","totalUpSegmentsWidth","newMaxSegments","segment","diff","segmentsToShow","hiddenSegments","versionSegment","finalSegmentsToShow","handleMouseEnter","id","handleMouseLeave","handleDropdownClick","segmentProps","jsxs","Styled.Path","clsx","Styled.Segment","Fragment","Styled.MoreModal","Styled.MoreList","createElement","SegmentProvider","Styled.MoreItem","Styled.SegmentWrapper","Styled.FinalSegmentLabel","Icon","version","pathEl","toolbar","toolbarStyle","paddingLeft","paddingRight","gap","toolbarWidth","child","childrenWidth","acc","count","full","skip","total","i","index","width"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const x=require("../../../../_virtual/jsx-runtime.cjs.js"),C=require("react"),y=require("./EntityPath.styled.cjs.js"),b=require("../../../node_modules/primereact/utils/utils.esm.cjs.js");require("../../containers/ContextMenu/ContextMenuContext.cjs.js");require("@ynput/ayon-react-components");;/* empty css */require("clsx");const f=require("../../containers/ContextMenu/useCreateContextMenu.cjs.js");require("lodash");require("react-toastify");const j=require("../../util/copyToClipboard.cjs.js");require("uuid");require("../../util/pubsub.cjs.js");require("../../context/RemoteModulesContext.cjs.js");const M=require("../../context/DetailsPanelContext.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/PowerpackContext.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");const h=C.forwardRef(({children:u,segment:e,isOpen:o,scope:k,projectName:n,...c},q)=>{const{openSlideOut:s}=M.useDetailsPanelContext(),i=(e==null?void 0:e.type)!=="product"&&(e==null?void 0:e.type)!=="project",a=()=>{if(!i)return;const{type:r,id:t}=e||{};!r||r==="project"||r==="product"||!t||s({entityType:r,entityId:t,projectName:n})},l=r=>[{label:`ID: ${r}`,icon:"content_copy",command:()=>j.copyToClipboard(r)}],[p]=f.useCreateContextMenu(),d=r=>{if(!e)return;const t=l(e.id);p(r,t)};return x.jsxRuntimeExports.jsx(y.ActiveSegment,{onClick:a,onContextMenu:d,className:b.classNames({link:i,open:o}),...c,ref:q,children:u})});module.exports=h;
|
|
1
|
+
"use strict";const x=require("../../../../_virtual/jsx-runtime.cjs.js"),C=require("react"),y=require("./EntityPath.styled.cjs.js"),b=require("../../../node_modules/primereact/utils/utils.esm.cjs.js");require("../../containers/ContextMenu/ContextMenuContext.cjs.js");require("@ynput/ayon-react-components");;/* empty css */require("clsx");const f=require("../../containers/ContextMenu/useCreateContextMenu.cjs.js");require("lodash");require("react-toastify");const j=require("../../util/copyToClipboard.cjs.js");require("uuid");require("../../util/pubsub.cjs.js");require("../../context/RemoteModulesContext.cjs.js");const M=require("../../context/DetailsPanelContext.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/PowerpackContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("../../context/UriContext.cjs.js");const h=C.forwardRef(({children:u,segment:e,isOpen:o,scope:k,projectName:n,...c},q)=>{const{openSlideOut:s}=M.useDetailsPanelContext(),i=(e==null?void 0:e.type)!=="product"&&(e==null?void 0:e.type)!=="project",a=()=>{if(!i)return;const{type:r,id:t}=e||{};!r||r==="project"||r==="product"||!t||s({entityType:r,entityId:t,projectName:n})},l=r=>[{label:`ID: ${r}`,icon:"content_copy",command:()=>j.copyToClipboard(r)}],[p]=f.useCreateContextMenu(),d=r=>{if(!e)return;const t=l(e.id);p(r,t)};return x.jsxRuntimeExports.jsx(y.ActiveSegment,{onClick:a,onContextMenu:d,className:b.classNames({link:i,open:o}),...c,ref:q,children:u})});module.exports=h;
|
|
2
2
|
//# sourceMappingURL=SegmentProvider.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SegmentProvider.cjs.js","sources":["../../../../../src/components/EntityPath/SegmentProvider.tsx"],"sourcesContent":["import { forwardRef, MouseEvent } from 'react'\nimport { ActiveSegment } from './EntityPath.styled'\nimport { classNames } from 'primereact/utils'\nimport { PathSegment } from './EntityPath'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { copyToClipboard } from '@shared/util'\nimport { useDetailsPanelContext } from '@shared/context'\n\ninterface SegmentProviderProps extends React.HTMLAttributes<HTMLDivElement> {\n segment?: PathSegment\n isOpen?: boolean\n scope: string\n projectName: string\n}\n\nconst SegmentProvider = forwardRef<HTMLDivElement, SegmentProviderProps>(\n ({ children, segment, isOpen, scope, projectName, ...props }, ref) => {\n const { openSlideOut } = useDetailsPanelContext()\n // is the segment NOT a product || project?\n const isLinkable = segment?.type !== 'product' && segment?.type !== 'project'\n\n const handleClick = () => {\n if (!isLinkable) return\n\n const { type: entityType, id: entityId } = segment || {}\n\n if (!entityType || entityType === 'project' || entityType === 'product' || !entityId) return\n\n openSlideOut({\n entityType,\n entityId,\n projectName,\n })\n }\n\n const buildContextMenu = (id: string) => [\n {\n label: `ID: ${id}`,\n icon: 'content_copy',\n command: () => copyToClipboard(id),\n },\n ]\n\n const [contextMenuShow] = useCreateContextMenu()\n\n const handleOnContext = (e: MouseEvent<HTMLDivElement>) => {\n if (!segment) return\n const menu = buildContextMenu(segment.id)\n\n contextMenuShow(e, menu)\n }\n\n return (\n <ActiveSegment\n onClick={handleClick}\n onContextMenu={handleOnContext}\n className={classNames({ link: isLinkable, open: isOpen })}\n {...props}\n ref={ref}\n >\n {children}\n </ActiveSegment>\n )\n },\n)\n\nexport default SegmentProvider\n"],"names":["SegmentProvider","forwardRef","children","segment","isOpen","scope","projectName","props","ref","openSlideOut","useDetailsPanelContext","isLinkable","handleClick","entityType","entityId","buildContextMenu","id","copyToClipboard","contextMenuShow","useCreateContextMenu","handleOnContext","e","menu","jsx","ActiveSegment","classNames"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SegmentProvider.cjs.js","sources":["../../../../../src/components/EntityPath/SegmentProvider.tsx"],"sourcesContent":["import { forwardRef, MouseEvent } from 'react'\nimport { ActiveSegment } from './EntityPath.styled'\nimport { classNames } from 'primereact/utils'\nimport { PathSegment } from './EntityPath'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { copyToClipboard } from '@shared/util'\nimport { useDetailsPanelContext } from '@shared/context'\n\ninterface SegmentProviderProps extends React.HTMLAttributes<HTMLDivElement> {\n segment?: PathSegment\n isOpen?: boolean\n scope: string\n projectName: string\n}\n\nconst SegmentProvider = forwardRef<HTMLDivElement, SegmentProviderProps>(\n ({ children, segment, isOpen, scope, projectName, ...props }, ref) => {\n const { openSlideOut } = useDetailsPanelContext()\n // is the segment NOT a product || project?\n const isLinkable = segment?.type !== 'product' && segment?.type !== 'project'\n\n const handleClick = () => {\n if (!isLinkable) return\n\n const { type: entityType, id: entityId } = segment || {}\n\n if (!entityType || entityType === 'project' || entityType === 'product' || !entityId) return\n\n openSlideOut({\n entityType,\n entityId,\n projectName,\n })\n }\n\n const buildContextMenu = (id: string) => [\n {\n label: `ID: ${id}`,\n icon: 'content_copy',\n command: () => copyToClipboard(id),\n },\n ]\n\n const [contextMenuShow] = useCreateContextMenu()\n\n const handleOnContext = (e: MouseEvent<HTMLDivElement>) => {\n if (!segment) return\n const menu = buildContextMenu(segment.id)\n\n contextMenuShow(e, menu)\n }\n\n return (\n <ActiveSegment\n onClick={handleClick}\n onContextMenu={handleOnContext}\n className={classNames({ link: isLinkable, open: isOpen })}\n {...props}\n ref={ref}\n >\n {children}\n </ActiveSegment>\n )\n },\n)\n\nexport default SegmentProvider\n"],"names":["SegmentProvider","forwardRef","children","segment","isOpen","scope","projectName","props","ref","openSlideOut","useDetailsPanelContext","isLinkable","handleClick","entityType","entityId","buildContextMenu","id","copyToClipboard","contextMenuShow","useCreateContextMenu","handleOnContext","e","menu","jsx","ActiveSegment","classNames"],"mappings":"q5CAeA,MAAMA,EAAkBC,EAAA,WACtB,CAAC,CAAE,SAAAC,EAAU,QAAAC,EAAS,OAAAC,EAAQ,MAAAC,EAAO,YAAAC,EAAa,GAAGC,CAAM,EAAGC,IAAQ,CAC9D,KAAA,CAAE,aAAAC,CAAa,EAAIC,yBAAuB,EAE1CC,GAAaR,GAAA,YAAAA,EAAS,QAAS,YAAaA,GAAA,YAAAA,EAAS,QAAS,UAE9DS,EAAc,IAAM,CACxB,GAAI,CAACD,EAAY,OAEjB,KAAM,CAAE,KAAME,EAAY,GAAIC,CAAS,EAAIX,GAAW,CAAC,EAEnD,CAACU,GAAcA,IAAe,WAAaA,IAAe,WAAa,CAACC,GAE/DL,EAAA,CACX,WAAAI,EACA,SAAAC,EACA,YAAAR,CAAA,CACD,CACH,EAEMS,EAAoBC,GAAe,CACvC,CACE,MAAO,OAAOA,CAAE,GAChB,KAAM,eACN,QAAS,IAAMC,EAAAA,gBAAgBD,CAAE,CAAA,CAErC,EAEM,CAACE,CAAe,EAAIC,uBAAqB,EAEzCC,EAAmBC,GAAkC,CACzD,GAAI,CAAClB,EAAS,OACR,MAAAmB,EAAOP,EAAiBZ,EAAQ,EAAE,EAExCe,EAAgBG,EAAGC,CAAI,CACzB,EAGE,OAAAC,EAAA,kBAAA,IAACC,EAAA,cAAA,CACC,QAASZ,EACT,cAAeQ,EACf,UAAWK,EAAW,WAAA,CAAE,KAAMd,EAAY,KAAMP,EAAQ,EACvD,GAAGG,EACJ,IAAAC,EAEC,SAAAN,CAAA,CACH,CAAA,CAGN"}
|
|
@@ -27,7 +27,9 @@ import "../../context/MenuContext.es.js";
|
|
|
27
27
|
import "../../context/WebsocketContext.es.js";
|
|
28
28
|
import "../../context/GlobalContext.es.js";
|
|
29
29
|
import "../../context/ProjectContext.es.js";
|
|
30
|
-
|
|
30
|
+
import "../../context/ProjectFoldersContext.es.js";
|
|
31
|
+
import "../../context/UriContext.es.js";
|
|
32
|
+
const g = x(
|
|
31
33
|
({ children: p, segment: o, isOpen: m, scope: M, projectName: n, ...e }, c) => {
|
|
32
34
|
const { openSlideOut: a } = k(), i = (o == null ? void 0 : o.type) !== "product" && (o == null ? void 0 : o.type) !== "project", u = () => {
|
|
33
35
|
if (!i) return;
|
|
@@ -62,6 +64,6 @@ const Y = x(
|
|
|
62
64
|
}
|
|
63
65
|
);
|
|
64
66
|
export {
|
|
65
|
-
|
|
67
|
+
g as default
|
|
66
68
|
};
|
|
67
69
|
//# sourceMappingURL=SegmentProvider.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SegmentProvider.es.js","sources":["../../../../../src/components/EntityPath/SegmentProvider.tsx"],"sourcesContent":["import { forwardRef, MouseEvent } from 'react'\nimport { ActiveSegment } from './EntityPath.styled'\nimport { classNames } from 'primereact/utils'\nimport { PathSegment } from './EntityPath'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { copyToClipboard } from '@shared/util'\nimport { useDetailsPanelContext } from '@shared/context'\n\ninterface SegmentProviderProps extends React.HTMLAttributes<HTMLDivElement> {\n segment?: PathSegment\n isOpen?: boolean\n scope: string\n projectName: string\n}\n\nconst SegmentProvider = forwardRef<HTMLDivElement, SegmentProviderProps>(\n ({ children, segment, isOpen, scope, projectName, ...props }, ref) => {\n const { openSlideOut } = useDetailsPanelContext()\n // is the segment NOT a product || project?\n const isLinkable = segment?.type !== 'product' && segment?.type !== 'project'\n\n const handleClick = () => {\n if (!isLinkable) return\n\n const { type: entityType, id: entityId } = segment || {}\n\n if (!entityType || entityType === 'project' || entityType === 'product' || !entityId) return\n\n openSlideOut({\n entityType,\n entityId,\n projectName,\n })\n }\n\n const buildContextMenu = (id: string) => [\n {\n label: `ID: ${id}`,\n icon: 'content_copy',\n command: () => copyToClipboard(id),\n },\n ]\n\n const [contextMenuShow] = useCreateContextMenu()\n\n const handleOnContext = (e: MouseEvent<HTMLDivElement>) => {\n if (!segment) return\n const menu = buildContextMenu(segment.id)\n\n contextMenuShow(e, menu)\n }\n\n return (\n <ActiveSegment\n onClick={handleClick}\n onContextMenu={handleOnContext}\n className={classNames({ link: isLinkable, open: isOpen })}\n {...props}\n ref={ref}\n >\n {children}\n </ActiveSegment>\n )\n },\n)\n\nexport default SegmentProvider\n"],"names":["SegmentProvider","forwardRef","children","segment","isOpen","scope","projectName","props","ref","openSlideOut","useDetailsPanelContext","isLinkable","handleClick","entityType","entityId","buildContextMenu","id","copyToClipboard","contextMenuShow","useCreateContextMenu","handleOnContext","e","menu","jsx","ActiveSegment","classNames"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SegmentProvider.es.js","sources":["../../../../../src/components/EntityPath/SegmentProvider.tsx"],"sourcesContent":["import { forwardRef, MouseEvent } from 'react'\nimport { ActiveSegment } from './EntityPath.styled'\nimport { classNames } from 'primereact/utils'\nimport { PathSegment } from './EntityPath'\nimport { useCreateContextMenu } from '@shared/containers/ContextMenu'\nimport { copyToClipboard } from '@shared/util'\nimport { useDetailsPanelContext } from '@shared/context'\n\ninterface SegmentProviderProps extends React.HTMLAttributes<HTMLDivElement> {\n segment?: PathSegment\n isOpen?: boolean\n scope: string\n projectName: string\n}\n\nconst SegmentProvider = forwardRef<HTMLDivElement, SegmentProviderProps>(\n ({ children, segment, isOpen, scope, projectName, ...props }, ref) => {\n const { openSlideOut } = useDetailsPanelContext()\n // is the segment NOT a product || project?\n const isLinkable = segment?.type !== 'product' && segment?.type !== 'project'\n\n const handleClick = () => {\n if (!isLinkable) return\n\n const { type: entityType, id: entityId } = segment || {}\n\n if (!entityType || entityType === 'project' || entityType === 'product' || !entityId) return\n\n openSlideOut({\n entityType,\n entityId,\n projectName,\n })\n }\n\n const buildContextMenu = (id: string) => [\n {\n label: `ID: ${id}`,\n icon: 'content_copy',\n command: () => copyToClipboard(id),\n },\n ]\n\n const [contextMenuShow] = useCreateContextMenu()\n\n const handleOnContext = (e: MouseEvent<HTMLDivElement>) => {\n if (!segment) return\n const menu = buildContextMenu(segment.id)\n\n contextMenuShow(e, menu)\n }\n\n return (\n <ActiveSegment\n onClick={handleClick}\n onContextMenu={handleOnContext}\n className={classNames({ link: isLinkable, open: isOpen })}\n {...props}\n ref={ref}\n >\n {children}\n </ActiveSegment>\n )\n },\n)\n\nexport default SegmentProvider\n"],"names":["SegmentProvider","forwardRef","children","segment","isOpen","scope","projectName","props","ref","openSlideOut","useDetailsPanelContext","isLinkable","handleClick","entityType","entityId","buildContextMenu","id","copyToClipboard","contextMenuShow","useCreateContextMenu","handleOnContext","e","menu","jsx","ActiveSegment","classNames"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,MAAMA,IAAkBC;AAAA,EACtB,CAAC,EAAE,UAAAC,GAAU,SAAAC,GAAS,QAAAC,GAAQ,OAAAC,GAAO,aAAAC,GAAa,GAAGC,EAAM,GAAGC,MAAQ;AAC9D,UAAA,EAAE,cAAAC,EAAa,IAAIC,EAAuB,GAE1CC,KAAaR,KAAA,gBAAAA,EAAS,UAAS,cAAaA,KAAA,gBAAAA,EAAS,UAAS,WAE9DS,IAAc,MAAM;AACxB,UAAI,CAACD,EAAY;AAEjB,YAAM,EAAE,MAAME,GAAY,IAAIC,EAAS,IAAIX,KAAW,CAAC;AAEvD,MAAI,CAACU,KAAcA,MAAe,aAAaA,MAAe,aAAa,CAACC,KAE/DL,EAAA;AAAA,QACX,YAAAI;AAAA,QACA,UAAAC;AAAA,QACA,aAAAR;AAAA,MAAA,CACD;AAAA,IACH,GAEMS,IAAmB,CAACC,MAAe;AAAA,MACvC;AAAA,QACE,OAAO,OAAOA,CAAE;AAAA,QAChB,MAAM;AAAA,QACN,SAAS,MAAMC,EAAgBD,CAAE;AAAA,MAAA;AAAA,IAErC,GAEM,CAACE,CAAe,IAAIC,EAAqB,GAEzCC,IAAkB,CAACC,MAAkC;AACzD,UAAI,CAAClB,EAAS;AACR,YAAAmB,IAAOP,EAAiBZ,EAAQ,EAAE;AAExC,MAAAe,EAAgBG,GAAGC,CAAI;AAAA,IACzB;AAGE,WAAAC,gBAAAA,EAAA;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAASZ;AAAA,QACT,eAAeQ;AAAA,QACf,WAAWK,EAAW,EAAE,MAAMd,GAAY,MAAMP,GAAQ;AAAA,QACvD,GAAGG;AAAA,QACJ,KAAAC;AAAA,QAEC,UAAAN;AAAA,MAAA;AAAA,IACH;AAAA,EAAA;AAGN;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const D=require("../../../../_virtual/jsx-runtime.cjs.js"),s=require("react");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/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/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/updateActivities.cjs.js");require("../../api/queries/activities/updateReaction.cjs.js");require("../../api/queries/activities/getMentions.cjs.js");require("../../api/queries/activities/getCategories.cjs.js");require("../../api/queries/addons/getAddons.cjs.js");require("../../api/queries/addons/updateAddons.cjs.js");require("../../api/queries/attributes/getAttributes.cjs.js");require("../../api/queries/attributes/updateAttributes.cjs.js");require("../../api/queries/authentication/getAuthentication.cjs.js");const U=require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/links/getEntityLinks.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/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.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/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("../../context/RemoteModulesContext.cjs.js");require("../../context/DetailsPanelContext.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/PowerpackContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");const G=require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");const m=s.createContext(void 0),R=({children:d})=>{var w,p;const[n,h]=s.useState(!1),{siteInfo:u,user:r,cloudInfo:o}=G.useGlobalContext(),{data:a,isLoading:b}=U.useGetFeedbackVerificationQuery({},{skip:!(r!=null&&r.name)||!o}),k=()=>{if(!n){const e=document.createElement("script");e.src="https://do.featurebase.app/js/sdk.js",e.id="featurebase-sdk",e.async=!0,document.body.appendChild(e),h(!0)}},y=()=>{const e=window;typeof e.Featurebase!="function"&&(e.Featurebase=function(){(e.Featurebase.q=e.Featurebase.q||[]).push(arguments)})},S=((w=u==null?void 0:u.version)==null?void 0:w.split("+")[0])||"unknown",C=((p=u==null?void 0:u.version)==null?void 0:p.split("+")[1])||"unknown",z=()=>{if(!(r!=null&&r.name)||!(a!=null&&a.available))return;const e={...a.data,customFields:{origin:window.location.origin,serverVersion:S,frontendVersion:C,instanceId:o==null?void 0:o.instanceId}};console.log(e),window.Featurebase("identify",e,t=>{t?console.error(t):console.log("Featurebase identify completed")})},[c,E]=s.useState(!1),[M,P]=s.useState(0),x=()=>{const e=window;if(typeof e.Featurebase=="function"){if(console.log("Initializing Featurebase messenger widget"),!(a!=null&&a.available))return console.warn("messenger verification not available, skipping messenger init");e.Featurebase("boot",{theme:"dark",...a==null?void 0:a.data},i=>{i?console.error(i):(console.log("Featurebase messenger completed"),E(!0),e.Featurebase("onUnreadCountChange",function(t){P(t)}))})}},v=()=>{var t,F;const e=[];if((t=r==null?void 0:r.data)!=null&&t.isAdmin){const A=["Server","Addon","Pipeline"];e.push(...A)}else u!=null&&u.disableChangelog||e.push("Highlights");const i=window;return typeof i.Featurebase=="function"&&i.Featurebase("init_changelog_widget",{organization:"ayon",dropdown:{enabled:!0},popup:{enabled:!0,usersName:(F=r==null?void 0:r.attrib)==null?void 0:F.fullName,autoOpenForNewUpdates:!0},category:e,theme:"dark"}),!1},V=()=>{const e=window;return typeof e.Featurebase=="function"&&e.Featurebase("initialize_feedback_widget",{organization:"ayon",theme:"dark",metadata:{}},i=>{i&&console.error("Error initializing feedback widget:",i)}),!1},L=()=>{const e=window;return typeof e.Featurebase=="function"&&e.Featurebase("initialize_portal_widget",{organization:"ayon",fullScreen:!0,initialPage:"MainView"},i=>i?(console.error("Error initializing portal widget:",i),!1):!0),!1};s.useEffect(()=>{r!=null&&r.name&&u&&(n||(k(),y(),v(),V(),L()))},[r==null?void 0:r.name,n,u]);const[f,j]=s.useState(!1);s.useEffect(()=>{!(r!=null&&r.name)||!o||!a||!n||f||(z(),j(!0))},[r==null?void 0:r.name,o==null?void 0:o.instanceId,a==null?void 0:a.available,n,window.location.pathname,f]),s.useEffect(()=>{b||!n||x()},[a,b,n]);const H=()=>{window.postMessage({target:"FeaturebaseWidget",data:{action:"openFeedbackWidget"}})},W=(e="MainView",i)=>{window.postMessage({target:"FeaturebaseWidget",data:{action:"changePage",payload:e,openWidget:!0,...i&&{articleId:i}}})},[l
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const D=require("../../../../_virtual/jsx-runtime.cjs.js"),s=require("react");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/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/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/updateActivities.cjs.js");require("../../api/queries/activities/updateReaction.cjs.js");require("../../api/queries/activities/getMentions.cjs.js");require("../../api/queries/activities/getCategories.cjs.js");require("../../api/queries/addons/getAddons.cjs.js");require("../../api/queries/addons/updateAddons.cjs.js");require("../../api/queries/attributes/getAttributes.cjs.js");require("../../api/queries/attributes/updateAttributes.cjs.js");require("../../api/queries/authentication/getAuthentication.cjs.js");const U=require("../../api/queries/cloud/cloud.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/links/getEntityLinks.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/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.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/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("../../context/RemoteModulesContext.cjs.js");require("../../context/DetailsPanelContext.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/PowerpackContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");const G=require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("../../context/UriContext.cjs.js");const m=s.createContext(void 0),R=({children:d})=>{var w,p;const[n,h]=s.useState(!1),{siteInfo:u,user:r,cloudInfo:o}=G.useGlobalContext(),{data:a,isLoading:b}=U.useGetFeedbackVerificationQuery({},{skip:!(r!=null&&r.name)||!o}),k=()=>{if(!n){const e=document.createElement("script");e.src="https://do.featurebase.app/js/sdk.js",e.id="featurebase-sdk",e.async=!0,document.body.appendChild(e),h(!0)}},y=()=>{const e=window;typeof e.Featurebase!="function"&&(e.Featurebase=function(){(e.Featurebase.q=e.Featurebase.q||[]).push(arguments)})},S=((w=u==null?void 0:u.version)==null?void 0:w.split("+")[0])||"unknown",C=((p=u==null?void 0:u.version)==null?void 0:p.split("+")[1])||"unknown",z=()=>{if(!(r!=null&&r.name)||!(a!=null&&a.available))return;const e={...a.data,customFields:{origin:window.location.origin,serverVersion:S,frontendVersion:C,instanceId:o==null?void 0:o.instanceId}};console.log(e),window.Featurebase("identify",e,t=>{t?console.error(t):console.log("Featurebase identify completed")})},[c,E]=s.useState(!1),[M,P]=s.useState(0),x=()=>{const e=window;if(typeof e.Featurebase=="function"){if(console.log("Initializing Featurebase messenger widget"),!(a!=null&&a.available))return console.warn("messenger verification not available, skipping messenger init");e.Featurebase("boot",{theme:"dark",...a==null?void 0:a.data},i=>{i?console.error(i):(console.log("Featurebase messenger completed"),E(!0),e.Featurebase("onUnreadCountChange",function(t){P(t)}))})}},v=()=>{var t,F;const e=[];if((t=r==null?void 0:r.data)!=null&&t.isAdmin){const A=["Server","Addon","Pipeline"];e.push(...A)}else u!=null&&u.disableChangelog||e.push("Highlights");const i=window;return typeof i.Featurebase=="function"&&i.Featurebase("init_changelog_widget",{organization:"ayon",dropdown:{enabled:!0},popup:{enabled:!0,usersName:(F=r==null?void 0:r.attrib)==null?void 0:F.fullName,autoOpenForNewUpdates:!0},category:e,theme:"dark"}),!1},V=()=>{const e=window;return typeof e.Featurebase=="function"&&e.Featurebase("initialize_feedback_widget",{organization:"ayon",theme:"dark",metadata:{}},i=>{i&&console.error("Error initializing feedback widget:",i)}),!1},L=()=>{const e=window;return typeof e.Featurebase=="function"&&e.Featurebase("initialize_portal_widget",{organization:"ayon",fullScreen:!0,initialPage:"MainView"},i=>i?(console.error("Error initializing portal widget:",i),!1):!0),!1};s.useEffect(()=>{r!=null&&r.name&&u&&(n||(k(),y(),v(),V(),L()))},[r==null?void 0:r.name,n,u]);const[f,j]=s.useState(!1);s.useEffect(()=>{!(r!=null&&r.name)||!o||!a||!n||f||(z(),j(!0))},[r==null?void 0:r.name,o==null?void 0:o.instanceId,a==null?void 0:a.available,n,window.location.pathname,f]),s.useEffect(()=>{b||!n||x()},[a,b,n]);const H=()=>{window.postMessage({target:"FeaturebaseWidget",data:{action:"openFeedbackWidget"}})},W=(e="MainView",i)=>{window.postMessage({target:"FeaturebaseWidget",data:{action:"changePage",payload:e,openWidget:!0,...i&&{articleId:i}}})},[q,l]=s.useState(!1),g=document.getElementById("fb-messenger-root"),_=e=>g instanceof HTMLElement&&(g.style.display=e?"block":"none");s.useEffect(()=>{!n||!c||_(q)},[n,c,q]),s.useEffect(()=>{if(!n||!c)return;const e=window;typeof e.Featurebase=="function"&&e.Featurebase("onHide",function(){l(!1)})},[n,c]);const N=(e="Home",i)=>{const t=window;if(typeof t.Featurebase!="function"){window.alert("Featurebase SDK is not loaded yet. Please try again later."),console.warn("Featurebase SDK is not loaded yet.");return}if(q){t.Featurebase("hide"),l(!1);return}switch(l(!0),e){case"Home":t.Featurebase("show");break;case"Messages":t.Featurebase("show","messages");break;case"Changelog":t.Featurebase("show","changelog");break;case"Help":t.Featurebase("show","help");break;case"ShowArticle":i?t.Featurebase("showArticle",i):t.Featurebase("show","help");break;case"NewMessage":t.Featurebase("showNewMessage",i);break;default:t.Featurebase("show");break}};return D.jsxRuntimeExports.jsx(m.Provider,{value:{openSupport:N,openFeedback:H,openPortal:W,messengerLoaded:c,unreadCount:M,messengerVisibility:q,setMessengerVisibility:l,loaded:n},children:d})},K=()=>{const d=s.useContext(m);if(!d)throw new Error("useFeedback must be used within a FeedbackProvider");return d};exports.FeedbackProvider=R;exports.useFeedback=K;
|
|
2
2
|
//# sourceMappingURL=FeedbackContext.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackContext.cjs.js","sources":["../../../../../src/components/Feedback/FeedbackContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode, useEffect, useState } from 'react'\nimport { useGetFeedbackVerificationQuery } from '@shared/api'\nimport { useGlobalContext } from '@shared/context'\n\nexport type FeedbackContextType = {\n loaded: boolean\n openSupport: (\n page?: 'Home' | 'Messages' | 'Changelog' | 'Help' | 'NewMessage' | 'ShowArticle',\n id?: string,\n ) => void\n messengerLoaded: boolean // whether the messenger widget is loaded\n unreadCount: number // number of unread messages\n messengerVisibility: boolean\n setMessengerVisibility: (show: boolean) => void // show/hide the messenger icon\n openFeedback: () => void\n openPortal: (\n page?: 'MainView' | 'RoadmapView' | 'CreatePost' | 'PostsView' | 'ChangelogView' | 'HelpView',\n articleId?: string,\n ) => void\n}\n\nconst FeedbackContext = createContext<FeedbackContextType | undefined>(undefined)\n\ntype FeedbackProviderProps = {\n children: ReactNode\n}\n\nexport const FeedbackProvider: React.FC<FeedbackProviderProps> = ({ children }) => {\n const [scriptLoaded, setScriptLoaded] = useState(false)\n const { siteInfo, user, cloudInfo } = useGlobalContext()\n const { data: verification, isLoading: isLoadingVerification } = useGetFeedbackVerificationQuery(\n {},\n {\n skip: !user?.name || !cloudInfo,\n },\n )\n\n const loadScript = () => {\n if (!scriptLoaded) {\n const script = document.createElement('script')\n script.src = 'https://do.featurebase.app/js/sdk.js'\n script.id = 'featurebase-sdk'\n script.async = true\n document.body.appendChild(script)\n setScriptLoaded(true)\n }\n }\n\n const initialize = () => {\n // Initialize Featurebase\n const win = window as any\n if (typeof win.Featurebase !== 'function') {\n win.Featurebase = function () {\n ;(win.Featurebase.q = win.Featurebase.q || []).push(arguments)\n }\n }\n }\n\n const serverVersion = siteInfo?.version?.split('+')[0] || 'unknown'\n const frontendVersion = siteInfo?.version?.split('+')[1] || 'unknown'\n\n const identifyUser = () => {\n if (!user?.name || !verification?.available) return\n\n const identifyData = {\n ...verification.data,\n customFields: {\n origin: window.location.origin,\n serverVersion: serverVersion,\n frontendVersion: frontendVersion,\n instanceId: cloudInfo?.instanceId,\n },\n }\n\n console.log(identifyData)\n\n const win = window as any\n win.Featurebase('identify', identifyData, (err: any) => {\n // Callback function. Called when identify completed.\n if (err) {\n console.error(err)\n } else {\n console.log('Featurebase identify completed')\n }\n })\n }\n\n const [messengerLoaded, setMessengerLoaded] = useState(false)\n const [unreadCount, setUnreadCount] = useState(0)\n\n // MESSENGER WIDGET\n const initializeMessenger = (): void => {\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n console.log('Initializing Featurebase messenger widget')\n if (!verification?.available)\n return console.warn('messenger verification not available, skipping messenger init')\n win.Featurebase(\n 'boot',\n {\n theme: 'dark',\n ...verification?.data,\n },\n (err: any) => {\n // Callback function. Called when identify completed.\n if (err) {\n console.error(err)\n } else {\n console.log('Featurebase messenger completed')\n setMessengerLoaded(true)\n\n // register event listener for unread messages\n win.Featurebase('onUnreadCountChange', function (unreadCount: number) {\n setUnreadCount(unreadCount)\n })\n }\n },\n )\n }\n }\n\n // CHANGELOG WIDGET\n const initializeChangelog = (): boolean => {\n // everyone sees highlights\n const categories: string[] = []\n\n if (user?.data?.isAdmin) {\n // admins see everything\n const adminCategories = ['Server', 'Addon', 'Pipeline']\n categories.push(...adminCategories)\n } else if (!siteInfo?.disableChangelog) {\n // users only see highlights (unless disabled)\n // admins do not see highlights as it is a subset of the other categories\n categories.push('Highlights')\n }\n\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n win.Featurebase('init_changelog_widget', {\n organization: 'ayon',\n dropdown: {\n enabled: true,\n },\n popup: {\n enabled: true,\n usersName: user?.attrib?.fullName,\n autoOpenForNewUpdates: true,\n },\n category: categories,\n theme: 'dark',\n })\n }\n return false\n }\n\n // FEEDBACK WIDGET\n const initializeFeedbackWidget = (): boolean => {\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n win.Featurebase(\n 'initialize_feedback_widget',\n {\n organization: 'ayon',\n theme: 'dark',\n metadata: {},\n },\n (error: any) => {\n if (error) {\n console.error('Error initializing feedback widget:', error)\n } else {\n }\n },\n )\n }\n return false\n }\n\n // PORTAL WIDGET (old)\n const initializePortalWidget = (): boolean => {\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n win.Featurebase(\n 'initialize_portal_widget',\n {\n organization: 'ayon',\n fullScreen: true,\n initialPage: 'MainView',\n },\n (error: any) => {\n if (error) {\n console.error('Error initializing portal widget:', error)\n return false\n } else {\n return true\n }\n },\n )\n }\n return false\n }\n\n // Use an environment variable to skip loading Featurebase in certain environments\n // @ts-expect-error: Vite provides import.meta.env at runtime\n const skipFeaturebase = import.meta.env.VITE_SKIP_FEATUREBASE === 'true'\n\n // Load Featurebase script and initialize widgets\n useEffect(() => {\n // if skip flag is set, do not load the script\n if (skipFeaturebase) return\n // if not logged in, do not load the script\n if (!user?.name) return\n if (!siteInfo) return\n\n // if already loaded, do not load again\n if (scriptLoaded) return\n\n // Load the Featurebase script\n loadScript()\n\n // Initialize Featurebase\n initialize()\n\n // Initialize changelog widget\n initializeChangelog()\n\n // Initialize feedback widget\n initializeFeedbackWidget()\n\n // Initialize portal widget\n initializePortalWidget()\n }, [user?.name, scriptLoaded, siteInfo])\n\n const [identified, setIdentified] = useState(false)\n // verify user\n useEffect(() => {\n // check if we can identify the user\n if (!user?.name || !cloudInfo || !verification || !scriptLoaded) return\n // if we are already identified, do not identify again\n if (identified) return\n // Identify the user\n identifyUser()\n setIdentified(true)\n }, [\n user?.name,\n cloudInfo?.instanceId,\n verification?.available,\n scriptLoaded,\n window.location.pathname,\n identified,\n ])\n\n // load messenger widget once verification is done loading\n // we don't need verification but we should use it if we have it\n useEffect(() => {\n // wait for script to be loaded and verification to finish loading\n if (isLoadingVerification || !scriptLoaded) return\n\n // initialize the messenger widget\n initializeMessenger()\n }, [verification, isLoadingVerification, scriptLoaded])\n\n const openFeedback: FeedbackContextType['openFeedback'] = () => {\n window.postMessage({\n target: 'FeaturebaseWidget',\n data: {\n action: 'openFeedbackWidget',\n },\n })\n }\n\n const openPortal = (\n page:\n | 'MainView'\n | 'RoadmapView'\n | 'CreatePost'\n | 'PostsView'\n | 'ChangelogView'\n | 'HelpView' = 'MainView',\n articleId?: string,\n ) => {\n window.postMessage({\n target: 'FeaturebaseWidget',\n data: {\n action: 'changePage',\n payload: page,\n openWidget: true,\n ...(articleId && { articleId }),\n },\n })\n }\n\n const [messengerVisibility, setMessengerVisibility] = useState(false)\n const supportElement = document.getElementById('fb-messenger-root')\n\n const setSupportDisplay = (show: boolean) =>\n supportElement instanceof HTMLElement &&\n (supportElement.style.display = show ? 'block' : 'none')\n\n useEffect(() => {\n if (!scriptLoaded || !messengerLoaded) return\n setSupportDisplay(messengerVisibility)\n }, [scriptLoaded, messengerLoaded, messengerVisibility])\n\n // when the messenger is hidden, we need to hide the root element again\n useEffect(() => {\n if (!scriptLoaded || !messengerLoaded) return\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n win.Featurebase('onHide', function () {\n // hide the messenger root element\n setMessengerVisibility(false)\n })\n }\n }, [scriptLoaded, messengerLoaded])\n\n const openSupport: FeedbackContextType['openSupport'] = (page = 'Home', id) => {\n const win = window as any\n if (typeof win.Featurebase !== 'function') {\n window.alert('Featurebase SDK is not loaded yet. Please try again later.')\n console.warn('Featurebase SDK is not loaded yet.')\n return\n }\n\n if (messengerVisibility) {\n // if the messenger is already visible, close it\n win.Featurebase('hide')\n setMessengerVisibility(false)\n return\n }\n\n // ensure the messenger is visible\n setMessengerVisibility(true)\n\n switch (page) {\n case 'Home':\n // Show messenger home\n win.Featurebase('show')\n break\n case 'Messages':\n // Show messages view\n win.Featurebase('show', 'messages')\n break\n case 'Changelog':\n // Show changelog view\n win.Featurebase('show', 'changelog')\n break\n case 'Help':\n // Open help center\n win.Featurebase('show', 'help')\n break\n case 'ShowArticle':\n // Open a specific help article\n if (id) win.Featurebase('showArticle', id)\n else win.Featurebase('show', 'help')\n break\n case 'NewMessage':\n // Open new message dialog\n win.Featurebase('showNewMessage', id)\n break\n default:\n // Default to showing the main widget\n win.Featurebase('show')\n break\n }\n }\n\n return (\n <FeedbackContext.Provider\n value={{\n openSupport,\n openFeedback,\n openPortal,\n messengerLoaded,\n unreadCount,\n messengerVisibility,\n setMessengerVisibility,\n loaded: scriptLoaded,\n }}\n >\n {children}\n </FeedbackContext.Provider>\n )\n}\n\nexport const useFeedback = (): FeedbackContextType => {\n const context = useContext(FeedbackContext)\n if (!context) {\n throw new Error('useFeedback must be used within a FeedbackProvider')\n }\n return context\n}\n"],"names":["FeedbackContext","createContext","FeedbackProvider","children","scriptLoaded","setScriptLoaded","useState","siteInfo","user","cloudInfo","useGlobalContext","verification","isLoadingVerification","useGetFeedbackVerificationQuery","loadScript","script","initialize","win","serverVersion","_a","frontendVersion","_b","identifyUser","identifyData","err","messengerLoaded","setMessengerLoaded","unreadCount","setUnreadCount","initializeMessenger","initializeChangelog","categories","adminCategories","initializeFeedbackWidget","error","initializePortalWidget","useEffect","identified","setIdentified","openFeedback","openPortal","page","articleId","messengerVisibility","setMessengerVisibility","supportElement","setSupportDisplay","show","openSupport","id","jsx","useFeedback","context","useContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FeedbackContext.cjs.js","sources":["../../../../../src/components/Feedback/FeedbackContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode, useEffect, useState } from 'react'\nimport { useGetFeedbackVerificationQuery } from '@shared/api'\nimport { useGlobalContext } from '@shared/context'\n\nexport type FeedbackContextType = {\n loaded: boolean\n openSupport: (\n page?: 'Home' | 'Messages' | 'Changelog' | 'Help' | 'NewMessage' | 'ShowArticle',\n id?: string,\n ) => void\n messengerLoaded: boolean // whether the messenger widget is loaded\n unreadCount: number // number of unread messages\n messengerVisibility: boolean\n setMessengerVisibility: (show: boolean) => void // show/hide the messenger icon\n openFeedback: () => void\n openPortal: (\n page?: 'MainView' | 'RoadmapView' | 'CreatePost' | 'PostsView' | 'ChangelogView' | 'HelpView',\n articleId?: string,\n ) => void\n}\n\nconst FeedbackContext = createContext<FeedbackContextType | undefined>(undefined)\n\ntype FeedbackProviderProps = {\n children: ReactNode\n}\n\nexport const FeedbackProvider: React.FC<FeedbackProviderProps> = ({ children }) => {\n const [scriptLoaded, setScriptLoaded] = useState(false)\n const { siteInfo, user, cloudInfo } = useGlobalContext()\n const { data: verification, isLoading: isLoadingVerification } = useGetFeedbackVerificationQuery(\n {},\n {\n skip: !user?.name || !cloudInfo,\n },\n )\n\n const loadScript = () => {\n if (!scriptLoaded) {\n const script = document.createElement('script')\n script.src = 'https://do.featurebase.app/js/sdk.js'\n script.id = 'featurebase-sdk'\n script.async = true\n document.body.appendChild(script)\n setScriptLoaded(true)\n }\n }\n\n const initialize = () => {\n // Initialize Featurebase\n const win = window as any\n if (typeof win.Featurebase !== 'function') {\n win.Featurebase = function () {\n ;(win.Featurebase.q = win.Featurebase.q || []).push(arguments)\n }\n }\n }\n\n const serverVersion = siteInfo?.version?.split('+')[0] || 'unknown'\n const frontendVersion = siteInfo?.version?.split('+')[1] || 'unknown'\n\n const identifyUser = () => {\n if (!user?.name || !verification?.available) return\n\n const identifyData = {\n ...verification.data,\n customFields: {\n origin: window.location.origin,\n serverVersion: serverVersion,\n frontendVersion: frontendVersion,\n instanceId: cloudInfo?.instanceId,\n },\n }\n\n console.log(identifyData)\n\n const win = window as any\n win.Featurebase('identify', identifyData, (err: any) => {\n // Callback function. Called when identify completed.\n if (err) {\n console.error(err)\n } else {\n console.log('Featurebase identify completed')\n }\n })\n }\n\n const [messengerLoaded, setMessengerLoaded] = useState(false)\n const [unreadCount, setUnreadCount] = useState(0)\n\n // MESSENGER WIDGET\n const initializeMessenger = (): void => {\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n console.log('Initializing Featurebase messenger widget')\n if (!verification?.available)\n return console.warn('messenger verification not available, skipping messenger init')\n win.Featurebase(\n 'boot',\n {\n theme: 'dark',\n ...verification?.data,\n },\n (err: any) => {\n // Callback function. Called when identify completed.\n if (err) {\n console.error(err)\n } else {\n console.log('Featurebase messenger completed')\n setMessengerLoaded(true)\n\n // register event listener for unread messages\n win.Featurebase('onUnreadCountChange', function (unreadCount: number) {\n setUnreadCount(unreadCount)\n })\n }\n },\n )\n }\n }\n\n // CHANGELOG WIDGET\n const initializeChangelog = (): boolean => {\n // everyone sees highlights\n const categories: string[] = []\n\n if (user?.data?.isAdmin) {\n // admins see everything\n const adminCategories = ['Server', 'Addon', 'Pipeline']\n categories.push(...adminCategories)\n } else if (!siteInfo?.disableChangelog) {\n // users only see highlights (unless disabled)\n // admins do not see highlights as it is a subset of the other categories\n categories.push('Highlights')\n }\n\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n win.Featurebase('init_changelog_widget', {\n organization: 'ayon',\n dropdown: {\n enabled: true,\n },\n popup: {\n enabled: true,\n usersName: user?.attrib?.fullName,\n autoOpenForNewUpdates: true,\n },\n category: categories,\n theme: 'dark',\n })\n }\n return false\n }\n\n // FEEDBACK WIDGET\n const initializeFeedbackWidget = (): boolean => {\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n win.Featurebase(\n 'initialize_feedback_widget',\n {\n organization: 'ayon',\n theme: 'dark',\n metadata: {},\n },\n (error: any) => {\n if (error) {\n console.error('Error initializing feedback widget:', error)\n } else {\n }\n },\n )\n }\n return false\n }\n\n // PORTAL WIDGET (old)\n const initializePortalWidget = (): boolean => {\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n win.Featurebase(\n 'initialize_portal_widget',\n {\n organization: 'ayon',\n fullScreen: true,\n initialPage: 'MainView',\n },\n (error: any) => {\n if (error) {\n console.error('Error initializing portal widget:', error)\n return false\n } else {\n return true\n }\n },\n )\n }\n return false\n }\n\n // Use an environment variable to skip loading Featurebase in certain environments\n // @ts-expect-error: Vite provides import.meta.env at runtime\n const skipFeaturebase = import.meta.env.VITE_SKIP_FEATUREBASE === 'true'\n\n // Load Featurebase script and initialize widgets\n useEffect(() => {\n // if skip flag is set, do not load the script\n if (skipFeaturebase) return\n // if not logged in, do not load the script\n if (!user?.name) return\n if (!siteInfo) return\n\n // if already loaded, do not load again\n if (scriptLoaded) return\n\n // Load the Featurebase script\n loadScript()\n\n // Initialize Featurebase\n initialize()\n\n // Initialize changelog widget\n initializeChangelog()\n\n // Initialize feedback widget\n initializeFeedbackWidget()\n\n // Initialize portal widget\n initializePortalWidget()\n }, [user?.name, scriptLoaded, siteInfo])\n\n const [identified, setIdentified] = useState(false)\n // verify user\n useEffect(() => {\n // check if we can identify the user\n if (!user?.name || !cloudInfo || !verification || !scriptLoaded) return\n // if we are already identified, do not identify again\n if (identified) return\n // Identify the user\n identifyUser()\n setIdentified(true)\n }, [\n user?.name,\n cloudInfo?.instanceId,\n verification?.available,\n scriptLoaded,\n window.location.pathname,\n identified,\n ])\n\n // load messenger widget once verification is done loading\n // we don't need verification but we should use it if we have it\n useEffect(() => {\n // wait for script to be loaded and verification to finish loading\n if (isLoadingVerification || !scriptLoaded) return\n\n // initialize the messenger widget\n initializeMessenger()\n }, [verification, isLoadingVerification, scriptLoaded])\n\n const openFeedback: FeedbackContextType['openFeedback'] = () => {\n window.postMessage({\n target: 'FeaturebaseWidget',\n data: {\n action: 'openFeedbackWidget',\n },\n })\n }\n\n const openPortal = (\n page:\n | 'MainView'\n | 'RoadmapView'\n | 'CreatePost'\n | 'PostsView'\n | 'ChangelogView'\n | 'HelpView' = 'MainView',\n articleId?: string,\n ) => {\n window.postMessage({\n target: 'FeaturebaseWidget',\n data: {\n action: 'changePage',\n payload: page,\n openWidget: true,\n ...(articleId && { articleId }),\n },\n })\n }\n\n const [messengerVisibility, setMessengerVisibility] = useState(false)\n const supportElement = document.getElementById('fb-messenger-root')\n\n const setSupportDisplay = (show: boolean) =>\n supportElement instanceof HTMLElement &&\n (supportElement.style.display = show ? 'block' : 'none')\n\n useEffect(() => {\n if (!scriptLoaded || !messengerLoaded) return\n setSupportDisplay(messengerVisibility)\n }, [scriptLoaded, messengerLoaded, messengerVisibility])\n\n // when the messenger is hidden, we need to hide the root element again\n useEffect(() => {\n if (!scriptLoaded || !messengerLoaded) return\n const win = window as any\n if (typeof win.Featurebase === 'function') {\n win.Featurebase('onHide', function () {\n // hide the messenger root element\n setMessengerVisibility(false)\n })\n }\n }, [scriptLoaded, messengerLoaded])\n\n const openSupport: FeedbackContextType['openSupport'] = (page = 'Home', id) => {\n const win = window as any\n if (typeof win.Featurebase !== 'function') {\n window.alert('Featurebase SDK is not loaded yet. Please try again later.')\n console.warn('Featurebase SDK is not loaded yet.')\n return\n }\n\n if (messengerVisibility) {\n // if the messenger is already visible, close it\n win.Featurebase('hide')\n setMessengerVisibility(false)\n return\n }\n\n // ensure the messenger is visible\n setMessengerVisibility(true)\n\n switch (page) {\n case 'Home':\n // Show messenger home\n win.Featurebase('show')\n break\n case 'Messages':\n // Show messages view\n win.Featurebase('show', 'messages')\n break\n case 'Changelog':\n // Show changelog view\n win.Featurebase('show', 'changelog')\n break\n case 'Help':\n // Open help center\n win.Featurebase('show', 'help')\n break\n case 'ShowArticle':\n // Open a specific help article\n if (id) win.Featurebase('showArticle', id)\n else win.Featurebase('show', 'help')\n break\n case 'NewMessage':\n // Open new message dialog\n win.Featurebase('showNewMessage', id)\n break\n default:\n // Default to showing the main widget\n win.Featurebase('show')\n break\n }\n }\n\n return (\n <FeedbackContext.Provider\n value={{\n openSupport,\n openFeedback,\n openPortal,\n messengerLoaded,\n unreadCount,\n messengerVisibility,\n setMessengerVisibility,\n loaded: scriptLoaded,\n }}\n >\n {children}\n </FeedbackContext.Provider>\n )\n}\n\nexport const useFeedback = (): FeedbackContextType => {\n const context = useContext(FeedbackContext)\n if (!context) {\n throw new Error('useFeedback must be used within a FeedbackProvider')\n }\n return context\n}\n"],"names":["FeedbackContext","createContext","FeedbackProvider","children","scriptLoaded","setScriptLoaded","useState","siteInfo","user","cloudInfo","useGlobalContext","verification","isLoadingVerification","useGetFeedbackVerificationQuery","loadScript","script","initialize","win","serverVersion","_a","frontendVersion","_b","identifyUser","identifyData","err","messengerLoaded","setMessengerLoaded","unreadCount","setUnreadCount","initializeMessenger","initializeChangelog","categories","adminCategories","initializeFeedbackWidget","error","initializePortalWidget","useEffect","identified","setIdentified","openFeedback","openPortal","page","articleId","messengerVisibility","setMessengerVisibility","supportElement","setSupportDisplay","show","openSupport","id","jsx","useFeedback","context","useContext"],"mappings":"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"}
|
|
@@ -82,6 +82,7 @@ import "../../api/queries/versions/updateVersions.es.js";
|
|
|
82
82
|
import "../../api/queries/views/getViews.es.js";
|
|
83
83
|
import "../../api/queries/views/updateViews.es.js";
|
|
84
84
|
import "../../api/queries/watchers/getWatchers.es.js";
|
|
85
|
+
import "../../api/queries/uris/getUris.es.js";
|
|
85
86
|
import "../../context/RemoteModulesContext.es.js";
|
|
86
87
|
import "../../context/DetailsPanelContext.es.js";
|
|
87
88
|
import "../../context/ThumbnailUploaderContext.es.js";
|
|
@@ -97,7 +98,9 @@ import "../../context/MenuContext.es.js";
|
|
|
97
98
|
import "../../context/WebsocketContext.es.js";
|
|
98
99
|
import { useGlobalContext as O } from "../../context/GlobalContext.es.js";
|
|
99
100
|
import "../../context/ProjectContext.es.js";
|
|
100
|
-
|
|
101
|
+
import "../../context/ProjectFoldersContext.es.js";
|
|
102
|
+
import "../../context/UriContext.es.js";
|
|
103
|
+
const k = G(void 0), Ut = ({ children: c }) => {
|
|
101
104
|
var w, F;
|
|
102
105
|
const [a, y] = m(!1), { siteInfo: n, user: t, cloudInfo: s } = O(), { data: r, isLoading: b } = B(
|
|
103
106
|
{},
|
|
@@ -285,14 +288,14 @@ const k = G(void 0), Nt = ({ children: c }) => {
|
|
|
285
288
|
children: c
|
|
286
289
|
}
|
|
287
290
|
);
|
|
288
|
-
},
|
|
291
|
+
}, qt = () => {
|
|
289
292
|
const c = K(k);
|
|
290
293
|
if (!c)
|
|
291
294
|
throw new Error("useFeedback must be used within a FeedbackProvider");
|
|
292
295
|
return c;
|
|
293
296
|
};
|
|
294
297
|
export {
|
|
295
|
-
|
|
296
|
-
|
|
298
|
+
Ut as FeedbackProvider,
|
|
299
|
+
qt as useFeedback
|
|
297
300
|
};
|
|
298
301
|
//# sourceMappingURL=FeedbackContext.es.js.map
|