@ynput/ayon-frontend-shared 0.3.26 → 0.3.28
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 +25 -23
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +404 -190
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +19 -18
- package/dist/Slicer.es.js.map +1 -1
- package/dist/_virtual/index.cjs14.js +1 -1
- package/dist/_virtual/index.cjs8.js +1 -1
- package/dist/_virtual/index.es14.js +5 -2
- package/dist/_virtual/index.es14.js.map +1 -1
- package/dist/_virtual/index.es8.js +2 -5
- package/dist/_virtual/index.es8.js.map +1 -1
- package/dist/api.cjs.js +1 -1
- package/dist/api.es.js +406 -402
- package/dist/api.es.js.map +1 -1
- package/dist/hooks.cjs.js +1 -1
- package/dist/hooks.es.js +15 -13
- package/dist/hooks.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +12 -10
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
- package/dist/node_modules/parse-numeric-range/index.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/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/utils.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/utils.es.js +1 -1
- package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
- package/dist/shared/node_modules/react-is/index.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js.map +1 -1
- package/dist/shared/src/api/base/client.es.js +1 -0
- package/dist/shared/src/api/base/client.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +58 -36
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +125 -99
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js +69 -9
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.es.js +95 -35
- package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
- package/dist/shared/src/api/generated/projectFolders.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/projectFolders.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js +20 -19
- package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +4 -3
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
- package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.cjs.js +2 -0
- package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.es.js +64 -0
- package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.es.js.map +1 -0
- package/dist/shared/src/api/queries/links/getLinks.cjs.js +1 -1
- package/dist/shared/src/api/queries/links/getLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/links/getLinks.es.js +27 -26
- package/dist/shared/src/api/queries/links/getLinks.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 +104 -103
- package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.es.js +118 -111
- package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/project/updateProject.cjs.js +1 -1
- package/dist/shared/src/api/queries/project/updateProject.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/project/updateProject.es.js +43 -19
- package/dist/shared/src/api/queries/project/updateProject.es.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
- package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.es.js +22 -21
- package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
- package/dist/shared/src/api/queries/views/getViews.cjs.js +1 -1
- package/dist/shared/src/api/queries/views/getViews.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/views/getViews.es.js +24 -20
- package/dist/shared/src/api/queries/views/getViews.es.js.map +1 -1
- package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js +1 -1
- package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js.map +1 -1
- package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js +89 -88
- package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +6 -2
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +5 -2
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +9 -7
- 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 +5 -3
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/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 +9 -7
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +3 -2
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +5 -3
- package/dist/shared/src/components/Powerpack/PowerpackDialog.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 +46 -43
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +5 -3
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +5 -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 +23 -21
- 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 +9 -7
- package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +5 -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 +6 -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 +5 -3
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js +5 -2
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js +67 -77
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +192 -141
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +7 -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 +5 -3
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +3 -2
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +41 -44
- package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +4 -4
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +5 -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 +7 -5
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
- package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +5 -3
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.es.js +5 -2
- package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +5 -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 +5 -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 +5 -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 +5 -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 +5 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +20 -18
- 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 +5 -3
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -3
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +5 -2
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +5 -2
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +2 -2
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +67 -64
- 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 +5 -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 +5 -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 +5 -3
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +5 -2
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.es.js +5 -4
- package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +5 -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 +5 -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 +5 -3
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +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 -3
- 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 +9 -7
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +5 -3
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +3 -2
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
- package/dist/shared/src/containers/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 +565 -563
- 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 +61 -50
- 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 +9 -7
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +104 -102
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js +10 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.es.js +25 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.es.js.map +1 -0
- 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 +5 -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 +114 -112
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +3 -3
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +8 -8
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/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 +21 -19
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +113 -111
- 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 +109 -107
- 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 +106 -105
- 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 +107 -105
- 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 +101 -99
- 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 +337 -40
- 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 +123 -119
- 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 +100 -98
- 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 +125 -120
- 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 +103 -101
- 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 +9 -7
- 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 +9 -7
- 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 +112 -110
- 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 +100 -98
- 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 +110 -108
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/expandRelativeDates.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/expandRelativeDates.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 +89 -356
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +41 -39
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js +29 -28
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js +31 -32
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +7 -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 +98 -96
- 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 +5 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +5 -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 +5 -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 +5 -3
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +53 -49
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/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 +9 -7
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js +21 -149
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +54 -53
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +5 -2
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +10 -8
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js +23 -20
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +8 -5
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +32 -26
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
- package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.es.js +7 -4
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.es.js +5 -4
- package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.es.js +9 -6
- package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.es.js +5 -4
- package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.es.js +7 -4
- package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
- package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.es.js +7 -4
- package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/UriContext.cjs.js +1 -1
- package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
- package/dist/shared/src/context/UriContext.es.js +6 -5
- package/dist/shared/src/context/UriContext.es.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.es.js +7 -5
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
- package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -2
- package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
- package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +5 -2
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js +2 -0
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js.map +1 -0
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js +31 -0
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js.map +1 -0
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
- package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.es.js +3 -2
- package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/shared/src/util/buildHierarchicalTableRows.cjs.js +1 -1
- package/dist/shared/src/util/buildHierarchicalTableRows.cjs.js.map +1 -1
- package/dist/shared/src/util/buildHierarchicalTableRows.es.js +43 -44
- package/dist/shared/src/util/buildHierarchicalTableRows.es.js.map +1 -1
- package/dist/shared/src/util/confirmDelete.cjs.js.map +1 -1
- package/dist/shared/src/util/confirmDelete.es.js.map +1 -1
- package/dist/shared/src/util/formatUTCDate.cjs.js +2 -0
- package/dist/shared/src/util/formatUTCDate.cjs.js.map +1 -0
- package/dist/shared/src/util/formatUTCDate.es.js +9 -0
- package/dist/shared/src/util/formatUTCDate.es.js.map +1 -0
- package/dist/shared/src/util/getProjectDisplayName.cjs.js +2 -0
- package/dist/shared/src/util/getProjectDisplayName.cjs.js.map +1 -0
- package/dist/shared/src/util/getProjectDisplayName.es.js +5 -0
- package/dist/shared/src/util/getProjectDisplayName.es.js.map +1 -0
- package/dist/types/api/generated/graphql.d.ts +38 -0
- package/dist/types/api/generated/graphqlLinks.d.ts +10 -4
- package/dist/types/api/generated/projectFolders.d.ts +1 -0
- package/dist/types/api/queries/activities/getActivities.d.ts +7 -0
- package/dist/types/api/queries/activities/updateActivities.d.ts +14 -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 +7 -0
- package/dist/types/api/queries/folders/getFolderDeleteInfo.d.ts +566 -0
- package/dist/types/api/queries/folders/index.d.ts +1 -0
- package/dist/types/api/queries/links/getLinks.d.ts +1 -0
- package/dist/types/api/queries/overview/getOverview.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 +14 -0
- package/dist/types/components/ProjectTableSettings/ProjectTableSettings.d.ts +1 -0
- package/dist/types/components/ReviewablesSelector/ReviewablesSelector.d.ts +7 -2
- package/dist/types/components/ReviewablesSelector/index.d.ts +1 -0
- package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +2 -1
- package/dist/types/containers/EntityPickerDialog/EntityPickerDialog.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/components/DeleteConfirmContent.d.ts +6 -0
- package/dist/types/containers/ProjectTreeTable/utils/expandRelativeDates.d.ts +1 -1
- package/dist/types/containers/Slicer/context/SlicerContext.d.ts +1 -0
- package/dist/types/containers/Slicer/hooks/useSlicerViewSync.d.ts +3 -7
- package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +2 -0
- package/dist/types/hooks/index.d.ts +1 -0
- package/dist/types/hooks/useReviewablesKeyboardNavigation.d.ts +13 -0
- package/dist/types/util/buildHierarchicalTableRows.d.ts +2 -0
- package/dist/types/util/confirmDelete.d.ts +1 -1
- package/dist/types/util/formatUTCDate.d.ts +1 -0
- package/dist/types/util/getProjectDisplayName.d.ts +6 -0
- package/dist/types/util/index.d.ts +1 -0
- package/dist/util.cjs.js +1 -1
- package/dist/util.es.js +23 -21
- package/dist/util.es.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cellUtils.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/cellUtils.ts"],"sourcesContent":["/**\n * Shared cell utilities for table operations\n */\n\nimport { TaskLink } from '@shared/api'\nimport { parseRowId } from '../context'\nimport { EMapResult, EntitiesMap } from '../types'\n\n// Type definitions for cell identifiers\nexport type CellId = string\nexport type RowId = string\nexport type ColId = string\n\n// Cell position in the grid\nexport interface CellPosition {\n rowId: RowId\n colId: ColId\n}\n\n// Cell border position flags - used for determining which borders to show\nexport enum BorderPosition {\n None = 0,\n Top = 1 << 0,\n Right = 1 << 1,\n Bottom = 1 << 2,\n Left = 1 << 3,\n All = Top | Right | Bottom | Left,\n}\n\n/**\n * Create a standardized cell ID from row and column IDs\n */\nexport const getCellId = (rowId: RowId, colId: ColId): CellId => `cell-${rowId}-${colId}`\n\n/**\n * Parse a cell ID to extract row and column IDs\n * @returns CellPosition or null if invalid format\n */\nexport const parseCellId = (cellId: CellId): CellPosition | null => {\n const match = cellId.match(/^cell-(.+)-(.+)$/)\n if (!match) return null\n return { rowId: match[1], colId: match[2] }\n}\n\nexport const getCellValue = (obj: any, path: string): any => {\n if (!obj || !path) return undefined\n\n const parts = path.split('_')\n let current = obj\n\n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part]\n } else {\n return undefined // Return undefined if any part of the path is invalid\n }\n }\n\n return current\n}\n\n// return the link entity ids for a given column id\nexport const getLinkEntityIdsByColumnId = (links: TaskLink[], columnId: CellId): string => {\n // split the columnId\n const [_link, linkType, _inType, _outType, direction] = columnId.split('_')\n const cellLinks = links.filter(\n (link) => link.linkType === linkType && link.direction === direction,\n )\n if (cellLinks.length) {\n return cellLinks.map((link) => link.node.id).join(',')\n } else {\n return ''\n }\n}\n\n/**\n * Determines which borders to display for a selected cell\n * based on its position within the selection grid\n *\n * @param rowIndex Current cell's row index\n * @param colIndex Current cell's column index\n * @param selectedCells 2D array representing selection state (true = selected)\n * @returns BorderPosition flags indicating which borders to display\n */\nexport const getCellBorders = (\n rowIndex: number,\n colIndex: number,\n selectedCells: boolean[][],\n): BorderPosition => {\n if (!selectedCells[rowIndex]?.[colIndex]) {\n return BorderPosition.None\n }\n\n let borders = BorderPosition.None\n\n // Check top border\n if (rowIndex === 0 || !selectedCells[rowIndex - 1]?.[colIndex]) {\n borders |= BorderPosition.Top\n }\n\n // Check right border\n if (!selectedCells[rowIndex]?.[colIndex + 1]) {\n borders |= BorderPosition.Right\n }\n\n // Check bottom border\n if (!selectedCells[rowIndex + 1]?.[colIndex]) {\n borders |= BorderPosition.Bottom\n }\n\n // Check left border\n if (colIndex === 0 || !selectedCells[rowIndex]?.[colIndex - 1]) {\n borders |= BorderPosition.Left\n }\n\n return borders\n}\n\n/**\n * Converts border position flags to CSS classes for shadow styling\n */\nexport const getBorderClasses = (borders: BorderPosition): string[] => {\n const classes: string[] = []\n\n if (borders & BorderPosition.Top) classes.push('shadow-top')\n if (borders & BorderPosition.Right) classes.push('shadow-right')\n if (borders & BorderPosition.Bottom) classes.push('shadow-bottom')\n if (borders & BorderPosition.Left) classes.push('shadow-left')\n\n return classes\n}\n\n// get a entity from it's id\nexport const getEntityDataById = <T extends 'folder' | 'task' | 'product' | 'version'>(\n id: string,\n entitiesMap: EntitiesMap,\n) => entitiesMap.get(parseRowId(id)) as EMapResult<T> | undefined\n"],"names":["BorderPosition","getCellId","rowId","colId","parseCellId","cellId","match","getCellValue","obj","path","parts","current","part","getLinkEntityIdsByColumnId","links","columnId","_link","linkType","_inType","_outType","direction","cellLinks","link","getCellBorders","rowIndex","colIndex","selectedCells","borders","getBorderClasses","classes","getEntityDataById","id","entitiesMap","parseRowId"],"mappings":"
|
|
1
|
+
{"version":3,"file":"cellUtils.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/cellUtils.ts"],"sourcesContent":["/**\n * Shared cell utilities for table operations\n */\n\nimport { TaskLink } from '@shared/api'\nimport { parseRowId } from '../context'\nimport { EMapResult, EntitiesMap } from '../types'\n\n// Type definitions for cell identifiers\nexport type CellId = string\nexport type RowId = string\nexport type ColId = string\n\n// Cell position in the grid\nexport interface CellPosition {\n rowId: RowId\n colId: ColId\n}\n\n// Cell border position flags - used for determining which borders to show\nexport enum BorderPosition {\n None = 0,\n Top = 1 << 0,\n Right = 1 << 1,\n Bottom = 1 << 2,\n Left = 1 << 3,\n All = Top | Right | Bottom | Left,\n}\n\n/**\n * Create a standardized cell ID from row and column IDs\n */\nexport const getCellId = (rowId: RowId, colId: ColId): CellId => `cell-${rowId}-${colId}`\n\n/**\n * Parse a cell ID to extract row and column IDs\n * @returns CellPosition or null if invalid format\n */\nexport const parseCellId = (cellId: CellId): CellPosition | null => {\n const match = cellId.match(/^cell-(.+)-(.+)$/)\n if (!match) return null\n return { rowId: match[1], colId: match[2] }\n}\n\nexport const getCellValue = (obj: any, path: string): any => {\n if (!obj || !path) return undefined\n\n const parts = path.split('_')\n let current = obj\n\n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part]\n } else {\n return undefined // Return undefined if any part of the path is invalid\n }\n }\n\n return current\n}\n\n// return the link entity ids for a given column id\nexport const getLinkEntityIdsByColumnId = (links: TaskLink[], columnId: CellId): string => {\n // split the columnId\n const [_link, linkType, _inType, _outType, direction] = columnId.split('_')\n const cellLinks = links.filter(\n (link) => link.linkType === linkType && link.direction === direction,\n )\n if (cellLinks.length) {\n return cellLinks.map((link) => link.node.id).join(',')\n } else {\n return ''\n }\n}\n\n/**\n * Determines which borders to display for a selected cell\n * based on its position within the selection grid\n *\n * @param rowIndex Current cell's row index\n * @param colIndex Current cell's column index\n * @param selectedCells 2D array representing selection state (true = selected)\n * @returns BorderPosition flags indicating which borders to display\n */\nexport const getCellBorders = (\n rowIndex: number,\n colIndex: number,\n selectedCells: boolean[][],\n): BorderPosition => {\n if (!selectedCells[rowIndex]?.[colIndex]) {\n return BorderPosition.None\n }\n\n let borders = BorderPosition.None\n\n // Check top border\n if (rowIndex === 0 || !selectedCells[rowIndex - 1]?.[colIndex]) {\n borders |= BorderPosition.Top\n }\n\n // Check right border\n if (!selectedCells[rowIndex]?.[colIndex + 1]) {\n borders |= BorderPosition.Right\n }\n\n // Check bottom border\n if (!selectedCells[rowIndex + 1]?.[colIndex]) {\n borders |= BorderPosition.Bottom\n }\n\n // Check left border\n if (colIndex === 0 || !selectedCells[rowIndex]?.[colIndex - 1]) {\n borders |= BorderPosition.Left\n }\n\n return borders\n}\n\n/**\n * Converts border position flags to CSS classes for shadow styling\n */\nexport const getBorderClasses = (borders: BorderPosition): string[] => {\n const classes: string[] = []\n\n if (borders & BorderPosition.Top) classes.push('shadow-top')\n if (borders & BorderPosition.Right) classes.push('shadow-right')\n if (borders & BorderPosition.Bottom) classes.push('shadow-bottom')\n if (borders & BorderPosition.Left) classes.push('shadow-left')\n\n return classes\n}\n\n// get a entity from it's id\nexport const getEntityDataById = <T extends 'folder' | 'task' | 'product' | 'version'>(\n id: string,\n entitiesMap: EntitiesMap,\n) => entitiesMap.get(parseRowId(id)) as EMapResult<T> | undefined\n"],"names":["BorderPosition","getCellId","rowId","colId","parseCellId","cellId","match","getCellValue","obj","path","parts","current","part","getLinkEntityIdsByColumnId","links","columnId","_link","linkType","_inType","_outType","direction","cellLinks","link","getCellBorders","rowIndex","colIndex","selectedCells","borders","getBorderClasses","classes","getEntityDataById","id","entitiesMap","parseRowId"],"mappings":"i7eAoBO,IAAKA,GAAAA,IACVA,EAAAA,EAAA,KAAO,CAAA,EAAP,OACAA,EAAAA,EAAA,IAAM,CAAA,EAAN,MACAA,EAAAA,EAAA,MAAQ,CAAA,EAAR,QACAA,EAAAA,EAAA,OAAS,CAAA,EAAT,SACAA,EAAAA,EAAA,KAAO,CAAA,EAAP,OACAA,EAAAA,EAAA,IAAM,EAAA,EAAN,MANUA,IAAAA,GAAA,CAAA,CAAA,EAYL,MAAMC,EAAY,CAACC,EAAcC,IAAyB,QAAQD,CAAK,IAAIC,CAAK,GAM1EC,EAAeC,GAAwC,CAClE,MAAMC,EAAQD,EAAO,MAAM,kBAAkB,EAC7C,OAAKC,EACE,CAAE,MAAOA,EAAM,CAAC,EAAG,MAAOA,EAAM,CAAC,CAAA,EADrB,IAErB,EAEaC,EAAe,CAACC,EAAUC,IAAsB,CAC3D,GAAI,CAACD,GAAO,CAACC,EAAM,OAEnB,MAAMC,EAAQD,EAAK,MAAM,GAAG,EAC5B,IAAIE,EAAUH,EAEd,UAAWI,KAAQF,EACjB,GAAIC,GAAW,OAAOA,GAAY,UAAYC,KAAQD,EACpDA,EAAUA,EAAQC,CAAI,MAEtB,QAIJ,OAAOD,CACT,EAGaE,EAA6B,CAACC,EAAmBC,IAA6B,CAEzF,KAAM,CAACC,EAAOC,EAAUC,EAASC,EAAUC,CAAS,EAAIL,EAAS,MAAM,GAAG,EACpEM,EAAYP,EAAM,OACrBQ,GAASA,EAAK,WAAaL,GAAYK,EAAK,YAAcF,CAAA,EAE7D,OAAIC,EAAU,OACLA,EAAU,IAAKC,GAASA,EAAK,KAAK,EAAE,EAAE,KAAK,GAAG,EAE9C,EAEX,EAWaC,EAAiB,CAC5BC,EACAC,EACAC,IACmB,CACnB,GAAI,CAACA,EAAcF,CAAQ,IAAIC,CAAQ,EACrC,MAAO,GAGT,IAAIE,EAAU,EAGd,OAAIH,IAAa,GAAK,CAACE,EAAcF,EAAW,CAAC,IAAIC,CAAQ,KAC3DE,GAAW,GAIRD,EAAcF,CAAQ,IAAIC,EAAW,CAAC,IACzCE,GAAW,GAIRD,EAAcF,EAAW,CAAC,IAAIC,CAAQ,IACzCE,GAAW,IAITF,IAAa,GAAK,CAACC,EAAcF,CAAQ,IAAIC,EAAW,CAAC,KAC3DE,GAAW,GAGNA,CACT,EAKaC,EAAoBD,GAAsC,CACrE,MAAME,EAAoB,CAAA,EAE1B,OAAIF,EAAU,GAAoBE,EAAQ,KAAK,YAAY,EACvDF,EAAU,GAAsBE,EAAQ,KAAK,cAAc,EAC3DF,EAAU,GAAuBE,EAAQ,KAAK,eAAe,EAC7DF,EAAU,GAAqBE,EAAQ,KAAK,aAAa,EAEtDA,CACT,EAGaC,EAAoB,CAC/BC,EACAC,IACGA,EAAY,IAAIC,EAAAA,WAAWF,CAAE,CAAC"}
|
|
@@ -8,13 +8,33 @@ import "react";
|
|
|
8
8
|
import "@ynput/ayon-react-components";
|
|
9
9
|
import "../../../components/SearchFilter/filterDates.es.js";
|
|
10
10
|
import "date-fns";
|
|
11
|
-
import "
|
|
12
|
-
|
|
11
|
+
import "short-uuid";
|
|
12
|
+
import "@tanstack/react-table";
|
|
13
|
+
import "../widgets/CollapsedWidget.es.js";
|
|
14
|
+
import "../widgets/DateWidget.es.js";
|
|
15
|
+
import "../widgets/EnumWidget.es.js";
|
|
16
|
+
import "../widgets/EnumCellValue.es.js";
|
|
17
|
+
import "../widgets/TextWidget.es.js";
|
|
18
|
+
import "../widgets/BooleanWidget.es.js";
|
|
19
|
+
import "../widgets/CellWidget.es.js";
|
|
20
|
+
import "../widgets/EntityNameWidget.es.js";
|
|
21
|
+
import "../widgets/GroupHeaderWidget.es.js";
|
|
22
|
+
import "../widgets/ThumbnailWidget.es.js";
|
|
23
|
+
import "../../../components/AddonLoadingScreen/AddonLoadingScreen.es.js";
|
|
24
|
+
import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
|
|
25
|
+
import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
|
|
26
|
+
import "../../../components/AccessUser/AccessUser.es.js";
|
|
13
27
|
import "clsx";
|
|
28
|
+
import "../../../components/AttributeEditor/components/MinMaxField.es.js";
|
|
14
29
|
import "react-dom";
|
|
15
|
-
import "
|
|
16
|
-
import "
|
|
17
|
-
import "
|
|
30
|
+
import "@dnd-kit/core";
|
|
31
|
+
import "@dnd-kit/sortable";
|
|
32
|
+
import "../../../components/EnumEditor/EnumEditor.styled.es.js";
|
|
33
|
+
import "../../../components/AttributeEditor/attributeTypeMap.es.js";
|
|
34
|
+
import "../../../components/Badge/Badge.es.js";
|
|
35
|
+
import "../../../components/Chips/Chips.es.js";
|
|
36
|
+
import "../../../components/DateRangePicker/DateRangePicker.styled.es.js";
|
|
37
|
+
import "../../../components/LinksManager/CellEditingDialog.es.js";
|
|
18
38
|
import "../../../api/base/client.es.js";
|
|
19
39
|
import "../../../api/generated/graphql.es.js";
|
|
20
40
|
import "../../../api/generated/graphqlLinks.es.js";
|
|
@@ -78,6 +98,7 @@ import "../../../api/queries/entityLists/getListsAttributes.es.js";
|
|
|
78
98
|
import "../../../api/queries/entityLists/updateListsAttributes.es.js";
|
|
79
99
|
import "../../../api/queries/entityLists/listFolders.es.js";
|
|
80
100
|
import "../../../api/queries/folders/getFolders.es.js";
|
|
101
|
+
import "../../../api/queries/folders/getFolderDeleteInfo.es.js";
|
|
81
102
|
import "../../../api/queries/grouping/getGrouping.es.js";
|
|
82
103
|
import "../../../api/queries/links/updateLinks.es.js";
|
|
83
104
|
import "../../../api/queries/links/getLinks.es.js";
|
|
@@ -107,6 +128,23 @@ import "../../../api/queries/views/getViews.es.js";
|
|
|
107
128
|
import "../../../api/queries/views/updateViews.es.js";
|
|
108
129
|
import "../../../api/queries/watchers/getWatchers.es.js";
|
|
109
130
|
import "../../../api/queries/uris/getUris.es.js";
|
|
131
|
+
import "../../../../../_virtual/index.es.js";
|
|
132
|
+
import "../../../../../node_modules/refractor/lib/common.es.js";
|
|
133
|
+
import "../../../../../node_modules/refractor/lib/all.es.js";
|
|
134
|
+
/* empty css */
|
|
135
|
+
import "../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js";
|
|
136
|
+
import "../../../components/DetailsPanelDetails/DetailsPanelDetails.es.js";
|
|
137
|
+
import "../../../components/DetailsPanelDetails/DetailsSection.es.js";
|
|
138
|
+
import "../../../components/DetailsPanelDetails/FieldLabel.es.js";
|
|
139
|
+
import "../../../components/DoneCheckbox/DoneCheckbox.es.js";
|
|
140
|
+
import "../../../components/EarlyPreview/EarlyPreview.es.js";
|
|
141
|
+
import "../../../components/EmptyPlaceholder/EmptyPlaceholder.es.js";
|
|
142
|
+
import "../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.es.js";
|
|
143
|
+
import "../../ContextMenu/ContextMenuContext.es.js";
|
|
144
|
+
/* empty css */
|
|
145
|
+
import "../../Feed/context/FeedContext.es.js";
|
|
146
|
+
import "../../Feed/components/Tooltips/UserTooltipItem.es.js";
|
|
147
|
+
import "../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.es.js";
|
|
110
148
|
import "../../Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.es.js";
|
|
111
149
|
import "../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.es.js";
|
|
112
150
|
import "../../../context/RemoteModulesContext.es.js";
|
|
@@ -140,31 +178,59 @@ import "../../Feed/components/FileUploadCard/FileUploadCard.styled.es.js";
|
|
|
140
178
|
import "../../Feed/components/CommentInput/quillToMarkdown.es.js";
|
|
141
179
|
import "../../Feed/components/ActivityComment/ActivityComment.styled.es.js";
|
|
142
180
|
import "../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.es.js";
|
|
143
|
-
import "
|
|
144
|
-
import "
|
|
145
|
-
import "
|
|
146
|
-
import "
|
|
147
|
-
import "
|
|
148
|
-
import "
|
|
149
|
-
import "
|
|
150
|
-
import "
|
|
151
|
-
import "
|
|
152
|
-
import "
|
|
153
|
-
import "
|
|
154
|
-
import "
|
|
155
|
-
import "
|
|
156
|
-
import "
|
|
157
|
-
import "
|
|
158
|
-
import "
|
|
159
|
-
|
|
160
|
-
import "
|
|
161
|
-
import "
|
|
162
|
-
import "
|
|
163
|
-
import "
|
|
164
|
-
import "
|
|
165
|
-
import "
|
|
166
|
-
import "
|
|
167
|
-
import "
|
|
181
|
+
import "../../Feed/components/ActivityReference/ActivityReference.styled.es.js";
|
|
182
|
+
import "react-router-dom";
|
|
183
|
+
import "../../Feed/components/ActivityStatus/ActivityStatus.es.js";
|
|
184
|
+
import "../../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
|
|
185
|
+
import "../../Feed/components/ActivityDate.es.js";
|
|
186
|
+
import "../../Feed/components/ActivityCategorySelect/CategoryTag.es.js";
|
|
187
|
+
import "rehype-raw";
|
|
188
|
+
import "../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
|
|
189
|
+
import "../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
|
|
190
|
+
import "../../Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
|
|
191
|
+
import "../../Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
|
|
192
|
+
import "../../Feed/Feed.styled.es.js";
|
|
193
|
+
import "../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
|
|
194
|
+
import "../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
|
|
195
|
+
import "../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
|
|
196
|
+
import "@tanstack/react-virtual";
|
|
197
|
+
import "../ProjectTreeTable.styled.es.js";
|
|
198
|
+
import "../components/HeaderActionButton.es.js";
|
|
199
|
+
import "../components/RowSelectionHeader.es.js";
|
|
200
|
+
import "../components/SelectionCell.es.js";
|
|
201
|
+
import "../components/ColumnHeaderMenu.es.js";
|
|
202
|
+
import "../context/SelectionCellsContext.es.js";
|
|
203
|
+
import "../context/ClipboardContext.es.js";
|
|
204
|
+
import "../context/SelectedRowsContext.es.js";
|
|
205
|
+
import "../context/ColumnSettingsContext.es.js";
|
|
206
|
+
import "../context/ProjectTableQueriesContext.es.js";
|
|
207
|
+
import "../context/ProjectTableContext.es.js";
|
|
208
|
+
import "../components/DeleteConfirmContent.es.js";
|
|
209
|
+
import "../context/ProjectDataContext.es.js";
|
|
210
|
+
import "../context/DetailsPanelEntityContext.es.js";
|
|
211
|
+
import "../../EntityPickerDialog/EntityPickerDialog.es.js";
|
|
212
|
+
import "../../../../../_virtual/runtime.es.js";
|
|
213
|
+
import "../../../../../_virtual/semver.es.js";
|
|
214
|
+
import "react-redux";
|
|
215
|
+
import "custom-protocol-check";
|
|
216
|
+
import "../components/GroupSettingsFallback.es.js";
|
|
217
|
+
import "../../Slicer/components/Slicer.es.js";
|
|
218
|
+
import "../../Slicer/context/SlicerContext.es.js";
|
|
219
|
+
import "../../Slicer/hooks/useTableDataBySlice.es.js";
|
|
220
|
+
import "../../DetailsPanel/DetailsPanel.styled.es.js";
|
|
221
|
+
import "../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.es.js";
|
|
222
|
+
import "../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
|
|
223
|
+
import "../../../components/PlayableIcon/PlayableIcon.es.js";
|
|
224
|
+
import "../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js";
|
|
225
|
+
import "../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js";
|
|
226
|
+
import "../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.es.js";
|
|
227
|
+
import "../../Actions/Actions.styled.es.js";
|
|
228
|
+
import "../../Actions/ActionsDropdown/ActionsDropdown.es.js";
|
|
229
|
+
import "../../Actions/ActionIcon.es.js";
|
|
230
|
+
import "../../Views/context/ViewsContext.es.js";
|
|
231
|
+
import "../../Views/Views.styled.es.js";
|
|
232
|
+
import "../../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
|
|
233
|
+
import "../../Views/ViewsMenu/ViewsMenu.es.js";
|
|
168
234
|
import "../../../components/EntityPanelUploader/EntityPanelUploader.styled.es.js";
|
|
169
235
|
import "axios";
|
|
170
236
|
import "../../../components/ReviewablesList/ReviewablesList.styled.es.js";
|
|
@@ -177,7 +243,6 @@ import "../../../components/Feedback/SupportBubble.es.js";
|
|
|
177
243
|
import "../../../components/FileThumbnail/FileThumbnail.es.js";
|
|
178
244
|
import "../../../components/LegacyBadge/LegacyBadge.es.js";
|
|
179
245
|
import "../../../components/LinksManager/LinksManager.styled.es.js";
|
|
180
|
-
import "../../EntityPickerDialog/EntityPickerDialog.es.js";
|
|
181
246
|
import "../../../components/Powerpack/PowerpackButton.es.js";
|
|
182
247
|
import "../../../components/Powerpack/PricingLink.es.js";
|
|
183
248
|
import "../../../components/Powerpack/PowerpackDialog.styled.es.js";
|
|
@@ -185,15 +250,6 @@ import "../../../components/Powerpack/CTAButton.es.js";
|
|
|
185
250
|
import "../../../components/Powerpack/RequiredAddonVersion.es.js";
|
|
186
251
|
import "../../../components/ProjectTableSettings/ProjectTableSettings.es.js";
|
|
187
252
|
import "../../../components/SizeSlider/SizeSlider.es.js";
|
|
188
|
-
import "react-router-dom";
|
|
189
|
-
import "../../Slicer/components/Slicer.es.js";
|
|
190
|
-
import "../../Slicer/context/SlicerContext.es.js";
|
|
191
|
-
import "../../Slicer/hooks/useTableDataBySlice.es.js";
|
|
192
|
-
import "react-redux";
|
|
193
|
-
import "../../../../../_virtual/runtime.es.js";
|
|
194
|
-
import "../../../../../_virtual/semver.es.js";
|
|
195
|
-
import "custom-protocol-check";
|
|
196
|
-
import "../components/GroupSettingsFallback.es.js";
|
|
197
253
|
import "../../../components/ReviewableCard/ReviewableCard.es.js";
|
|
198
254
|
import "../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
199
255
|
import "../../../components/SettingsPanel/SettingsPanel.es.js";
|
|
@@ -210,70 +266,16 @@ import "../../../components/VersionUploader/context/VersionUploadContext.es.js";
|
|
|
210
266
|
import "../../../components/Watchers/Watchers.es.js";
|
|
211
267
|
import "../../../components/Menu/Menu.styled.es.js";
|
|
212
268
|
import "../../../components/Menu/MenuItem.es.js";
|
|
213
|
-
import "../../../components/ReviewablesSelector/ReviewablesSelector.
|
|
214
|
-
import "../../Feed/components/ActivityReference/ActivityReference.styled.es.js";
|
|
215
|
-
import "../../Feed/components/ActivityStatus/ActivityStatus.es.js";
|
|
216
|
-
import "../../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
|
|
217
|
-
import "../../Feed/components/ActivityDate.es.js";
|
|
218
|
-
import "../../Feed/components/ActivityCategorySelect/CategoryTag.es.js";
|
|
219
|
-
import "rehype-raw";
|
|
220
|
-
import "../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
|
|
221
|
-
import "../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
|
|
222
|
-
import "../../Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
|
|
223
|
-
import "../../Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
|
|
224
|
-
import "../../Feed/Feed.styled.es.js";
|
|
225
|
-
import "../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
|
|
226
|
-
import "../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
|
|
227
|
-
import "../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
|
|
228
|
-
import "@tanstack/react-virtual";
|
|
229
|
-
import "@tanstack/react-table";
|
|
230
|
-
import "../widgets/CollapsedWidget.es.js";
|
|
231
|
-
import "../widgets/DateWidget.es.js";
|
|
232
|
-
import "../widgets/EnumWidget.es.js";
|
|
233
|
-
import "../widgets/EnumCellValue.es.js";
|
|
234
|
-
import "../widgets/TextWidget.es.js";
|
|
235
|
-
import "../widgets/BooleanWidget.es.js";
|
|
236
|
-
import "../widgets/CellWidget.es.js";
|
|
237
|
-
import "../widgets/EntityNameWidget.es.js";
|
|
238
|
-
import "../widgets/GroupHeaderWidget.es.js";
|
|
239
|
-
import "../widgets/ThumbnailWidget.es.js";
|
|
240
|
-
import "../context/DetailsPanelEntityContext.es.js";
|
|
241
|
-
import "../context/SelectedRowsContext.es.js";
|
|
242
|
-
import "../context/ProjectTableContext.es.js";
|
|
269
|
+
import "../../../components/ReviewablesSelector/ReviewablesSelector.es.js";
|
|
243
270
|
import "../widgets/EmptyWidget.es.js";
|
|
244
271
|
import "../widgets/ErrorWidget.es.js";
|
|
245
|
-
import "../ProjectTreeTable.styled.es.js";
|
|
246
|
-
import "../components/SelectionCell.es.js";
|
|
247
|
-
import "../components/RowSelectionHeader.es.js";
|
|
248
|
-
import "../context/SelectionCellsContext.es.js";
|
|
249
272
|
import "../widgets/LoadMoreWidget.es.js";
|
|
250
|
-
import "../components/HeaderActionButton.es.js";
|
|
251
|
-
import "../components/ColumnHeaderMenu.es.js";
|
|
252
|
-
import "../context/ClipboardContext.es.js";
|
|
253
|
-
import "../context/ColumnSettingsContext.es.js";
|
|
254
|
-
import "../context/ProjectTableQueriesContext.es.js";
|
|
255
|
-
import "../context/ProjectDataContext.es.js";
|
|
256
|
-
import "short-uuid";
|
|
257
|
-
import "../../DetailsPanel/DetailsPanel.styled.es.js";
|
|
258
|
-
import "../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.es.js";
|
|
259
|
-
import "../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.es.js";
|
|
260
|
-
import "../../../components/PlayableIcon/PlayableIcon.es.js";
|
|
261
|
-
import "../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js";
|
|
262
|
-
import "../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.es.js";
|
|
263
|
-
import "../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.es.js";
|
|
264
|
-
import "../../Actions/Actions.styled.es.js";
|
|
265
|
-
import "../../Actions/ActionsDropdown/ActionsDropdown.es.js";
|
|
266
|
-
import "../../Actions/ActionIcon.es.js";
|
|
267
|
-
import "../../Views/context/ViewsContext.es.js";
|
|
268
|
-
import "../../Views/Views.styled.es.js";
|
|
269
|
-
import "../../Views/ViewsMenuContainer/ViewsMenuContainer.es.js";
|
|
270
|
-
import "../../Views/ViewsMenu/ViewsMenu.es.js";
|
|
271
273
|
import { parseRowId as u } from "../context/ProjectTableProvider.es.js";
|
|
272
274
|
var l = /* @__PURE__ */ ((t) => (t[t.None = 0] = "None", t[t.Top = 1] = "Top", t[t.Right = 2] = "Right", t[t.Bottom = 4] = "Bottom", t[t.Left = 8] = "Left", t[t.All = 15] = "All", t))(l || {});
|
|
273
|
-
const
|
|
275
|
+
const hm = (t, p) => `cell-${t}-${p}`, gm = (t) => {
|
|
274
276
|
const p = t.match(/^cell-(.+)-(.+)$/);
|
|
275
277
|
return p ? { rowId: p[1], colId: p[2] } : null;
|
|
276
|
-
},
|
|
278
|
+
}, ym = (t, p) => {
|
|
277
279
|
if (!t || !p) return;
|
|
278
280
|
const r = p.split("_");
|
|
279
281
|
let i = t;
|
|
@@ -283,28 +285,28 @@ const sm = (t, p) => `cell-${t}-${p}`, cm = (t) => {
|
|
|
283
285
|
else
|
|
284
286
|
return;
|
|
285
287
|
return i;
|
|
286
|
-
},
|
|
288
|
+
}, Tm = (t, p) => {
|
|
287
289
|
const [r, i, o, e, n] = p.split("_"), f = t.filter(
|
|
288
290
|
(m) => m.linkType === i && m.direction === n
|
|
289
291
|
);
|
|
290
292
|
return f.length ? f.map((m) => m.node.id).join(",") : "";
|
|
291
|
-
},
|
|
293
|
+
}, _m = (t, p, r) => {
|
|
292
294
|
if (!r[t]?.[p])
|
|
293
295
|
return 0;
|
|
294
296
|
let i = 0;
|
|
295
297
|
return (t === 0 || !r[t - 1]?.[p]) && (i |= 1), r[t]?.[p + 1] || (i |= 2), r[t + 1]?.[p] || (i |= 4), (p === 0 || !r[t]?.[p - 1]) && (i |= 8), i;
|
|
296
|
-
},
|
|
298
|
+
}, km = (t) => {
|
|
297
299
|
const p = [];
|
|
298
300
|
return t & 1 && p.push("shadow-top"), t & 2 && p.push("shadow-right"), t & 4 && p.push("shadow-bottom"), t & 8 && p.push("shadow-left"), p;
|
|
299
|
-
},
|
|
301
|
+
}, Lm = (t, p) => p.get(u(t));
|
|
300
302
|
export {
|
|
301
303
|
l as BorderPosition,
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
304
|
+
km as getBorderClasses,
|
|
305
|
+
_m as getCellBorders,
|
|
306
|
+
hm as getCellId,
|
|
307
|
+
ym as getCellValue,
|
|
308
|
+
Lm as getEntityDataById,
|
|
309
|
+
Tm as getLinkEntityIdsByColumnId,
|
|
310
|
+
gm as parseCellId
|
|
309
311
|
};
|
|
310
312
|
//# sourceMappingURL=cellUtils.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cellUtils.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/cellUtils.ts"],"sourcesContent":["/**\n * Shared cell utilities for table operations\n */\n\nimport { TaskLink } from '@shared/api'\nimport { parseRowId } from '../context'\nimport { EMapResult, EntitiesMap } from '../types'\n\n// Type definitions for cell identifiers\nexport type CellId = string\nexport type RowId = string\nexport type ColId = string\n\n// Cell position in the grid\nexport interface CellPosition {\n rowId: RowId\n colId: ColId\n}\n\n// Cell border position flags - used for determining which borders to show\nexport enum BorderPosition {\n None = 0,\n Top = 1 << 0,\n Right = 1 << 1,\n Bottom = 1 << 2,\n Left = 1 << 3,\n All = Top | Right | Bottom | Left,\n}\n\n/**\n * Create a standardized cell ID from row and column IDs\n */\nexport const getCellId = (rowId: RowId, colId: ColId): CellId => `cell-${rowId}-${colId}`\n\n/**\n * Parse a cell ID to extract row and column IDs\n * @returns CellPosition or null if invalid format\n */\nexport const parseCellId = (cellId: CellId): CellPosition | null => {\n const match = cellId.match(/^cell-(.+)-(.+)$/)\n if (!match) return null\n return { rowId: match[1], colId: match[2] }\n}\n\nexport const getCellValue = (obj: any, path: string): any => {\n if (!obj || !path) return undefined\n\n const parts = path.split('_')\n let current = obj\n\n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part]\n } else {\n return undefined // Return undefined if any part of the path is invalid\n }\n }\n\n return current\n}\n\n// return the link entity ids for a given column id\nexport const getLinkEntityIdsByColumnId = (links: TaskLink[], columnId: CellId): string => {\n // split the columnId\n const [_link, linkType, _inType, _outType, direction] = columnId.split('_')\n const cellLinks = links.filter(\n (link) => link.linkType === linkType && link.direction === direction,\n )\n if (cellLinks.length) {\n return cellLinks.map((link) => link.node.id).join(',')\n } else {\n return ''\n }\n}\n\n/**\n * Determines which borders to display for a selected cell\n * based on its position within the selection grid\n *\n * @param rowIndex Current cell's row index\n * @param colIndex Current cell's column index\n * @param selectedCells 2D array representing selection state (true = selected)\n * @returns BorderPosition flags indicating which borders to display\n */\nexport const getCellBorders = (\n rowIndex: number,\n colIndex: number,\n selectedCells: boolean[][],\n): BorderPosition => {\n if (!selectedCells[rowIndex]?.[colIndex]) {\n return BorderPosition.None\n }\n\n let borders = BorderPosition.None\n\n // Check top border\n if (rowIndex === 0 || !selectedCells[rowIndex - 1]?.[colIndex]) {\n borders |= BorderPosition.Top\n }\n\n // Check right border\n if (!selectedCells[rowIndex]?.[colIndex + 1]) {\n borders |= BorderPosition.Right\n }\n\n // Check bottom border\n if (!selectedCells[rowIndex + 1]?.[colIndex]) {\n borders |= BorderPosition.Bottom\n }\n\n // Check left border\n if (colIndex === 0 || !selectedCells[rowIndex]?.[colIndex - 1]) {\n borders |= BorderPosition.Left\n }\n\n return borders\n}\n\n/**\n * Converts border position flags to CSS classes for shadow styling\n */\nexport const getBorderClasses = (borders: BorderPosition): string[] => {\n const classes: string[] = []\n\n if (borders & BorderPosition.Top) classes.push('shadow-top')\n if (borders & BorderPosition.Right) classes.push('shadow-right')\n if (borders & BorderPosition.Bottom) classes.push('shadow-bottom')\n if (borders & BorderPosition.Left) classes.push('shadow-left')\n\n return classes\n}\n\n// get a entity from it's id\nexport const getEntityDataById = <T extends 'folder' | 'task' | 'product' | 'version'>(\n id: string,\n entitiesMap: EntitiesMap,\n) => entitiesMap.get(parseRowId(id)) as EMapResult<T> | undefined\n"],"names":["BorderPosition","getCellId","rowId","colId","parseCellId","cellId","match","getCellValue","obj","path","parts","current","part","getLinkEntityIdsByColumnId","links","columnId","_link","linkType","_inType","_outType","direction","cellLinks","link","getCellBorders","rowIndex","colIndex","selectedCells","borders","getBorderClasses","classes","getEntityDataById","id","entitiesMap","parseRowId"],"mappings":"
|
|
1
|
+
{"version":3,"file":"cellUtils.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/cellUtils.ts"],"sourcesContent":["/**\n * Shared cell utilities for table operations\n */\n\nimport { TaskLink } from '@shared/api'\nimport { parseRowId } from '../context'\nimport { EMapResult, EntitiesMap } from '../types'\n\n// Type definitions for cell identifiers\nexport type CellId = string\nexport type RowId = string\nexport type ColId = string\n\n// Cell position in the grid\nexport interface CellPosition {\n rowId: RowId\n colId: ColId\n}\n\n// Cell border position flags - used for determining which borders to show\nexport enum BorderPosition {\n None = 0,\n Top = 1 << 0,\n Right = 1 << 1,\n Bottom = 1 << 2,\n Left = 1 << 3,\n All = Top | Right | Bottom | Left,\n}\n\n/**\n * Create a standardized cell ID from row and column IDs\n */\nexport const getCellId = (rowId: RowId, colId: ColId): CellId => `cell-${rowId}-${colId}`\n\n/**\n * Parse a cell ID to extract row and column IDs\n * @returns CellPosition or null if invalid format\n */\nexport const parseCellId = (cellId: CellId): CellPosition | null => {\n const match = cellId.match(/^cell-(.+)-(.+)$/)\n if (!match) return null\n return { rowId: match[1], colId: match[2] }\n}\n\nexport const getCellValue = (obj: any, path: string): any => {\n if (!obj || !path) return undefined\n\n const parts = path.split('_')\n let current = obj\n\n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part]\n } else {\n return undefined // Return undefined if any part of the path is invalid\n }\n }\n\n return current\n}\n\n// return the link entity ids for a given column id\nexport const getLinkEntityIdsByColumnId = (links: TaskLink[], columnId: CellId): string => {\n // split the columnId\n const [_link, linkType, _inType, _outType, direction] = columnId.split('_')\n const cellLinks = links.filter(\n (link) => link.linkType === linkType && link.direction === direction,\n )\n if (cellLinks.length) {\n return cellLinks.map((link) => link.node.id).join(',')\n } else {\n return ''\n }\n}\n\n/**\n * Determines which borders to display for a selected cell\n * based on its position within the selection grid\n *\n * @param rowIndex Current cell's row index\n * @param colIndex Current cell's column index\n * @param selectedCells 2D array representing selection state (true = selected)\n * @returns BorderPosition flags indicating which borders to display\n */\nexport const getCellBorders = (\n rowIndex: number,\n colIndex: number,\n selectedCells: boolean[][],\n): BorderPosition => {\n if (!selectedCells[rowIndex]?.[colIndex]) {\n return BorderPosition.None\n }\n\n let borders = BorderPosition.None\n\n // Check top border\n if (rowIndex === 0 || !selectedCells[rowIndex - 1]?.[colIndex]) {\n borders |= BorderPosition.Top\n }\n\n // Check right border\n if (!selectedCells[rowIndex]?.[colIndex + 1]) {\n borders |= BorderPosition.Right\n }\n\n // Check bottom border\n if (!selectedCells[rowIndex + 1]?.[colIndex]) {\n borders |= BorderPosition.Bottom\n }\n\n // Check left border\n if (colIndex === 0 || !selectedCells[rowIndex]?.[colIndex - 1]) {\n borders |= BorderPosition.Left\n }\n\n return borders\n}\n\n/**\n * Converts border position flags to CSS classes for shadow styling\n */\nexport const getBorderClasses = (borders: BorderPosition): string[] => {\n const classes: string[] = []\n\n if (borders & BorderPosition.Top) classes.push('shadow-top')\n if (borders & BorderPosition.Right) classes.push('shadow-right')\n if (borders & BorderPosition.Bottom) classes.push('shadow-bottom')\n if (borders & BorderPosition.Left) classes.push('shadow-left')\n\n return classes\n}\n\n// get a entity from it's id\nexport const getEntityDataById = <T extends 'folder' | 'task' | 'product' | 'version'>(\n id: string,\n entitiesMap: EntitiesMap,\n) => entitiesMap.get(parseRowId(id)) as EMapResult<T> | undefined\n"],"names":["BorderPosition","getCellId","rowId","colId","parseCellId","cellId","match","getCellValue","obj","path","parts","current","part","getLinkEntityIdsByColumnId","links","columnId","_link","linkType","_inType","_outType","direction","cellLinks","link","getCellBorders","rowIndex","colIndex","selectedCells","borders","getBorderClasses","classes","getEntityDataById","id","entitiesMap","parseRowId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBO,IAAKA,sBAAAA,OACVA,EAAAA,EAAA,OAAO,CAAA,IAAP,QACAA,EAAAA,EAAA,MAAM,CAAA,IAAN,OACAA,EAAAA,EAAA,QAAQ,CAAA,IAAR,SACAA,EAAAA,EAAA,SAAS,CAAA,IAAT,UACAA,EAAAA,EAAA,OAAO,CAAA,IAAP,QACAA,EAAAA,EAAA,MAAM,EAAA,IAAN,OANUA,IAAAA,KAAA,CAAA,CAAA;AAYL,MAAMC,KAAY,CAACC,GAAcC,MAAyB,QAAQD,CAAK,IAAIC,CAAK,IAM1EC,KAAc,CAACC,MAAwC;AAClE,QAAMC,IAAQD,EAAO,MAAM,kBAAkB;AAC7C,SAAKC,IACE,EAAE,OAAOA,EAAM,CAAC,GAAG,OAAOA,EAAM,CAAC,EAAA,IADrB;AAErB,GAEaC,KAAe,CAACC,GAAUC,MAAsB;AAC3D,MAAI,CAACD,KAAO,CAACC,EAAM;AAEnB,QAAMC,IAAQD,EAAK,MAAM,GAAG;AAC5B,MAAIE,IAAUH;AAEd,aAAWI,KAAQF;AACjB,QAAIC,KAAW,OAAOA,KAAY,YAAYC,KAAQD;AACpD,MAAAA,IAAUA,EAAQC,CAAI;AAAA;AAEtB;AAIJ,SAAOD;AACT,GAGaE,KAA6B,CAACC,GAAmBC,MAA6B;AAEzF,QAAM,CAACC,GAAOC,GAAUC,GAASC,GAAUC,CAAS,IAAIL,EAAS,MAAM,GAAG,GACpEM,IAAYP,EAAM;AAAA,IACtB,CAACQ,MAASA,EAAK,aAAaL,KAAYK,EAAK,cAAcF;AAAA,EAAA;AAE7D,SAAIC,EAAU,SACLA,EAAU,IAAI,CAACC,MAASA,EAAK,KAAK,EAAE,EAAE,KAAK,GAAG,IAE9C;AAEX,GAWaC,KAAiB,CAC5BC,GACAC,GACAC,MACmB;AACnB,MAAI,CAACA,EAAcF,CAAQ,IAAIC,CAAQ;AACrC,WAAO;AAGT,MAAIE,IAAU;AAGd,UAAIH,MAAa,KAAK,CAACE,EAAcF,IAAW,CAAC,IAAIC,CAAQ,OAC3DE,KAAW,IAIRD,EAAcF,CAAQ,IAAIC,IAAW,CAAC,MACzCE,KAAW,IAIRD,EAAcF,IAAW,CAAC,IAAIC,CAAQ,MACzCE,KAAW,KAITF,MAAa,KAAK,CAACC,EAAcF,CAAQ,IAAIC,IAAW,CAAC,OAC3DE,KAAW,IAGNA;AACT,GAKaC,KAAmB,CAACD,MAAsC;AACrE,QAAME,IAAoB,CAAA;AAE1B,SAAIF,IAAU,KAAoBE,EAAQ,KAAK,YAAY,GACvDF,IAAU,KAAsBE,EAAQ,KAAK,cAAc,GAC3DF,IAAU,KAAuBE,EAAQ,KAAK,eAAe,GAC7DF,IAAU,KAAqBE,EAAQ,KAAK,aAAa,GAEtDA;AACT,GAGaC,KAAoB,CAC/BC,GACAC,MACGA,EAAY,IAAIC,EAAWF,CAAE,CAAC;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expandRelativeDates.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/expandRelativeDates.ts"],"sourcesContent":["import { QueryFilter, QueryCondition } from '
|
|
1
|
+
{"version":3,"file":"expandRelativeDates.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/expandRelativeDates.ts"],"sourcesContent":["import type { QueryFilter, QueryCondition } from '../types/operations'\nimport {\n filterDateFunctions,\n DateOptionType,\n} from '@shared/components/SearchFilter/filterDates'\n\nconst RELATIVE_PREFIX = 'relative:'\n\n/**\n * Checks if a value is a relative date marker (e.g., \"relative:today:0\")\n */\nexport const isRelativeDateValue = (value: unknown): value is string =>\n typeof value === 'string' && value.startsWith(RELATIVE_PREFIX)\n\n/**\n * Parses a relative date value into its components\n * Format: \"relative:<patternId>:<index>\"\n * e.g., \"relative:today:0\" → { patternId: \"today\", index: 0 }\n */\nconst parseRelativeValue = (\n value: string,\n): { patternId: DateOptionType; index: number } | null => {\n const parts = value.replace(RELATIVE_PREFIX, '').split(':')\n if (parts.length !== 2) return null\n\n const patternId = parts[0] as DateOptionType\n const index = parseInt(parts[1], 10)\n\n if (!(patternId in filterDateFunctions) || isNaN(index)) return null\n\n return { patternId, index }\n}\n\n/**\n * Resolves a relative date value to an actual ISO date string\n * e.g., \"relative:today:0\" → \"2026-04-14T00:00:00.000Z\" (current today)\n */\nexport const resolveRelativeValue = (value: string): string => {\n const parsed = parseRelativeValue(value)\n if (!parsed) return value\n\n const dateValues = filterDateFunctions[parsed.patternId]()\n return dateValues[parsed.index]?.id ?? value\n}\n\n/**\n * Creates a relative date value string from a pattern ID and index\n * e.g., (\"today\", 0) → \"relative:today:0\"\n */\nexport const createRelativeValue = (patternId: DateOptionType, index: number): string =>\n `${RELATIVE_PREFIX}${patternId}:${index}`\n\n/**\n * Expands all relative date values in a QueryFilter to actual ISO dates.\n * Used before sending filters to the backend API.\n * Returns a new QueryFilter with expanded values (does not mutate the original).\n */\nexport const expandRelativeDates = (queryFilter: QueryFilter): QueryFilter => {\n if (!queryFilter.conditions || queryFilter.conditions.length === 0) {\n return queryFilter\n }\n\n const expandedConditions = queryFilter.conditions.map((condition) => {\n if ('key' in condition) {\n // QueryCondition — expand value if relative\n const qc = condition as QueryCondition\n if (isRelativeDateValue(qc.value)) {\n return { ...qc, value: resolveRelativeValue(qc.value) }\n }\n return qc\n } else {\n // Nested QueryFilter — recurse\n return expandRelativeDates(condition as QueryFilter)\n }\n })\n\n return { ...queryFilter, conditions: expandedConditions }\n}\n\nexport default expandRelativeDates\n"],"names":["RELATIVE_PREFIX","isRelativeDateValue","value","parseRelativeValue","parts","patternId","index","filterDateFunctions","resolveRelativeValue","parsed","createRelativeValue","expandRelativeDates","queryFilter","expandedConditions","condition","qc"],"mappings":"uJAMMA,EAAkB,YAKXC,EAAuBC,GAClC,OAAOA,GAAU,UAAYA,EAAM,WAAWF,CAAe,EAOzDG,EACJD,GACwD,CACxD,MAAME,EAAQF,EAAM,QAAQF,EAAiB,EAAE,EAAE,MAAM,GAAG,EAC1D,GAAII,EAAM,SAAW,EAAG,OAAO,KAE/B,MAAMC,EAAYD,EAAM,CAAC,EACnBE,EAAQ,SAASF,EAAM,CAAC,EAAG,EAAE,EAEnC,MAAI,EAAEC,KAAaE,EAAAA,sBAAwB,MAAMD,CAAK,EAAU,KAEzD,CAAE,UAAAD,EAAW,MAAAC,CAAA,CACtB,EAMaE,EAAwBN,GAA0B,CAC7D,MAAMO,EAASN,EAAmBD,CAAK,EACvC,OAAKO,EAEcF,EAAAA,oBAAoBE,EAAO,SAAS,EAAA,EACrCA,EAAO,KAAK,GAAG,IAAMP,EAHnBA,CAItB,EAMaQ,EAAsB,CAACL,EAA2BC,IAC7D,GAAGN,CAAe,GAAGK,CAAS,IAAIC,CAAK,GAO5BK,EAAuBC,GAA0C,CAC5E,GAAI,CAACA,EAAY,YAAcA,EAAY,WAAW,SAAW,EAC/D,OAAOA,EAGT,MAAMC,EAAqBD,EAAY,WAAW,IAAKE,GAAc,CACnE,GAAI,QAASA,EAAW,CAEtB,MAAMC,EAAKD,EACX,OAAIb,EAAoBc,EAAG,KAAK,EACvB,CAAE,GAAGA,EAAI,MAAOP,EAAqBO,EAAG,KAAK,CAAA,EAE/CA,CACT,KAEE,QAAOJ,EAAoBG,CAAwB,CAEvD,CAAC,EAED,MAAO,CAAE,GAAGF,EAAa,WAAYC,CAAA,CACvC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expandRelativeDates.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/expandRelativeDates.ts"],"sourcesContent":["import { QueryFilter, QueryCondition } from '
|
|
1
|
+
{"version":3,"file":"expandRelativeDates.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/expandRelativeDates.ts"],"sourcesContent":["import type { QueryFilter, QueryCondition } from '../types/operations'\nimport {\n filterDateFunctions,\n DateOptionType,\n} from '@shared/components/SearchFilter/filterDates'\n\nconst RELATIVE_PREFIX = 'relative:'\n\n/**\n * Checks if a value is a relative date marker (e.g., \"relative:today:0\")\n */\nexport const isRelativeDateValue = (value: unknown): value is string =>\n typeof value === 'string' && value.startsWith(RELATIVE_PREFIX)\n\n/**\n * Parses a relative date value into its components\n * Format: \"relative:<patternId>:<index>\"\n * e.g., \"relative:today:0\" → { patternId: \"today\", index: 0 }\n */\nconst parseRelativeValue = (\n value: string,\n): { patternId: DateOptionType; index: number } | null => {\n const parts = value.replace(RELATIVE_PREFIX, '').split(':')\n if (parts.length !== 2) return null\n\n const patternId = parts[0] as DateOptionType\n const index = parseInt(parts[1], 10)\n\n if (!(patternId in filterDateFunctions) || isNaN(index)) return null\n\n return { patternId, index }\n}\n\n/**\n * Resolves a relative date value to an actual ISO date string\n * e.g., \"relative:today:0\" → \"2026-04-14T00:00:00.000Z\" (current today)\n */\nexport const resolveRelativeValue = (value: string): string => {\n const parsed = parseRelativeValue(value)\n if (!parsed) return value\n\n const dateValues = filterDateFunctions[parsed.patternId]()\n return dateValues[parsed.index]?.id ?? value\n}\n\n/**\n * Creates a relative date value string from a pattern ID and index\n * e.g., (\"today\", 0) → \"relative:today:0\"\n */\nexport const createRelativeValue = (patternId: DateOptionType, index: number): string =>\n `${RELATIVE_PREFIX}${patternId}:${index}`\n\n/**\n * Expands all relative date values in a QueryFilter to actual ISO dates.\n * Used before sending filters to the backend API.\n * Returns a new QueryFilter with expanded values (does not mutate the original).\n */\nexport const expandRelativeDates = (queryFilter: QueryFilter): QueryFilter => {\n if (!queryFilter.conditions || queryFilter.conditions.length === 0) {\n return queryFilter\n }\n\n const expandedConditions = queryFilter.conditions.map((condition) => {\n if ('key' in condition) {\n // QueryCondition — expand value if relative\n const qc = condition as QueryCondition\n if (isRelativeDateValue(qc.value)) {\n return { ...qc, value: resolveRelativeValue(qc.value) }\n }\n return qc\n } else {\n // Nested QueryFilter — recurse\n return expandRelativeDates(condition as QueryFilter)\n }\n })\n\n return { ...queryFilter, conditions: expandedConditions }\n}\n\nexport default expandRelativeDates\n"],"names":["RELATIVE_PREFIX","isRelativeDateValue","value","parseRelativeValue","parts","patternId","index","filterDateFunctions","resolveRelativeValue","parsed","createRelativeValue","expandRelativeDates","queryFilter","expandedConditions","condition","qc"],"mappings":";AAMA,MAAMA,IAAkB,aAKXC,IAAsB,CAACC,MAClC,OAAOA,KAAU,YAAYA,EAAM,WAAWF,CAAe,GAOzDG,IAAqB,CACzBD,MACwD;AACxD,QAAME,IAAQF,EAAM,QAAQF,GAAiB,EAAE,EAAE,MAAM,GAAG;AAC1D,MAAII,EAAM,WAAW,EAAG,QAAO;AAE/B,QAAMC,IAAYD,EAAM,CAAC,GACnBE,IAAQ,SAASF,EAAM,CAAC,GAAG,EAAE;AAEnC,SAAI,EAAEC,KAAaE,MAAwB,MAAMD,CAAK,IAAU,OAEzD,EAAE,WAAAD,GAAW,OAAAC,EAAA;AACtB,GAMaE,IAAuB,CAACN,MAA0B;AAC7D,QAAMO,IAASN,EAAmBD,CAAK;AACvC,SAAKO,IAEcF,EAAoBE,EAAO,SAAS,EAAA,EACrCA,EAAO,KAAK,GAAG,MAAMP,IAHnBA;AAItB,GAMaQ,IAAsB,CAACL,GAA2BC,MAC7D,GAAGN,CAAe,GAAGK,CAAS,IAAIC,CAAK,IAO5BK,IAAsB,CAACC,MAA0C;AAC5E,MAAI,CAACA,EAAY,cAAcA,EAAY,WAAW,WAAW;AAC/D,WAAOA;AAGT,QAAMC,IAAqBD,EAAY,WAAW,IAAI,CAACE,MAAc;AACnE,QAAI,SAASA,GAAW;AAEtB,YAAMC,IAAKD;AACX,aAAIb,EAAoBc,EAAG,KAAK,IACvB,EAAE,GAAGA,GAAI,OAAOP,EAAqBO,EAAG,KAAK,EAAA,IAE/CA;AAAA,IACT;AAEE,aAAOJ,EAAoBG,CAAwB;AAAA,EAEvD,CAAC;AAED,SAAO,EAAE,GAAGF,GAAa,YAAYC,EAAA;AACvC;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("@ynput/ayon-react-components"),l=require("date-fns"),C=require("../../../components/SearchFilter/filterDates.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");require("../../../../../_virtual/jsx-runtime.cjs.js");;/* empty css */require("clsx");require("react");require("react-dom");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/dataImport.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/projectFolders.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/config/getConfig.cjs.js");require("../../../api/queries/config/updateConfig.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/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("../../Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/SubtasksModulesContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../context/GlobalContext.cjs.js");require("../../../context/ProjectContext.cjs.js");require("../../../context/ProjectFoldersContext.cjs.js");require("../../../context/UriContext.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("lodash");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../../components/AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/AttributeEditor/attributeTypeMap.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../components/DateRangePicker/DateRangePicker.styled.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("react-toastify");require("../../../../../_virtual/index.cjs.js");require("../../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("uuid");require("../../../util/pubsub.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/DoneCheckbox/DoneCheckbox.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("react-router-dom");require("../../Slicer/components/Slicer.cjs.js");require("../../Slicer/context/SlicerContext.cjs.js");require("../../Slicer/hooks/useTableDataBySlice.cjs.js");require("react-redux");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("custom-protocol-check");require("../components/GroupSettingsFallback.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.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");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("rehype-raw");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("../../DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/EnumCellValue.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");require("../context/SelectedRowsContext.cjs.js");require("../context/ProjectTableContext.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../context/CellEditingContext.cjs.js");const p=require("./expandRelativeDates.cjs.js");require("short-uuid");require("../context/SelectionCellsContext.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");const m=(e,u)=>{if(!e?.conditions||e.conditions.length===0)return[];const r=[],n=new Set;return e.conditions.forEach(i=>{if("key"in i){const q=h(i,u,n);q&&r.push(q)}else{const q=O(i,u);if(q)r.push(q);else{const t=m(i,u);r.push(...t)}}}),r},O=(e,u)=>{if(!e.conditions||e.conditions.length<1)return null;const r=e.conditions.filter(c=>"key"in c);if(r.length!==e.conditions.length)return null;const n=r[0].key;if(!r.every(c=>c.key===n))return null;const i=M(n,u);if(!i||i.type!=="datetime")return null;const q=r.find(c=>c.operator==="gte"),t=r.find(c=>c.operator==="lte");if(!q&&!t)return null;const s=q?.value,d=t?.value,a=s&&p.isRelativeDateValue(s)?p.resolveRelativeValue(s):s,o=d&&p.isRelativeDateValue(d)?p.resolveRelativeValue(d):d;let y="Custom range";if(a&&o){const c=C.detectRelativeDatePattern(a,o);if(c)y=c.label;else{const f=l.parseISO(a),V=l.parseISO(o);if(l.isValid(f)&&l.isValid(V)){const b=new Date().getFullYear(),v=V.getFullYear()===b?"MMM d":"MMM d, yyyy";y=`${l.format(f,"MMM d")} – ${l.format(V,v)}`}}}const g={id:`custom-${a||""}-${o||""}`,label:y,values:[...a?[{id:a,label:l.isValid(l.parseISO(a))?l.format(l.parseISO(a),"MMM d, yyyy"):a}]:[],...o?[{id:o,label:l.isValid(l.parseISO(o))?l.format(l.parseISO(o),"MMM d, yyyy"):o}]:[]]};return{id:i.id,type:i.type,label:i.label,icon:i.icon,inverted:e.operator==="or",values:[g],singleSelect:i.singleSelect}},h=(e,u,r)=>{const{key:n,value:i,operator:q}=e;if(n===S.SEARCH_FILTER_ID){const g=Array.isArray(i)?i:[i||""];return{id:S.SEARCH_FILTER_ID,type:"string",label:"",values:g.map(f=>({id:String(f),label:String(f)}))}}const t=M(n,u);if(!t)return null;const s=`${n}_${q}_${JSON.stringify(i)}`;if(r.has(s))return null;r.add(s);const d=I(i,q,t),a=R(q,t.type),o=D(q,t.type);return{id:t.id,type:t.type,label:t.label,inverted:a,operator:o,icon:t.icon,values:d,isCustom:t.allowsCustomValues,singleSelect:t.singleSelect}},M=(e,u)=>{let r=u.find(n=>n.id===e);return r||(r=u.find(n=>n.id.endsWith(e)||n.id.replace(/^[^.]*\./,"")===e||n.id.split("_").pop()===e),r)||(r=u.find(n=>n.label?.toLowerCase()===e.toLowerCase())),r},I=(e,u,r)=>{if(u==="isnull"||u==="notnull")return u==="isnull"?[{id:"noValue",label:"No Value"}]:[{id:"hasValue",label:"Has Value"}];if(Array.isArray(e)&&e.length===0){if(u==="eq")return[{id:"noValue",label:"No Value"}];if(u==="ne")return[{id:"hasValue",label:"Has Value"}]}return e==null?[]:(Array.isArray(e)?e:[e]).map(i=>{let q=String(i),t=!1;if(u==="like"&&typeof i=="string"&&(q=i.replace(/^%/,"").replace(/%$/,""),t=!0),!t){const s=r.values?.find(d=>d.id===q);if(s)return s}if(r.type==="datetime"&&typeof i=="string")try{const s=l.parseISO(i);if(l.isValid(s))return{id:q,label:l.format(s,"MMM d, yyyy"),isCustom:!0}}catch{}return{id:q,label:q,isCustom:!0}})},R=(e,u)=>e?["ne","notin","excludes","excludesall","excludesany","notnull"].includes(e):!1,D=(e,u)=>u?.startsWith("list_of_")&&(e==="includesall"||e==="excludesall")?"AND":"OR";exports.queryFilterToClientFilter=m;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("@ynput/ayon-react-components"),a=require("date-fns"),O=require("../../../components/SearchFilter/filterDates.cjs.js"),g=require("./expandRelativeDates.cjs.js"),M=(e,i)=>{if(!e?.conditions||e.conditions.length===0)return[];const t=[],s=new Set;return e.conditions.forEach(n=>{if("key"in n){const l=I(n,i,s);l&&t.push(l)}else{const l=h(n,i);if(l)t.push(l);else{const r=M(n,i);t.push(...r)}}}),t},h=(e,i)=>{if(!e.conditions||e.conditions.length<1)return null;const t=e.conditions.filter(d=>"key"in d);if(t.length!==e.conditions.length)return null;const s=t[0].key;if(!t.every(d=>d.key===s))return null;const n=b(s,i);if(!n||n.type!=="datetime")return null;const l=t.find(d=>d.operator==="gte"),r=t.find(d=>d.operator==="lte");if(!l&&!r)return null;const o=l?.value,f=r?.value,u=o&&g.isRelativeDateValue(o)?g.resolveRelativeValue(o):o,c=f&&g.isRelativeDateValue(f)?g.resolveRelativeValue(f):f;let p="Custom range";if(u&&c){const d=O.detectRelativeDatePattern(u,c);if(d)p=d.label;else{const y=a.parseISO(u),S=a.parseISO(c);if(a.isValid(y)&&a.isValid(S)){const v=new Date().getFullYear(),C=S.getFullYear()===v?"MMM d":"MMM d, yyyy";p=`${a.format(y,"MMM d")} – ${a.format(S,C)}`}}}const V={id:`custom-${u||""}-${c||""}`,label:p,values:[...u?[{id:u,label:a.isValid(a.parseISO(u))?a.format(a.parseISO(u),"MMM d, yyyy"):u}]:[],...c?[{id:c,label:a.isValid(a.parseISO(c))?a.format(a.parseISO(c),"MMM d, yyyy"):c}]:[]]};return{id:n.id,type:n.type,label:n.label,icon:n.icon,inverted:e.operator==="or",values:[V],singleSelect:n.singleSelect}},I=(e,i,t)=>{const{key:s,value:n,operator:l}=e;if(s===m.SEARCH_FILTER_ID){const V=Array.isArray(n)?n:[n||""];return{id:m.SEARCH_FILTER_ID,type:"string",label:"",values:V.map(y=>({id:String(y),label:String(y)}))}}const r=b(s,i);if(!r)return null;const o=`${s}_${l}_${JSON.stringify(n)}`;if(t.has(o))return null;t.add(o);const f=R(n,l,r),u=D(l,r.type),c=A(l,r.type);return{id:r.id,type:r.type,label:r.label,inverted:u,operator:c,icon:r.icon,values:f,isCustom:r.allowsCustomValues,singleSelect:r.singleSelect}},b=(e,i)=>{let t=i.find(s=>s.id===e);return t||(t=i.find(s=>s.id.endsWith(e)||s.id.replace(/^[^.]*\./,"")===e||s.id.split("_").pop()===e),t)||(t=i.find(s=>s.label?.toLowerCase()===e.toLowerCase())),t},R=(e,i,t)=>{if(i==="isnull"||i==="notnull")return i==="isnull"?[{id:"noValue",label:"No Value"}]:[{id:"hasValue",label:"Has Value"}];if(Array.isArray(e)&&e.length===0){if(i==="eq")return[{id:"noValue",label:"No Value"}];if(i==="ne")return[{id:"hasValue",label:"Has Value"}]}return e==null?[]:(Array.isArray(e)?e:[e]).map(n=>{let l=String(n),r=!1;if(i==="like"&&typeof n=="string"&&(l=n.replace(/^%/,"").replace(/%$/,""),r=!0),!r){const o=t.values?.find(f=>f.id===l);if(o)return o}if(t.type==="datetime"&&typeof n=="string")try{const o=a.parseISO(n);if(a.isValid(o))return{id:l,label:a.format(o,"MMM d, yyyy"),isCustom:!0}}catch{}return{id:l,label:l,isCustom:!0}})},D=(e,i)=>e?["ne","notin","excludes","excludesall","excludesany","notnull"].includes(e):!1,A=(e,i)=>i?.startsWith("list_of_")&&(e==="includesall"||e==="excludesall")?"AND":"OR";exports.queryFilterToClientFilter=M;
|
|
2
2
|
//# sourceMappingURL=queryFilterToClientFilter.cjs.js.map
|
package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queryFilterToClientFilter.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.ts"],"sourcesContent":["import { Filter, FilterValue, SEARCH_FILTER_ID } from '@ynput/ayon-react-components'\nimport { QueryFilter, QueryCondition } from '../types/operations'\nimport { format, parseISO, isValid } from 'date-fns'\nimport { detectRelativeDatePattern } from '@shared/components/SearchFilter/filterDates'\nimport { isRelativeDateValue, resolveRelativeValue } from '@shared/containers'\n\n// Option interface for filter options (from useBuildFilterOptions)\ninterface Option {\n id: string\n type?: string\n label: string\n icon?: string | null\n img?: string | null\n inverted?: boolean\n operator?: 'AND' | 'OR'\n values?: FilterValue[]\n allowsCustomValues?: boolean\n allowHasValue?: boolean\n allowNoValue?: boolean\n allowExcludes?: boolean\n operatorChangeable?: boolean\n singleSelect?: boolean\n}\n\n/**\n * Converts a QueryFilter back to Filter[] objects that can be consumed by the SearchFilter component\n * This requires the filter options to properly reconstruct the Filter objects with all their metadata\n */\nexport const queryFilterToClientFilter = (\n queryFilter: QueryFilter | undefined,\n filterOptions: Option[],\n): Filter[] => {\n if (!queryFilter?.conditions || queryFilter.conditions.length === 0) {\n return []\n }\n\n const filters: Filter[] = []\n const processedConditions = new Set<string>()\n\n // Process each condition in the query filter\n queryFilter.conditions.forEach((condition) => {\n if ('key' in condition) {\n // This is a QueryCondition\n const filter = convertConditionToFilter(condition, filterOptions, processedConditions)\n if (filter) {\n filters.push(filter)\n }\n } else {\n // This is a nested QueryFilter - check if it's a datetime range (gte+lte same key)\n const datetimeFilter = tryMergeDatetimeRange(condition, filterOptions)\n if (datetimeFilter) {\n filters.push(datetimeFilter)\n } else {\n // Recursively process other nested QueryFilters\n const nestedFilters = queryFilterToClientFilter(condition, filterOptions)\n filters.push(...nestedFilters)\n }\n }\n })\n\n return filters\n}\n\n/**\n * Detects nested QueryFilters that represent datetime ranges (gte+lte on the same key)\n * and merges them into a single datetime Filter with proper range values.\n */\nconst tryMergeDatetimeRange = (\n nestedFilter: QueryFilter,\n filterOptions: Option[],\n): Filter | null => {\n if (!nestedFilter.conditions || nestedFilter.conditions.length < 1) return null\n\n // All conditions must be QueryConditions (not nested QueryFilters)\n const conditions = nestedFilter.conditions.filter(\n (c): c is QueryCondition => 'key' in c,\n )\n if (conditions.length !== nestedFilter.conditions.length) return null\n\n // All conditions must share the same key\n const key = conditions[0].key\n if (!conditions.every((c) => c.key === key)) return null\n\n // Find the matching filter option and check it's a datetime type\n const filterOption = findFilterOption(key, filterOptions)\n if (!filterOption || filterOption.type !== 'datetime') return null\n\n // Extract gte (start) and lte (end) values, resolving relative dates\n const gteCondition = conditions.find((c) => c.operator === 'gte')\n const lteCondition = conditions.find((c) => c.operator === 'lte')\n if (!gteCondition && !lteCondition) return null\n\n const rawStartValue = gteCondition?.value as string | undefined\n const rawEndValue = lteCondition?.value as string | undefined\n const startISO = rawStartValue && isRelativeDateValue(rawStartValue) ? resolveRelativeValue(rawStartValue) : rawStartValue\n const endISO = rawEndValue && isRelativeDateValue(rawEndValue) ? resolveRelativeValue(rawEndValue) : rawEndValue\n\n // Build the range label\n let label = 'Custom range'\n if (startISO && endISO) {\n // Check if it matches a relative date pattern first\n const relativePattern = detectRelativeDatePattern(startISO, endISO)\n if (relativePattern) {\n label = relativePattern.label\n } else {\n // Fall back to showing the date range\n const startDate = parseISO(startISO)\n const endDate = parseISO(endISO)\n if (isValid(startDate) && isValid(endDate)) {\n const currentYear = new Date().getFullYear()\n const endDateFormat = endDate.getFullYear() === currentYear ? 'MMM d' : 'MMM d, yyyy'\n label = `${format(startDate, 'MMM d')} – ${format(endDate, endDateFormat)}`\n }\n }\n }\n\n // `values` holds the gte/lte range pair — used by clientFilterToQueryFilter for round-trip\n // but not part of the FilterValue type, so we extend it at runtime\n const rangeValue = {\n id: `custom-${startISO || ''}-${endISO || ''}`,\n label,\n values: [\n ...(startISO ? [{ id: startISO, label: isValid(parseISO(startISO)) ? format(parseISO(startISO), 'MMM d, yyyy') : startISO }] : []),\n ...(endISO ? [{ id: endISO, label: isValid(parseISO(endISO)) ? format(parseISO(endISO), 'MMM d, yyyy') : endISO }] : []),\n ],\n } as FilterValue\n\n return {\n id: filterOption.id,\n type: filterOption.type as Filter['type'],\n label: filterOption.label,\n icon: filterOption.icon,\n inverted: nestedFilter.operator === 'or',\n values: [rangeValue],\n singleSelect: filterOption.singleSelect,\n }\n}\n\nconst convertConditionToFilter = (\n condition: QueryCondition,\n filterOptions: Option[],\n processedConditions: Set<string>,\n): Filter | null => {\n const { key, value, operator } = condition\n\n // check if the filter is a text search filter\n if (key === SEARCH_FILTER_ID) {\n const valuesArray = Array.isArray(value) ? value : [value || '']\n const filter: Filter = {\n id: SEARCH_FILTER_ID,\n type: 'string',\n label: '',\n values: valuesArray.map((v) => ({ id: String(v), label: String(v) })),\n }\n\n return filter\n }\n\n // Find the matching filter option\n const filterOption = findFilterOption(key, filterOptions)\n if (!filterOption) {\n return null\n }\n\n // Create a unique key for this condition to avoid duplicates\n const conditionKey = `${key}_${operator}_${JSON.stringify(value)}`\n if (processedConditions.has(conditionKey)) {\n return null\n }\n processedConditions.add(conditionKey)\n\n // Convert the condition values to FilterValue objects\n const filterValues = convertConditionValueToFilterValues(value, operator, filterOption)\n\n // Determine if the filter is inverted based on the operator\n const inverted = isInvertedOperator(operator, filterOption.type)\n\n // Determine the filter operator (AND/OR)\n const filterOperator = getFilterOperator(operator, filterOption.type)\n\n const filter: Filter = {\n id: filterOption.id,\n type: filterOption.type as Filter['type'],\n label: filterOption.label,\n inverted,\n operator: filterOperator,\n icon: filterOption.icon,\n values: filterValues,\n isCustom: filterOption.allowsCustomValues,\n singleSelect: filterOption.singleSelect,\n }\n\n return filter\n}\n\nconst findFilterOption = (key: string, filterOptions: Option[]): Option | undefined => {\n // Try exact match first\n let option = filterOptions.find((opt) => opt.id === key)\n if (option) return option\n\n // Try to find by the base key (without prefixes)\n option = filterOptions.find(\n (opt) =>\n opt.id.endsWith(key) ||\n opt.id.replace(/^[^.]*\\./, '') === key ||\n opt.id.split('_').pop() === key,\n )\n if (option) return option\n\n // Try to find by label match\n option = filterOptions.find((opt) => opt.label?.toLowerCase() === key.toLowerCase())\n\n return option\n}\n\nconst convertConditionValueToFilterValues = (\n value: QueryCondition['value'],\n operator: QueryCondition['operator'],\n filterOption: Option,\n): FilterValue[] => {\n // Handle special operators for null/empty checks\n if (operator === 'isnull' || operator === 'notnull') {\n return operator === 'isnull'\n ? [{ id: 'noValue', label: 'No Value' }]\n : [{ id: 'hasValue', label: 'Has Value' }]\n }\n\n // Handle empty array cases - these represent \"No Value\" and \"Has Value\" conditions\n if (Array.isArray(value) && value.length === 0) {\n if (operator === 'eq') {\n // Empty array with 'eq' operator means \"No Value\"\n return [{ id: 'noValue', label: 'No Value' }]\n } else if (operator === 'ne') {\n // Empty array with 'ne' operator means \"Has Value\"\n return [{ id: 'hasValue', label: 'Has Value' }]\n }\n }\n\n if (value === undefined || value === null) {\n return []\n }\n\n // Convert value(s) to FilterValue objects\n const values = Array.isArray(value) ? value : [value]\n\n return values.map((val) => {\n let stringValue = String(val)\n let isCustomValue = false\n\n // Handle LIKE operator with wildcards - strip them and mark as custom\n if (operator === 'like' && typeof val === 'string') {\n // Remove leading and trailing % wildcards\n stringValue = val.replace(/^%/, '').replace(/%$/, '')\n isCustomValue = true\n }\n\n // Try to find existing option value with metadata (only if not already marked as custom from LIKE)\n if (!isCustomValue) {\n const existingValue = filterOption.values?.find((v: FilterValue) => v.id === stringValue)\n if (existingValue) {\n return existingValue\n }\n }\n\n // Format datetime values nicely instead of showing raw ISO strings\n if (filterOption.type === 'datetime' && typeof val === 'string') {\n try {\n const date = parseISO(val)\n if (isValid(date)) {\n return {\n id: stringValue,\n label: format(date, 'MMM d, yyyy'),\n isCustom: true,\n }\n }\n } catch {\n // fall through to default\n }\n }\n\n // Create a basic FilterValue if no existing option found or if it's a LIKE value\n return {\n id: stringValue,\n label: stringValue,\n isCustom: true,\n }\n })\n}\n\nconst isInvertedOperator = (operator: QueryCondition['operator'], type?: string): boolean => {\n const invertedOperators = ['ne', 'notin', 'excludes', 'excludesall', 'excludesany', 'notnull']\n return operator ? invertedOperators.includes(operator) : false\n}\n\nconst getFilterOperator = (operator: QueryCondition['operator'], type?: string): 'AND' | 'OR' => {\n // For list types, determine AND/OR based on the operator\n if (type?.startsWith('list_of_')) {\n if (operator === 'includesall' || operator === 'excludesall') {\n return 'AND'\n }\n return 'OR'\n }\n\n // Default to OR for most cases\n return 'OR'\n}\n\nexport default queryFilterToClientFilter\n"],"names":["queryFilterToClientFilter","queryFilter","filterOptions","filters","processedConditions","condition","filter","convertConditionToFilter","datetimeFilter","tryMergeDatetimeRange","nestedFilters","nestedFilter","conditions","key","filterOption","findFilterOption","gteCondition","lteCondition","rawStartValue","rawEndValue","startISO","isRelativeDateValue","resolveRelativeValue","endISO","label","relativePattern","detectRelativeDatePattern","startDate","parseISO","endDate","isValid","currentYear","endDateFormat","format","rangeValue","value","operator","SEARCH_FILTER_ID","valuesArray","v","conditionKey","filterValues","convertConditionValueToFilterValues","inverted","isInvertedOperator","filterOperator","getFilterOperator","option","opt","val","stringValue","isCustomValue","existingValue","date","type"],"mappings":"k0eA4BO,MAAMA,EAA4B,CACvCC,EACAC,IACa,CACb,GAAI,CAACD,GAAa,YAAcA,EAAY,WAAW,SAAW,EAChE,MAAO,CAAA,EAGT,MAAME,EAAoB,CAAA,EACpBC,MAA0B,IAGhC,OAAAH,EAAY,WAAW,QAASI,GAAc,CAC5C,GAAI,QAASA,EAAW,CAEtB,MAAMC,EAASC,EAAyBF,EAAWH,EAAeE,CAAmB,EACjFE,GACFH,EAAQ,KAAKG,CAAM,CAEvB,KAAO,CAEL,MAAME,EAAiBC,EAAsBJ,EAAWH,CAAa,EACrE,GAAIM,EACFL,EAAQ,KAAKK,CAAc,MACtB,CAEL,MAAME,EAAgBV,EAA0BK,EAAWH,CAAa,EACxEC,EAAQ,KAAK,GAAGO,CAAa,CAC/B,CACF,CACF,CAAC,EAEMP,CACT,EAMMM,EAAwB,CAC5BE,EACAT,IACkB,CAClB,GAAI,CAACS,EAAa,YAAcA,EAAa,WAAW,OAAS,EAAG,OAAO,KAG3E,MAAMC,EAAaD,EAAa,WAAW,OACxC,GAA2B,QAAS,CAAA,EAEvC,GAAIC,EAAW,SAAWD,EAAa,WAAW,OAAQ,OAAO,KAGjE,MAAME,EAAMD,EAAW,CAAC,EAAE,IAC1B,GAAI,CAACA,EAAW,MAAO,GAAM,EAAE,MAAQC,CAAG,EAAG,OAAO,KAGpD,MAAMC,EAAeC,EAAiBF,EAAKX,CAAa,EACxD,GAAI,CAACY,GAAgBA,EAAa,OAAS,WAAY,OAAO,KAG9D,MAAME,EAAeJ,EAAW,KAAM,GAAM,EAAE,WAAa,KAAK,EAC1DK,EAAeL,EAAW,KAAM,GAAM,EAAE,WAAa,KAAK,EAChE,GAAI,CAACI,GAAgB,CAACC,EAAc,OAAO,KAE3C,MAAMC,EAAgBF,GAAc,MAC9BG,EAAcF,GAAc,MAC5BG,EAAWF,GAAiBG,EAAAA,oBAAoBH,CAAa,EAAII,EAAAA,qBAAqBJ,CAAa,EAAIA,EACvGK,EAASJ,GAAeE,EAAAA,oBAAoBF,CAAW,EAAIG,EAAAA,qBAAqBH,CAAW,EAAIA,EAGrG,IAAIK,EAAQ,eACZ,GAAIJ,GAAYG,EAAQ,CAEtB,MAAME,EAAkBC,EAAAA,0BAA0BN,EAAUG,CAAM,EAClE,GAAIE,EACFD,EAAQC,EAAgB,UACnB,CAEL,MAAME,EAAYC,EAAAA,SAASR,CAAQ,EAC7BS,EAAUD,EAAAA,SAASL,CAAM,EAC/B,GAAIO,EAAAA,QAAQH,CAAS,GAAKG,EAAAA,QAAQD,CAAO,EAAG,CAC1C,MAAME,EAAc,IAAI,KAAA,EAAO,YAAA,EACzBC,EAAgBH,EAAQ,YAAA,IAAkBE,EAAc,QAAU,cACxEP,EAAQ,GAAGS,SAAON,EAAW,OAAO,CAAC,MAAMM,SAAOJ,EAASG,CAAa,CAAC,EAC3E,CACF,CACF,CAIA,MAAME,EAAa,CACjB,GAAI,UAAUd,GAAY,EAAE,IAAIG,GAAU,EAAE,GAC5C,MAAAC,EACA,OAAQ,CACN,GAAIJ,EAAW,CAAC,CAAE,GAAIA,EAAU,MAAOU,EAAAA,QAAQF,WAASR,CAAQ,CAAC,EAAIa,EAAAA,OAAOL,EAAAA,SAASR,CAAQ,EAAG,aAAa,EAAIA,CAAA,CAAU,EAAI,CAAA,EAC/H,GAAIG,EAAS,CAAC,CAAE,GAAIA,EAAQ,MAAOO,EAAAA,QAAQF,WAASL,CAAM,CAAC,EAAIU,EAAAA,OAAOL,EAAAA,SAASL,CAAM,EAAG,aAAa,EAAIA,CAAA,CAAQ,EAAI,CAAA,CAAC,CACxH,EAGF,MAAO,CACL,GAAIT,EAAa,GACjB,KAAMA,EAAa,KACnB,MAAOA,EAAa,MACpB,KAAMA,EAAa,KACnB,SAAUH,EAAa,WAAa,KACpC,OAAQ,CAACuB,CAAU,EACnB,aAAcpB,EAAa,YAAA,CAE/B,EAEMP,EAA2B,CAC/BF,EACAH,EACAE,IACkB,CAClB,KAAM,CAAE,IAAAS,EAAK,MAAAsB,EAAO,SAAAC,CAAA,EAAa/B,EAGjC,GAAIQ,IAAQwB,EAAAA,iBAAkB,CAC5B,MAAMC,EAAc,MAAM,QAAQH,CAAK,EAAIA,EAAQ,CAACA,GAAS,EAAE,EAQ/D,MAPuB,CACrB,GAAIE,EAAAA,iBACJ,KAAM,SACN,MAAO,GACP,OAAQC,EAAY,IAAKC,IAAO,CAAE,GAAI,OAAOA,CAAC,EAAG,MAAO,OAAOA,CAAC,GAAI,CAAA,CAIxE,CAGA,MAAMzB,EAAeC,EAAiBF,EAAKX,CAAa,EACxD,GAAI,CAACY,EACH,OAAO,KAIT,MAAM0B,EAAe,GAAG3B,CAAG,IAAIuB,CAAQ,IAAI,KAAK,UAAUD,CAAK,CAAC,GAChE,GAAI/B,EAAoB,IAAIoC,CAAY,EACtC,OAAO,KAETpC,EAAoB,IAAIoC,CAAY,EAGpC,MAAMC,EAAeC,EAAoCP,EAAOC,EAAUtB,CAAY,EAGhF6B,EAAWC,EAAmBR,EAAUtB,EAAa,IAAI,EAGzD+B,EAAiBC,EAAkBV,EAAUtB,EAAa,IAAI,EAcpE,MAZuB,CACrB,GAAIA,EAAa,GACjB,KAAMA,EAAa,KACnB,MAAOA,EAAa,MACpB,SAAA6B,EACA,SAAUE,EACV,KAAM/B,EAAa,KACnB,OAAQ2B,EACR,SAAU3B,EAAa,mBACvB,aAAcA,EAAa,YAAA,CAI/B,EAEMC,EAAmB,CAACF,EAAaX,IAAgD,CAErF,IAAI6C,EAAS7C,EAAc,KAAM8C,GAAQA,EAAI,KAAOnC,CAAG,EAUvD,OATIkC,IAGJA,EAAS7C,EAAc,KACpB8C,GACCA,EAAI,GAAG,SAASnC,CAAG,GACnBmC,EAAI,GAAG,QAAQ,WAAY,EAAE,IAAMnC,GACnCmC,EAAI,GAAG,MAAM,GAAG,EAAE,QAAUnC,CAAA,EAE5BkC,KAGJA,EAAS7C,EAAc,KAAM8C,GAAQA,EAAI,OAAO,YAAA,IAAkBnC,EAAI,aAAa,GAE5EkC,CACT,EAEML,EAAsC,CAC1CP,EACAC,EACAtB,IACkB,CAElB,GAAIsB,IAAa,UAAYA,IAAa,UACxC,OAAOA,IAAa,SAChB,CAAC,CAAE,GAAI,UAAW,MAAO,UAAA,CAAY,EACrC,CAAC,CAAE,GAAI,WAAY,MAAO,YAAa,EAI7C,GAAI,MAAM,QAAQD,CAAK,GAAKA,EAAM,SAAW,EAAG,CAC9C,GAAIC,IAAa,KAEf,MAAO,CAAC,CAAE,GAAI,UAAW,MAAO,WAAY,EAC9C,GAAWA,IAAa,KAEtB,MAAO,CAAC,CAAE,GAAI,WAAY,MAAO,YAAa,CAElD,CAEA,OAA2BD,GAAU,KAC5B,CAAA,GAIM,MAAM,QAAQA,CAAK,EAAIA,EAAQ,CAACA,CAAK,GAEtC,IAAKc,GAAQ,CACzB,IAAIC,EAAc,OAAOD,CAAG,EACxBE,EAAgB,GAUpB,GAPIf,IAAa,QAAU,OAAOa,GAAQ,WAExCC,EAAcD,EAAI,QAAQ,KAAM,EAAE,EAAE,QAAQ,KAAM,EAAE,EACpDE,EAAgB,IAId,CAACA,EAAe,CAClB,MAAMC,EAAgBtC,EAAa,QAAQ,KAAMyB,GAAmBA,EAAE,KAAOW,CAAW,EACxF,GAAIE,EACF,OAAOA,CAEX,CAGA,GAAItC,EAAa,OAAS,YAAc,OAAOmC,GAAQ,SACrD,GAAI,CACF,MAAMI,EAAOzB,EAAAA,SAASqB,CAAG,EACzB,GAAInB,EAAAA,QAAQuB,CAAI,EACd,MAAO,CACL,GAAIH,EACJ,MAAOjB,EAAAA,OAAOoB,EAAM,aAAa,EACjC,SAAU,EAAA,CAGhB,MAAQ,CAER,CAIF,MAAO,CACL,GAAIH,EACJ,MAAOA,EACP,SAAU,EAAA,CAEd,CAAC,CACH,EAEMN,EAAqB,CAACR,EAAsCkB,IAEzDlB,EADmB,CAAC,KAAM,QAAS,WAAY,cAAe,cAAe,SAAS,EACzD,SAASA,CAAQ,EAAI,GAGrDU,EAAoB,CAACV,EAAsCkB,IAE3DA,GAAM,WAAW,UAAU,IACzBlB,IAAa,eAAiBA,IAAa,eACtC,MAMJ"}
|
|
1
|
+
{"version":3,"file":"queryFilterToClientFilter.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.ts"],"sourcesContent":["import { Filter, FilterValue, SEARCH_FILTER_ID } from '@ynput/ayon-react-components'\nimport { QueryFilter, QueryCondition } from '../types/operations'\nimport { format, parseISO, isValid } from 'date-fns'\nimport { detectRelativeDatePattern } from '@shared/components/SearchFilter/filterDates'\nimport { isRelativeDateValue, resolveRelativeValue } from './expandRelativeDates'\n\n// Option interface for filter options (from useBuildFilterOptions)\ninterface Option {\n id: string\n type?: string\n label: string\n icon?: string | null\n img?: string | null\n inverted?: boolean\n operator?: 'AND' | 'OR'\n values?: FilterValue[]\n allowsCustomValues?: boolean\n allowHasValue?: boolean\n allowNoValue?: boolean\n allowExcludes?: boolean\n operatorChangeable?: boolean\n singleSelect?: boolean\n}\n\n/**\n * Converts a QueryFilter back to Filter[] objects that can be consumed by the SearchFilter component\n * This requires the filter options to properly reconstruct the Filter objects with all their metadata\n */\nexport const queryFilterToClientFilter = (\n queryFilter: QueryFilter | undefined,\n filterOptions: Option[],\n): Filter[] => {\n if (!queryFilter?.conditions || queryFilter.conditions.length === 0) {\n return []\n }\n\n const filters: Filter[] = []\n const processedConditions = new Set<string>()\n\n // Process each condition in the query filter\n queryFilter.conditions.forEach((condition) => {\n if ('key' in condition) {\n // This is a QueryCondition\n const filter = convertConditionToFilter(condition, filterOptions, processedConditions)\n if (filter) {\n filters.push(filter)\n }\n } else {\n // This is a nested QueryFilter - check if it's a datetime range (gte+lte same key)\n const datetimeFilter = tryMergeDatetimeRange(condition, filterOptions)\n if (datetimeFilter) {\n filters.push(datetimeFilter)\n } else {\n // Recursively process other nested QueryFilters\n const nestedFilters = queryFilterToClientFilter(condition, filterOptions)\n filters.push(...nestedFilters)\n }\n }\n })\n\n return filters\n}\n\n/**\n * Detects nested QueryFilters that represent datetime ranges (gte+lte on the same key)\n * and merges them into a single datetime Filter with proper range values.\n */\nconst tryMergeDatetimeRange = (\n nestedFilter: QueryFilter,\n filterOptions: Option[],\n): Filter | null => {\n if (!nestedFilter.conditions || nestedFilter.conditions.length < 1) return null\n\n // All conditions must be QueryConditions (not nested QueryFilters)\n const conditions = nestedFilter.conditions.filter(\n (c): c is QueryCondition => 'key' in c,\n )\n if (conditions.length !== nestedFilter.conditions.length) return null\n\n // All conditions must share the same key\n const key = conditions[0].key\n if (!conditions.every((c) => c.key === key)) return null\n\n // Find the matching filter option and check it's a datetime type\n const filterOption = findFilterOption(key, filterOptions)\n if (!filterOption || filterOption.type !== 'datetime') return null\n\n // Extract gte (start) and lte (end) values, resolving relative dates\n const gteCondition = conditions.find((c) => c.operator === 'gte')\n const lteCondition = conditions.find((c) => c.operator === 'lte')\n if (!gteCondition && !lteCondition) return null\n\n const rawStartValue = gteCondition?.value as string | undefined\n const rawEndValue = lteCondition?.value as string | undefined\n const startISO = rawStartValue && isRelativeDateValue(rawStartValue) ? resolveRelativeValue(rawStartValue) : rawStartValue\n const endISO = rawEndValue && isRelativeDateValue(rawEndValue) ? resolveRelativeValue(rawEndValue) : rawEndValue\n\n // Build the range label\n let label = 'Custom range'\n if (startISO && endISO) {\n // Check if it matches a relative date pattern first\n const relativePattern = detectRelativeDatePattern(startISO, endISO)\n if (relativePattern) {\n label = relativePattern.label\n } else {\n // Fall back to showing the date range\n const startDate = parseISO(startISO)\n const endDate = parseISO(endISO)\n if (isValid(startDate) && isValid(endDate)) {\n const currentYear = new Date().getFullYear()\n const endDateFormat = endDate.getFullYear() === currentYear ? 'MMM d' : 'MMM d, yyyy'\n label = `${format(startDate, 'MMM d')} – ${format(endDate, endDateFormat)}`\n }\n }\n }\n\n // `values` holds the gte/lte range pair — used by clientFilterToQueryFilter for round-trip\n // but not part of the FilterValue type, so we extend it at runtime\n const rangeValue = {\n id: `custom-${startISO || ''}-${endISO || ''}`,\n label,\n values: [\n ...(startISO ? [{ id: startISO, label: isValid(parseISO(startISO)) ? format(parseISO(startISO), 'MMM d, yyyy') : startISO }] : []),\n ...(endISO ? [{ id: endISO, label: isValid(parseISO(endISO)) ? format(parseISO(endISO), 'MMM d, yyyy') : endISO }] : []),\n ],\n } as FilterValue\n\n return {\n id: filterOption.id,\n type: filterOption.type as Filter['type'],\n label: filterOption.label,\n icon: filterOption.icon,\n inverted: nestedFilter.operator === 'or',\n values: [rangeValue],\n singleSelect: filterOption.singleSelect,\n }\n}\n\nconst convertConditionToFilter = (\n condition: QueryCondition,\n filterOptions: Option[],\n processedConditions: Set<string>,\n): Filter | null => {\n const { key, value, operator } = condition\n\n // check if the filter is a text search filter\n if (key === SEARCH_FILTER_ID) {\n const valuesArray = Array.isArray(value) ? value : [value || '']\n const filter: Filter = {\n id: SEARCH_FILTER_ID,\n type: 'string',\n label: '',\n values: valuesArray.map((v) => ({ id: String(v), label: String(v) })),\n }\n\n return filter\n }\n\n // Find the matching filter option\n const filterOption = findFilterOption(key, filterOptions)\n if (!filterOption) {\n return null\n }\n\n // Create a unique key for this condition to avoid duplicates\n const conditionKey = `${key}_${operator}_${JSON.stringify(value)}`\n if (processedConditions.has(conditionKey)) {\n return null\n }\n processedConditions.add(conditionKey)\n\n // Convert the condition values to FilterValue objects\n const filterValues = convertConditionValueToFilterValues(value, operator, filterOption)\n\n // Determine if the filter is inverted based on the operator\n const inverted = isInvertedOperator(operator, filterOption.type)\n\n // Determine the filter operator (AND/OR)\n const filterOperator = getFilterOperator(operator, filterOption.type)\n\n const filter: Filter = {\n id: filterOption.id,\n type: filterOption.type as Filter['type'],\n label: filterOption.label,\n inverted,\n operator: filterOperator,\n icon: filterOption.icon,\n values: filterValues,\n isCustom: filterOption.allowsCustomValues,\n singleSelect: filterOption.singleSelect,\n }\n\n return filter\n}\n\nconst findFilterOption = (key: string, filterOptions: Option[]): Option | undefined => {\n // Try exact match first\n let option = filterOptions.find((opt) => opt.id === key)\n if (option) return option\n\n // Try to find by the base key (without prefixes)\n option = filterOptions.find(\n (opt) =>\n opt.id.endsWith(key) ||\n opt.id.replace(/^[^.]*\\./, '') === key ||\n opt.id.split('_').pop() === key,\n )\n if (option) return option\n\n // Try to find by label match\n option = filterOptions.find((opt) => opt.label?.toLowerCase() === key.toLowerCase())\n\n return option\n}\n\nconst convertConditionValueToFilterValues = (\n value: QueryCondition['value'],\n operator: QueryCondition['operator'],\n filterOption: Option,\n): FilterValue[] => {\n // Handle special operators for null/empty checks\n if (operator === 'isnull' || operator === 'notnull') {\n return operator === 'isnull'\n ? [{ id: 'noValue', label: 'No Value' }]\n : [{ id: 'hasValue', label: 'Has Value' }]\n }\n\n // Handle empty array cases - these represent \"No Value\" and \"Has Value\" conditions\n if (Array.isArray(value) && value.length === 0) {\n if (operator === 'eq') {\n // Empty array with 'eq' operator means \"No Value\"\n return [{ id: 'noValue', label: 'No Value' }]\n } else if (operator === 'ne') {\n // Empty array with 'ne' operator means \"Has Value\"\n return [{ id: 'hasValue', label: 'Has Value' }]\n }\n }\n\n if (value === undefined || value === null) {\n return []\n }\n\n // Convert value(s) to FilterValue objects\n const values = Array.isArray(value) ? value : [value]\n\n return values.map((val) => {\n let stringValue = String(val)\n let isCustomValue = false\n\n // Handle LIKE operator with wildcards - strip them and mark as custom\n if (operator === 'like' && typeof val === 'string') {\n // Remove leading and trailing % wildcards\n stringValue = val.replace(/^%/, '').replace(/%$/, '')\n isCustomValue = true\n }\n\n // Try to find existing option value with metadata (only if not already marked as custom from LIKE)\n if (!isCustomValue) {\n const existingValue = filterOption.values?.find((v: FilterValue) => v.id === stringValue)\n if (existingValue) {\n return existingValue\n }\n }\n\n // Format datetime values nicely instead of showing raw ISO strings\n if (filterOption.type === 'datetime' && typeof val === 'string') {\n try {\n const date = parseISO(val)\n if (isValid(date)) {\n return {\n id: stringValue,\n label: format(date, 'MMM d, yyyy'),\n isCustom: true,\n }\n }\n } catch {\n // fall through to default\n }\n }\n\n // Create a basic FilterValue if no existing option found or if it's a LIKE value\n return {\n id: stringValue,\n label: stringValue,\n isCustom: true,\n }\n })\n}\n\nconst isInvertedOperator = (operator: QueryCondition['operator'], type?: string): boolean => {\n const invertedOperators = ['ne', 'notin', 'excludes', 'excludesall', 'excludesany', 'notnull']\n return operator ? invertedOperators.includes(operator) : false\n}\n\nconst getFilterOperator = (operator: QueryCondition['operator'], type?: string): 'AND' | 'OR' => {\n // For list types, determine AND/OR based on the operator\n if (type?.startsWith('list_of_')) {\n if (operator === 'includesall' || operator === 'excludesall') {\n return 'AND'\n }\n return 'OR'\n }\n\n // Default to OR for most cases\n return 'OR'\n}\n\nexport default queryFilterToClientFilter\n"],"names":["queryFilterToClientFilter","queryFilter","filterOptions","filters","processedConditions","condition","filter","convertConditionToFilter","datetimeFilter","tryMergeDatetimeRange","nestedFilters","nestedFilter","conditions","c","key","filterOption","findFilterOption","gteCondition","lteCondition","rawStartValue","rawEndValue","startISO","isRelativeDateValue","resolveRelativeValue","endISO","label","relativePattern","detectRelativeDatePattern","startDate","parseISO","endDate","isValid","currentYear","endDateFormat","format","rangeValue","value","operator","SEARCH_FILTER_ID","valuesArray","v","conditionKey","filterValues","convertConditionValueToFilterValues","inverted","isInvertedOperator","filterOperator","getFilterOperator","option","opt","val","stringValue","isCustomValue","existingValue","date","type"],"mappings":"iQA4BaA,EAA4B,CACvCC,EACAC,IACa,CACb,GAAI,CAACD,GAAa,YAAcA,EAAY,WAAW,SAAW,EAChE,MAAO,CAAA,EAGT,MAAME,EAAoB,CAAA,EACpBC,MAA0B,IAGhC,OAAAH,EAAY,WAAW,QAASI,GAAc,CAC5C,GAAI,QAASA,EAAW,CAEtB,MAAMC,EAASC,EAAyBF,EAAWH,EAAeE,CAAmB,EACjFE,GACFH,EAAQ,KAAKG,CAAM,CAEvB,KAAO,CAEL,MAAME,EAAiBC,EAAsBJ,EAAWH,CAAa,EACrE,GAAIM,EACFL,EAAQ,KAAKK,CAAc,MACtB,CAEL,MAAME,EAAgBV,EAA0BK,EAAWH,CAAa,EACxEC,EAAQ,KAAK,GAAGO,CAAa,CAC/B,CACF,CACF,CAAC,EAEMP,CACT,EAMMM,EAAwB,CAC5BE,EACAT,IACkB,CAClB,GAAI,CAACS,EAAa,YAAcA,EAAa,WAAW,OAAS,EAAG,OAAO,KAG3E,MAAMC,EAAaD,EAAa,WAAW,OACxCE,GAA2B,QAASA,CAAA,EAEvC,GAAID,EAAW,SAAWD,EAAa,WAAW,OAAQ,OAAO,KAGjE,MAAMG,EAAMF,EAAW,CAAC,EAAE,IAC1B,GAAI,CAACA,EAAW,MAAOC,GAAMA,EAAE,MAAQC,CAAG,EAAG,OAAO,KAGpD,MAAMC,EAAeC,EAAiBF,EAAKZ,CAAa,EACxD,GAAI,CAACa,GAAgBA,EAAa,OAAS,WAAY,OAAO,KAG9D,MAAME,EAAeL,EAAW,KAAMC,GAAMA,EAAE,WAAa,KAAK,EAC1DK,EAAeN,EAAW,KAAMC,GAAMA,EAAE,WAAa,KAAK,EAChE,GAAI,CAACI,GAAgB,CAACC,EAAc,OAAO,KAE3C,MAAMC,EAAgBF,GAAc,MAC9BG,EAAcF,GAAc,MAC5BG,EAAWF,GAAiBG,EAAAA,oBAAoBH,CAAa,EAAII,EAAAA,qBAAqBJ,CAAa,EAAIA,EACvGK,EAASJ,GAAeE,EAAAA,oBAAoBF,CAAW,EAAIG,EAAAA,qBAAqBH,CAAW,EAAIA,EAGrG,IAAIK,EAAQ,eACZ,GAAIJ,GAAYG,EAAQ,CAEtB,MAAME,EAAkBC,EAAAA,0BAA0BN,EAAUG,CAAM,EAClE,GAAIE,EACFD,EAAQC,EAAgB,UACnB,CAEL,MAAME,EAAYC,EAAAA,SAASR,CAAQ,EAC7BS,EAAUD,EAAAA,SAASL,CAAM,EAC/B,GAAIO,EAAAA,QAAQH,CAAS,GAAKG,EAAAA,QAAQD,CAAO,EAAG,CAC1C,MAAME,EAAc,IAAI,KAAA,EAAO,YAAA,EACzBC,EAAgBH,EAAQ,YAAA,IAAkBE,EAAc,QAAU,cACxEP,EAAQ,GAAGS,SAAON,EAAW,OAAO,CAAC,MAAMM,SAAOJ,EAASG,CAAa,CAAC,EAC3E,CACF,CACF,CAIA,MAAME,EAAa,CACjB,GAAI,UAAUd,GAAY,EAAE,IAAIG,GAAU,EAAE,GAC5C,MAAAC,EACA,OAAQ,CACN,GAAIJ,EAAW,CAAC,CAAE,GAAIA,EAAU,MAAOU,EAAAA,QAAQF,WAASR,CAAQ,CAAC,EAAIa,EAAAA,OAAOL,EAAAA,SAASR,CAAQ,EAAG,aAAa,EAAIA,CAAA,CAAU,EAAI,CAAA,EAC/H,GAAIG,EAAS,CAAC,CAAE,GAAIA,EAAQ,MAAOO,EAAAA,QAAQF,WAASL,CAAM,CAAC,EAAIU,EAAAA,OAAOL,EAAAA,SAASL,CAAM,EAAG,aAAa,EAAIA,CAAA,CAAQ,EAAI,CAAA,CAAC,CACxH,EAGF,MAAO,CACL,GAAIT,EAAa,GACjB,KAAMA,EAAa,KACnB,MAAOA,EAAa,MACpB,KAAMA,EAAa,KACnB,SAAUJ,EAAa,WAAa,KACpC,OAAQ,CAACwB,CAAU,EACnB,aAAcpB,EAAa,YAAA,CAE/B,EAEMR,EAA2B,CAC/BF,EACAH,EACAE,IACkB,CAClB,KAAM,CAAE,IAAAU,EAAK,MAAAsB,EAAO,SAAAC,CAAA,EAAahC,EAGjC,GAAIS,IAAQwB,EAAAA,iBAAkB,CAC5B,MAAMC,EAAc,MAAM,QAAQH,CAAK,EAAIA,EAAQ,CAACA,GAAS,EAAE,EAQ/D,MAPuB,CACrB,GAAIE,EAAAA,iBACJ,KAAM,SACN,MAAO,GACP,OAAQC,EAAY,IAAKC,IAAO,CAAE,GAAI,OAAOA,CAAC,EAAG,MAAO,OAAOA,CAAC,GAAI,CAAA,CAIxE,CAGA,MAAMzB,EAAeC,EAAiBF,EAAKZ,CAAa,EACxD,GAAI,CAACa,EACH,OAAO,KAIT,MAAM0B,EAAe,GAAG3B,CAAG,IAAIuB,CAAQ,IAAI,KAAK,UAAUD,CAAK,CAAC,GAChE,GAAIhC,EAAoB,IAAIqC,CAAY,EACtC,OAAO,KAETrC,EAAoB,IAAIqC,CAAY,EAGpC,MAAMC,EAAeC,EAAoCP,EAAOC,EAAUtB,CAAY,EAGhF6B,EAAWC,EAAmBR,EAAUtB,EAAa,IAAI,EAGzD+B,EAAiBC,EAAkBV,EAAUtB,EAAa,IAAI,EAcpE,MAZuB,CACrB,GAAIA,EAAa,GACjB,KAAMA,EAAa,KACnB,MAAOA,EAAa,MACpB,SAAA6B,EACA,SAAUE,EACV,KAAM/B,EAAa,KACnB,OAAQ2B,EACR,SAAU3B,EAAa,mBACvB,aAAcA,EAAa,YAAA,CAI/B,EAEMC,EAAmB,CAACF,EAAaZ,IAAgD,CAErF,IAAI8C,EAAS9C,EAAc,KAAM+C,GAAQA,EAAI,KAAOnC,CAAG,EAUvD,OATIkC,IAGJA,EAAS9C,EAAc,KACpB+C,GACCA,EAAI,GAAG,SAASnC,CAAG,GACnBmC,EAAI,GAAG,QAAQ,WAAY,EAAE,IAAMnC,GACnCmC,EAAI,GAAG,MAAM,GAAG,EAAE,QAAUnC,CAAA,EAE5BkC,KAGJA,EAAS9C,EAAc,KAAM+C,GAAQA,EAAI,OAAO,YAAA,IAAkBnC,EAAI,aAAa,GAE5EkC,CACT,EAEML,EAAsC,CAC1CP,EACAC,EACAtB,IACkB,CAElB,GAAIsB,IAAa,UAAYA,IAAa,UACxC,OAAOA,IAAa,SAChB,CAAC,CAAE,GAAI,UAAW,MAAO,UAAA,CAAY,EACrC,CAAC,CAAE,GAAI,WAAY,MAAO,YAAa,EAI7C,GAAI,MAAM,QAAQD,CAAK,GAAKA,EAAM,SAAW,EAAG,CAC9C,GAAIC,IAAa,KAEf,MAAO,CAAC,CAAE,GAAI,UAAW,MAAO,WAAY,EAC9C,GAAWA,IAAa,KAEtB,MAAO,CAAC,CAAE,GAAI,WAAY,MAAO,YAAa,CAElD,CAEA,OAA2BD,GAAU,KAC5B,CAAA,GAIM,MAAM,QAAQA,CAAK,EAAIA,EAAQ,CAACA,CAAK,GAEtC,IAAKc,GAAQ,CACzB,IAAIC,EAAc,OAAOD,CAAG,EACxBE,EAAgB,GAUpB,GAPIf,IAAa,QAAU,OAAOa,GAAQ,WAExCC,EAAcD,EAAI,QAAQ,KAAM,EAAE,EAAE,QAAQ,KAAM,EAAE,EACpDE,EAAgB,IAId,CAACA,EAAe,CAClB,MAAMC,EAAgBtC,EAAa,QAAQ,KAAMyB,GAAmBA,EAAE,KAAOW,CAAW,EACxF,GAAIE,EACF,OAAOA,CAEX,CAGA,GAAItC,EAAa,OAAS,YAAc,OAAOmC,GAAQ,SACrD,GAAI,CACF,MAAMI,EAAOzB,EAAAA,SAASqB,CAAG,EACzB,GAAInB,EAAAA,QAAQuB,CAAI,EACd,MAAO,CACL,GAAIH,EACJ,MAAOjB,EAAAA,OAAOoB,EAAM,aAAa,EACjC,SAAU,EAAA,CAGhB,MAAQ,CAER,CAIF,MAAO,CACL,GAAIH,EACJ,MAAOA,EACP,SAAU,EAAA,CAEd,CAAC,CACH,EAEMN,EAAqB,CAACR,EAAsCkB,IAEzDlB,EADmB,CAAC,KAAM,QAAS,WAAY,cAAe,cAAe,SAAS,EACzD,SAASA,CAAQ,EAAI,GAGrDU,EAAoB,CAACV,EAAsCkB,IAE3DA,GAAM,WAAW,UAAU,IACzBlB,IAAa,eAAiBA,IAAa,eACtC,MAMJ"}
|