@ynput/ayon-frontend-shared 0.2.44 → 0.3.0
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 -65
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +104 -102
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +113 -4
- package/dist/Slicer.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.cjs4.js +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.es4.js +5 -2
- package/dist/_virtual/index.es4.js.map +1 -1
- package/dist/_virtual/index.es5.js +2 -5
- package/dist/_virtual/index.es5.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +141 -139
- package/dist/components.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +61 -54
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js +5 -5
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js.map +1 -1
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js +313 -305
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js.map +1 -1
- package/dist/node_modules/remove-accents/index.cjs.js +1 -1
- package/dist/node_modules/remove-accents/index.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +73 -68
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
- package/dist/shared/src/api/queries/views/updateViews.cjs.js +1 -1
- package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/views/updateViews.es.js +1 -1
- package/dist/shared/src/api/queries/views/updateViews.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 +57 -50
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.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 +45 -38
- package/dist/shared/src/components/LinksManager/AddNewLinks.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 +47 -40
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.es.js +21 -21
- package/dist/shared/src/components/Menu/MenuItem.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 -42
- 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 +44 -37
- 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 -41
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +2 -0
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -0
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +279 -0
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -0
- 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 +48 -41
- package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +64 -57
- 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 -47
- 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 -46
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.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 -45
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.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 -49
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.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 -46
- package/dist/shared/src/containers/Actions/ActionConfigDialog.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 -47
- 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 +70 -63
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.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 -42
- 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 -61
- 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 +93 -86
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.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 +47 -40
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.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 +46 -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 +49 -46
- 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 +49 -46
- 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 +49 -46
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.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 +50 -42
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +55 -48
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.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 +70 -63
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.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 +47 -40
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.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 +468 -448
- 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 +96 -89
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +47 -40
- 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 -50
- 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 +54 -47
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.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 +63 -68
- 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 +49 -41
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.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 +51 -44
- 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 +48 -41
- 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 -48
- 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 +54 -47
- 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 -44
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.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 -44
- 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 -44
- 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 -47
- 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 +46 -39
- 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 +46 -39
- 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 +48 -41
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.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 -55
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.es.js +11 -6
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +16 -13
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.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 +342 -116
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js +47 -40
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.es.js +7 -7
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumWidget.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 +69 -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 -44
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidgetInput.es.js +29 -33
- 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 +118 -111
- 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 +49 -46
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/Slicer.es.js +82 -0
- package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +27 -0
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +71 -0
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +10 -0
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +294 -0
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +215 -0
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useFiltersWithHierarchy.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useFiltersWithHierarchy.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +25 -0
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +28 -0
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +304 -0
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +99 -0
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/util/createFilterFromSlicer.es.js.map +1 -0
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +95 -88
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +2 -2
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +32 -31
- 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 +125 -121
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +47 -49
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.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 +6 -5
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
- package/dist/shared/src/context/AddonContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonContext.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.es.js +51 -44
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
- package/dist/shared/src/hooks/useLoadModules.cjs.js +1 -1
- package/dist/shared/src/hooks/useLoadModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useLoadModules.es.js +7 -7
- package/dist/shared/src/hooks/useLoadModules.es.js.map +1 -1
- package/dist/shared/src/util/columnConfigConverter.cjs.js +1 -1
- package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -1
- package/dist/shared/src/util/columnConfigConverter.es.js +69 -46
- package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -1
- package/dist/shared/src/util/getGroupByDataType.cjs.js +1 -1
- package/dist/shared/src/util/getGroupByDataType.cjs.js.map +1 -1
- package/dist/shared/src/util/getGroupByDataType.es.js +4 -4
- package/dist/shared/src/util/getGroupByDataType.es.js.map +1 -1
- package/dist/types/api/queries/activities/getActivities.d.ts +1 -1
- package/dist/types/api/queries/entityLists/getLists.d.ts +183 -183
- package/dist/types/api/queries/links/getLinks.d.ts +1 -1
- package/dist/types/api/queries/overview/getOverview.d.ts +1 -1
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +1 -0
- package/dist/types/api/queries/versions/getVersionsProducts.d.ts +2 -2
- package/dist/types/components/RemotePage/RemotePageWrapper.d.ts +28 -0
- package/dist/types/components/RemotePage/index.d.ts +1 -0
- package/dist/types/components/index.d.ts +31 -30
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +0 -2
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +1 -4
- package/dist/types/containers/ProjectTreeTable/utils/restrictedEntity.d.ts +3 -3
- package/dist/types/containers/Slicer/components/Slicer.d.ts +9 -0
- package/dist/types/containers/Slicer/components/SlicerDropdownFallback.d.ts +7 -0
- package/dist/types/containers/Slicer/components/SlicerSearch.d.ts +6 -0
- package/dist/types/containers/Slicer/context/SlicerContext.d.ts +48 -0
- package/dist/types/containers/Slicer/hooks/index.d.ts +5 -0
- package/dist/types/containers/Slicer/{useFiltersWithHierarchy.d.ts → hooks/useFiltersWithHierarchy.d.ts} +1 -1
- package/dist/types/containers/Slicer/hooks/useProjectAnatomySlices.d.ts +51 -0
- package/dist/types/containers/Slicer/hooks/useSlicerAttributesData.d.ts +7 -0
- package/dist/types/containers/Slicer/hooks/useTableDataBySlice.d.ts +8 -0
- package/dist/types/containers/Slicer/hooks/useUsersTable.d.ts +10 -0
- package/dist/types/containers/Slicer/index.d.ts +4 -2
- package/dist/types/containers/Slicer/types.d.ts +35 -0
- package/dist/types/containers/Slicer/{createFilterFromSlicer.d.ts → util/createFilterFromSlicer.d.ts} +2 -2
- package/dist/types/containers/Slicer/util/index.d.ts +1 -0
- package/dist/types/containers/Views/ViewsMenuContainer/BaseViewsTags.d.ts +4 -1
- package/dist/types/containers/Views/hooks/pages/useOverviewViewSettings.d.ts +7 -1
- package/dist/types/containers/Views/index.d.ts +1 -1
- package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +1 -1
- package/dist/types/context/AddonContext.d.ts +10 -2
- package/dist/types/context/AddonProjectContext.d.ts +7 -12
- package/dist/types/hooks/useGroupByRemoteModules.d.ts +2 -1
- package/package.json +1 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.cjs.js.map +0 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.es.js.map +0 -1
- package/dist/shared/src/containers/Slicer/useFiltersWithHierarchy.cjs.js.map +0 -1
- package/dist/shared/src/containers/Slicer/useFiltersWithHierarchy.es.js.map +0 -1
- /package/dist/shared/src/containers/Slicer/{useFiltersWithHierarchy.cjs.js → hooks/useFiltersWithHierarchy.cjs.js} +0 -0
- /package/dist/shared/src/containers/Slicer/{useFiltersWithHierarchy.es.js → hooks/useFiltersWithHierarchy.es.js} +0 -0
- /package/dist/shared/src/containers/Slicer/{createFilterFromSlicer.cjs.js → util/createFilterFromSlicer.cjs.js} +0 -0
- /package/dist/shared/src/containers/Slicer/{createFilterFromSlicer.es.js → util/createFilterFromSlicer.es.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateWidgetInput.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/DateWidgetInput.tsx"],"sourcesContent":["import { forwardRef, useState, useEffect, useRef } from 'react'\nimport styled from 'styled-components'\nimport { format, isValid, parseISO } from 'date-fns'\nimport { WidgetBaseProps } from './CellWidget'\n\ninterface DateWidgetInputProps\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: string\n onCancel?: () => void\n autoFocus?: boolean\n}\n\nconst StyledInput = styled.input`\n z-index: 10;\n border: none;\n outline: none;\n padding: 0;\n padding-left: 1px;\n margin: 0;\n cursor: text;\n font-size: inherit;\n font-family: inherit;\n font-weight: inherit;\n background-color: transparent;\n width: 100%;\n box-sizing: border-box;\n`\n\nexport const DateWidgetInput = forwardRef<HTMLInputElement, DateWidgetInputProps>(\n ({ value: initialValue, onChange, onCancel, autoFocus = true, ...props }, _) => {\n const [value, setValue] = useState(() => {\n if (initialValue) {\n const parsedDate = parseISO(initialValue)\n if (isValid(parsedDate)) {\n return format(parsedDate, 'yyyy-MM-dd')\n }\n }\n return ''\n })\n\n useEffect(() => {\n if (initialValue) {\n const parsedDate = parseISO(initialValue)\n if (isValid(parsedDate)) {\n setValue(format(parsedDate, 'yyyy-MM-dd'))\n } else {\n setValue('')\n }\n }\n }, [initialValue])\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n useEffect(() => {\n if (autoFocus && inputRef.current) {\n inputRef.current.focus()\n // Delay showPicker call until after focus to ensure it's tied to user interaction\n setTimeout(() => {\n try {\n inputRef.current?.showPicker()\n } catch (error) {\n console.debug('Date picker could not be shown automatically:', error)\n }\n }, 100)\n }\n }, [autoFocus])\n\n // Ensure the picker opens when clicked directly\n const handleClick = (e: React.MouseEvent<HTMLInputElement>) => {\n e.preventDefault() // Prevent default to ensure our handler takes precedence\n try {\n inputRef.current?.showPicker()\n } catch (error) {\n console.debug('Date picker could not be shown on click:', error)\n }\n }\n\n const handleDateSubmit = (event?: 'Click' | 'Enter') => {\n if (value) {\n const parsed = Date.parse(value)\n if (isValid(parsed)) {\n const dateWithZeroTime = new Date(parsed)\n dateWithZeroTime.setUTCHours(0, 0, 0, 0)\n onChange(
|
|
1
|
+
{"version":3,"file":"DateWidgetInput.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/DateWidgetInput.tsx"],"sourcesContent":["import { forwardRef, useState, useEffect, useRef } from 'react'\nimport styled from 'styled-components'\nimport { format, isValid, parseISO } from 'date-fns'\nimport { WidgetBaseProps } from './CellWidget'\n\ninterface DateWidgetInputProps\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: string\n onCancel?: () => void\n autoFocus?: boolean\n}\n\nconst StyledInput = styled.input`\n z-index: 10;\n border: none;\n outline: none;\n padding: 0;\n padding-left: 1px;\n margin: 0;\n cursor: text;\n font-size: inherit;\n font-family: inherit;\n font-weight: inherit;\n background-color: transparent;\n width: 100%;\n box-sizing: border-box;\n`\n\nexport const DateWidgetInput = forwardRef<HTMLInputElement, DateWidgetInputProps>(\n ({ value: initialValue, onChange, onCancel, autoFocus = true, ...props }, _) => {\n const [value, setValue] = useState(() => {\n if (initialValue) {\n const parsedDate = parseISO(initialValue)\n if (isValid(parsedDate)) {\n return format(parsedDate, 'yyyy-MM-dd')\n }\n }\n return ''\n })\n\n useEffect(() => {\n if (initialValue) {\n const parsedDate = parseISO(initialValue)\n if (isValid(parsedDate)) {\n setValue(format(parsedDate, 'yyyy-MM-dd'))\n } else {\n setValue('')\n }\n }\n }, [initialValue])\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n useEffect(() => {\n if (autoFocus && inputRef.current) {\n inputRef.current.focus()\n // Delay showPicker call until after focus to ensure it's tied to user interaction\n setTimeout(() => {\n try {\n inputRef.current?.showPicker()\n } catch (error) {\n console.debug('Date picker could not be shown automatically:', error)\n }\n }, 100)\n }\n }, [autoFocus])\n\n // Ensure the picker opens when clicked directly\n const handleClick = (e: React.MouseEvent<HTMLInputElement>) => {\n e.preventDefault() // Prevent default to ensure our handler takes precedence\n try {\n inputRef.current?.showPicker()\n } catch (error) {\n console.debug('Date picker could not be shown on click:', error)\n }\n }\n\n const handleDateSubmit = (event?: 'Click' | 'Enter') => {\n if (value) {\n const parsed = Date.parse(value)\n if (isValid(parsed)) {\n const dateWithZeroTime = new Date(parsed)\n dateWithZeroTime.setUTCHours(0, 0, 0, 0)\n const newISOValue = dateWithZeroTime.toISOString()\n\n // For Click/Blur: only save if value changed\n // For Enter: always save\n if (event === 'Enter') {\n onChange(newISOValue, event)\n return true\n } else if (event === 'Click') {\n // Check if value actually changed\n const initialDateISO = initialValue ? parseISO(initialValue).toISOString() : ''\n if (newISOValue !== initialDateISO) {\n onChange(newISOValue, event)\n return true\n }\n // Value didn't change, cancel edit\n return false\n }\n }\n }\n return false\n }\n\n const handleBlur = () => {\n if (!handleDateSubmit('Click')) {\n onCancel?.()\n }\n }\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter') {\n e.preventDefault()\n handleDateSubmit('Enter')\n inputRef.current?.blur()\n } else if (e.key === 'Escape') {\n e.preventDefault()\n onCancel?.()\n }\n }\n\n return (\n <StyledInput\n {...props}\n ref={inputRef}\n type=\"date\"\n value={value}\n onChange={(e) => setValue(e.target.value)}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onClick={handleClick}\n />\n )\n },\n)\n"],"names":["StyledInput","styled","DateWidgetInput","forwardRef","initialValue","onChange","onCancel","autoFocus","props","_","value","setValue","useState","parsedDate","parseISO","isValid","format","useEffect","inputRef","useRef","error","handleClick","handleDateSubmit","event","parsed","dateWithZeroTime","newISOValue","initialDateISO","handleBlur","handleKeyDown","jsx"],"mappings":"sNAaMA,EAAcC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAgBdC,EAAkBC,EAAAA,WAC7B,CAAC,CAAE,MAAOC,EAAc,SAAAC,EAAU,SAAAC,EAAU,UAAAC,EAAY,GAAM,GAAGC,CAAA,EAASC,IAAM,CAC9E,KAAM,CAACC,EAAOC,CAAQ,EAAIC,EAAAA,SAAS,IAAM,CACvC,GAAIR,EAAc,CAChB,MAAMS,EAAaC,EAAAA,SAASV,CAAY,EACxC,GAAIW,EAAAA,QAAQF,CAAU,EACpB,OAAOG,EAAAA,OAAOH,EAAY,YAAY,CAE1C,CACA,MAAO,EACT,CAAC,EAEDI,EAAAA,UAAU,IAAM,CACd,GAAIb,EAAc,CAChB,MAAMS,EAAaC,EAAAA,SAASV,CAAY,EACpCW,EAAAA,QAAQF,CAAU,EACpBF,EAASK,EAAAA,OAAOH,EAAY,YAAY,CAAC,EAEzCF,EAAS,EAAE,CAEf,CACF,EAAG,CAACP,CAAY,CAAC,EAEjB,MAAMc,EAAWC,EAAAA,OAAyB,IAAI,EAE9CF,EAAAA,UAAU,IAAM,CACVV,GAAaW,EAAS,UACxBA,EAAS,QAAQ,MAAA,EAEjB,WAAW,IAAM,CACf,GAAI,CACFA,EAAS,SAAS,WAAA,CACpB,OAASE,EAAO,CACd,QAAQ,MAAM,gDAAiDA,CAAK,CACtE,CACF,EAAG,GAAG,EAEV,EAAG,CAACb,CAAS,CAAC,EAGd,MAAMc,EAAe,GAA0C,CAC7D,EAAE,eAAA,EACF,GAAI,CACFH,EAAS,SAAS,WAAA,CACpB,OAASE,EAAO,CACd,QAAQ,MAAM,2CAA4CA,CAAK,CACjE,CACF,EAEME,EAAoBC,GAA8B,CACtD,GAAIb,EAAO,CACT,MAAMc,EAAS,KAAK,MAAMd,CAAK,EAC/B,GAAIK,EAAAA,QAAQS,CAAM,EAAG,CACnB,MAAMC,EAAmB,IAAI,KAAKD,CAAM,EACxCC,EAAiB,YAAY,EAAG,EAAG,EAAG,CAAC,EACvC,MAAMC,EAAcD,EAAiB,YAAA,EAIrC,GAAIF,IAAU,QACZ,OAAAlB,EAASqB,EAAaH,CAAK,EACpB,GACT,GAAWA,IAAU,QAAS,CAE5B,MAAMI,EAAiBvB,EAAeU,EAAAA,SAASV,CAAY,EAAE,cAAgB,GAC7E,OAAIsB,IAAgBC,GAClBtB,EAASqB,EAAaH,CAAK,EACpB,IAGF,EACT,CACF,CACF,CACA,MAAO,EACT,EAEMK,EAAa,IAAM,CAClBN,EAAiB,OAAO,GAC3BhB,IAAA,CAEJ,EAEMuB,EAAiB,GAA6C,CAC9D,EAAE,MAAQ,SACZ,EAAE,eAAA,EACFP,EAAiB,OAAO,EACxBJ,EAAS,SAAS,KAAA,GACT,EAAE,MAAQ,WACnB,EAAE,eAAA,EACFZ,IAAA,EAEJ,EAEA,OACEwB,EAAAA,kBAAAA,IAAC9B,EAAA,CACE,GAAGQ,EACJ,IAAKU,EACL,KAAK,OACL,MAAAR,EACA,SAAW,GAAMC,EAAS,EAAE,OAAO,KAAK,EACxC,OAAQiB,EACR,UAAWC,EACX,QAASR,CAAA,CAAA,CAGf,CACF"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { j as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
import
|
|
4
|
-
import { parseISO as
|
|
5
|
-
const
|
|
1
|
+
import { j as w } from "../../../../../_virtual/jsx-runtime.es.js";
|
|
2
|
+
import { forwardRef as S, useState as x, useEffect as y, useRef as I } from "react";
|
|
3
|
+
import E from "styled-components";
|
|
4
|
+
import { parseISO as i, isValid as u, format as h } from "date-fns";
|
|
5
|
+
const O = E.input`
|
|
6
6
|
z-index: 10;
|
|
7
7
|
border: none;
|
|
8
8
|
outline: none;
|
|
@@ -16,69 +16,76 @@ const S = v.input`
|
|
|
16
16
|
background-color: transparent;
|
|
17
17
|
width: 100%;
|
|
18
18
|
box-sizing: border-box;
|
|
19
|
-
`,
|
|
20
|
-
({ value:
|
|
21
|
-
const [o, s] =
|
|
22
|
-
if (
|
|
23
|
-
const e =
|
|
24
|
-
if (
|
|
25
|
-
return
|
|
19
|
+
`, z = S(
|
|
20
|
+
({ value: t, onChange: a, onCancel: f, autoFocus: d = !0, ...m }, C) => {
|
|
21
|
+
const [o, s] = x(() => {
|
|
22
|
+
if (t) {
|
|
23
|
+
const e = i(t);
|
|
24
|
+
if (u(e))
|
|
25
|
+
return h(e, "yyyy-MM-dd");
|
|
26
26
|
}
|
|
27
27
|
return "";
|
|
28
28
|
});
|
|
29
|
-
|
|
30
|
-
if (
|
|
31
|
-
const e =
|
|
32
|
-
|
|
29
|
+
y(() => {
|
|
30
|
+
if (t) {
|
|
31
|
+
const e = i(t);
|
|
32
|
+
u(e) ? s(h(e, "yyyy-MM-dd")) : s("");
|
|
33
33
|
}
|
|
34
|
-
}, [
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
34
|
+
}, [t]);
|
|
35
|
+
const r = I(null);
|
|
36
|
+
y(() => {
|
|
37
|
+
d && r.current && (r.current.focus(), setTimeout(() => {
|
|
38
38
|
try {
|
|
39
|
-
|
|
39
|
+
r.current?.showPicker();
|
|
40
40
|
} catch (e) {
|
|
41
41
|
console.debug("Date picker could not be shown automatically:", e);
|
|
42
42
|
}
|
|
43
43
|
}, 100));
|
|
44
|
-
}, [
|
|
45
|
-
const
|
|
44
|
+
}, [d]);
|
|
45
|
+
const D = (e) => {
|
|
46
46
|
e.preventDefault();
|
|
47
47
|
try {
|
|
48
|
-
|
|
48
|
+
r.current?.showPicker();
|
|
49
49
|
} catch (n) {
|
|
50
50
|
console.debug("Date picker could not be shown on click:", n);
|
|
51
51
|
}
|
|
52
|
-
},
|
|
52
|
+
}, l = (e) => {
|
|
53
53
|
if (o) {
|
|
54
54
|
const n = Date.parse(o);
|
|
55
|
-
if (
|
|
56
|
-
const
|
|
57
|
-
|
|
55
|
+
if (u(n)) {
|
|
56
|
+
const p = new Date(n);
|
|
57
|
+
p.setUTCHours(0, 0, 0, 0);
|
|
58
|
+
const c = p.toISOString();
|
|
59
|
+
if (e === "Enter")
|
|
60
|
+
return a(c, e), !0;
|
|
61
|
+
if (e === "Click") {
|
|
62
|
+
const b = t ? i(t).toISOString() : "";
|
|
63
|
+
return c !== b ? (a(c, e), !0) : !1;
|
|
64
|
+
}
|
|
58
65
|
}
|
|
59
66
|
}
|
|
60
67
|
return !1;
|
|
61
|
-
},
|
|
62
|
-
|
|
63
|
-
},
|
|
64
|
-
e.key === "Enter" ? (e.preventDefault(),
|
|
68
|
+
}, g = () => {
|
|
69
|
+
l("Click") || f?.();
|
|
70
|
+
}, k = (e) => {
|
|
71
|
+
e.key === "Enter" ? (e.preventDefault(), l("Enter"), r.current?.blur()) : e.key === "Escape" && (e.preventDefault(), f?.());
|
|
65
72
|
};
|
|
66
|
-
return /* @__PURE__ */
|
|
67
|
-
|
|
73
|
+
return /* @__PURE__ */ w.jsx(
|
|
74
|
+
O,
|
|
68
75
|
{
|
|
69
|
-
...
|
|
70
|
-
ref:
|
|
76
|
+
...m,
|
|
77
|
+
ref: r,
|
|
71
78
|
type: "date",
|
|
72
79
|
value: o,
|
|
73
80
|
onChange: (e) => s(e.target.value),
|
|
74
|
-
onBlur:
|
|
75
|
-
onKeyDown:
|
|
76
|
-
onClick:
|
|
81
|
+
onBlur: g,
|
|
82
|
+
onKeyDown: k,
|
|
83
|
+
onClick: D
|
|
77
84
|
}
|
|
78
85
|
);
|
|
79
86
|
}
|
|
80
87
|
);
|
|
81
88
|
export {
|
|
82
|
-
|
|
89
|
+
z as DateWidgetInput
|
|
83
90
|
};
|
|
84
91
|
//# sourceMappingURL=DateWidgetInput.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateWidgetInput.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/DateWidgetInput.tsx"],"sourcesContent":["import { forwardRef, useState, useEffect, useRef } from 'react'\nimport styled from 'styled-components'\nimport { format, isValid, parseISO } from 'date-fns'\nimport { WidgetBaseProps } from './CellWidget'\n\ninterface DateWidgetInputProps\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: string\n onCancel?: () => void\n autoFocus?: boolean\n}\n\nconst StyledInput = styled.input`\n z-index: 10;\n border: none;\n outline: none;\n padding: 0;\n padding-left: 1px;\n margin: 0;\n cursor: text;\n font-size: inherit;\n font-family: inherit;\n font-weight: inherit;\n background-color: transparent;\n width: 100%;\n box-sizing: border-box;\n`\n\nexport const DateWidgetInput = forwardRef<HTMLInputElement, DateWidgetInputProps>(\n ({ value: initialValue, onChange, onCancel, autoFocus = true, ...props }, _) => {\n const [value, setValue] = useState(() => {\n if (initialValue) {\n const parsedDate = parseISO(initialValue)\n if (isValid(parsedDate)) {\n return format(parsedDate, 'yyyy-MM-dd')\n }\n }\n return ''\n })\n\n useEffect(() => {\n if (initialValue) {\n const parsedDate = parseISO(initialValue)\n if (isValid(parsedDate)) {\n setValue(format(parsedDate, 'yyyy-MM-dd'))\n } else {\n setValue('')\n }\n }\n }, [initialValue])\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n useEffect(() => {\n if (autoFocus && inputRef.current) {\n inputRef.current.focus()\n // Delay showPicker call until after focus to ensure it's tied to user interaction\n setTimeout(() => {\n try {\n inputRef.current?.showPicker()\n } catch (error) {\n console.debug('Date picker could not be shown automatically:', error)\n }\n }, 100)\n }\n }, [autoFocus])\n\n // Ensure the picker opens when clicked directly\n const handleClick = (e: React.MouseEvent<HTMLInputElement>) => {\n e.preventDefault() // Prevent default to ensure our handler takes precedence\n try {\n inputRef.current?.showPicker()\n } catch (error) {\n console.debug('Date picker could not be shown on click:', error)\n }\n }\n\n const handleDateSubmit = (event?: 'Click' | 'Enter') => {\n if (value) {\n const parsed = Date.parse(value)\n if (isValid(parsed)) {\n const dateWithZeroTime = new Date(parsed)\n dateWithZeroTime.setUTCHours(0, 0, 0, 0)\n onChange(
|
|
1
|
+
{"version":3,"file":"DateWidgetInput.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/DateWidgetInput.tsx"],"sourcesContent":["import { forwardRef, useState, useEffect, useRef } from 'react'\nimport styled from 'styled-components'\nimport { format, isValid, parseISO } from 'date-fns'\nimport { WidgetBaseProps } from './CellWidget'\n\ninterface DateWidgetInputProps\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: string\n onCancel?: () => void\n autoFocus?: boolean\n}\n\nconst StyledInput = styled.input`\n z-index: 10;\n border: none;\n outline: none;\n padding: 0;\n padding-left: 1px;\n margin: 0;\n cursor: text;\n font-size: inherit;\n font-family: inherit;\n font-weight: inherit;\n background-color: transparent;\n width: 100%;\n box-sizing: border-box;\n`\n\nexport const DateWidgetInput = forwardRef<HTMLInputElement, DateWidgetInputProps>(\n ({ value: initialValue, onChange, onCancel, autoFocus = true, ...props }, _) => {\n const [value, setValue] = useState(() => {\n if (initialValue) {\n const parsedDate = parseISO(initialValue)\n if (isValid(parsedDate)) {\n return format(parsedDate, 'yyyy-MM-dd')\n }\n }\n return ''\n })\n\n useEffect(() => {\n if (initialValue) {\n const parsedDate = parseISO(initialValue)\n if (isValid(parsedDate)) {\n setValue(format(parsedDate, 'yyyy-MM-dd'))\n } else {\n setValue('')\n }\n }\n }, [initialValue])\n\n const inputRef = useRef<HTMLInputElement>(null)\n\n useEffect(() => {\n if (autoFocus && inputRef.current) {\n inputRef.current.focus()\n // Delay showPicker call until after focus to ensure it's tied to user interaction\n setTimeout(() => {\n try {\n inputRef.current?.showPicker()\n } catch (error) {\n console.debug('Date picker could not be shown automatically:', error)\n }\n }, 100)\n }\n }, [autoFocus])\n\n // Ensure the picker opens when clicked directly\n const handleClick = (e: React.MouseEvent<HTMLInputElement>) => {\n e.preventDefault() // Prevent default to ensure our handler takes precedence\n try {\n inputRef.current?.showPicker()\n } catch (error) {\n console.debug('Date picker could not be shown on click:', error)\n }\n }\n\n const handleDateSubmit = (event?: 'Click' | 'Enter') => {\n if (value) {\n const parsed = Date.parse(value)\n if (isValid(parsed)) {\n const dateWithZeroTime = new Date(parsed)\n dateWithZeroTime.setUTCHours(0, 0, 0, 0)\n const newISOValue = dateWithZeroTime.toISOString()\n\n // For Click/Blur: only save if value changed\n // For Enter: always save\n if (event === 'Enter') {\n onChange(newISOValue, event)\n return true\n } else if (event === 'Click') {\n // Check if value actually changed\n const initialDateISO = initialValue ? parseISO(initialValue).toISOString() : ''\n if (newISOValue !== initialDateISO) {\n onChange(newISOValue, event)\n return true\n }\n // Value didn't change, cancel edit\n return false\n }\n }\n }\n return false\n }\n\n const handleBlur = () => {\n if (!handleDateSubmit('Click')) {\n onCancel?.()\n }\n }\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter') {\n e.preventDefault()\n handleDateSubmit('Enter')\n inputRef.current?.blur()\n } else if (e.key === 'Escape') {\n e.preventDefault()\n onCancel?.()\n }\n }\n\n return (\n <StyledInput\n {...props}\n ref={inputRef}\n type=\"date\"\n value={value}\n onChange={(e) => setValue(e.target.value)}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onClick={handleClick}\n />\n )\n },\n)\n"],"names":["StyledInput","styled","DateWidgetInput","forwardRef","initialValue","onChange","onCancel","autoFocus","props","_","value","setValue","useState","parsedDate","parseISO","isValid","format","useEffect","inputRef","useRef","error","handleClick","handleDateSubmit","event","parsed","dateWithZeroTime","newISOValue","initialDateISO","handleBlur","handleKeyDown","jsx"],"mappings":";;;;AAaA,MAAMA,IAAcC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAgBdC,IAAkBC;AAAA,EAC7B,CAAC,EAAE,OAAOC,GAAc,UAAAC,GAAU,UAAAC,GAAU,WAAAC,IAAY,IAAM,GAAGC,EAAA,GAASC,MAAM;AAC9E,UAAM,CAACC,GAAOC,CAAQ,IAAIC,EAAS,MAAM;AACvC,UAAIR,GAAc;AAChB,cAAMS,IAAaC,EAASV,CAAY;AACxC,YAAIW,EAAQF,CAAU;AACpB,iBAAOG,EAAOH,GAAY,YAAY;AAAA,MAE1C;AACA,aAAO;AAAA,IACT,CAAC;AAED,IAAAI,EAAU,MAAM;AACd,UAAIb,GAAc;AAChB,cAAMS,IAAaC,EAASV,CAAY;AACxC,QAAIW,EAAQF,CAAU,IACpBF,EAASK,EAAOH,GAAY,YAAY,CAAC,IAEzCF,EAAS,EAAE;AAAA,MAEf;AAAA,IACF,GAAG,CAACP,CAAY,CAAC;AAEjB,UAAMc,IAAWC,EAAyB,IAAI;AAE9C,IAAAF,EAAU,MAAM;AACd,MAAIV,KAAaW,EAAS,YACxBA,EAAS,QAAQ,MAAA,GAEjB,WAAW,MAAM;AACf,YAAI;AACF,UAAAA,EAAS,SAAS,WAAA;AAAA,QACpB,SAASE,GAAO;AACd,kBAAQ,MAAM,iDAAiDA,CAAK;AAAA,QACtE;AAAA,MACF,GAAG,GAAG;AAAA,IAEV,GAAG,CAACb,CAAS,CAAC;AAGd,UAAMc,IAAc,CAAC,MAA0C;AAC7D,QAAE,eAAA;AACF,UAAI;AACF,QAAAH,EAAS,SAAS,WAAA;AAAA,MACpB,SAASE,GAAO;AACd,gBAAQ,MAAM,4CAA4CA,CAAK;AAAA,MACjE;AAAA,IACF,GAEME,IAAmB,CAACC,MAA8B;AACtD,UAAIb,GAAO;AACT,cAAMc,IAAS,KAAK,MAAMd,CAAK;AAC/B,YAAIK,EAAQS,CAAM,GAAG;AACnB,gBAAMC,IAAmB,IAAI,KAAKD,CAAM;AACxC,UAAAC,EAAiB,YAAY,GAAG,GAAG,GAAG,CAAC;AACvC,gBAAMC,IAAcD,EAAiB,YAAA;AAIrC,cAAIF,MAAU;AACZ,mBAAAlB,EAASqB,GAAaH,CAAK,GACpB;AACT,cAAWA,MAAU,SAAS;AAE5B,kBAAMI,IAAiBvB,IAAeU,EAASV,CAAY,EAAE,gBAAgB;AAC7E,mBAAIsB,MAAgBC,KAClBtB,EAASqB,GAAaH,CAAK,GACpB,MAGF;AAAA,UACT;AAAA,QACF;AAAA,MACF;AACA,aAAO;AAAA,IACT,GAEMK,IAAa,MAAM;AACvB,MAAKN,EAAiB,OAAO,KAC3BhB,IAAA;AAAA,IAEJ,GAEMuB,IAAgB,CAAC,MAA6C;AAClE,MAAI,EAAE,QAAQ,WACZ,EAAE,eAAA,GACFP,EAAiB,OAAO,GACxBJ,EAAS,SAAS,KAAA,KACT,EAAE,QAAQ,aACnB,EAAE,eAAA,GACFZ,IAAA;AAAA,IAEJ;AAEA,WACEwB,gBAAAA,EAAAA;AAAAA,MAAC9B;AAAA,MAAA;AAAA,QACE,GAAGQ;AAAA,QACJ,KAAKU;AAAA,QACL,MAAK;AAAA,QACL,OAAAR;AAAA,QACA,UAAU,CAAC,MAAMC,EAAS,EAAE,OAAO,KAAK;AAAA,QACxC,QAAQiB;AAAA,QACR,WAAWC;AAAA,QACX,SAASR;AAAA,MAAA;AAAA,IAAA;AAAA,EAGf;AACF;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("../../../../../_virtual/jsx-runtime.cjs.js"),M=require("@ynput/ayon-react-components"),x=require("clsx"),i=require("react"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("../../../../../_virtual/jsx-runtime.cjs.js"),M=require("@ynput/ayon-react-components"),x=require("clsx"),i=require("react"),b=require("styled-components"),v=require("./EnumCellValue.cjs.js"),A=b(M.Dropdown)`
|
|
2
2
|
height: 100%;
|
|
3
3
|
width: 100%;
|
|
4
|
-
`,
|
|
4
|
+
`,V=i.forwardRef(({value:y,isEditing:d,options:c,type:E,autoOpen:g=!0,isReadOnly:u,enableCustomValues:o,onOpen:D,onChange:S,onCancelEdit:q,onNext:T,pt:l,...s},_)=>{const p=y.map(t=>t?.toString()).filter(t=>!!t);let r=c.filter(t=>p.includes(t.value.toString()));const j=[];p.forEach(t=>{if(!c.find(e=>e.value===t)){const e={label:t,value:t,color:o?"var(--md-sys-color-surface-container)":"var(--md-sys-color-error)",icon:o?void 0:"warning"};r=[...r,e],j.push(e)}});const R=r.length>1,h=[...c,...j],n=i.useRef(null),[O,N]=i.useState(!1);i.useEffect(()=>{d&&n.current&&g?(!n.current.isOpen&&n.current?.open(),N(!0)):N(!1)},[d,n.current,g]),i.useEffect(()=>{if(O&&!s.search&&h.length<20){const e=n.current?.getOptions()?.querySelector("li");e&&(e.focus(),e.style.outline="none")}},[O,s.search,h.length]);const m=!!E?.includes("list"),C=t=>{let e=o?t:t.filter(a=>c.find(w=>w.value===a));E?.includes("list")||(e=Array.isArray(e)?e[0]:e),S(e,"Click")};return d?f.jsxRuntimeExports.jsx(A,{options:h,value:p,ref:n,valueTemplate:(t,e,a)=>f.jsxRuntimeExports.jsx(v.EnumCellValue,{selectedOptions:r,hasMultipleValues:e.length>1,isOpen:a,isReadOnly:u,isMultiSelect:m,...l?.template,placeholder:s.placeholder,className:x("enum-dropdown-value",l?.template?.className)}),itemTemplate:(t,e,a)=>f.jsxRuntimeExports.jsx(v.EnumCellValue,{selectedOptions:[t],hasMultipleValues:!1,isOpen:!1,isItem:!0,isMultiSelect:m,isSelected:a,...l?.template,className:x("enum-dropdown-item",l?.template?.className)}),widthExpand:!0,multiSelect:m,disableOpen:u,disabled:u,sortBySelected:!0,searchOnNumber:10,...s,onChange:C,onClose:q,editable:o}):f.jsxRuntimeExports.jsx(v.EnumCellValue,{selectedOptions:r,hasMultipleValues:R,isMultiSelect:m,isReadOnly:u,...l?.template,placeholder:s.placeholder,className:x("enum-value",l?.template?.className,s.className)})});exports.EnumWidget=V;
|
|
5
5
|
//# sourceMappingURL=EnumWidget.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnumWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/EnumWidget.tsx"],"sourcesContent":["import { Dropdown, DropdownProps, DropdownRef } from '@ynput/ayon-react-components'\nimport clsx from 'clsx'\nimport { forwardRef, useEffect, useRef, useState } from 'react'\nimport styled from 'styled-components'\nimport type { WidgetBaseProps } from './CellWidget'\nimport { AttributeData, AttributeEnumItem } from '../types'\nimport { EnumCellValue, EnumTemplateProps } from './EnumCellValue'\n\nconst StyledDropdown = styled(Dropdown)`\n height: 100%;\n width: 100%;\n`\n\nexport interface EnumWidgetProps\n extends Omit<DropdownProps, 'onChange' | 'value'>,\n WidgetBaseProps {\n value: (string | number | boolean)[]\n options: AttributeEnumItem[]\n type?: AttributeData['type']\n autoOpen?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n pt?: {\n template?: Partial<EnumTemplateProps>\n }\n onOpen?: () => void\n onNext?: () => void\n}\n\nexport const EnumWidget = forwardRef<HTMLDivElement, EnumWidgetProps>(\n (\n {\n value,\n isEditing,\n options,\n type,\n autoOpen = true,\n isReadOnly,\n enableCustomValues,\n onOpen,\n onChange,\n onCancelEdit,\n onNext,\n pt,\n ...dropdownProps\n },\n _ref,\n ) => {\n // convert value to string array\n const valueAsStrings = value.map((v) => v?.toString()).filter((v) => !!v)\n let selectedOptions = options.filter((option) =>\n valueAsStrings.includes(option.value.toString()),\n )\n\n // Check if all values are present in options, if not, add a warning\n const invalidOptions: AttributeEnumItem[] = []\n valueAsStrings.forEach((val) => {\n if (!options.find((option) => option.value === val)) {\n const invalidOption = {\n label: val,\n value: val,\n color: enableCustomValues\n ? 'var(--md-sys-color-surface-container)'\n : 'var(--md-sys-color-error)',\n icon: enableCustomValues ? undefined : 'warning',\n }\n selectedOptions = [...selectedOptions, invalidOption]\n invalidOptions.push(invalidOption)\n }\n })\n const hasMultipleValues = selectedOptions.length > 1\n\n // Merge valid options with invalid options for the dropdown\n const allOptions = [...options, ...invalidOptions]\n\n const dropdownRef = useRef<DropdownRef>(null)\n\n const [dropdownOpen, setDropdownOpen] = useState(false)\n useEffect(() => {\n if (isEditing && dropdownRef.current && autoOpen) {\n !dropdownRef.current.isOpen && dropdownRef.current?.open()\n setDropdownOpen(true)\n } else {\n setDropdownOpen(false)\n }\n }, [isEditing, dropdownRef.current, autoOpen])\n\n // when the dropdown is open, focus the first item\n useEffect(() => {\n if (dropdownOpen && !dropdownProps.search && allOptions.length < 20) {\n const optionsUlEl = dropdownRef.current?.getOptions() as HTMLUListElement\n const firstItem = optionsUlEl?.querySelector('li')\n if (firstItem) {\n firstItem.focus()\n // set style of li to have no outline (no focus ring)\n firstItem.style.outline = 'none'\n }\n }\n }, [dropdownOpen, dropdownProps.search, allOptions.length])\n\n const isMultiSelect = !!type?.includes('list')\n\n const handleChange = (
|
|
1
|
+
{"version":3,"file":"EnumWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/EnumWidget.tsx"],"sourcesContent":["import { Dropdown, DropdownProps, DropdownRef } from '@ynput/ayon-react-components'\nimport clsx from 'clsx'\nimport { forwardRef, useEffect, useRef, useState } from 'react'\nimport styled from 'styled-components'\nimport type { WidgetBaseProps } from './CellWidget'\nimport { AttributeData, AttributeEnumItem } from '../types'\nimport { EnumCellValue, EnumTemplateProps } from './EnumCellValue'\n\nconst StyledDropdown = styled(Dropdown)`\n height: 100%;\n width: 100%;\n`\n\nexport interface EnumWidgetProps\n extends Omit<DropdownProps, 'onChange' | 'value'>,\n WidgetBaseProps {\n value: (string | number | boolean)[]\n options: AttributeEnumItem[]\n type?: AttributeData['type']\n autoOpen?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n pt?: {\n template?: Partial<EnumTemplateProps>\n }\n onOpen?: () => void\n onNext?: () => void\n}\n\nexport const EnumWidget = forwardRef<HTMLDivElement, EnumWidgetProps>(\n (\n {\n value,\n isEditing,\n options,\n type,\n autoOpen = true,\n isReadOnly,\n enableCustomValues,\n onOpen,\n onChange,\n onCancelEdit,\n onNext,\n pt,\n ...dropdownProps\n },\n _ref,\n ) => {\n // convert value to string array\n const valueAsStrings = value.map((v) => v?.toString()).filter((v) => !!v)\n let selectedOptions = options.filter((option) =>\n valueAsStrings.includes(option.value.toString()),\n )\n\n // Check if all values are present in options, if not, add a warning\n const invalidOptions: AttributeEnumItem[] = []\n valueAsStrings.forEach((val) => {\n if (!options.find((option) => option.value === val)) {\n const invalidOption = {\n label: val,\n value: val,\n color: enableCustomValues\n ? 'var(--md-sys-color-surface-container)'\n : 'var(--md-sys-color-error)',\n icon: enableCustomValues ? undefined : 'warning',\n }\n selectedOptions = [...selectedOptions, invalidOption]\n invalidOptions.push(invalidOption)\n }\n })\n const hasMultipleValues = selectedOptions.length > 1\n\n // Merge valid options with invalid options for the dropdown\n const allOptions = [...options, ...invalidOptions]\n\n const dropdownRef = useRef<DropdownRef>(null)\n\n const [dropdownOpen, setDropdownOpen] = useState(false)\n useEffect(() => {\n if (isEditing && dropdownRef.current && autoOpen) {\n !dropdownRef.current.isOpen && dropdownRef.current?.open()\n setDropdownOpen(true)\n } else {\n setDropdownOpen(false)\n }\n }, [isEditing, dropdownRef.current, autoOpen])\n\n // when the dropdown is open, focus the first item\n useEffect(() => {\n if (dropdownOpen && !dropdownProps.search && allOptions.length < 20) {\n const optionsUlEl = dropdownRef.current?.getOptions() as HTMLUListElement\n const firstItem = optionsUlEl?.querySelector('li')\n if (firstItem) {\n firstItem.focus()\n // set style of li to have no outline (no focus ring)\n firstItem.style.outline = 'none'\n }\n }\n }, [dropdownOpen, dropdownProps.search, allOptions.length])\n\n const isMultiSelect = !!type?.includes('list')\n\n const handleChange = (newValue: string[]) => {\n let filteredValue: string | string[] = enableCustomValues\n ? newValue\n : newValue.filter((v) => options.find((o) => o.value === v))\n\n if (type?.includes('list')) {\n onChange(filteredValue, 'Click')\n } else {\n // check if the value is an array or a string and for arrays take the first value only\n filteredValue = Array.isArray(filteredValue) ? filteredValue[0] : filteredValue\n\n // take first value as the type is not list]\n onChange(filteredValue, 'Click')\n }\n }\n\n if (isEditing) {\n return (\n <StyledDropdown\n options={allOptions}\n value={valueAsStrings}\n ref={dropdownRef}\n valueTemplate={(_value, selected, isOpen) => (\n <EnumCellValue\n selectedOptions={selectedOptions}\n hasMultipleValues={selected.length > 1}\n isOpen={isOpen}\n isReadOnly={isReadOnly}\n isMultiSelect={isMultiSelect}\n {...pt?.template}\n placeholder={dropdownProps.placeholder}\n className={clsx('enum-dropdown-value', pt?.template?.className)}\n />\n )}\n itemTemplate={(option, _isActive, isSelected) => (\n <EnumCellValue\n selectedOptions={[option]}\n hasMultipleValues={false}\n isOpen={false}\n isItem\n isMultiSelect={isMultiSelect}\n isSelected={isSelected}\n {...pt?.template}\n className={clsx('enum-dropdown-item', pt?.template?.className)}\n />\n )}\n widthExpand\n multiSelect={isMultiSelect}\n disableOpen={isReadOnly}\n disabled={isReadOnly}\n sortBySelected\n searchOnNumber={10}\n {...dropdownProps}\n onChange={handleChange}\n onClose={onCancelEdit}\n editable={enableCustomValues}\n />\n )\n }\n\n return (\n <EnumCellValue\n selectedOptions={selectedOptions}\n hasMultipleValues={hasMultipleValues}\n isMultiSelect={isMultiSelect}\n isReadOnly={isReadOnly}\n {...pt?.template}\n placeholder={dropdownProps.placeholder}\n className={clsx('enum-value', pt?.template?.className, dropdownProps.className)}\n />\n )\n },\n)\n"],"names":["StyledDropdown","styled","Dropdown","EnumWidget","forwardRef","value","isEditing","options","type","autoOpen","isReadOnly","enableCustomValues","onOpen","onChange","onCancelEdit","onNext","pt","dropdownProps","_ref","valueAsStrings","v","selectedOptions","option","invalidOptions","val","invalidOption","hasMultipleValues","allOptions","dropdownRef","useRef","dropdownOpen","setDropdownOpen","useState","useEffect","firstItem","isMultiSelect","handleChange","newValue","filteredValue","o","jsx","_value","selected","isOpen","EnumCellValue","clsx","_isActive","isSelected"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { j as m } from "../../../../../_virtual/jsx-runtime.es.js";
|
|
2
2
|
import { Dropdown as _ } from "@ynput/ayon-react-components";
|
|
3
3
|
import h from "clsx";
|
|
4
|
-
import { forwardRef as b, useRef as k, useState as C, useEffect as
|
|
4
|
+
import { forwardRef as b, useRef as k, useState as C, useEffect as E } from "react";
|
|
5
5
|
import I from "styled-components";
|
|
6
6
|
import { EnumCellValue as v } from "./EnumCellValue.es.js";
|
|
7
7
|
const T = I(_)`
|
|
@@ -9,7 +9,7 @@ const T = I(_)`
|
|
|
9
9
|
width: 100%;
|
|
10
10
|
`, H = b(
|
|
11
11
|
({
|
|
12
|
-
value:
|
|
12
|
+
value: w,
|
|
13
13
|
isEditing: f,
|
|
14
14
|
options: i,
|
|
15
15
|
type: g,
|
|
@@ -19,11 +19,11 @@ const T = I(_)`
|
|
|
19
19
|
onOpen: U,
|
|
20
20
|
onChange: N,
|
|
21
21
|
onCancelEdit: y,
|
|
22
|
-
onNext:
|
|
22
|
+
onNext: q,
|
|
23
23
|
pt: l,
|
|
24
24
|
...s
|
|
25
|
-
},
|
|
26
|
-
const p =
|
|
25
|
+
}, B) => {
|
|
26
|
+
const p = w.map((t) => t?.toString()).filter((t) => !!t);
|
|
27
27
|
let n = i.filter(
|
|
28
28
|
(t) => p.includes(t.value.toString())
|
|
29
29
|
);
|
|
@@ -40,9 +40,9 @@ const T = I(_)`
|
|
|
40
40
|
}
|
|
41
41
|
});
|
|
42
42
|
const A = n.length > 1, d = [...i, ...O], r = k(null), [S, j] = C(!1);
|
|
43
|
-
|
|
43
|
+
E(() => {
|
|
44
44
|
f && r.current && x ? (!r.current.isOpen && r.current?.open(), j(!0)) : j(!1);
|
|
45
|
-
}, [f, r.current, x]),
|
|
45
|
+
}, [f, r.current, x]), E(() => {
|
|
46
46
|
if (S && !s.search && d.length < 20) {
|
|
47
47
|
const e = r.current?.getOptions()?.querySelector("li");
|
|
48
48
|
e && (e.focus(), e.style.outline = "none");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnumWidget.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/EnumWidget.tsx"],"sourcesContent":["import { Dropdown, DropdownProps, DropdownRef } from '@ynput/ayon-react-components'\nimport clsx from 'clsx'\nimport { forwardRef, useEffect, useRef, useState } from 'react'\nimport styled from 'styled-components'\nimport type { WidgetBaseProps } from './CellWidget'\nimport { AttributeData, AttributeEnumItem } from '../types'\nimport { EnumCellValue, EnumTemplateProps } from './EnumCellValue'\n\nconst StyledDropdown = styled(Dropdown)`\n height: 100%;\n width: 100%;\n`\n\nexport interface EnumWidgetProps\n extends Omit<DropdownProps, 'onChange' | 'value'>,\n WidgetBaseProps {\n value: (string | number | boolean)[]\n options: AttributeEnumItem[]\n type?: AttributeData['type']\n autoOpen?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n pt?: {\n template?: Partial<EnumTemplateProps>\n }\n onOpen?: () => void\n onNext?: () => void\n}\n\nexport const EnumWidget = forwardRef<HTMLDivElement, EnumWidgetProps>(\n (\n {\n value,\n isEditing,\n options,\n type,\n autoOpen = true,\n isReadOnly,\n enableCustomValues,\n onOpen,\n onChange,\n onCancelEdit,\n onNext,\n pt,\n ...dropdownProps\n },\n _ref,\n ) => {\n // convert value to string array\n const valueAsStrings = value.map((v) => v?.toString()).filter((v) => !!v)\n let selectedOptions = options.filter((option) =>\n valueAsStrings.includes(option.value.toString()),\n )\n\n // Check if all values are present in options, if not, add a warning\n const invalidOptions: AttributeEnumItem[] = []\n valueAsStrings.forEach((val) => {\n if (!options.find((option) => option.value === val)) {\n const invalidOption = {\n label: val,\n value: val,\n color: enableCustomValues\n ? 'var(--md-sys-color-surface-container)'\n : 'var(--md-sys-color-error)',\n icon: enableCustomValues ? undefined : 'warning',\n }\n selectedOptions = [...selectedOptions, invalidOption]\n invalidOptions.push(invalidOption)\n }\n })\n const hasMultipleValues = selectedOptions.length > 1\n\n // Merge valid options with invalid options for the dropdown\n const allOptions = [...options, ...invalidOptions]\n\n const dropdownRef = useRef<DropdownRef>(null)\n\n const [dropdownOpen, setDropdownOpen] = useState(false)\n useEffect(() => {\n if (isEditing && dropdownRef.current && autoOpen) {\n !dropdownRef.current.isOpen && dropdownRef.current?.open()\n setDropdownOpen(true)\n } else {\n setDropdownOpen(false)\n }\n }, [isEditing, dropdownRef.current, autoOpen])\n\n // when the dropdown is open, focus the first item\n useEffect(() => {\n if (dropdownOpen && !dropdownProps.search && allOptions.length < 20) {\n const optionsUlEl = dropdownRef.current?.getOptions() as HTMLUListElement\n const firstItem = optionsUlEl?.querySelector('li')\n if (firstItem) {\n firstItem.focus()\n // set style of li to have no outline (no focus ring)\n firstItem.style.outline = 'none'\n }\n }\n }, [dropdownOpen, dropdownProps.search, allOptions.length])\n\n const isMultiSelect = !!type?.includes('list')\n\n const handleChange = (
|
|
1
|
+
{"version":3,"file":"EnumWidget.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/EnumWidget.tsx"],"sourcesContent":["import { Dropdown, DropdownProps, DropdownRef } from '@ynput/ayon-react-components'\nimport clsx from 'clsx'\nimport { forwardRef, useEffect, useRef, useState } from 'react'\nimport styled from 'styled-components'\nimport type { WidgetBaseProps } from './CellWidget'\nimport { AttributeData, AttributeEnumItem } from '../types'\nimport { EnumCellValue, EnumTemplateProps } from './EnumCellValue'\n\nconst StyledDropdown = styled(Dropdown)`\n height: 100%;\n width: 100%;\n`\n\nexport interface EnumWidgetProps\n extends Omit<DropdownProps, 'onChange' | 'value'>,\n WidgetBaseProps {\n value: (string | number | boolean)[]\n options: AttributeEnumItem[]\n type?: AttributeData['type']\n autoOpen?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n pt?: {\n template?: Partial<EnumTemplateProps>\n }\n onOpen?: () => void\n onNext?: () => void\n}\n\nexport const EnumWidget = forwardRef<HTMLDivElement, EnumWidgetProps>(\n (\n {\n value,\n isEditing,\n options,\n type,\n autoOpen = true,\n isReadOnly,\n enableCustomValues,\n onOpen,\n onChange,\n onCancelEdit,\n onNext,\n pt,\n ...dropdownProps\n },\n _ref,\n ) => {\n // convert value to string array\n const valueAsStrings = value.map((v) => v?.toString()).filter((v) => !!v)\n let selectedOptions = options.filter((option) =>\n valueAsStrings.includes(option.value.toString()),\n )\n\n // Check if all values are present in options, if not, add a warning\n const invalidOptions: AttributeEnumItem[] = []\n valueAsStrings.forEach((val) => {\n if (!options.find((option) => option.value === val)) {\n const invalidOption = {\n label: val,\n value: val,\n color: enableCustomValues\n ? 'var(--md-sys-color-surface-container)'\n : 'var(--md-sys-color-error)',\n icon: enableCustomValues ? undefined : 'warning',\n }\n selectedOptions = [...selectedOptions, invalidOption]\n invalidOptions.push(invalidOption)\n }\n })\n const hasMultipleValues = selectedOptions.length > 1\n\n // Merge valid options with invalid options for the dropdown\n const allOptions = [...options, ...invalidOptions]\n\n const dropdownRef = useRef<DropdownRef>(null)\n\n const [dropdownOpen, setDropdownOpen] = useState(false)\n useEffect(() => {\n if (isEditing && dropdownRef.current && autoOpen) {\n !dropdownRef.current.isOpen && dropdownRef.current?.open()\n setDropdownOpen(true)\n } else {\n setDropdownOpen(false)\n }\n }, [isEditing, dropdownRef.current, autoOpen])\n\n // when the dropdown is open, focus the first item\n useEffect(() => {\n if (dropdownOpen && !dropdownProps.search && allOptions.length < 20) {\n const optionsUlEl = dropdownRef.current?.getOptions() as HTMLUListElement\n const firstItem = optionsUlEl?.querySelector('li')\n if (firstItem) {\n firstItem.focus()\n // set style of li to have no outline (no focus ring)\n firstItem.style.outline = 'none'\n }\n }\n }, [dropdownOpen, dropdownProps.search, allOptions.length])\n\n const isMultiSelect = !!type?.includes('list')\n\n const handleChange = (newValue: string[]) => {\n let filteredValue: string | string[] = enableCustomValues\n ? newValue\n : newValue.filter((v) => options.find((o) => o.value === v))\n\n if (type?.includes('list')) {\n onChange(filteredValue, 'Click')\n } else {\n // check if the value is an array or a string and for arrays take the first value only\n filteredValue = Array.isArray(filteredValue) ? filteredValue[0] : filteredValue\n\n // take first value as the type is not list]\n onChange(filteredValue, 'Click')\n }\n }\n\n if (isEditing) {\n return (\n <StyledDropdown\n options={allOptions}\n value={valueAsStrings}\n ref={dropdownRef}\n valueTemplate={(_value, selected, isOpen) => (\n <EnumCellValue\n selectedOptions={selectedOptions}\n hasMultipleValues={selected.length > 1}\n isOpen={isOpen}\n isReadOnly={isReadOnly}\n isMultiSelect={isMultiSelect}\n {...pt?.template}\n placeholder={dropdownProps.placeholder}\n className={clsx('enum-dropdown-value', pt?.template?.className)}\n />\n )}\n itemTemplate={(option, _isActive, isSelected) => (\n <EnumCellValue\n selectedOptions={[option]}\n hasMultipleValues={false}\n isOpen={false}\n isItem\n isMultiSelect={isMultiSelect}\n isSelected={isSelected}\n {...pt?.template}\n className={clsx('enum-dropdown-item', pt?.template?.className)}\n />\n )}\n widthExpand\n multiSelect={isMultiSelect}\n disableOpen={isReadOnly}\n disabled={isReadOnly}\n sortBySelected\n searchOnNumber={10}\n {...dropdownProps}\n onChange={handleChange}\n onClose={onCancelEdit}\n editable={enableCustomValues}\n />\n )\n }\n\n return (\n <EnumCellValue\n selectedOptions={selectedOptions}\n hasMultipleValues={hasMultipleValues}\n isMultiSelect={isMultiSelect}\n isReadOnly={isReadOnly}\n {...pt?.template}\n placeholder={dropdownProps.placeholder}\n className={clsx('enum-value', pt?.template?.className, dropdownProps.className)}\n />\n )\n },\n)\n"],"names":["StyledDropdown","styled","Dropdown","EnumWidget","forwardRef","value","isEditing","options","type","autoOpen","isReadOnly","enableCustomValues","onOpen","onChange","onCancelEdit","onNext","pt","dropdownProps","_ref","valueAsStrings","v","selectedOptions","option","invalidOptions","val","invalidOption","hasMultipleValues","allOptions","dropdownRef","useRef","dropdownOpen","setDropdownOpen","useState","useEffect","firstItem","isMultiSelect","handleChange","newValue","filteredValue","o","jsx","_value","selected","isOpen","EnumCellValue","clsx","_isActive","isSelected"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("../../../../../_virtual/jsx-runtime.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("@ynput/ayon-react-components");require("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("react-toastify");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/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");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/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("react");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");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");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("./CollapsedWidget.cjs.js");require("./DateWidget.cjs.js");require("./EnumWidget.cjs.js");require("./TextWidget.cjs.js");require("./BooleanWidget.cjs.js");const x=require("./CellWidget.cjs.js");require("./EntityNameWidget.cjs.js");require("./GroupHeaderWidget.cjs.js");require("./ThumbnailWidget.cjs.js");const R=require("../../../components/LinksManager/CellEditingDialog.cjs.js"),C=require("../context/DetailsPanelEntityContext.cjs.js"),g=require("../context/SelectedRowsContext.cjs.js"),h=require("../../../components/LinksManager/LinksManager.styled.cjs.js"),j=require("../utils/restrictedEntity.cjs.js");require("./EmptyWidget.cjs.js");require("./ErrorWidget.cjs.js");require("../context/CellEditingContext.cjs.js");require("short-uuid");require("../context/SelectionCellsContext.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");require("../context/ProjectTableContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("./LoadMoreWidget.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");const m=require("../../../components/Chips/Chips.cjs.js"),L=require("../../../components/LinksManager/LinksManager.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../components/SortingSetting/SortingSetting.styled.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../components/Menu/Menu.styled.cjs.js");require("../../../components/Menu/MenuItem.cjs.js");const E=e=>[...e].sort((i,u)=>{const t=i.parents.join("/")+i.label,n=u.parents.join("/")+u.label;return t.localeCompare(n)}),b=(e,i,u)=>{const t=i.split("|"),[n,s,a]=t;return e==="in"?u===a:u===s},T=({value:e,isEditing:i,cellId:u,projectName:t,disabled:n,folderId:s,onChange:a,onCancelEdit:y})=>{let o,c;const d=[];try{const r=C.useDetailsPanelEntityContext();o=r.setSelectedEntity,r.selectedEntity&&d.push(r.selectedEntity.entityId)}catch{}try{c=g.useSelectedRowsContext().clearRowsSelection}catch{}const k=(r,l)=>{j.isEntityRestricted(l)||(c&&c(),o?o({entityId:r,entityType:l}):console.log("Entity clicked:",r,l))},p=e?.links?E(e.links):[];return q.jsxRuntimeExports.jsxs(q.jsxRuntimeExports.Fragment,{children:[q.jsxRuntimeExports.jsx(m.Chips,{values:p.map(r=>({label:r.isRestricted?"Restricted":r.label,tooltip:r.isRestricted?"Access Restricted - Insufficient Permissions to Entity":r.parents.join("/")+"/"+r.label,icon:r.isRestricted?"lock":void 0}))||[],pt:{chip:{className:x.EDIT_TRIGGER_CLASS}},disabled:n}),i&&e&&q.jsxRuntimeExports.jsx(R.CellEditingDialog,{isEditing:i,anchorId:u,onClose:y,children:n?q.jsxRuntimeExports.jsx(h.Container,{style:{color:"var(--md-sys-color-outline)"},children:`${e.link.label||""} ${e.direction} link is not of type ${e.entityType}`}):q.jsxRuntimeExports.jsx(L.LinksManager,{projectName:t,linkTypeLabel:e.link.label||"",links:p,direction:e.direction,entityId:e.entityId,entityType:e.entityType,targetEntityType:e.link.targetEntityType,linkType:e.link.linkType,selectedEntityIds:d,onEntityClick:k,folderId:s,onClose:y})})]})};exports.LinksWidget=T;exports.isLinkEditable=b;exports.sortEntityLinksByPath=E;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("../../../../../_virtual/jsx-runtime.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("react");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("@ynput/ayon-react-components");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("clsx");require("lodash");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("react-dom");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/Badge/Badge.cjs.js");const x=require("../../../components/Chips/Chips.cjs.js");require("react-toastify");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/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");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/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("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.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("../../../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");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("uuid");require("../../../util/pubsub.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("./CollapsedWidget.cjs.js");require("./DateWidget.cjs.js");require("./EnumWidget.cjs.js");require("./TextWidget.cjs.js");require("./BooleanWidget.cjs.js");const R=require("./CellWidget.cjs.js");require("./EntityNameWidget.cjs.js");require("./GroupHeaderWidget.cjs.js");require("./ThumbnailWidget.cjs.js");const C=require("../../../components/LinksManager/CellEditingDialog.cjs.js"),g=require("../context/DetailsPanelEntityContext.cjs.js"),h=require("../context/SelectedRowsContext.cjs.js"),j=require("../../../components/LinksManager/LinksManager.styled.cjs.js"),m=require("../utils/restrictedEntity.cjs.js");require("./EmptyWidget.cjs.js");require("./ErrorWidget.cjs.js");require("../context/CellEditingContext.cjs.js");require("short-uuid");require("../context/SelectionCellsContext.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");require("../context/ProjectTableContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("./LoadMoreWidget.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../SimpleTable/SimpleTable.styled.cjs.js");require("@tanstack/match-sorter-utils");require("../../SimpleTable/context/SimpleTableContext.cjs.js");require("../../SimpleTable/SimpleTableRowTemplate.cjs.js");require("../../Slicer/hooks/useTableDataBySlice.cjs.js");require("../../Slicer/components/SlicerSearch.cjs.js");require("../../Slicer/context/SlicerContext.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");const L=require("../../../components/LinksManager/LinksManager.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/SortingSetting/SortingSetting.styled.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/Menu/Menu.styled.cjs.js");require("../../../components/Menu/MenuItem.cjs.js");const E=e=>[...e].sort((i,u)=>{const t=i.parents.join("/")+i.label,n=u.parents.join("/")+u.label;return t.localeCompare(n)}),b=(e,i,u)=>{const t=i.split("|"),[n,s,a]=t;return e==="in"?u===a:u===s},T=({value:e,isEditing:i,cellId:u,projectName:t,disabled:n,folderId:s,onChange:a,onCancelEdit:y})=>{let o,c;const d=[];try{const r=g.useDetailsPanelEntityContext();o=r.setSelectedEntity,r.selectedEntity&&d.push(r.selectedEntity.entityId)}catch{}try{c=h.useSelectedRowsContext().clearRowsSelection}catch{}const k=(r,l)=>{m.isEntityRestricted(l)||(c&&c(),o?o({entityId:r,entityType:l}):console.log("Entity clicked:",r,l))},p=e?.links?E(e.links):[];return q.jsxRuntimeExports.jsxs(q.jsxRuntimeExports.Fragment,{children:[q.jsxRuntimeExports.jsx(x.Chips,{values:p.map(r=>({label:r.isRestricted?"Restricted":r.label,tooltip:r.isRestricted?"Access Restricted - Insufficient Permissions to Entity":r.parents.join("/")+"/"+r.label,icon:r.isRestricted?"lock":void 0}))||[],pt:{chip:{className:R.EDIT_TRIGGER_CLASS}},disabled:n}),i&&e&&q.jsxRuntimeExports.jsx(C.CellEditingDialog,{isEditing:i,anchorId:u,onClose:y,children:n?q.jsxRuntimeExports.jsx(j.Container,{style:{color:"var(--md-sys-color-outline)"},children:`${e.link.label||""} ${e.direction} link is not of type ${e.entityType}`}):q.jsxRuntimeExports.jsx(L.LinksManager,{projectName:t,linkTypeLabel:e.link.label||"",links:p,direction:e.direction,entityId:e.entityId,entityType:e.entityType,targetEntityType:e.link.targetEntityType,linkType:e.link.linkType,selectedEntityIds:d,onEntityClick:k,folderId:s,onClose:y})})]})};exports.LinksWidget=T;exports.isLinkEditable=b;exports.sortEntityLinksByPath=E;
|
|
2
2
|
//# sourceMappingURL=LinksWidget.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinksWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/LinksWidget.tsx"],"sourcesContent":["import { Chips, ChipValue, LinkEntity, LinksManager } from '@shared/components'\nimport { CellEditingDialog } from '@shared/components/LinksManager/CellEditingDialog'\nimport { FC } from 'react'\nimport { EDIT_TRIGGER_CLASS, WidgetBaseProps } from './CellWidget'\nimport { createPortal } from 'react-dom'\nimport { useDetailsPanelEntityContext } from '../context/DetailsPanelEntityContext'\nimport { useSelectedRowsContext } from '../context/SelectedRowsContext'\nimport { Container } from '@shared/components/LinksManager/LinksManager.styled'\nimport { isEntityRestricted } from '../utils/restrictedEntity'\nimport { Icon } from '@ynput/ayon-react-components'\n\nexport const sortEntityLinksByPath = (links: LinkEntity[]) => {\n return [...links].sort((a, b) => {\n const aPath = a.parents.join('/') + a.label\n const bPath = b.parents.join('/') + b.label\n\n return aPath.localeCompare(bPath)\n })\n}\n\nexport const isLinkEditable = (\n direction: 'in' | 'out',\n linkType: string,\n entityType: string,\n): boolean => {\n const linkTypeParts = linkType.split('|')\n const [_name, outType, inType] = linkTypeParts\n if (direction === 'in') {\n return entityType === inType\n } else {\n return entityType === outType\n }\n}\n\nexport type LinkWidgetData = {\n direction: 'in' | 'out'\n entityId: string\n entityType: string\n link: {\n linkType: string\n label: string\n targetEntityType: string\n }\n links: LinkEntity[]\n}\n\nexport interface LinksWidgetProps extends WidgetBaseProps {\n value?: LinkWidgetData\n projectName: string\n cellId: string\n disabled?: boolean\n folderId?: string | null // the folder selected or the parent folder of the selected (used in EntityPickerDialog)\n}\n\nexport const LinksWidget: FC<LinksWidgetProps> = ({\n value,\n isEditing,\n cellId,\n projectName,\n disabled,\n folderId,\n onChange: _onChange, // not used in this widget\n onCancelEdit,\n}) => {\n // Try to get the contexts, but they might not exist in all environments\n let setSelectedEntity:\n | ((entity: { entityId: string; entityType: 'folder' | 'task' }) => void)\n | undefined\n let clearRowsSelection: (() => void) | undefined\n\n const selectedEntityIds: string[] = []\n try {\n const entityContext = useDetailsPanelEntityContext()\n setSelectedEntity = entityContext.setSelectedEntity\n if (entityContext.selectedEntity) {\n selectedEntityIds.push(entityContext.selectedEntity.entityId)\n }\n } catch {\n // Context not available\n }\n\n try {\n const rowsContext = useSelectedRowsContext()\n clearRowsSelection = rowsContext.clearRowsSelection\n } catch {\n // Context not available\n }\n\n const handleEntityClick = (entityId: string, entityType: string) => {\n // Check if entity is restricted - prevent opening details panel\n const isRestricted = isEntityRestricted(entityType)\n if (isRestricted) {\n return\n }\n\n // Clear any row selection first if context is available\n if (clearRowsSelection) {\n clearRowsSelection()\n }\n // Set the selected entity if context is available\n if (setSelectedEntity) {\n setSelectedEntity({\n entityId,\n entityType: entityType as 'folder' | 'task',\n })\n } else {\n // Fallback to console.log if contexts are not available\n console.log('Entity clicked:', entityId, entityType)\n }\n }\n\n const sortedLinks = value?.links ? sortEntityLinksByPath(value.links) : []\n\n return (\n <>\n <Chips\n values={\n sortedLinks.map((v) => ({\n label: v.isRestricted ? 'Restricted' : v.label,\n tooltip: v.isRestricted\n ? \"Access Restricted - Insufficient Permissions to Entity\"\n : v.parents.join('/') + '/' + v.label,\n icon: v.isRestricted ? \"lock\": undefined,\n })) || []\n }\n pt={{ chip: { className: EDIT_TRIGGER_CLASS } }}\n disabled={disabled}\n />\n {isEditing && value && (\n <CellEditingDialog isEditing={isEditing} anchorId={cellId} onClose={onCancelEdit}>\n {disabled ? (\n <Container style={{ color: 'var(--md-sys-color-outline)' }}>\n {`${value.link.label || ''} ${value.direction} link is not of type ${\n value.entityType\n }`}\n </Container>\n ) : (\n <LinksManager\n projectName={projectName}\n linkTypeLabel={value.link.label || ''}\n links={sortedLinks}\n direction={value.direction}\n entityId={value.entityId}\n entityType={value.entityType}\n targetEntityType={value.link.targetEntityType}\n linkType={value.link.linkType}\n selectedEntityIds={selectedEntityIds}\n onEntityClick={handleEntityClick}\n folderId={folderId}\n onClose={onCancelEdit}\n />\n )}\n </CellEditingDialog>\n )}\n </>\n )\n}\n"],"names":["sortEntityLinksByPath","links","a","b","aPath","bPath","isLinkEditable","direction","linkType","entityType","linkTypeParts","_name","outType","inType","LinksWidget","value","isEditing","cellId","projectName","disabled","folderId","_onChange","onCancelEdit","setSelectedEntity","clearRowsSelection","selectedEntityIds","entityContext","useDetailsPanelEntityContext","useSelectedRowsContext","handleEntityClick","entityId","isEntityRestricted","sortedLinks","jsxs","Fragment","jsx","Chips","v","EDIT_TRIGGER_CLASS","CellEditingDialog","Container","LinksManager"],"mappings":"
|
|
1
|
+
{"version":3,"file":"LinksWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/LinksWidget.tsx"],"sourcesContent":["import { Chips, ChipValue, LinkEntity, LinksManager } from '@shared/components'\nimport { CellEditingDialog } from '@shared/components/LinksManager/CellEditingDialog'\nimport { FC } from 'react'\nimport { EDIT_TRIGGER_CLASS, WidgetBaseProps } from './CellWidget'\nimport { createPortal } from 'react-dom'\nimport { useDetailsPanelEntityContext } from '../context/DetailsPanelEntityContext'\nimport { useSelectedRowsContext } from '../context/SelectedRowsContext'\nimport { Container } from '@shared/components/LinksManager/LinksManager.styled'\nimport { isEntityRestricted } from '../utils/restrictedEntity'\nimport { Icon } from '@ynput/ayon-react-components'\n\nexport const sortEntityLinksByPath = (links: LinkEntity[]) => {\n return [...links].sort((a, b) => {\n const aPath = a.parents.join('/') + a.label\n const bPath = b.parents.join('/') + b.label\n\n return aPath.localeCompare(bPath)\n })\n}\n\nexport const isLinkEditable = (\n direction: 'in' | 'out',\n linkType: string,\n entityType: string,\n): boolean => {\n const linkTypeParts = linkType.split('|')\n const [_name, outType, inType] = linkTypeParts\n if (direction === 'in') {\n return entityType === inType\n } else {\n return entityType === outType\n }\n}\n\nexport type LinkWidgetData = {\n direction: 'in' | 'out'\n entityId: string\n entityType: string\n link: {\n linkType: string\n label: string\n targetEntityType: string\n }\n links: LinkEntity[]\n}\n\nexport interface LinksWidgetProps extends WidgetBaseProps {\n value?: LinkWidgetData\n projectName: string\n cellId: string\n disabled?: boolean\n folderId?: string | null // the folder selected or the parent folder of the selected (used in EntityPickerDialog)\n}\n\nexport const LinksWidget: FC<LinksWidgetProps> = ({\n value,\n isEditing,\n cellId,\n projectName,\n disabled,\n folderId,\n onChange: _onChange, // not used in this widget\n onCancelEdit,\n}) => {\n // Try to get the contexts, but they might not exist in all environments\n let setSelectedEntity:\n | ((entity: { entityId: string; entityType: 'folder' | 'task' }) => void)\n | undefined\n let clearRowsSelection: (() => void) | undefined\n\n const selectedEntityIds: string[] = []\n try {\n const entityContext = useDetailsPanelEntityContext()\n setSelectedEntity = entityContext.setSelectedEntity\n if (entityContext.selectedEntity) {\n selectedEntityIds.push(entityContext.selectedEntity.entityId)\n }\n } catch {\n // Context not available\n }\n\n try {\n const rowsContext = useSelectedRowsContext()\n clearRowsSelection = rowsContext.clearRowsSelection\n } catch {\n // Context not available\n }\n\n const handleEntityClick = (entityId: string, entityType: string) => {\n // Check if entity is restricted - prevent opening details panel\n const isRestricted = isEntityRestricted(entityType)\n if (isRestricted) {\n return\n }\n\n // Clear any row selection first if context is available\n if (clearRowsSelection) {\n clearRowsSelection()\n }\n // Set the selected entity if context is available\n if (setSelectedEntity) {\n setSelectedEntity({\n entityId,\n entityType: entityType as 'folder' | 'task',\n })\n } else {\n // Fallback to console.log if contexts are not available\n console.log('Entity clicked:', entityId, entityType)\n }\n }\n\n const sortedLinks = value?.links ? sortEntityLinksByPath(value.links) : []\n\n return (\n <>\n <Chips\n values={\n sortedLinks.map((v) => ({\n label: v.isRestricted ? 'Restricted' : v.label,\n tooltip: v.isRestricted\n ? \"Access Restricted - Insufficient Permissions to Entity\"\n : v.parents.join('/') + '/' + v.label,\n icon: v.isRestricted ? \"lock\": undefined,\n })) || []\n }\n pt={{ chip: { className: EDIT_TRIGGER_CLASS } }}\n disabled={disabled}\n />\n {isEditing && value && (\n <CellEditingDialog isEditing={isEditing} anchorId={cellId} onClose={onCancelEdit}>\n {disabled ? (\n <Container style={{ color: 'var(--md-sys-color-outline)' }}>\n {`${value.link.label || ''} ${value.direction} link is not of type ${\n value.entityType\n }`}\n </Container>\n ) : (\n <LinksManager\n projectName={projectName}\n linkTypeLabel={value.link.label || ''}\n links={sortedLinks}\n direction={value.direction}\n entityId={value.entityId}\n entityType={value.entityType}\n targetEntityType={value.link.targetEntityType}\n linkType={value.link.linkType}\n selectedEntityIds={selectedEntityIds}\n onEntityClick={handleEntityClick}\n folderId={folderId}\n onClose={onCancelEdit}\n />\n )}\n </CellEditingDialog>\n )}\n </>\n )\n}\n"],"names":["sortEntityLinksByPath","links","a","b","aPath","bPath","isLinkEditable","direction","linkType","entityType","linkTypeParts","_name","outType","inType","LinksWidget","value","isEditing","cellId","projectName","disabled","folderId","_onChange","onCancelEdit","setSelectedEntity","clearRowsSelection","selectedEntityIds","entityContext","useDetailsPanelEntityContext","useSelectedRowsContext","handleEntityClick","entityId","isEntityRestricted","sortedLinks","jsxs","Fragment","jsx","Chips","v","EDIT_TRIGGER_CLASS","CellEditingDialog","Container","LinksManager"],"mappings":"8tcAWO,MAAMA,EAAyBC,GAC7B,CAAC,GAAGA,CAAK,EAAE,KAAK,CAACC,EAAGC,IAAM,CAC/B,MAAMC,EAAQF,EAAE,QAAQ,KAAK,GAAG,EAAIA,EAAE,MAChCG,EAAQF,EAAE,QAAQ,KAAK,GAAG,EAAIA,EAAE,MAEtC,OAAOC,EAAM,cAAcC,CAAK,CAClC,CAAC,EAGUC,EAAiB,CAC5BC,EACAC,EACAC,IACY,CACZ,MAAMC,EAAgBF,EAAS,MAAM,GAAG,EAClC,CAACG,EAAOC,EAASC,CAAM,EAAIH,EACjC,OAAIH,IAAc,KACTE,IAAeI,EAEfJ,IAAeG,CAE1B,EAsBaE,EAAoC,CAAC,CAChD,MAAAC,EACA,UAAAC,EACA,OAAAC,EACA,YAAAC,EACA,SAAAC,EACA,SAAAC,EACA,SAAUC,EACV,aAAAC,CACF,IAAM,CAEJ,IAAIC,EAGAC,EAEJ,MAAMC,EAA8B,CAAA,EACpC,GAAI,CACF,MAAMC,EAAgBC,EAAAA,6BAAA,EACtBJ,EAAoBG,EAAc,kBAC9BA,EAAc,gBAChBD,EAAkB,KAAKC,EAAc,eAAe,QAAQ,CAEhE,MAAQ,CAER,CAEA,GAAI,CAEFF,EADoBI,EAAAA,uBAAA,EACa,kBACnC,MAAQ,CAER,CAEA,MAAMC,EAAoB,CAACC,EAAkBrB,IAAuB,CAE7CsB,EAAAA,mBAAmBtB,CAAU,IAM9Ce,GACFA,EAAA,EAGED,EACFA,EAAkB,CAChB,SAAAO,EACA,WAAArB,CAAA,CACD,EAGD,QAAQ,IAAI,kBAAmBqB,EAAUrB,CAAU,EAEvD,EAEMuB,EAAcjB,GAAO,MAAQf,EAAsBe,EAAM,KAAK,EAAI,CAAA,EAExE,OACEkB,EAAAA,kBAAAA,KAAAC,6BAAA,CACE,SAAA,CAAAC,EAAAA,kBAAAA,IAACC,EAAAA,MAAA,CACC,OACEJ,EAAY,IAAKK,IAAO,CACtB,MAAOA,EAAE,aAAe,aAAeA,EAAE,MACzC,QAASA,EAAE,aACP,yDACAA,EAAE,QAAQ,KAAK,GAAG,EAAI,IAAMA,EAAE,MAClC,KAAMA,EAAE,aAAe,OAAQ,MAAA,EAC/B,GAAK,CAAA,EAET,GAAI,CAAE,KAAM,CAAE,UAAWC,EAAAA,mBAAmB,EAC5C,SAAAnB,CAAA,CAAA,EAEDH,GAAaD,GACZoB,EAAAA,kBAAAA,IAACI,EAAAA,kBAAA,CAAkB,UAAAvB,EAAsB,SAAUC,EAAQ,QAASK,EACjE,SAAAH,EACCgB,EAAAA,kBAAAA,IAACK,EAAAA,UAAA,CAAU,MAAO,CAAE,MAAO,6BAAA,EACxB,SAAA,GAAGzB,EAAM,KAAK,OAAS,EAAE,IAAIA,EAAM,SAAS,wBAC3CA,EAAM,UACR,GACF,EAEAoB,EAAAA,kBAAAA,IAACM,EAAAA,aAAA,CACC,YAAAvB,EACA,cAAeH,EAAM,KAAK,OAAS,GACnC,MAAOiB,EACP,UAAWjB,EAAM,UACjB,SAAUA,EAAM,SAChB,WAAYA,EAAM,WAClB,iBAAkBA,EAAM,KAAK,iBAC7B,SAAUA,EAAM,KAAK,SACrB,kBAAAU,EACA,cAAeI,EACf,SAAAT,EACA,QAASE,CAAA,CAAA,CACX,CAEJ,CAAA,EAEJ,CAEJ"}
|