@ynput/ayon-frontend-shared 0.3.36 → 0.3.37
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 +24 -23
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +222 -215
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/_virtual/index.cjs12.js +1 -1
- package/dist/_virtual/index.cjs13.js +1 -1
- package/dist/_virtual/index.cjs15.js +1 -1
- package/dist/_virtual/index.cjs18.js +1 -1
- package/dist/_virtual/index.cjs19.js +1 -1
- package/dist/_virtual/index.cjs4.js +1 -1
- package/dist/_virtual/index.cjs8.js +1 -1
- package/dist/_virtual/index.cjs9.js +1 -1
- package/dist/_virtual/index.es12.js +2 -5
- package/dist/_virtual/index.es12.js.map +1 -1
- package/dist/_virtual/index.es13.js +2 -5
- package/dist/_virtual/index.es13.js.map +1 -1
- package/dist/_virtual/index.es14.js +2 -2
- package/dist/_virtual/index.es15.js +2 -2
- package/dist/_virtual/index.es16.js +2 -2
- package/dist/_virtual/index.es17.js +2 -2
- package/dist/_virtual/index.es18.js +2 -2
- package/dist/_virtual/index.es19.js +2 -2
- package/dist/_virtual/index.es4.js +5 -2
- package/dist/_virtual/index.es4.js.map +1 -1
- package/dist/_virtual/index.es7.js +2 -2
- package/dist/_virtual/index.es8.js +2 -2
- package/dist/_virtual/index.es9.js +5 -2
- package/dist/_virtual/index.es9.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +77 -73
- package/dist/components.es.js.map +1 -1
- package/dist/context.cjs.js +1 -1
- package/dist/context.es.js +50 -49
- package/dist/hooks.cjs.js +1 -1
- package/dist/hooks.es.js +33 -29
- package/dist/hooks.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +13 -10
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js.map +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
- package/dist/node_modules/remove-accents/index.cjs.js +1 -1
- package/dist/node_modules/remove-accents/index.cjs.js.map +1 -1
- package/dist/node_modules/remove-accents/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js.map +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js.map +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js.map +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/utils.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/utils.es.js +1 -1
- package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
- package/dist/shared/node_modules/prop-types/index.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +108 -23
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +138 -53
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.es.js +42 -42
- package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/patchTableLatestComments.cjs.js +2 -0
- package/dist/shared/src/api/queries/activities/patchTableLatestComments.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/activities/patchTableLatestComments.es.js +68 -0
- package/dist/shared/src/api/queries/activities/patchTableLatestComments.es.js.map +1 -0
- package/dist/shared/src/api/queries/activities/updateActivities.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/updateActivities.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/updateActivities.es.js +69 -62
- package/dist/shared/src/api/queries/activities/updateActivities.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +64 -56
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js +1 -1
- package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/columnStats.es.js +57 -53
- package/dist/shared/src/api/queries/columnStats/columnStats.es.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js +1 -1
- package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/metricTargets.es.js +27 -25
- package/dist/shared/src/api/queries/columnStats/metricTargets.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +1 -1
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js +1 -1
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js +4 -4
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.es.js +212 -187
- package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +6 -3
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +6 -3
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +6 -3
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +6 -3
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +102 -99
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +95 -87
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +6 -3
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +6 -3
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.es.js +6 -3
- 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 +6 -3
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +7 -4
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +6 -3
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js +6 -3
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.cjs.js +6 -0
- package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.cjs.js.map +1 -0
- package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.es.js +58 -0
- package/dist/shared/src/components/SearchFilter/CustomDateRangeDialog.es.js.map +1 -0
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +1 -4
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js +2 -0
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js.map +1 -0
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.es.js +106 -0
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.es.js.map +1 -0
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +8 -5
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +6 -3
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +6 -3
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +10 -7
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +6 -3
- 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 +6 -3
- 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 +4 -3
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +6 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +6 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +6 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +6 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +6 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js +10 -0
- package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.cjs.js.map +1 -0
- package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js +135 -0
- package/dist/shared/src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.es.js.map +1 -0
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +20 -17
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +41 -44
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -2
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +19 -25
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.cjs.js +2 -0
- package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.cjs.js.map +1 -0
- package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.es.js +91 -0
- package/dist/shared/src/containers/DetailsPanel/helpers/subtasksFilterAdapter.es.js.map +1 -0
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +6 -3
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +6 -3
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +6 -3
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +6 -3
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.es.js +156 -164
- package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.styled.cjs.js +25 -3
- package/dist/shared/src/containers/Feed/Feed.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.styled.es.js +30 -8
- package/dist/shared/src/containers/Feed/Feed.styled.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +6 -3
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +6 -3
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +6 -3
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js +3 -3
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +8 -5
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +5 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +10 -7
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js +5 -5
- package/dist/shared/src/containers/Feed/components/CommentInput/modules/index.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +17 -0
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +279 -0
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +5 -2
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js +62 -50
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js +141 -0
- package/dist/shared/src/containers/Feed/helpers/buildBackendFilter.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.es.js +81 -0
- package/dist/shared/src/containers/Feed/helpers/feedFilterAdapter.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +20 -18
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.es.js +106 -103
- package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js +7 -4
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +6 -3
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +127 -123
- 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 +158 -130
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +36 -33
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +228 -222
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +103 -100
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.cjs.js +3 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.es.js +22 -0
- package/dist/shared/src/containers/ProjectTreeTable/context/clipboard/clipboardComments.es.js.map +1 -0
- 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 +113 -109
- 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 +125 -121
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +6 -3
- 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 +36 -33
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +107 -103
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +36 -33
- 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 +36 -33
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +6 -3
- 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 +105 -102
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +37 -34
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.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 +48 -45
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js +61 -61
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +15 -6
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +108 -101
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +82 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +416 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +8 -5
- 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 +37 -34
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +6 -3
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +6 -3
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +6 -3
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +6 -3
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +6 -3
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.es.js +92 -94
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.es.js +8 -5
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
- package/dist/shared/src/hooks/useGetProductionAddon.cjs.js +2 -0
- package/dist/shared/src/hooks/useGetProductionAddon.cjs.js.map +1 -0
- package/dist/shared/src/hooks/useGetProductionAddon.es.js +124 -0
- package/dist/shared/src/hooks/useGetProductionAddon.es.js.map +1 -0
- package/dist/shared/src/hooks/useLocalStorage.cjs.js +1 -1
- package/dist/shared/src/hooks/useLocalStorage.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useLocalStorage.es.js +43 -27
- package/dist/shared/src/hooks/useLocalStorage.es.js.map +1 -1
- package/dist/types/api/generated/graphql.d.ts +122 -0
- package/dist/types/api/generated/graphqlLinks.d.ts +10 -0
- package/dist/types/api/queries/activities/getActivities.d.ts +83 -0
- package/dist/types/api/queries/activities/patchTableLatestComments.d.ts +1 -0
- package/dist/types/api/queries/activities/updateActivities.d.ts +16 -0
- package/dist/types/api/queries/activities/util/activitiesHelpers.d.ts +1 -0
- package/dist/types/api/queries/entities/getEntity.d.ts +7 -0
- package/dist/types/api/queries/entities/getEntityPanel.d.ts +7 -0
- package/dist/types/api/queries/entities/updateEntity.d.ts +7 -0
- package/dist/types/api/queries/entityLists/getLists.d.ts +84 -0
- package/dist/types/api/queries/entityLists/types.d.ts +2 -1
- package/dist/types/api/queries/overview/getOverview.d.ts +58 -0
- package/dist/types/api/queries/project/getProject.d.ts +7 -0
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +7 -0
- package/dist/types/api/queries/users/getUsers.d.ts +7 -0
- package/dist/types/api/queries/versions/getVersionsProducts.d.ts +30 -0
- package/dist/types/components/SearchFilter/CustomDateRangeDialog.d.ts +13 -0
- package/dist/types/components/SearchFilter/index.d.ts +2 -0
- package/dist/types/components/SearchFilter/useDateRangeFilter.d.ts +36 -0
- package/dist/types/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.d.ts +13 -0
- package/dist/types/containers/DetailsPanel/helpers/subtasksFilterAdapter.d.ts +5 -0
- package/dist/types/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.d.ts +1 -0
- package/dist/types/containers/Feed/components/ActivityReference/ActivityReference.styled.d.ts +2 -2
- package/dist/types/containers/Feed/components/FeedSearchFilter.d.ts +15 -0
- package/dist/types/containers/Feed/context/FeedContext.d.ts +5 -1
- package/dist/types/containers/Feed/helpers/buildBackendFilter.d.ts +3 -0
- package/dist/types/containers/Feed/helpers/feedFilterAdapter.d.ts +5 -0
- package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +5 -1
- package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/context/clipboard/clipboardComments.d.ts +6 -0
- package/dist/types/containers/ProjectTreeTable/context/clipboard/index.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/types/table.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.d.ts +9 -0
- package/dist/types/containers/ProjectTreeTable/utils/queryFilterToClientFilter.d.ts +5 -0
- package/dist/types/containers/ProjectTreeTable/widgets/CellWidget.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/widgets/CommentsWidget.d.ts +7 -0
- package/dist/types/context/DetailsPanelContext.d.ts +1 -0
- package/dist/types/hooks/index.d.ts +1 -0
- package/dist/types/hooks/useGetProductionAddon.d.ts +10 -0
- package/dist/types/hooks/useLocalStorage.d.ts +2 -0
- package/package.json +3 -2
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { j as i } from "../../../../../../_virtual/jsx-runtime.es.js";
|
|
2
|
+
import { useMemo as r, useState as k, useRef as R, useEffect as y } from "react";
|
|
3
|
+
import { SearchFilter as _ } from "@ynput/ayon-react-components";
|
|
4
|
+
import v from "styled-components";
|
|
5
|
+
import { subtasksFilterToClientFilters as x, clientFiltersToSubtasksFilter as j } from "../../helpers/subtasksFilterAdapter.es.js";
|
|
6
|
+
import { useDateRangeFilter as w } from "../../../../components/SearchFilter/useDateRangeFilter.es.js";
|
|
7
|
+
import { CustomDateRangeDialog as A } from "../../../../components/SearchFilter/CustomDateRangeDialog.es.js";
|
|
8
|
+
const E = v.div`
|
|
9
|
+
padding: 4px 8px;
|
|
10
|
+
padding-bottom: 0;
|
|
11
|
+
|
|
12
|
+
&.loading {
|
|
13
|
+
opacity: 0.5;
|
|
14
|
+
pointer-events: none;
|
|
15
|
+
}
|
|
16
|
+
`, M = ({
|
|
17
|
+
subtasksFilter: c,
|
|
18
|
+
setSubtasksFilter: f,
|
|
19
|
+
users: u,
|
|
20
|
+
isLoading: b,
|
|
21
|
+
totalCount: d = 0,
|
|
22
|
+
doneCount: C = 0,
|
|
23
|
+
onSearchTextChange: p
|
|
24
|
+
}) => {
|
|
25
|
+
const a = r(
|
|
26
|
+
() => [
|
|
27
|
+
{
|
|
28
|
+
id: "isDone",
|
|
29
|
+
label: "Status",
|
|
30
|
+
icon: "check_circle",
|
|
31
|
+
type: "boolean",
|
|
32
|
+
singleSelect: !0,
|
|
33
|
+
values: [
|
|
34
|
+
{ id: "false", label: "Not Done", icon: "radio_button_unchecked" },
|
|
35
|
+
{ id: "true", label: "Done", icon: "check_circle" }
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
id: "assignees",
|
|
40
|
+
label: "Assignees",
|
|
41
|
+
icon: "person",
|
|
42
|
+
type: "list_of_strings",
|
|
43
|
+
operator: "OR",
|
|
44
|
+
allowHasValue: !0,
|
|
45
|
+
allowNoValue: !0,
|
|
46
|
+
values: u.map((e) => ({
|
|
47
|
+
id: e.name,
|
|
48
|
+
label: e.attrib?.fullName || e.name,
|
|
49
|
+
img: `/api/users/${e.name}/avatar`
|
|
50
|
+
}))
|
|
51
|
+
}
|
|
52
|
+
// dates disabled until planner update with support is released
|
|
53
|
+
// {
|
|
54
|
+
// id: 'startDate',
|
|
55
|
+
// label: 'Start Date',
|
|
56
|
+
// icon: 'calendar_today',
|
|
57
|
+
// type: 'datetime',
|
|
58
|
+
// values: generateDateOptions(),
|
|
59
|
+
// },
|
|
60
|
+
// {
|
|
61
|
+
// id: 'endDate',
|
|
62
|
+
// label: 'End Date',
|
|
63
|
+
// icon: 'event',
|
|
64
|
+
// type: 'datetime',
|
|
65
|
+
// values: generateDateOptions(),
|
|
66
|
+
// },
|
|
67
|
+
],
|
|
68
|
+
[u]
|
|
69
|
+
), n = r(() => x(c, a), [c, a]), [o, m] = k(n), h = R(null), t = w();
|
|
70
|
+
y(() => {
|
|
71
|
+
m(n);
|
|
72
|
+
}, [JSON.stringify(n)]);
|
|
73
|
+
const g = (e) => {
|
|
74
|
+
const l = j(e);
|
|
75
|
+
f(l), p?.("");
|
|
76
|
+
}, F = (e) => {
|
|
77
|
+
t.wrapFilterChange(e, o, m);
|
|
78
|
+
}, S = (e, l) => {
|
|
79
|
+
l || p?.(e);
|
|
80
|
+
};
|
|
81
|
+
let s = "";
|
|
82
|
+
d > 0 && (s = `${C}/${d}`);
|
|
83
|
+
const D = r(
|
|
84
|
+
() => [{ id: "isDone", label: s, tooltip: "Status" }],
|
|
85
|
+
[s]
|
|
86
|
+
);
|
|
87
|
+
return /* @__PURE__ */ i.jsxs(E, { className: b ? "loading" : void 0, children: [
|
|
88
|
+
/* @__PURE__ */ i.jsx(
|
|
89
|
+
_,
|
|
90
|
+
{
|
|
91
|
+
ref: h,
|
|
92
|
+
compact: !0,
|
|
93
|
+
options: a,
|
|
94
|
+
filters: o,
|
|
95
|
+
onChange: F,
|
|
96
|
+
onFinish: g,
|
|
97
|
+
enableGlobalSearch: !0,
|
|
98
|
+
enableMultipleSameFilters: !1,
|
|
99
|
+
enableAutosuggestion: !0,
|
|
100
|
+
onSearchChange: S,
|
|
101
|
+
quickActions: D,
|
|
102
|
+
placeholder: "Search and filter subtasks...",
|
|
103
|
+
pt: {
|
|
104
|
+
searchBar: {
|
|
105
|
+
onClickCapture: (e) => t.handleSearchBarClickCapture(e, o)
|
|
106
|
+
},
|
|
107
|
+
dropdown: {
|
|
108
|
+
pt: {
|
|
109
|
+
item: {
|
|
110
|
+
onClick: (e) => t.handleDropdownItemClick(e, o, a)
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
),
|
|
117
|
+
/* @__PURE__ */ i.jsx(
|
|
118
|
+
A,
|
|
119
|
+
{
|
|
120
|
+
isOpen: !!t.customRangeFilterId,
|
|
121
|
+
header: a.find((e) => e.id === t.customRangeFilterId?.split("__")[0])?.label ?? "Custom range",
|
|
122
|
+
startDate: t.customStartDate,
|
|
123
|
+
endDate: t.customEndDate,
|
|
124
|
+
onStartDateChange: t.setCustomStartDate,
|
|
125
|
+
onEndDateChange: t.setCustomEndDate,
|
|
126
|
+
onApply: () => t.handleCustomRangeApply(o, a, g, h),
|
|
127
|
+
onClose: t.handleCustomRangeClose
|
|
128
|
+
}
|
|
129
|
+
)
|
|
130
|
+
] });
|
|
131
|
+
};
|
|
132
|
+
export {
|
|
133
|
+
M as default
|
|
134
|
+
};
|
|
135
|
+
//# sourceMappingURL=SubtasksSearchFilter.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SubtasksSearchFilter.es.js","sources":["../../../../../../../src/containers/DetailsPanel/components/SubtasksSearchFilter/SubtasksSearchFilter.tsx"],"sourcesContent":["import { FC, useEffect, useMemo, useRef, useState } from 'react'\nimport {\n SearchFilter,\n Filter,\n Option,\n SearchFilterQuickAction,\n SearchFilterRef,\n} from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\nimport { type QueryFilter, UserModel } from '@shared/api'\nimport {\n subtasksFilterToClientFilters,\n clientFiltersToSubtasksFilter,\n} from '../../helpers/subtasksFilterAdapter'\nimport { generateDateOptions } from '@shared/components/SearchFilter/filterDates'\nimport { useDateRangeFilter } from '@shared/components/SearchFilter/useDateRangeFilter'\nimport { CustomDateRangeDialog } from '@shared/components/SearchFilter/CustomDateRangeDialog'\n\nconst Wrapper = styled.div`\n padding: 4px 8px;\n padding-bottom: 0;\n\n &.loading {\n opacity: 0.5;\n pointer-events: none;\n }\n`\n\ninterface SubtasksSearchFilterProps {\n subtasksFilter: QueryFilter\n setSubtasksFilter: (filter: QueryFilter) => void\n users: UserModel[]\n isLoading?: boolean\n totalCount?: number\n doneCount?: number\n onSearchTextChange?: (text: string) => void\n}\n\nconst SubtasksSearchFilter: FC<SubtasksSearchFilterProps> = ({\n subtasksFilter,\n setSubtasksFilter,\n users,\n isLoading,\n totalCount = 0,\n doneCount = 0,\n onSearchTextChange,\n}) => {\n const options: Option[] = useMemo(\n () => [\n {\n id: 'isDone',\n label: 'Status',\n icon: 'check_circle',\n type: 'boolean',\n singleSelect: true,\n values: [\n { id: 'false', label: 'Not Done', icon: 'radio_button_unchecked' },\n { id: 'true', label: 'Done', icon: 'check_circle' },\n ],\n },\n {\n id: 'assignees',\n label: 'Assignees',\n icon: 'person',\n type: 'list_of_strings' as const,\n operator: 'OR' as const,\n allowHasValue: true,\n allowNoValue: true,\n values: users.map((u) => ({\n id: u.name,\n label: u.attrib?.fullName || u.name,\n img: `/api/users/${u.name}/avatar`,\n })),\n },\n // dates disabled until planner update with support is released\n // {\n // id: 'startDate',\n // label: 'Start Date',\n // icon: 'calendar_today',\n // type: 'datetime',\n // values: generateDateOptions(),\n // },\n // {\n // id: 'endDate',\n // label: 'End Date',\n // icon: 'event',\n // type: 'datetime',\n // values: generateDateOptions(),\n // },\n ],\n [users],\n )\n\n const filters = useMemo(() => {\n return subtasksFilterToClientFilters(subtasksFilter, options)\n }, [subtasksFilter, options])\n\n const [localFilters, setLocalFilters] = useState<Filter[]>(filters)\n const searchFilterRef = useRef<SearchFilterRef>(null)\n\n const dateRange = useDateRangeFilter()\n\n useEffect(() => {\n setLocalFilters(filters)\n }, [JSON.stringify(filters)])\n\n const handleFinish = (newFilters: Filter[]) => {\n const queryFilter = clientFiltersToSubtasksFilter(newFilters)\n\n setSubtasksFilter(queryFilter)\n onSearchTextChange?.('')\n }\n\n const handleFilterChange = (newFilters: Filter[]) => {\n dateRange.wrapFilterChange(newFilters, localFilters, setLocalFilters)\n }\n\n const handleLiveSearch = (value: string, filter: string | null) => {\n // only for root level searching\n if (!!filter) return\n onSearchTextChange?.(value)\n }\n\n let statusLabel: string = ''\n if (totalCount > 0) {\n statusLabel = `${doneCount}/${totalCount}`\n }\n\n const quickActions: SearchFilterQuickAction[] = useMemo(\n () => [{ id: 'isDone', label: statusLabel, tooltip: 'Status' }],\n [statusLabel],\n )\n\n return (\n <Wrapper className={isLoading ? 'loading' : undefined}>\n <SearchFilter\n ref={searchFilterRef}\n compact\n options={options}\n filters={localFilters}\n onChange={handleFilterChange}\n onFinish={handleFinish}\n enableGlobalSearch\n enableMultipleSameFilters={false}\n enableAutosuggestion={true}\n onSearchChange={handleLiveSearch}\n quickActions={quickActions}\n placeholder=\"Search and filter subtasks...\"\n pt={{\n searchBar: {\n onClickCapture: (e) => dateRange.handleSearchBarClickCapture(e, localFilters),\n },\n dropdown: {\n pt: {\n item: {\n onClick: (e) => dateRange.handleDropdownItemClick(e, localFilters, options),\n },\n },\n },\n }}\n />\n <CustomDateRangeDialog\n isOpen={!!dateRange.customRangeFilterId}\n header={\n options.find((o) => o.id === dateRange.customRangeFilterId?.split('__')[0])?.label ??\n 'Custom range'\n }\n startDate={dateRange.customStartDate}\n endDate={dateRange.customEndDate}\n onStartDateChange={dateRange.setCustomStartDate}\n onEndDateChange={dateRange.setCustomEndDate}\n onApply={() =>\n dateRange.handleCustomRangeApply(localFilters, options, handleFinish, searchFilterRef)\n }\n onClose={dateRange.handleCustomRangeClose}\n />\n </Wrapper>\n )\n}\n\nexport default SubtasksSearchFilter\n"],"names":["Wrapper","styled","SubtasksSearchFilter","subtasksFilter","setSubtasksFilter","users","isLoading","totalCount","doneCount","onSearchTextChange","options","useMemo","u","filters","subtasksFilterToClientFilters","localFilters","setLocalFilters","useState","searchFilterRef","useRef","dateRange","useDateRangeFilter","useEffect","handleFinish","newFilters","queryFilter","clientFiltersToSubtasksFilter","handleFilterChange","handleLiveSearch","value","filter","statusLabel","quickActions","jsxs","jsx","SearchFilter","CustomDateRangeDialog","o"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabHeaderAndFilters.cjs.js","sources":["../../../../../../../src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.tsx"],"sourcesContent":["// Tab-specific header with label and filters\n// Currently only Feed has filters: activity, comments, versions, checklists\n\nimport { Spacer } from '@ynput/ayon-react-components'\nimport * as Styled from './TabHeaderAndFilters.styled'\nimport { QueryFilter, QueryCondition, EnumItem } from '@shared/api'\nimport { useState, useRef, useEffect } from 'react'\nimport clsx from 'clsx'\n\nexport interface FilterItem<T = string> {\n id: T\n tooltip: string\n icon: string\n type?: 'boolean' | 'enum' | 'search'\n options?: EnumItem[]\n placeholder?: string\n operator?: QueryCondition['operator']\n}\n\ninterface TabHeaderAndFiltersProps<T, K = string> {\n label: string\n filters: FilterItem<K>[]\n currentFilter: T\n onFilterChange: (filter: T) => void\n isLoading?: boolean\n}\n\nconst isCondition = (c: QueryCondition | QueryFilter): c is QueryCondition => {\n return !!c && 'key' in c\n}\n\nconst isSearchItem = (c: QueryCondition | QueryFilter, filterId: string): boolean => {\n if (isCondition(c)) return c.key === filterId\n return !!c.conditions?.some((sub) => isSearchItem(sub, filterId))\n}\n\nconst stringifySearchFilter = (filter: QueryCondition | QueryFilter): string => {\n if (isCondition(filter)) return String(filter.value || '')\n\n const joiner = filter.operator === 'or' ? ', ' : '.'\n return filter.conditions?.map((c) => stringifySearchFilter(c)).join(joiner) || ''\n}\n\nconst parseSearchValue = (\n val: string,\n key: string,\n operator: QueryCondition['operator'],\n): QueryCondition | QueryFilter => {\n // Split by comma first (OR)\n const orTerms = val\n .split(',')\n .map((t) => t.trim())\n .filter(Boolean)\n\n if (orTerms.length > 1) {\n return {\n operator: 'or',\n conditions: orTerms.map((term) => parseSearchValue(term, key, operator)),\n }\n }\n\n const baseValue = orTerms[0] || val.trim()\n if (!baseValue || baseValue === ',' || baseValue === '.') {\n return {\n key,\n operator,\n value: '',\n }\n }\n\n // If no commas, split by period (AND)\n const andTerms = baseValue\n .split('.')\n .map((t) => t.trim())\n .filter(Boolean)\n\n if (andTerms.length > 1) {\n return {\n operator: 'and',\n conditions: andTerms.map((term) => ({\n key,\n operator,\n value: term,\n })),\n }\n }\n\n // Single term\n return {\n key,\n operator,\n value: andTerms[0] || '',\n }\n}\n\nconst TabHeaderAndFilters = <T, K = string>({\n label,\n filters,\n currentFilter,\n onFilterChange,\n isLoading,\n}: TabHeaderAndFiltersProps<T, K>) => {\n const [expandedSearchId, setExpandedSearchId] = useState<string | null>(null)\n const [searchValue, setSearchValue] = useState<string>('')\n const searchInputRef = useRef<HTMLInputElement>(null)\n\n const isQueryFilter = (f: any): f is QueryFilter => {\n return typeof f === 'object' && f !== null && !Array.isArray(f)\n }\n\n // Focus input when search expands\n useEffect(() => {\n if (expandedSearchId && searchInputRef.current) {\n searchInputRef.current.focus()\n }\n }, [expandedSearchId])\n\n // Sync search value with current filter\n useEffect(() => {\n if (expandedSearchId && isQueryFilter(currentFilter)) {\n if (document.activeElement === searchInputRef.current) return\n const searchItem = currentFilter.conditions?.find((c) => isSearchItem(c, expandedSearchId))\n setSearchValue(searchItem ? stringifySearchFilter(searchItem) : '')\n }\n }, [expandedSearchId, currentFilter])\n\n const handleToggle = (filter: FilterItem<K>, value?: any) => {\n if (!isQueryFilter(currentFilter)) {\n onFilterChange(filter.id as unknown as T)\n return\n }\n\n const conditions = currentFilter.conditions ? [...currentFilter.conditions] : []\n const newFilter: QueryFilter = {\n ...currentFilter,\n conditions,\n operator: currentFilter.operator || 'and',\n }\n\n const filterId = String(filter.id)\n\n const existingIndex = conditions.findIndex((c) => isSearchItem(c, filterId))\n\n const type = filter.type || 'boolean'\n\n if (type === 'boolean') {\n if (existingIndex > -1) {\n conditions.splice(existingIndex, 1)\n } else {\n conditions.push({ key: filterId, operator: filter.operator || 'eq', value: true })\n }\n } else if (type === 'enum') {\n const newValue = Array.isArray(value) ? value : [value]\n if (newValue.length === 0 || (newValue.length === 1 && newValue[0] === undefined)) {\n if (existingIndex > -1) conditions.splice(existingIndex, 1)\n } else {\n const condition: QueryCondition = {\n key: filterId,\n operator: filter.operator || 'in',\n value: newValue,\n }\n if (existingIndex > -1) {\n conditions[existingIndex] = condition\n } else {\n conditions.push(condition)\n }\n }\n } else if (type === 'search') {\n const stringValue = typeof value === 'string' ? value : ''\n if (!stringValue) {\n if (existingIndex > -1) conditions.splice(existingIndex, 1)\n } else {\n const parsedFilter = parseSearchValue(stringValue, filterId, filter.operator || 'like')\n if (existingIndex > -1) {\n conditions[existingIndex] = parsedFilter\n } else {\n conditions.push(parsedFilter)\n }\n }\n }\n\n onFilterChange(newFilter as T)\n }\n\n const handleSearchClick = (filter: FilterItem<K>) => {\n const filterId = String(filter.id)\n if (expandedSearchId === filterId) {\n return // Already expanded\n }\n setExpandedSearchId(filterId)\n // Load existing value if any\n if (isQueryFilter(currentFilter)) {\n const searchItem = currentFilter.conditions?.find((c) => isSearchItem(c, filterId))\n setSearchValue(searchItem ? stringifySearchFilter(searchItem) : '')\n }\n }\n\n const handleSearchChange = (filter: FilterItem<K>, value: string) => {\n setSearchValue(value)\n handleToggle(filter, value)\n }\n\n const handleSearchClear = (filter: FilterItem<K>) => {\n setSearchValue('')\n setExpandedSearchId(null)\n handleToggle(filter, '')\n }\n\n const getIsSelected = (filter: FilterItem<K>) => {\n if (!isQueryFilter(currentFilter)) {\n return (filter.id as unknown as T) === currentFilter\n }\n return currentFilter.conditions?.some((c) => isSearchItem(c, String(filter.id)))\n }\n\n const getEnumValue = (filter: FilterItem<K>) => {\n if (!isQueryFilter(currentFilter)) return []\n const condition = currentFilter.conditions?.find(\n (c) => isCondition(c) && c.key === String(filter.id),\n ) as QueryCondition\n return (condition?.value as string[]) || []\n }\n\n return (\n <Styled.HeaderContainer className={clsx('panel-tabs', { loading: isLoading })}>\n <Styled.HeaderLabel className=\"panel-header-label\">{label}</Styled.HeaderLabel>\n <Spacer />\n <Styled.FiltersContainer className=\"panel-header-filters\">\n {filters.map((filter) => {\n const isSelected = getIsSelected(filter)\n const type = filter.type || 'boolean'\n\n if (type === 'enum') {\n return (\n <Styled.Options\n key={String(filter.id)}\n options={filter.options || []}\n value={getEnumValue(filter)}\n onChange={(val) => handleToggle(filter, val)}\n isEditing\n autoOpen={false}\n align=\"right\"\n type=\"list_of_strings\"\n valueTemplate={() => (\n <Styled.FilterButton\n selected={isSelected}\n icon={filter.icon}\n data-tooltip={filter.tooltip}\n data-tooltip-delay={0}\n />\n )}\n widthExpand\n className=\"panel-filter panel-filter-enum\"\n />\n )\n }\n\n if (type === 'search') {\n const isExpanded = expandedSearchId === String(filter.id)\n return (\n <Styled.SearchFilterContainer\n key={String(filter.id)}\n className={clsx('panel-filter', 'panel-filter-search', { expanded: isExpanded })}\n >\n <Styled.FilterButton\n selected={isSelected || isExpanded}\n onClick={() => handleSearchClick(filter)}\n icon={filter.icon}\n data-tooltip={!isExpanded ? filter.tooltip : undefined}\n data-tooltip-delay={0}\n />\n {isExpanded && (\n <>\n <Styled.SearchInput\n ref={searchInputRef}\n value={searchValue}\n onChange={(e) => handleSearchChange(filter, e.target.value)}\n onKeyDown={(e) => {\n if (e.key === 'Escape') {\n handleSearchClear(filter)\n }\n }}\n placeholder={filter.placeholder || 'Search...'}\n />\n <Styled.ClearButton\n icon=\"close\"\n onClick={() => handleSearchClear(filter)}\n data-tooltip=\"Clear\"\n data-tooltip-delay={0}\n />\n </>\n )}\n </Styled.SearchFilterContainer>\n )\n }\n\n return (\n <Styled.FilterButton\n key={String(filter.id)}\n selected={isSelected}\n onClick={() => handleToggle(filter)}\n icon={filter.icon}\n data-tooltip={filter.tooltip}\n data-tooltip-delay={0}\n className=\"panel-filter panel-filter-boolean\"\n />\n )\n })}\n </Styled.FiltersContainer>\n </Styled.HeaderContainer>\n )\n}\n\nexport default TabHeaderAndFilters\n"],"names":["isCondition","c","isSearchItem","filterId","sub","stringifySearchFilter","filter","joiner","parseSearchValue","val","key","operator","orTerms","t","term","baseValue","andTerms","TabHeaderAndFilters","label","filters","currentFilter","onFilterChange","isLoading","expandedSearchId","setExpandedSearchId","useState","searchValue","setSearchValue","searchInputRef","useRef","isQueryFilter","f","useEffect","searchItem","handleToggle","value","conditions","newFilter","existingIndex","type","newValue","condition","stringValue","parsedFilter","handleSearchClick","handleSearchChange","handleSearchClear","getIsSelected","getEnumValue","jsxs","Styled.HeaderContainer","clsx","jsx","Styled.HeaderLabel","Spacer","Styled.FiltersContainer","isSelected","Styled.Options","Styled.FilterButton","isExpanded","Styled.SearchFilterContainer","Fragment","Styled.SearchInput","e","Styled.ClearButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TabHeaderAndFilters.cjs.js","sources":["../../../../../../../src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.tsx"],"sourcesContent":["// Tab-specific header with label and filters\n// Currently only Feed has filters: activity, comments, versions, checklists\n\nimport { Spacer } from '@ynput/ayon-react-components'\nimport * as Styled from './TabHeaderAndFilters.styled'\nimport { QueryFilter, QueryCondition, EnumItem } from '@shared/api'\nimport { useState, useRef, useEffect } from 'react'\nimport clsx from 'clsx'\n\nexport interface FilterItem<T = string> {\n id: T\n tooltip: string\n icon: string\n type?: 'boolean' | 'enum' | 'search'\n options?: EnumItem[]\n placeholder?: string\n operator?: QueryCondition['operator']\n}\n\ninterface TabHeaderAndFiltersProps<T, K = string> {\n label: string\n filters: FilterItem<K>[]\n currentFilter: T\n onFilterChange: (filter: T) => void\n isLoading?: boolean\n}\n\nconst isCondition = (c: QueryCondition | QueryFilter): c is QueryCondition => {\n return !!c && 'key' in c\n}\n\nconst isSearchItem = (c: QueryCondition | QueryFilter, filterId: string): boolean => {\n if (isCondition(c)) return c.key === filterId\n return !!c.conditions?.some((sub) => isSearchItem(sub, filterId))\n}\n\nconst stringifySearchFilter = (filter: QueryCondition | QueryFilter): string => {\n if (isCondition(filter)) return String(filter.value || '')\n\n const joiner = filter.operator === 'or' ? ', ' : '.'\n return filter.conditions?.map((c) => stringifySearchFilter(c)).join(joiner) || ''\n}\n\nconst parseSearchValue = (\n val: string,\n key: string,\n operator: QueryCondition['operator'],\n): QueryCondition | QueryFilter => {\n // Split by comma first (OR)\n const orTerms = val\n .split(',')\n .map((t) => t.trim())\n .filter(Boolean)\n\n if (orTerms.length > 1) {\n return {\n operator: 'or',\n conditions: orTerms.map((term) => parseSearchValue(term, key, operator)),\n }\n }\n\n const baseValue = orTerms[0] || val.trim()\n if (!baseValue || baseValue === ',' || baseValue === '.') {\n return {\n key,\n operator,\n value: '',\n }\n }\n\n // If no commas, split by period (AND)\n const andTerms = baseValue\n .split('.')\n .map((t) => t.trim())\n .filter(Boolean)\n\n if (andTerms.length > 1) {\n return {\n operator: 'and',\n conditions: andTerms.map((term) => ({\n key,\n operator,\n value: term,\n })),\n }\n }\n\n // Single term\n return {\n key,\n operator,\n value: andTerms[0] || '',\n }\n}\n\nconst TabHeaderAndFilters = <T, K = string>({\n label,\n filters,\n currentFilter,\n onFilterChange,\n isLoading,\n}: TabHeaderAndFiltersProps<T, K>) => {\n const [expandedSearchId, setExpandedSearchId] = useState<string | null>(null)\n const [searchValue, setSearchValue] = useState<string>('')\n const searchInputRef = useRef<HTMLInputElement>(null)\n\n const isQueryFilter = (f: any): f is QueryFilter => {\n return typeof f === 'object' && f !== null && !Array.isArray(f)\n }\n\n // Focus input when search expands\n useEffect(() => {\n if (expandedSearchId && searchInputRef.current) {\n searchInputRef.current.focus()\n }\n }, [expandedSearchId])\n\n // Sync search value with current filter\n useEffect(() => {\n if (expandedSearchId && isQueryFilter(currentFilter)) {\n if (document.activeElement === searchInputRef.current) return\n const searchItem = currentFilter.conditions?.find((c) => isSearchItem(c, expandedSearchId))\n setSearchValue(searchItem ? stringifySearchFilter(searchItem) : '')\n }\n }, [expandedSearchId, currentFilter])\n\n const handleToggle = (filter: FilterItem<K>, value?: any) => {\n if (!isQueryFilter(currentFilter)) {\n onFilterChange(filter.id as unknown as T)\n return\n }\n\n const conditions = currentFilter.conditions ? [...currentFilter.conditions] : []\n const newFilter: QueryFilter = {\n ...currentFilter,\n conditions,\n operator: currentFilter.operator || 'and',\n }\n\n const filterId = String(filter.id)\n\n const existingIndex = conditions.findIndex((c) => isSearchItem(c, filterId))\n\n const type = filter.type || 'boolean'\n\n if (type === 'boolean') {\n if (existingIndex > -1) {\n conditions.splice(existingIndex, 1)\n } else {\n conditions.push({ key: filterId, operator: filter.operator || 'eq', value: true })\n }\n } else if (type === 'enum') {\n const newValue = Array.isArray(value) ? value : [value]\n if (newValue.length === 0 || (newValue.length === 1 && newValue[0] === undefined)) {\n if (existingIndex > -1) conditions.splice(existingIndex, 1)\n } else {\n const condition: QueryCondition = {\n key: filterId,\n operator: filter.operator || 'in',\n value: newValue,\n }\n if (existingIndex > -1) {\n conditions[existingIndex] = condition\n } else {\n conditions.push(condition)\n }\n }\n } else if (type === 'search') {\n const stringValue = typeof value === 'string' ? value : ''\n if (!stringValue) {\n if (existingIndex > -1) conditions.splice(existingIndex, 1)\n } else {\n const parsedFilter = parseSearchValue(stringValue, filterId, filter.operator || 'like')\n if (existingIndex > -1) {\n conditions[existingIndex] = parsedFilter\n } else {\n conditions.push(parsedFilter)\n }\n }\n }\n\n onFilterChange(newFilter as T)\n }\n\n const handleSearchClick = (filter: FilterItem<K>) => {\n const filterId = String(filter.id)\n if (expandedSearchId === filterId) {\n return // Already expanded\n }\n setExpandedSearchId(filterId)\n // Load existing value if any\n if (isQueryFilter(currentFilter)) {\n const searchItem = currentFilter.conditions?.find((c) => isSearchItem(c, filterId))\n setSearchValue(searchItem ? stringifySearchFilter(searchItem) : '')\n }\n }\n\n const handleSearchChange = (filter: FilterItem<K>, value: string) => {\n setSearchValue(value)\n handleToggle(filter, value)\n }\n\n const handleSearchClear = (filter: FilterItem<K>) => {\n setSearchValue('')\n setExpandedSearchId(null)\n handleToggle(filter, '')\n }\n\n const getIsSelected = (filter: FilterItem<K>) => {\n if (!isQueryFilter(currentFilter)) {\n return (filter.id as unknown as T) === currentFilter\n }\n return currentFilter.conditions?.some((c) => isSearchItem(c, String(filter.id)))\n }\n\n const getEnumValue = (filter: FilterItem<K>) => {\n if (!isQueryFilter(currentFilter)) return []\n const condition = currentFilter.conditions?.find(\n (c) => isCondition(c) && c.key === String(filter.id),\n ) as QueryCondition\n return (condition?.value as string[]) || []\n }\n\n return (\n <Styled.HeaderContainer className={clsx('panel-tabs', { loading: isLoading })}>\n <Styled.HeaderLabel className=\"panel-header-label\">{label}</Styled.HeaderLabel>\n <Spacer />\n <Styled.FiltersContainer className=\"panel-header-filters\">\n {filters.map((filter) => {\n const isSelected = getIsSelected(filter)\n const type = filter.type || 'boolean'\n\n if (type === 'enum') {\n return (\n <Styled.Options\n key={String(filter.id)}\n options={filter.options || []}\n value={getEnumValue(filter)}\n onChange={(val) => handleToggle(filter, val)}\n isEditing\n autoOpen={false}\n align=\"right\"\n type=\"list_of_strings\"\n valueTemplate={() => (\n <Styled.FilterButton\n selected={isSelected}\n // @ts-expect-error - icon is fine\n icon={filter.icon}\n data-tooltip={filter.tooltip}\n data-tooltip-delay={0}\n />\n )}\n widthExpand\n className=\"panel-filter panel-filter-enum\"\n />\n )\n }\n\n if (type === 'search') {\n const isExpanded = expandedSearchId === String(filter.id)\n return (\n <Styled.SearchFilterContainer\n key={String(filter.id)}\n className={clsx('panel-filter', 'panel-filter-search', { expanded: isExpanded })}\n >\n <Styled.FilterButton\n selected={isSelected || isExpanded}\n onClick={() => handleSearchClick(filter)}\n // @ts-expect-error - icon is fine\n icon={filter.icon}\n data-tooltip={!isExpanded ? filter.tooltip : undefined}\n data-tooltip-delay={0}\n />\n {isExpanded && (\n <>\n <Styled.SearchInput\n ref={searchInputRef}\n value={searchValue}\n onChange={(e) => handleSearchChange(filter, e.target.value)}\n onKeyDown={(e) => {\n if (e.key === 'Escape') {\n handleSearchClear(filter)\n }\n }}\n placeholder={filter.placeholder || 'Search...'}\n />\n <Styled.ClearButton\n icon=\"close\"\n onClick={() => handleSearchClear(filter)}\n data-tooltip=\"Clear\"\n data-tooltip-delay={0}\n />\n </>\n )}\n </Styled.SearchFilterContainer>\n )\n }\n\n return (\n <Styled.FilterButton\n key={String(filter.id)}\n selected={isSelected}\n onClick={() => handleToggle(filter)}\n // @ts-expect-error - icon is fine\n icon={filter.icon}\n data-tooltip={filter.tooltip}\n data-tooltip-delay={0}\n className=\"panel-filter panel-filter-boolean\"\n />\n )\n })}\n </Styled.FiltersContainer>\n </Styled.HeaderContainer>\n )\n}\n\nexport default TabHeaderAndFilters\n"],"names":["isCondition","c","isSearchItem","filterId","sub","stringifySearchFilter","filter","joiner","parseSearchValue","val","key","operator","orTerms","t","term","baseValue","andTerms","TabHeaderAndFilters","label","filters","currentFilter","onFilterChange","isLoading","expandedSearchId","setExpandedSearchId","useState","searchValue","setSearchValue","searchInputRef","useRef","isQueryFilter","f","useEffect","searchItem","handleToggle","value","conditions","newFilter","existingIndex","type","newValue","condition","stringValue","parsedFilter","handleSearchClick","handleSearchChange","handleSearchClear","getIsSelected","getEnumValue","jsxs","Styled.HeaderContainer","clsx","jsx","Styled.HeaderLabel","Spacer","Styled.FiltersContainer","isSelected","Styled.Options","Styled.FilterButton","isExpanded","Styled.SearchFilterContainer","Fragment","Styled.SearchInput","e","Styled.ClearButton"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabHeaderAndFilters.es.js","sources":["../../../../../../../src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.tsx"],"sourcesContent":["// Tab-specific header with label and filters\n// Currently only Feed has filters: activity, comments, versions, checklists\n\nimport { Spacer } from '@ynput/ayon-react-components'\nimport * as Styled from './TabHeaderAndFilters.styled'\nimport { QueryFilter, QueryCondition, EnumItem } from '@shared/api'\nimport { useState, useRef, useEffect } from 'react'\nimport clsx from 'clsx'\n\nexport interface FilterItem<T = string> {\n id: T\n tooltip: string\n icon: string\n type?: 'boolean' | 'enum' | 'search'\n options?: EnumItem[]\n placeholder?: string\n operator?: QueryCondition['operator']\n}\n\ninterface TabHeaderAndFiltersProps<T, K = string> {\n label: string\n filters: FilterItem<K>[]\n currentFilter: T\n onFilterChange: (filter: T) => void\n isLoading?: boolean\n}\n\nconst isCondition = (c: QueryCondition | QueryFilter): c is QueryCondition => {\n return !!c && 'key' in c\n}\n\nconst isSearchItem = (c: QueryCondition | QueryFilter, filterId: string): boolean => {\n if (isCondition(c)) return c.key === filterId\n return !!c.conditions?.some((sub) => isSearchItem(sub, filterId))\n}\n\nconst stringifySearchFilter = (filter: QueryCondition | QueryFilter): string => {\n if (isCondition(filter)) return String(filter.value || '')\n\n const joiner = filter.operator === 'or' ? ', ' : '.'\n return filter.conditions?.map((c) => stringifySearchFilter(c)).join(joiner) || ''\n}\n\nconst parseSearchValue = (\n val: string,\n key: string,\n operator: QueryCondition['operator'],\n): QueryCondition | QueryFilter => {\n // Split by comma first (OR)\n const orTerms = val\n .split(',')\n .map((t) => t.trim())\n .filter(Boolean)\n\n if (orTerms.length > 1) {\n return {\n operator: 'or',\n conditions: orTerms.map((term) => parseSearchValue(term, key, operator)),\n }\n }\n\n const baseValue = orTerms[0] || val.trim()\n if (!baseValue || baseValue === ',' || baseValue === '.') {\n return {\n key,\n operator,\n value: '',\n }\n }\n\n // If no commas, split by period (AND)\n const andTerms = baseValue\n .split('.')\n .map((t) => t.trim())\n .filter(Boolean)\n\n if (andTerms.length > 1) {\n return {\n operator: 'and',\n conditions: andTerms.map((term) => ({\n key,\n operator,\n value: term,\n })),\n }\n }\n\n // Single term\n return {\n key,\n operator,\n value: andTerms[0] || '',\n }\n}\n\nconst TabHeaderAndFilters = <T, K = string>({\n label,\n filters,\n currentFilter,\n onFilterChange,\n isLoading,\n}: TabHeaderAndFiltersProps<T, K>) => {\n const [expandedSearchId, setExpandedSearchId] = useState<string | null>(null)\n const [searchValue, setSearchValue] = useState<string>('')\n const searchInputRef = useRef<HTMLInputElement>(null)\n\n const isQueryFilter = (f: any): f is QueryFilter => {\n return typeof f === 'object' && f !== null && !Array.isArray(f)\n }\n\n // Focus input when search expands\n useEffect(() => {\n if (expandedSearchId && searchInputRef.current) {\n searchInputRef.current.focus()\n }\n }, [expandedSearchId])\n\n // Sync search value with current filter\n useEffect(() => {\n if (expandedSearchId && isQueryFilter(currentFilter)) {\n if (document.activeElement === searchInputRef.current) return\n const searchItem = currentFilter.conditions?.find((c) => isSearchItem(c, expandedSearchId))\n setSearchValue(searchItem ? stringifySearchFilter(searchItem) : '')\n }\n }, [expandedSearchId, currentFilter])\n\n const handleToggle = (filter: FilterItem<K>, value?: any) => {\n if (!isQueryFilter(currentFilter)) {\n onFilterChange(filter.id as unknown as T)\n return\n }\n\n const conditions = currentFilter.conditions ? [...currentFilter.conditions] : []\n const newFilter: QueryFilter = {\n ...currentFilter,\n conditions,\n operator: currentFilter.operator || 'and',\n }\n\n const filterId = String(filter.id)\n\n const existingIndex = conditions.findIndex((c) => isSearchItem(c, filterId))\n\n const type = filter.type || 'boolean'\n\n if (type === 'boolean') {\n if (existingIndex > -1) {\n conditions.splice(existingIndex, 1)\n } else {\n conditions.push({ key: filterId, operator: filter.operator || 'eq', value: true })\n }\n } else if (type === 'enum') {\n const newValue = Array.isArray(value) ? value : [value]\n if (newValue.length === 0 || (newValue.length === 1 && newValue[0] === undefined)) {\n if (existingIndex > -1) conditions.splice(existingIndex, 1)\n } else {\n const condition: QueryCondition = {\n key: filterId,\n operator: filter.operator || 'in',\n value: newValue,\n }\n if (existingIndex > -1) {\n conditions[existingIndex] = condition\n } else {\n conditions.push(condition)\n }\n }\n } else if (type === 'search') {\n const stringValue = typeof value === 'string' ? value : ''\n if (!stringValue) {\n if (existingIndex > -1) conditions.splice(existingIndex, 1)\n } else {\n const parsedFilter = parseSearchValue(stringValue, filterId, filter.operator || 'like')\n if (existingIndex > -1) {\n conditions[existingIndex] = parsedFilter\n } else {\n conditions.push(parsedFilter)\n }\n }\n }\n\n onFilterChange(newFilter as T)\n }\n\n const handleSearchClick = (filter: FilterItem<K>) => {\n const filterId = String(filter.id)\n if (expandedSearchId === filterId) {\n return // Already expanded\n }\n setExpandedSearchId(filterId)\n // Load existing value if any\n if (isQueryFilter(currentFilter)) {\n const searchItem = currentFilter.conditions?.find((c) => isSearchItem(c, filterId))\n setSearchValue(searchItem ? stringifySearchFilter(searchItem) : '')\n }\n }\n\n const handleSearchChange = (filter: FilterItem<K>, value: string) => {\n setSearchValue(value)\n handleToggle(filter, value)\n }\n\n const handleSearchClear = (filter: FilterItem<K>) => {\n setSearchValue('')\n setExpandedSearchId(null)\n handleToggle(filter, '')\n }\n\n const getIsSelected = (filter: FilterItem<K>) => {\n if (!isQueryFilter(currentFilter)) {\n return (filter.id as unknown as T) === currentFilter\n }\n return currentFilter.conditions?.some((c) => isSearchItem(c, String(filter.id)))\n }\n\n const getEnumValue = (filter: FilterItem<K>) => {\n if (!isQueryFilter(currentFilter)) return []\n const condition = currentFilter.conditions?.find(\n (c) => isCondition(c) && c.key === String(filter.id),\n ) as QueryCondition\n return (condition?.value as string[]) || []\n }\n\n return (\n <Styled.HeaderContainer className={clsx('panel-tabs', { loading: isLoading })}>\n <Styled.HeaderLabel className=\"panel-header-label\">{label}</Styled.HeaderLabel>\n <Spacer />\n <Styled.FiltersContainer className=\"panel-header-filters\">\n {filters.map((filter) => {\n const isSelected = getIsSelected(filter)\n const type = filter.type || 'boolean'\n\n if (type === 'enum') {\n return (\n <Styled.Options\n key={String(filter.id)}\n options={filter.options || []}\n value={getEnumValue(filter)}\n onChange={(val) => handleToggle(filter, val)}\n isEditing\n autoOpen={false}\n align=\"right\"\n type=\"list_of_strings\"\n valueTemplate={() => (\n <Styled.FilterButton\n selected={isSelected}\n icon={filter.icon}\n data-tooltip={filter.tooltip}\n data-tooltip-delay={0}\n />\n )}\n widthExpand\n className=\"panel-filter panel-filter-enum\"\n />\n )\n }\n\n if (type === 'search') {\n const isExpanded = expandedSearchId === String(filter.id)\n return (\n <Styled.SearchFilterContainer\n key={String(filter.id)}\n className={clsx('panel-filter', 'panel-filter-search', { expanded: isExpanded })}\n >\n <Styled.FilterButton\n selected={isSelected || isExpanded}\n onClick={() => handleSearchClick(filter)}\n icon={filter.icon}\n data-tooltip={!isExpanded ? filter.tooltip : undefined}\n data-tooltip-delay={0}\n />\n {isExpanded && (\n <>\n <Styled.SearchInput\n ref={searchInputRef}\n value={searchValue}\n onChange={(e) => handleSearchChange(filter, e.target.value)}\n onKeyDown={(e) => {\n if (e.key === 'Escape') {\n handleSearchClear(filter)\n }\n }}\n placeholder={filter.placeholder || 'Search...'}\n />\n <Styled.ClearButton\n icon=\"close\"\n onClick={() => handleSearchClear(filter)}\n data-tooltip=\"Clear\"\n data-tooltip-delay={0}\n />\n </>\n )}\n </Styled.SearchFilterContainer>\n )\n }\n\n return (\n <Styled.FilterButton\n key={String(filter.id)}\n selected={isSelected}\n onClick={() => handleToggle(filter)}\n icon={filter.icon}\n data-tooltip={filter.tooltip}\n data-tooltip-delay={0}\n className=\"panel-filter panel-filter-boolean\"\n />\n )\n })}\n </Styled.FiltersContainer>\n </Styled.HeaderContainer>\n )\n}\n\nexport default TabHeaderAndFilters\n"],"names":["isCondition","c","isSearchItem","filterId","sub","stringifySearchFilter","filter","joiner","parseSearchValue","val","key","operator","orTerms","t","term","baseValue","andTerms","TabHeaderAndFilters","label","filters","currentFilter","onFilterChange","isLoading","expandedSearchId","setExpandedSearchId","useState","searchValue","setSearchValue","searchInputRef","useRef","isQueryFilter","f","useEffect","searchItem","handleToggle","value","conditions","newFilter","existingIndex","type","newValue","condition","stringValue","parsedFilter","handleSearchClick","handleSearchChange","handleSearchClear","getIsSelected","getEnumValue","jsxs","Styled.HeaderContainer","clsx","jsx","Styled.HeaderLabel","Spacer","Styled.FiltersContainer","isSelected","Styled.Options","Styled.FilterButton","isExpanded","Styled.SearchFilterContainer","Fragment","Styled.SearchInput","e","Styled.ClearButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TabHeaderAndFilters.es.js","sources":["../../../../../../../src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.tsx"],"sourcesContent":["// Tab-specific header with label and filters\n// Currently only Feed has filters: activity, comments, versions, checklists\n\nimport { Spacer } from '@ynput/ayon-react-components'\nimport * as Styled from './TabHeaderAndFilters.styled'\nimport { QueryFilter, QueryCondition, EnumItem } from '@shared/api'\nimport { useState, useRef, useEffect } from 'react'\nimport clsx from 'clsx'\n\nexport interface FilterItem<T = string> {\n id: T\n tooltip: string\n icon: string\n type?: 'boolean' | 'enum' | 'search'\n options?: EnumItem[]\n placeholder?: string\n operator?: QueryCondition['operator']\n}\n\ninterface TabHeaderAndFiltersProps<T, K = string> {\n label: string\n filters: FilterItem<K>[]\n currentFilter: T\n onFilterChange: (filter: T) => void\n isLoading?: boolean\n}\n\nconst isCondition = (c: QueryCondition | QueryFilter): c is QueryCondition => {\n return !!c && 'key' in c\n}\n\nconst isSearchItem = (c: QueryCondition | QueryFilter, filterId: string): boolean => {\n if (isCondition(c)) return c.key === filterId\n return !!c.conditions?.some((sub) => isSearchItem(sub, filterId))\n}\n\nconst stringifySearchFilter = (filter: QueryCondition | QueryFilter): string => {\n if (isCondition(filter)) return String(filter.value || '')\n\n const joiner = filter.operator === 'or' ? ', ' : '.'\n return filter.conditions?.map((c) => stringifySearchFilter(c)).join(joiner) || ''\n}\n\nconst parseSearchValue = (\n val: string,\n key: string,\n operator: QueryCondition['operator'],\n): QueryCondition | QueryFilter => {\n // Split by comma first (OR)\n const orTerms = val\n .split(',')\n .map((t) => t.trim())\n .filter(Boolean)\n\n if (orTerms.length > 1) {\n return {\n operator: 'or',\n conditions: orTerms.map((term) => parseSearchValue(term, key, operator)),\n }\n }\n\n const baseValue = orTerms[0] || val.trim()\n if (!baseValue || baseValue === ',' || baseValue === '.') {\n return {\n key,\n operator,\n value: '',\n }\n }\n\n // If no commas, split by period (AND)\n const andTerms = baseValue\n .split('.')\n .map((t) => t.trim())\n .filter(Boolean)\n\n if (andTerms.length > 1) {\n return {\n operator: 'and',\n conditions: andTerms.map((term) => ({\n key,\n operator,\n value: term,\n })),\n }\n }\n\n // Single term\n return {\n key,\n operator,\n value: andTerms[0] || '',\n }\n}\n\nconst TabHeaderAndFilters = <T, K = string>({\n label,\n filters,\n currentFilter,\n onFilterChange,\n isLoading,\n}: TabHeaderAndFiltersProps<T, K>) => {\n const [expandedSearchId, setExpandedSearchId] = useState<string | null>(null)\n const [searchValue, setSearchValue] = useState<string>('')\n const searchInputRef = useRef<HTMLInputElement>(null)\n\n const isQueryFilter = (f: any): f is QueryFilter => {\n return typeof f === 'object' && f !== null && !Array.isArray(f)\n }\n\n // Focus input when search expands\n useEffect(() => {\n if (expandedSearchId && searchInputRef.current) {\n searchInputRef.current.focus()\n }\n }, [expandedSearchId])\n\n // Sync search value with current filter\n useEffect(() => {\n if (expandedSearchId && isQueryFilter(currentFilter)) {\n if (document.activeElement === searchInputRef.current) return\n const searchItem = currentFilter.conditions?.find((c) => isSearchItem(c, expandedSearchId))\n setSearchValue(searchItem ? stringifySearchFilter(searchItem) : '')\n }\n }, [expandedSearchId, currentFilter])\n\n const handleToggle = (filter: FilterItem<K>, value?: any) => {\n if (!isQueryFilter(currentFilter)) {\n onFilterChange(filter.id as unknown as T)\n return\n }\n\n const conditions = currentFilter.conditions ? [...currentFilter.conditions] : []\n const newFilter: QueryFilter = {\n ...currentFilter,\n conditions,\n operator: currentFilter.operator || 'and',\n }\n\n const filterId = String(filter.id)\n\n const existingIndex = conditions.findIndex((c) => isSearchItem(c, filterId))\n\n const type = filter.type || 'boolean'\n\n if (type === 'boolean') {\n if (existingIndex > -1) {\n conditions.splice(existingIndex, 1)\n } else {\n conditions.push({ key: filterId, operator: filter.operator || 'eq', value: true })\n }\n } else if (type === 'enum') {\n const newValue = Array.isArray(value) ? value : [value]\n if (newValue.length === 0 || (newValue.length === 1 && newValue[0] === undefined)) {\n if (existingIndex > -1) conditions.splice(existingIndex, 1)\n } else {\n const condition: QueryCondition = {\n key: filterId,\n operator: filter.operator || 'in',\n value: newValue,\n }\n if (existingIndex > -1) {\n conditions[existingIndex] = condition\n } else {\n conditions.push(condition)\n }\n }\n } else if (type === 'search') {\n const stringValue = typeof value === 'string' ? value : ''\n if (!stringValue) {\n if (existingIndex > -1) conditions.splice(existingIndex, 1)\n } else {\n const parsedFilter = parseSearchValue(stringValue, filterId, filter.operator || 'like')\n if (existingIndex > -1) {\n conditions[existingIndex] = parsedFilter\n } else {\n conditions.push(parsedFilter)\n }\n }\n }\n\n onFilterChange(newFilter as T)\n }\n\n const handleSearchClick = (filter: FilterItem<K>) => {\n const filterId = String(filter.id)\n if (expandedSearchId === filterId) {\n return // Already expanded\n }\n setExpandedSearchId(filterId)\n // Load existing value if any\n if (isQueryFilter(currentFilter)) {\n const searchItem = currentFilter.conditions?.find((c) => isSearchItem(c, filterId))\n setSearchValue(searchItem ? stringifySearchFilter(searchItem) : '')\n }\n }\n\n const handleSearchChange = (filter: FilterItem<K>, value: string) => {\n setSearchValue(value)\n handleToggle(filter, value)\n }\n\n const handleSearchClear = (filter: FilterItem<K>) => {\n setSearchValue('')\n setExpandedSearchId(null)\n handleToggle(filter, '')\n }\n\n const getIsSelected = (filter: FilterItem<K>) => {\n if (!isQueryFilter(currentFilter)) {\n return (filter.id as unknown as T) === currentFilter\n }\n return currentFilter.conditions?.some((c) => isSearchItem(c, String(filter.id)))\n }\n\n const getEnumValue = (filter: FilterItem<K>) => {\n if (!isQueryFilter(currentFilter)) return []\n const condition = currentFilter.conditions?.find(\n (c) => isCondition(c) && c.key === String(filter.id),\n ) as QueryCondition\n return (condition?.value as string[]) || []\n }\n\n return (\n <Styled.HeaderContainer className={clsx('panel-tabs', { loading: isLoading })}>\n <Styled.HeaderLabel className=\"panel-header-label\">{label}</Styled.HeaderLabel>\n <Spacer />\n <Styled.FiltersContainer className=\"panel-header-filters\">\n {filters.map((filter) => {\n const isSelected = getIsSelected(filter)\n const type = filter.type || 'boolean'\n\n if (type === 'enum') {\n return (\n <Styled.Options\n key={String(filter.id)}\n options={filter.options || []}\n value={getEnumValue(filter)}\n onChange={(val) => handleToggle(filter, val)}\n isEditing\n autoOpen={false}\n align=\"right\"\n type=\"list_of_strings\"\n valueTemplate={() => (\n <Styled.FilterButton\n selected={isSelected}\n // @ts-expect-error - icon is fine\n icon={filter.icon}\n data-tooltip={filter.tooltip}\n data-tooltip-delay={0}\n />\n )}\n widthExpand\n className=\"panel-filter panel-filter-enum\"\n />\n )\n }\n\n if (type === 'search') {\n const isExpanded = expandedSearchId === String(filter.id)\n return (\n <Styled.SearchFilterContainer\n key={String(filter.id)}\n className={clsx('panel-filter', 'panel-filter-search', { expanded: isExpanded })}\n >\n <Styled.FilterButton\n selected={isSelected || isExpanded}\n onClick={() => handleSearchClick(filter)}\n // @ts-expect-error - icon is fine\n icon={filter.icon}\n data-tooltip={!isExpanded ? filter.tooltip : undefined}\n data-tooltip-delay={0}\n />\n {isExpanded && (\n <>\n <Styled.SearchInput\n ref={searchInputRef}\n value={searchValue}\n onChange={(e) => handleSearchChange(filter, e.target.value)}\n onKeyDown={(e) => {\n if (e.key === 'Escape') {\n handleSearchClear(filter)\n }\n }}\n placeholder={filter.placeholder || 'Search...'}\n />\n <Styled.ClearButton\n icon=\"close\"\n onClick={() => handleSearchClear(filter)}\n data-tooltip=\"Clear\"\n data-tooltip-delay={0}\n />\n </>\n )}\n </Styled.SearchFilterContainer>\n )\n }\n\n return (\n <Styled.FilterButton\n key={String(filter.id)}\n selected={isSelected}\n onClick={() => handleToggle(filter)}\n // @ts-expect-error - icon is fine\n icon={filter.icon}\n data-tooltip={filter.tooltip}\n data-tooltip-delay={0}\n className=\"panel-filter panel-filter-boolean\"\n />\n )\n })}\n </Styled.FiltersContainer>\n </Styled.HeaderContainer>\n )\n}\n\nexport default TabHeaderAndFilters\n"],"names":["isCondition","c","isSearchItem","filterId","sub","stringifySearchFilter","filter","joiner","parseSearchValue","val","key","operator","orTerms","t","term","baseValue","andTerms","TabHeaderAndFilters","label","filters","currentFilter","onFilterChange","isLoading","expandedSearchId","setExpandedSearchId","useState","searchValue","setSearchValue","searchInputRef","useRef","isQueryFilter","f","useEffect","searchItem","handleToggle","value","conditions","newFilter","existingIndex","type","newValue","condition","stringValue","parsedFilter","handleSearchClick","handleSearchChange","handleSearchClear","getIsSelected","getEnumValue","jsxs","Styled.HeaderContainer","clsx","jsx","Styled.HeaderLabel","Spacer","Styled.FiltersContainer","isSelected","Styled.Options","Styled.FilterButton","isExpanded","Styled.SearchFilterContainer","Fragment","Styled.SearchInput","e","Styled.ClearButton"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../../../../_virtual/jsx-runtime.cjs.js");require("react");require("@tanstack/react-virtual");require("@tanstack/react-table");require("clsx");require("../../../ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../../ProjectTreeTable/widgets/DateWidget.cjs.js");const i=require("../../../ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../../../ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../../ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../../../ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../../ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../../ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../../ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");const r=require("@ynput/ayon-react-components");require("../../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../../components/AccessUser/AccessUser.cjs.js");require("../../../../components/AttributeEditor/AttributeEditor.cjs.js");require("../../../../components/AttributeEditor/attributeTypeMap.cjs.js");require("../../../../components/Badge/Badge.cjs.js");require("../../../../components/Chips/Chips.cjs.js");require("react-dom");require("date-fns");require("../../../../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../../../../components/LinksManager/CellEditingDialog.cjs.js");require("react-toastify");require("../../../../api/base/client.cjs.js");require("../../../../api/generated/graphql.cjs.js");require("../../../../api/generated/graphqlLinks.cjs.js");require("../../../../api/generated/access.cjs.js");require("../../../../api/generated/actions.cjs.js");require("../../../../api/generated/activityFeed.cjs.js");require("../../../../api/generated/addons.cjs.js");require("../../../../api/generated/anatomy.cjs.js");require("../../../../api/generated/attributes.cjs.js");require("../../../../api/generated/authentication.cjs.js");require("../../../../api/generated/bundles.cjs.js");require("../../../../api/generated/configuration.cjs.js");require("../../../../api/generated/dataImport.cjs.js");require("../../../../api/generated/desktop.cjs.js");require("../../../../api/generated/entityLists.cjs.js");require("../../../../api/generated/events.cjs.js");require("../../../../api/generated/files.cjs.js");require("../../../../api/generated/folders.cjs.js");require("../../../../api/generated/inbox.cjs.js");require("../../../../api/generated/links.cjs.js");require("../../../../api/generated/market.cjs.js");require("../../../../api/generated/onboarding.cjs.js");require("../../../../api/generated/operations.cjs.js");require("../../../../api/generated/products.cjs.js");require("../../../../api/generated/projectDashboard.cjs.js");require("../../../../api/generated/projects.cjs.js");require("../../../../api/generated/projectFolders.cjs.js");require("../../../../api/generated/reviewables.cjs.js");require("../../../../api/generated/services.cjs.js");require("../../../../api/generated/system.cjs.js");require("../../../../api/generated/tasks.cjs.js");require("../../../../api/generated/teams.cjs.js");require("../../../../api/generated/thumbnails.cjs.js");require("../../../../api/generated/uRIs.cjs.js");require("../../../../api/generated/users.cjs.js");require("../../../../api/generated/versions.cjs.js");require("../../../../api/generated/workfiles.cjs.js");require("../../../../api/generated/ynputCloud.cjs.js");require("../../../../api/generated/grouping.cjs.js");require("../../../../api/generated/views.cjs.js");require("../../../../api/queries/actions/getActions.cjs.js");require("../../../../api/queries/activities/getActivities.cjs.js");require("../../../../api/queries/activities/updateActivities.cjs.js");require("../../../../api/queries/activities/updateReaction.cjs.js");require("../../../../api/queries/activities/getMentions.cjs.js");require("../../../../api/queries/activities/getCategories.cjs.js");require("../../../../api/queries/addons/getAddons.cjs.js");require("../../../../api/queries/addons/updateAddons.cjs.js");require("../../../../api/queries/attributes/getAttributes.cjs.js");require("../../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../../api/queries/cloud/cloud.cjs.js");require("../../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../../api/queries/config/getConfig.cjs.js");require("../../../../api/queries/config/updateConfig.cjs.js");require("../../../../api/queries/entities/getEntity.cjs.js");require("../../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../../api/queries/overview/getOverview.cjs.js");require("../../../../api/queries/overview/updateOverview.cjs.js");require("../../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../../api/queries/links/getEntityLinks.cjs.js");require("../../../../api/queries/entities/updateEntity.cjs.js");require("../../../../api/queries/entityLists/getLists.cjs.js");require("../../../../api/queries/entityLists/updateLists.cjs.js");require("../../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../../api/queries/entityLists/listFolders.cjs.js");require("../../../../api/queries/folders/getFolders.cjs.js");require("../../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../../api/queries/grouping/getGrouping.cjs.js");require("../../../../api/queries/links/updateLinks.cjs.js");require("../../../../api/queries/links/getLinks.cjs.js");require("../../../../api/queries/permissions/getPermissions.cjs.js");require("../../../../api/queries/products/createProduct.cjs.js");require("../../../../api/queries/products/getFolderProducts.cjs.js");require("../../../../api/queries/project/getProject.cjs.js");require("../../../../api/queries/project/updateProject.cjs.js");require("../../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../../api/queries/review/getReview.cjs.js");require("../../../../api/queries/review/updateReview.cjs.js");require("../../../../api/queries/share/share.cjs.js");require("../../../../api/queries/system/getSystem.cjs.js");require("../../../../api/queries/tasks/getTasks.cjs.js");require("../../../../api/queries/tasks/updateTasks.cjs.js");require("../../../../api/queries/teams/getTeams.cjs.js");require("../../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../../api/queries/users/getUsers.cjs.js");require("../../../../api/queries/users/updateUsers.cjs.js");require("../../../../api/queries/users/guests.cjs.js");require("../../../../api/queries/versions/updateVersions.cjs.js");require("../../../../api/queries/views/getViews.cjs.js");require("../../../../api/queries/views/updateViews.cjs.js");require("../../../../api/queries/watchers/getWatchers.cjs.js");require("../../../../api/queries/uris/getUris.cjs.js");require("../../../../../../_virtual/index.cjs.js");require("../../../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../../../util/pubsub.cjs.js");require("../../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../../../../components/DetailsPanelDetails/BorderedSection.cjs.js");require("../../../../components/QuillListStyles/QuillListStyles.cjs.js");require("../../../../components/DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("../../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../../../components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../../Feed/components/CommentInput/modules/index.cjs.js");require("../../../../context/RemoteModulesContext.cjs.js");require("../../../../../../_virtual/runtime.cjs.js");require("../../../../../../_virtual/semver.cjs.js");require("../../../../context/PowerpackContextInstance.cjs.js");require("../../../../context/UriContext.cjs.js");require("../../../../context/DetailsPanelContextInstance.cjs.js");require("../../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../../context/ThumbnailUploaderContext.cjs.js");require("../../../../context/SettingsPanelContext.cjs.js");require("../../../../context/pip/PiPProvider.cjs.js");require("../../../../context/pip/PiPWrapper.cjs.js");require("../../../../context/AddonProjectContext.cjs.js");require("../../../../context/AddonContext.cjs.js");require("../../../../context/MoveEntityContext.cjs.js");require("../../../../context/MenuContext.cjs.js");require("../../../../context/WebsocketContext.cjs.js");require("../../../../context/GlobalContext.cjs.js");require("../../../../context/ProjectContext.cjs.js");require("../../../../context/ProjectFoldersContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../../Feed/context/FeedContext.cjs.js");require("../../../Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../../Feed/components/Tooltips/TeamTooltip/TeamTooltip.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("remark-emoji");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/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/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../../Feed/Feed.styled.cjs.js");require("../../../Slicer/components/Slicer.cjs.js");require("../../../Slicer/context/SlicerContext.cjs.js");require("../../../Slicer/hooks/useTableDataBySlice.cjs.js");require("../../DetailsPanel.styled.cjs.js");require("../DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../../Actions/Actions.styled.cjs.js");require("../../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../../Actions/ActionIcon.cjs.js");require("../../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../Views/context/ViewsContextInstance.cjs.js");require("../../../Views/Views.styled.cjs.js");require("../../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../../components/SearchFilter/filterDates.cjs.js");require("short-uuid");require("../../../ProjectTreeTable/context/CellEditingContext.cjs.js");require("../../../ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../../ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../../ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../../ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../../ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../../../ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../../ProjectTreeTable/components/DeleteConfirmContent.cjs.js");require("../../../ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../../ListTable/ListTableRow.cjs.js");require("../../../ListTable/ListTable.styled.cjs.js");require("../../../ProjectTreeTable/components/HeaderActionButton.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/FeedbackContextInstance.cjs.js");require("../../../../components/Feedback/SupportBubble.cjs.js");require("../../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../../components/Powerpack/FreeTrialLink.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/SettingsPanel/SettingsPanel.cjs.js");require("../../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../../components/SimpleFormDialog/SimpleFormDialog.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");require("../../../../components/ReviewablesSelector/ReviewablesSelector.cjs.js");require("../../../../components/ColumnHeaderMenuUI.cjs.js");require("../../../ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../../ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../../ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../../ProjectTreeTable/components/SelectionCell.cjs.js");require("../../../ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../../ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../../ProjectTreeTable/components/TableFooterRow.cjs.js");const e=require("styled-components"),u=e.div`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../../../../_virtual/jsx-runtime.cjs.js");require("react");require("@tanstack/react-virtual");require("@tanstack/react-table");require("clsx");require("../../../ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../../ProjectTreeTable/widgets/DateWidget.cjs.js");const i=require("../../../ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../../../ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../../ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../../../ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../../ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../../ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../../ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../../ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");const r=require("@ynput/ayon-react-components");require("../../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../../components/AccessUser/AccessUser.cjs.js");require("../../../../components/AttributeEditor/AttributeEditor.cjs.js");require("../../../../components/AttributeEditor/attributeTypeMap.cjs.js");require("../../../../components/Badge/Badge.cjs.js");require("../../../../components/Chips/Chips.cjs.js");require("react-dom");require("date-fns");require("../../../../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../../../../components/LinksManager/CellEditingDialog.cjs.js");require("react-toastify");require("../../../../api/base/client.cjs.js");require("../../../../api/generated/graphql.cjs.js");require("../../../../api/generated/graphqlLinks.cjs.js");require("../../../../api/generated/access.cjs.js");require("../../../../api/generated/actions.cjs.js");require("../../../../api/generated/activityFeed.cjs.js");require("../../../../api/generated/addons.cjs.js");require("../../../../api/generated/anatomy.cjs.js");require("../../../../api/generated/attributes.cjs.js");require("../../../../api/generated/authentication.cjs.js");require("../../../../api/generated/bundles.cjs.js");require("../../../../api/generated/configuration.cjs.js");require("../../../../api/generated/dataImport.cjs.js");require("../../../../api/generated/desktop.cjs.js");require("../../../../api/generated/entityLists.cjs.js");require("../../../../api/generated/events.cjs.js");require("../../../../api/generated/files.cjs.js");require("../../../../api/generated/folders.cjs.js");require("../../../../api/generated/inbox.cjs.js");require("../../../../api/generated/links.cjs.js");require("../../../../api/generated/market.cjs.js");require("../../../../api/generated/onboarding.cjs.js");require("../../../../api/generated/operations.cjs.js");require("../../../../api/generated/products.cjs.js");require("../../../../api/generated/projectDashboard.cjs.js");require("../../../../api/generated/projects.cjs.js");require("../../../../api/generated/projectFolders.cjs.js");require("../../../../api/generated/reviewables.cjs.js");require("../../../../api/generated/services.cjs.js");require("../../../../api/generated/system.cjs.js");require("../../../../api/generated/tasks.cjs.js");require("../../../../api/generated/teams.cjs.js");require("../../../../api/generated/thumbnails.cjs.js");require("../../../../api/generated/uRIs.cjs.js");require("../../../../api/generated/users.cjs.js");require("../../../../api/generated/versions.cjs.js");require("../../../../api/generated/workfiles.cjs.js");require("../../../../api/generated/ynputCloud.cjs.js");require("../../../../api/generated/grouping.cjs.js");require("../../../../api/generated/views.cjs.js");require("../../../../api/queries/actions/getActions.cjs.js");require("../../../../api/queries/activities/getActivities.cjs.js");require("../../../../api/queries/activities/updateActivities.cjs.js");require("../../../../api/queries/activities/updateReaction.cjs.js");require("../../../../api/queries/activities/getMentions.cjs.js");require("../../../../api/queries/activities/getCategories.cjs.js");require("../../../../api/queries/addons/getAddons.cjs.js");require("../../../../api/queries/addons/updateAddons.cjs.js");require("../../../../api/queries/attributes/getAttributes.cjs.js");require("../../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../../api/queries/cloud/cloud.cjs.js");require("../../../../api/queries/columnStats/metricTargets.cjs.js");require("../../../../api/queries/config/getConfig.cjs.js");require("../../../../api/queries/config/updateConfig.cjs.js");require("../../../../api/queries/entities/getEntity.cjs.js");require("../../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../../api/queries/overview/getOverview.cjs.js");require("../../../../api/queries/overview/updateOverview.cjs.js");require("../../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../../api/queries/links/getEntityLinks.cjs.js");require("../../../../api/queries/entities/updateEntity.cjs.js");require("../../../../api/queries/entityLists/getLists.cjs.js");require("../../../../api/queries/entityLists/updateLists.cjs.js");require("../../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../../api/queries/entityLists/listFolders.cjs.js");require("../../../../api/queries/folders/getFolders.cjs.js");require("../../../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../../../api/queries/grouping/getGrouping.cjs.js");require("../../../../api/queries/links/updateLinks.cjs.js");require("../../../../api/queries/links/getLinks.cjs.js");require("../../../../api/queries/permissions/getPermissions.cjs.js");require("../../../../api/queries/products/createProduct.cjs.js");require("../../../../api/queries/products/getFolderProducts.cjs.js");require("../../../../api/queries/project/getProject.cjs.js");require("../../../../api/queries/project/updateProject.cjs.js");require("../../../../api/queries/projectFolders/projectFolders.cjs.js");require("../../../../api/queries/review/getReview.cjs.js");require("../../../../api/queries/review/updateReview.cjs.js");require("../../../../api/queries/share/share.cjs.js");require("../../../../api/queries/system/getSystem.cjs.js");require("../../../../api/queries/tasks/getTasks.cjs.js");require("../../../../api/queries/tasks/updateTasks.cjs.js");require("../../../../api/queries/teams/getTeams.cjs.js");require("../../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../../api/queries/users/getUsers.cjs.js");require("../../../../api/queries/users/updateUsers.cjs.js");require("../../../../api/queries/users/guests.cjs.js");require("../../../../api/queries/versions/updateVersions.cjs.js");require("../../../../api/queries/views/getViews.cjs.js");require("../../../../api/queries/views/updateViews.cjs.js");require("../../../../api/queries/watchers/getWatchers.cjs.js");require("../../../../api/queries/uris/getUris.cjs.js");require("../../../../../../_virtual/index.cjs.js");require("../../../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../../../util/pubsub.cjs.js");require("../../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../../../../components/DetailsPanelDetails/BorderedSection.cjs.js");require("../../../../components/QuillListStyles/QuillListStyles.cjs.js");require("../../../../components/DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("../../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../../../components/DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../../Feed/components/CommentInput/modules/index.cjs.js");require("../../../../context/RemoteModulesContext.cjs.js");require("../../../../../../_virtual/runtime.cjs.js");require("../../../../../../_virtual/semver.cjs.js");require("../../../../context/PowerpackContextInstance.cjs.js");require("../../../../context/UriContext.cjs.js");require("../../../../context/DetailsPanelContextInstance.cjs.js");require("../../../../context/SubtasksModulesContextInstance.cjs.js");require("../../../../context/ThumbnailUploaderContext.cjs.js");require("../../../../context/SettingsPanelContext.cjs.js");require("../../../../context/pip/PiPProvider.cjs.js");require("../../../../context/pip/PiPWrapper.cjs.js");require("../../../../context/AddonProjectContext.cjs.js");require("../../../../context/AddonContext.cjs.js");require("../../../../context/MoveEntityContext.cjs.js");require("../../../../context/MenuContext.cjs.js");require("../../../../context/WebsocketContext.cjs.js");require("../../../../context/GlobalContext.cjs.js");require("../../../../context/ProjectContext.cjs.js");require("../../../../context/ProjectFoldersContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../../ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../../Feed/context/FeedContext.cjs.js");require("../../../Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../../Feed/components/Tooltips/TeamTooltip/TeamTooltip.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("remark-emoji");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/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/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../../Feed/Feed.styled.cjs.js");require("../../../Feed/components/FeedSearchFilter.cjs.js");require("../../../Slicer/components/Slicer.cjs.js");require("../../../Slicer/context/SlicerContext.cjs.js");require("../../../Slicer/hooks/useTableDataBySlice.cjs.js");require("../../DetailsPanel.styled.cjs.js");require("../DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../SubtasksSearchFilter/SubtasksSearchFilter.cjs.js");require("../../../../components/SearchFilter/filterDates.cjs.js");require("../DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../../Actions/Actions.styled.cjs.js");require("../../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../../Actions/ActionIcon.cjs.js");require("../../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../Views/context/ViewsContextInstance.cjs.js");require("../../../Views/Views.styled.cjs.js");require("../../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("short-uuid");require("../../../ProjectTreeTable/context/CellEditingContext.cjs.js");require("../../../ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../../ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../../ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../../ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../../ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../../ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../../../ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../../ProjectTreeTable/components/DeleteConfirmContent.cjs.js");require("../../../ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../../ListTable/ListTableRow.cjs.js");require("../../../ListTable/ListTable.styled.cjs.js");require("../../../ProjectTreeTable/components/HeaderActionButton.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/FeedbackContextInstance.cjs.js");require("../../../../components/Feedback/SupportBubble.cjs.js");require("../../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../../components/Powerpack/FreeTrialLink.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/CustomDateRangeDialog.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/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");require("../../../../components/ReviewablesSelector/ReviewablesSelector.cjs.js");require("../../../../components/ColumnHeaderMenuUI.cjs.js");require("../../../ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../../ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../../ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../../ProjectTreeTable/components/SelectionCell.cjs.js");require("../../../ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../../ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../../ProjectTreeTable/components/TableFooterRow.cjs.js");const e=require("styled-components"),u=e.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: center;
|
|
4
4
|
padding: 4px 8px;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabHeaderAndFilters.styled.cjs.js","sources":["../../../../../../../src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.ts"],"sourcesContent":["import { EnumWidget } from '@shared/containers/ProjectTreeTable'\nimport { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\n\nexport const HeaderContainer = styled.div`\n display: flex;\n align-items: center;\n padding: 4px 8px;\n gap: var(--base-gap-small);\n`\n\nexport const HeaderLabel = styled.span`\n font-weight: 600;\n user-select: none;\n`\n\nexport const FiltersContainer = styled.div`\n display: flex;\n gap: var(--base-gap-small);\n`\n\nexport const FilterButton = styled(Button)`\n background-color: unset;\n &.hasIcon {\n padding: 4px;\n }\n`\n\nexport const SearchFilterContainer = styled.div`\n display: flex;\n align-items: center;\n gap: var(--base-gap-small);\n border-radius: var(--border-radius-m);\n overflow: hidden;\n transition: width 0.2s ease;\n width: 28px;\n height: 28px;\n box-shadow: none;\n padding-right: 4px;\n\n &.expanded {\n width: 200px;\n box-shadow: 0 0 0 1px var(--md-sys-color-primary-container);\n background-color: var(--md-sys-color-surface-container-lowest);\n }\n`\n\nexport const Options = styled(EnumWidget)`\n width: 28px;\n height: 28px;\n`\n\nexport const SearchInput = styled.input`\n flex: 1;\n min-width: 0;\n border: none;\n outline: none;\n background: transparent;\n color: var(--md-sys-color-on-surface);\n font-size: var(--md-sys-typescale-body-medium-size);\n padding: 4px 0;\n\n &::placeholder {\n color: var(--md-sys-color-outline);\n }\n`\n\nexport const ClearButton = styled(Button)`\n background-color: unset;\n min-width: unset;\n &.hasIcon {\n padding: 2px;\n }\n`\n"],"names":["HeaderContainer","styled","HeaderLabel","FiltersContainer","FilterButton","Button","SearchFilterContainer","Options","EnumWidget","SearchInput","ClearButton"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TabHeaderAndFilters.styled.cjs.js","sources":["../../../../../../../src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.ts"],"sourcesContent":["import { EnumWidget } from '@shared/containers/ProjectTreeTable'\nimport { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\n\nexport const HeaderContainer = styled.div`\n display: flex;\n align-items: center;\n padding: 4px 8px;\n gap: var(--base-gap-small);\n`\n\nexport const HeaderLabel = styled.span`\n font-weight: 600;\n user-select: none;\n`\n\nexport const FiltersContainer = styled.div`\n display: flex;\n gap: var(--base-gap-small);\n`\n\nexport const FilterButton = styled(Button)`\n background-color: unset;\n &.hasIcon {\n padding: 4px;\n }\n`\n\nexport const SearchFilterContainer = styled.div`\n display: flex;\n align-items: center;\n gap: var(--base-gap-small);\n border-radius: var(--border-radius-m);\n overflow: hidden;\n transition: width 0.2s ease;\n width: 28px;\n height: 28px;\n box-shadow: none;\n padding-right: 4px;\n\n &.expanded {\n width: 200px;\n box-shadow: 0 0 0 1px var(--md-sys-color-primary-container);\n background-color: var(--md-sys-color-surface-container-lowest);\n }\n`\n\nexport const Options = styled(EnumWidget)`\n width: 28px;\n height: 28px;\n`\n\nexport const SearchInput = styled.input`\n flex: 1;\n min-width: 0;\n border: none;\n outline: none;\n background: transparent;\n color: var(--md-sys-color-on-surface);\n font-size: var(--md-sys-typescale-body-medium-size);\n padding: 4px 0;\n\n &::placeholder {\n color: var(--md-sys-color-outline);\n }\n`\n\nexport const ClearButton = styled(Button)`\n background-color: unset;\n min-width: unset;\n &.hasIcon {\n padding: 2px;\n }\n`\n"],"names":["HeaderContainer","styled","HeaderLabel","FiltersContainer","FilterButton","Button","SearchFilterContainer","Options","EnumWidget","SearchInput","ClearButton"],"mappings":"mnjBAIaA,EAAkBC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA,EAOzBC,EAAcD,EAAO;AAAA;AAAA;AAAA,EAKrBE,EAAmBF,EAAO;AAAA;AAAA;AAAA,EAK1BG,EAAeH,EAAOI,QAAM;AAAA;AAAA;AAAA;AAAA;AAAA,EAO5BC,EAAwBL,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAmB/BM,EAAUN,EAAOO,YAAU;AAAA;AAAA;AAAA,EAK3BC,EAAcR,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAerBS,EAAcT,EAAOI,QAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA"}
|
|
@@ -205,6 +205,7 @@ import "../../../Feed/components/ActivityVersionReview/ActivityVersionReview.sty
|
|
|
205
205
|
import "../../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
|
|
206
206
|
import "../../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
|
|
207
207
|
import "../../../Feed/Feed.styled.es.js";
|
|
208
|
+
import "../../../Feed/components/FeedSearchFilter.es.js";
|
|
208
209
|
import "../../../Slicer/components/Slicer.es.js";
|
|
209
210
|
import "../../../Slicer/context/SlicerContext.es.js";
|
|
210
211
|
import "../../../Slicer/hooks/useTableDataBySlice.es.js";
|
|
@@ -214,6 +215,8 @@ import "../DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
|
|
|
214
215
|
import "../../../../components/PlayableIcon/PlayableIcon.es.js";
|
|
215
216
|
import "../DetailsPanelFiles/DetailsPanelFiles.es.js";
|
|
216
217
|
import "../DetailsPanelMoreMenu/components/ShareDialog.es.js";
|
|
218
|
+
import "../SubtasksSearchFilter/SubtasksSearchFilter.es.js";
|
|
219
|
+
import "../../../../components/SearchFilter/filterDates.es.js";
|
|
217
220
|
import "../DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js";
|
|
218
221
|
import "../DetailsPanelFloating/DetailsPanelFloating.styled.es.js";
|
|
219
222
|
import "../../../Actions/Actions.styled.es.js";
|
|
@@ -224,7 +227,6 @@ import "../../../Views/context/ViewsContextInstance.es.js";
|
|
|
224
227
|
import "../../../Views/Views.styled.es.js";
|
|
225
228
|
import "../../../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
|
|
226
229
|
import "../../../EntityPickerDialog/EntityPickerDialog.es.js";
|
|
227
|
-
import "../../../../components/SearchFilter/filterDates.es.js";
|
|
228
230
|
import "short-uuid";
|
|
229
231
|
import "../../../ProjectTreeTable/context/CellEditingContext.es.js";
|
|
230
232
|
import "../../../ProjectTreeTable/context/SelectionCellsContext.es.js";
|
|
@@ -260,6 +262,7 @@ import "../../../../components/ProjectTableSettings/ProjectTableSettings.es.js";
|
|
|
260
262
|
import "../../../../components/SizeSlider/SizeSlider.es.js";
|
|
261
263
|
import "../../../../components/ReviewableCard/ReviewableCard.es.js";
|
|
262
264
|
import "../../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
265
|
+
import "../../../../components/SearchFilter/CustomDateRangeDialog.es.js";
|
|
263
266
|
import "../../../../components/SettingsPanel/SettingsPanel.es.js";
|
|
264
267
|
import "../../../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
|
|
265
268
|
import "../../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
|
|
@@ -284,23 +287,23 @@ import "../../../ProjectTreeTable/components/RowSelectionHeader.es.js";
|
|
|
284
287
|
import "../../../ProjectTreeTable/widgets/LoadMoreWidget.es.js";
|
|
285
288
|
import "../../../ProjectTreeTable/components/TableFooterRow.es.js";
|
|
286
289
|
import o from "styled-components";
|
|
287
|
-
const
|
|
290
|
+
const Cp = o.div`
|
|
288
291
|
display: flex;
|
|
289
292
|
align-items: center;
|
|
290
293
|
padding: 4px 8px;
|
|
291
294
|
gap: var(--base-gap-small);
|
|
292
|
-
`,
|
|
295
|
+
`, Bp = o.span`
|
|
293
296
|
font-weight: 600;
|
|
294
297
|
user-select: none;
|
|
295
|
-
`,
|
|
298
|
+
`, Fp = o.div`
|
|
296
299
|
display: flex;
|
|
297
300
|
gap: var(--base-gap-small);
|
|
298
|
-
`,
|
|
301
|
+
`, Ip = o(r)`
|
|
299
302
|
background-color: unset;
|
|
300
303
|
&.hasIcon {
|
|
301
304
|
padding: 4px;
|
|
302
305
|
}
|
|
303
|
-
`,
|
|
306
|
+
`, zp = o.div`
|
|
304
307
|
display: flex;
|
|
305
308
|
align-items: center;
|
|
306
309
|
gap: var(--base-gap-small);
|
|
@@ -317,10 +320,10 @@ const yp = o.div`
|
|
|
317
320
|
box-shadow: 0 0 0 1px var(--md-sys-color-primary-container);
|
|
318
321
|
background-color: var(--md-sys-color-surface-container-lowest);
|
|
319
322
|
}
|
|
320
|
-
`,
|
|
323
|
+
`, Hp = o(t)`
|
|
321
324
|
width: 28px;
|
|
322
325
|
height: 28px;
|
|
323
|
-
`,
|
|
326
|
+
`, Sp = o.input`
|
|
324
327
|
flex: 1;
|
|
325
328
|
min-width: 0;
|
|
326
329
|
border: none;
|
|
@@ -333,7 +336,7 @@ const yp = o.div`
|
|
|
333
336
|
&::placeholder {
|
|
334
337
|
color: var(--md-sys-color-outline);
|
|
335
338
|
}
|
|
336
|
-
`,
|
|
339
|
+
`, Ep = o(r)`
|
|
337
340
|
background-color: unset;
|
|
338
341
|
min-width: unset;
|
|
339
342
|
&.hasIcon {
|
|
@@ -341,13 +344,13 @@ const yp = o.div`
|
|
|
341
344
|
}
|
|
342
345
|
`;
|
|
343
346
|
export {
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
347
|
+
Ep as ClearButton,
|
|
348
|
+
Ip as FilterButton,
|
|
349
|
+
Fp as FiltersContainer,
|
|
350
|
+
Cp as HeaderContainer,
|
|
351
|
+
Bp as HeaderLabel,
|
|
352
|
+
Hp as Options,
|
|
353
|
+
zp as SearchFilterContainer,
|
|
354
|
+
Sp as SearchInput
|
|
352
355
|
};
|
|
353
356
|
//# sourceMappingURL=TabHeaderAndFilters.styled.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabHeaderAndFilters.styled.es.js","sources":["../../../../../../../src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.ts"],"sourcesContent":["import { EnumWidget } from '@shared/containers/ProjectTreeTable'\nimport { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\n\nexport const HeaderContainer = styled.div`\n display: flex;\n align-items: center;\n padding: 4px 8px;\n gap: var(--base-gap-small);\n`\n\nexport const HeaderLabel = styled.span`\n font-weight: 600;\n user-select: none;\n`\n\nexport const FiltersContainer = styled.div`\n display: flex;\n gap: var(--base-gap-small);\n`\n\nexport const FilterButton = styled(Button)`\n background-color: unset;\n &.hasIcon {\n padding: 4px;\n }\n`\n\nexport const SearchFilterContainer = styled.div`\n display: flex;\n align-items: center;\n gap: var(--base-gap-small);\n border-radius: var(--border-radius-m);\n overflow: hidden;\n transition: width 0.2s ease;\n width: 28px;\n height: 28px;\n box-shadow: none;\n padding-right: 4px;\n\n &.expanded {\n width: 200px;\n box-shadow: 0 0 0 1px var(--md-sys-color-primary-container);\n background-color: var(--md-sys-color-surface-container-lowest);\n }\n`\n\nexport const Options = styled(EnumWidget)`\n width: 28px;\n height: 28px;\n`\n\nexport const SearchInput = styled.input`\n flex: 1;\n min-width: 0;\n border: none;\n outline: none;\n background: transparent;\n color: var(--md-sys-color-on-surface);\n font-size: var(--md-sys-typescale-body-medium-size);\n padding: 4px 0;\n\n &::placeholder {\n color: var(--md-sys-color-outline);\n }\n`\n\nexport const ClearButton = styled(Button)`\n background-color: unset;\n min-width: unset;\n &.hasIcon {\n padding: 2px;\n }\n`\n"],"names":["HeaderContainer","styled","HeaderLabel","FiltersContainer","FilterButton","Button","SearchFilterContainer","Options","EnumWidget","SearchInput","ClearButton"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TabHeaderAndFilters.styled.es.js","sources":["../../../../../../../src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.ts"],"sourcesContent":["import { EnumWidget } from '@shared/containers/ProjectTreeTable'\nimport { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\n\nexport const HeaderContainer = styled.div`\n display: flex;\n align-items: center;\n padding: 4px 8px;\n gap: var(--base-gap-small);\n`\n\nexport const HeaderLabel = styled.span`\n font-weight: 600;\n user-select: none;\n`\n\nexport const FiltersContainer = styled.div`\n display: flex;\n gap: var(--base-gap-small);\n`\n\nexport const FilterButton = styled(Button)`\n background-color: unset;\n &.hasIcon {\n padding: 4px;\n }\n`\n\nexport const SearchFilterContainer = styled.div`\n display: flex;\n align-items: center;\n gap: var(--base-gap-small);\n border-radius: var(--border-radius-m);\n overflow: hidden;\n transition: width 0.2s ease;\n width: 28px;\n height: 28px;\n box-shadow: none;\n padding-right: 4px;\n\n &.expanded {\n width: 200px;\n box-shadow: 0 0 0 1px var(--md-sys-color-primary-container);\n background-color: var(--md-sys-color-surface-container-lowest);\n }\n`\n\nexport const Options = styled(EnumWidget)`\n width: 28px;\n height: 28px;\n`\n\nexport const SearchInput = styled.input`\n flex: 1;\n min-width: 0;\n border: none;\n outline: none;\n background: transparent;\n color: var(--md-sys-color-on-surface);\n font-size: var(--md-sys-typescale-body-medium-size);\n padding: 4px 0;\n\n &::placeholder {\n color: var(--md-sys-color-outline);\n }\n`\n\nexport const ClearButton = styled(Button)`\n background-color: unset;\n min-width: unset;\n &.hasIcon {\n padding: 2px;\n }\n`\n"],"names":["HeaderContainer","styled","HeaderLabel","FiltersContainer","FilterButton","Button","SearchFilterContainer","Options","EnumWidget","SearchInput","ClearButton"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,MAAMA,KAAkBC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA,GAOzBC,KAAcD,EAAO;AAAA;AAAA;AAAA,GAKrBE,KAAmBF,EAAO;AAAA;AAAA;AAAA,GAK1BG,KAAeH,EAAOI,CAAM;AAAA;AAAA;AAAA;AAAA;AAAA,GAO5BC,KAAwBL,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAmB/BM,KAAUN,EAAOO,CAAU;AAAA;AAAA;AAAA,GAK3BC,KAAcR,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAerBS,KAAcT,EAAOI,CAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
|