@ynput/ayon-frontend-shared 0.2.35 → 0.2.36
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 +32 -22
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +140 -126
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Views.cjs.js +1 -1
- package/dist/Views.cjs.js.map +1 -1
- package/dist/Views.es.js +10 -3
- package/dist/Views.es.js.map +1 -1
- package/dist/_virtual/index.cjs10.js +1 -1
- package/dist/_virtual/index.cjs11.js +1 -1
- package/dist/_virtual/index.cjs12.js +1 -1
- package/dist/_virtual/index.cjs2.js +1 -1
- package/dist/_virtual/index.cjs3.js +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.es10.js +3 -3
- package/dist/_virtual/index.es11.js +5 -5
- package/dist/_virtual/index.es12.js +5 -5
- package/dist/_virtual/index.es2.js +5 -2
- package/dist/_virtual/index.es2.js.map +1 -1
- package/dist/_virtual/index.es3.js +2 -5
- package/dist/_virtual/index.es3.js.map +1 -1
- package/dist/_virtual/index.es4.js +2 -2
- package/dist/_virtual/index.es5.js +2 -2
- package/dist/api.cjs.js +1 -1
- package/dist/api.es.js +372 -340
- package/dist/api.es.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +111 -95
- package/dist/components.es.js.map +1 -1
- package/dist/hooks.cjs.js +1 -1
- package/dist/hooks.es.js +21 -17
- package/dist/hooks.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +19 -9
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.cjs.js +3 -3
- package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.cjs.js.map +1 -1
- package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.es.js +275 -302
- package/dist/node_modules/@reduxjs/toolkit/dist/query/react/rtk-query-react.modern.es.js.map +1 -1
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js +5 -5
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.cjs.js.map +1 -1
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js +1411 -1366
- package/dist/node_modules/@reduxjs/toolkit/dist/query/rtk-query.modern.es.js.map +1 -1
- package/dist/node_modules/decode-named-character-reference/index.dom.cjs.js.map +1 -1
- package/dist/node_modules/decode-named-character-reference/index.dom.es.js.map +1 -1
- package/dist/node_modules/immer/dist/immer.cjs.js +1 -1
- package/dist/node_modules/immer/dist/immer.cjs.js.map +1 -1
- package/dist/node_modules/immer/dist/immer.es.js +185 -185
- package/dist/node_modules/immer/dist/immer.es.js.map +1 -1
- package/dist/node_modules/react-use-websocket/dist/index.cjs.js +1 -1
- package/dist/node_modules/react-use-websocket/dist/index.es.js +1 -1
- package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
- package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
- package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
- package/dist/node_modules/unist-util-is/lib/index.cjs.js.map +1 -1
- package/dist/node_modules/unist-util-is/lib/index.es.js +8 -1
- package/dist/node_modules/unist-util-is/lib/index.es.js.map +1 -1
- package/dist/node_modules/unist-util-visit-parents/lib/index.cjs.js.map +1 -1
- package/dist/node_modules/unist-util-visit-parents/lib/index.es.js.map +1 -1
- package/dist/shared/node_modules/primereact/hooks/hooks.esm.cjs.js +2 -2
- package/dist/shared/node_modules/primereact/hooks/hooks.esm.cjs.js.map +1 -1
- package/dist/shared/node_modules/primereact/hooks/hooks.esm.es.js +121 -98
- package/dist/shared/node_modules/primereact/hooks/hooks.esm.es.js.map +1 -1
- package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
- package/dist/shared/node_modules/prop-types/index.es.js +1 -1
- package/dist/shared/node_modules/react-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.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/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 +10 -9
- package/dist/shared/src/api/base/client.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +209 -47
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +296 -118
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
- package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/views.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +88 -122
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.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 +6 -5
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.es.js +4 -3
- package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
- package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/getLists.es.js +27 -26
- package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -1
- package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/updateLists.es.js +77 -71
- package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
- package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js +1 -1
- package/dist/shared/src/api/queries/links/getEntityLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/links/getEntityLinks.es.js +111 -49
- package/dist/shared/src/api/queries/links/getEntityLinks.es.js.map +1 -1
- 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 +97 -74
- package/dist/shared/src/api/queries/links/getLinks.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/filterRefetchUtils.cjs.js +2 -0
- package/dist/shared/src/api/queries/overview/filterRefetchUtils.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/overview/filterRefetchUtils.es.js +5 -0
- package/dist/shared/src/api/queries/overview/filterRefetchUtils.es.js.map +1 -0
- package/dist/shared/src/api/queries/overview/patchProducts.cjs.js +2 -0
- package/dist/shared/src/api/queries/overview/patchProducts.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/overview/patchProducts.es.js +41 -0
- package/dist/shared/src/api/queries/overview/patchProducts.es.js.map +1 -0
- package/dist/shared/src/api/queries/overview/patchVersions.cjs.js +2 -0
- package/dist/shared/src/api/queries/overview/patchVersions.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/overview/patchVersions.es.js +76 -0
- package/dist/shared/src/api/queries/overview/patchVersions.es.js.map +1 -0
- package/dist/shared/src/api/queries/overview/refetchFilteredEntities.cjs.js +2 -0
- package/dist/shared/src/api/queries/overview/refetchFilteredEntities.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/overview/refetchFilteredEntities.es.js +79 -0
- package/dist/shared/src/api/queries/overview/refetchFilteredEntities.es.js.map +1 -0
- 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 +198 -169
- package/dist/shared/src/api/queries/overview/updateOverview.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 +19 -18
- package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
- package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js +2 -0
- package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js +296 -0
- package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js.map +1 -0
- package/dist/shared/src/api/queries/versions/getVersionsProductsUtils.cjs.js +2 -0
- package/dist/shared/src/api/queries/versions/getVersionsProductsUtils.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/versions/getVersionsProductsUtils.es.js +116 -0
- package/dist/shared/src/api/queries/versions/getVersionsProductsUtils.es.js.map +1 -0
- package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js +1 -1
- package/dist/shared/src/components/AttributeEditor/AttributeEditor.cjs.js.map +1 -1
- package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js +11 -10
- package/dist/shared/src/components/AttributeEditor/AttributeEditor.es.js.map +1 -1
- package/dist/shared/src/components/Badge/Badge.cjs.js +15 -7
- package/dist/shared/src/components/Badge/Badge.cjs.js.map +1 -1
- package/dist/shared/src/components/Badge/Badge.es.js +34 -13
- package/dist/shared/src/components/Badge/Badge.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/DetailsPanelAttributesEditor.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/DetailsPanelAttributesEditor.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +3 -3
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +13 -12
- 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 +4 -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/useEntityData.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.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 +16 -2
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
- package/dist/shared/src/components/EarlyPreview/EarlyPreview.cjs.js +18 -0
- package/dist/shared/src/components/EarlyPreview/EarlyPreview.cjs.js.map +1 -0
- package/dist/shared/src/components/EarlyPreview/EarlyPreview.es.js +26 -0
- package/dist/shared/src/components/EarlyPreview/EarlyPreview.es.js.map +1 -0
- 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 +12 -2
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
- package/dist/shared/src/components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js +58 -0
- package/dist/shared/src/components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js.map +1 -0
- package/dist/shared/src/components/FeaturedVersionOrder/FeaturedVersionOrder.es.js +158 -0
- package/dist/shared/src/components/FeaturedVersionOrder/FeaturedVersionOrder.es.js.map +1 -0
- 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/LegacyBadge/LegacyBadge.cjs.js +2 -0
- package/dist/shared/src/components/LegacyBadge/LegacyBadge.cjs.js.map +1 -0
- package/dist/shared/src/components/LegacyBadge/LegacyBadge.es.js +10 -0
- package/dist/shared/src/components/LegacyBadge/LegacyBadge.es.js.map +1 -0
- 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 +12 -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 +12 -2
- 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 +59 -48
- 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 +12 -2
- 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 +98 -42
- 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 +12 -2
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.es.js +12 -2
- 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 +11 -10
- 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 +12 -2
- 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 +13 -3
- 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 +12 -2
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +411 -243
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +8 -7
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +50 -47
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +2 -2
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +22 -12
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/SizeSlider/SizeSlider.cjs.js +56 -0
- package/dist/shared/src/components/SizeSlider/SizeSlider.cjs.js.map +1 -0
- package/dist/shared/src/components/SizeSlider/SizeSlider.es.js +113 -0
- package/dist/shared/src/components/SizeSlider/SizeSlider.es.js.map +1 -0
- package/dist/shared/src/components/SortingSetting/SortingSetting.cjs.js +2 -0
- package/dist/shared/src/components/SortingSetting/SortingSetting.cjs.js.map +1 -0
- package/dist/shared/src/components/SortingSetting/SortingSetting.es.js +11 -0
- package/dist/shared/src/components/SortingSetting/SortingSetting.es.js.map +1 -0
- package/dist/shared/src/components/SortingSetting/SortingSetting.styled.cjs.js +43 -0
- package/dist/shared/src/components/SortingSetting/SortingSetting.styled.cjs.js.map +1 -0
- package/dist/shared/src/components/SortingSetting/SortingSetting.styled.es.js +51 -0
- package/dist/shared/src/components/SortingSetting/SortingSetting.styled.es.js.map +1 -0
- package/dist/shared/src/components/TableGridSwitch/TableGridSwitch.cjs.js +2 -0
- package/dist/shared/src/components/TableGridSwitch/TableGridSwitch.cjs.js.map +1 -0
- package/dist/shared/src/components/TableGridSwitch/TableGridSwitch.es.js +39 -0
- package/dist/shared/src/components/TableGridSwitch/TableGridSwitch.es.js.map +1 -0
- package/dist/shared/src/components/TableGridSwitch/TableGridSwitch.styled.cjs.js +15 -0
- package/dist/shared/src/components/TableGridSwitch/TableGridSwitch.styled.cjs.js.map +1 -0
- package/dist/shared/src/components/TableGridSwitch/TableGridSwitch.styled.es.js +21 -0
- package/dist/shared/src/components/TableGridSwitch/TableGridSwitch.styled.es.js.map +1 -0
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +12 -2
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +5 -4
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
- package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +12 -2
- 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 +4 -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 +12 -2
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
- package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.es.js +6 -6
- package/dist/shared/src/containers/ContextMenu/useCreateContextMenu.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 +174 -152
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +12 -2
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +57 -47
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js +2 -7
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.es.js +0 -5
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +117 -113
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js +15 -15
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js +30 -30
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.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 +44 -19
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +12 -2
- 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 +12 -2
- 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 +12 -2
- 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 +12 -2
- 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 +4 -2
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js +2 -2
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js +18 -18
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js +3 -3
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.es.js +20 -13
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatus/ActivityStatus.cjs.js +3 -3
- package/dist/shared/src/containers/Feed/components/ActivityStatus/ActivityStatus.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatus/ActivityStatus.es.js +11 -11
- package/dist/shared/src/containers/Feed/components/ActivityStatus/ActivityStatus.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +11 -9
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +21 -18
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.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 +646 -576
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +51 -42
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +64 -54
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.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 +382 -209
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +12 -2
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +12 -2
- 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 +12 -2
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.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 +158 -144
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.es.js.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/ProjectTableContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +145 -132
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +13 -3
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +123 -104
- 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 +83 -87
- 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 +108 -88
- 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 +12 -2
- 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 +12 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +204 -189
- 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 +59 -23
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +263 -0
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -0
- 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 +18 -7
- 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 +12 -2
- 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 +12 -2
- 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 +12 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +173 -163
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/types/columnConfig.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/types/columnConfig.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/types/columnConfig.es.js +20 -0
- package/dist/shared/src/containers/ProjectTreeTable/types/columnConfig.es.js.map +1 -0
- 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 +23 -13
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js +77 -37
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.es.js +24 -38
- package/dist/shared/src/containers/ProjectTreeTable/utils/loadingUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/metaRows.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/metaRows.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/metaRows.es.js +17 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/metaRows.es.js.map +1 -0
- 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 +49 -44
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.es.js +9 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/restrictedEntity.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +3 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +8 -8
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +104 -91
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CollapsedWidget.cjs.js +3 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CollapsedWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CollapsedWidget.es.js +6 -6
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CollapsedWidget.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 +23 -13
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js +11 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EmptyWidget.es.js +16 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EmptyWidget.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js +11 -11
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js +38 -33
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EntityNameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js +25 -19
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.es.js +75 -72
- package/dist/shared/src/containers/ProjectTreeTable/widgets/EnumCellValue.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ErrorWidget.cjs.js +11 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ErrorWidget.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ErrorWidget.es.js +16 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ErrorWidget.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +51 -40
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LoadMoreWidget.es.js +8 -8
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LoadMoreWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MetaWidget.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MetaWidget.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MetaWidget.es.js +17 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MetaWidget.es.js.map +1 -0
- 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 +12 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js +8 -4
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.es.js +79 -45
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextWidget.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 +12 -2
- 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 +203 -163
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js +34 -7
- package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js +34 -7
- package/dist/shared/src/containers/SimpleTable/SimpleTable.styled.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js +98 -73
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.es.js +13 -7
- package/dist/shared/src/containers/SimpleTable/hooks/useRowKeydown.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.es.js +9 -7
- package/dist/shared/src/containers/Slicer/createFilterFromSlicer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.es.js +69 -59
- package/dist/shared/src/containers/Views/ViewItem/ViewItem.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 +4 -2
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.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 +6 -4
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +4 -2
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +4 -2
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
- package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.es.js +53 -48
- package/dist/shared/src/context/DetailsPanelContext.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 +15 -13
- package/dist/shared/src/context/PowerpackContext.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/WebsocketContext.cjs.js +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.es.js +14 -4
- 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 +2 -0
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -0
- package/dist/shared/src/hooks/useGetEntityGroups.es.js +96 -0
- package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -0
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +2 -0
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -0
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +133 -0
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -0
- package/dist/shared/src/hooks/useGroupedPagination.cjs.js +2 -0
- package/dist/shared/src/hooks/useGroupedPagination.cjs.js.map +1 -0
- package/dist/shared/src/hooks/useGroupedPagination.es.js +23 -0
- package/dist/shared/src/hooks/useGroupedPagination.es.js.map +1 -0
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.es.js +39 -23
- package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
- package/dist/shared/src/hooks/useLoadModule.cjs.js +1 -1
- package/dist/shared/src/hooks/useLoadModule.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useLoadModule.es.js +1 -1
- package/dist/shared/src/hooks/useLoadModule.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
- package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/shared/src/util/getAttributeIcon.cjs.js +1 -1
- package/dist/shared/src/util/getAttributeIcon.cjs.js.map +1 -1
- package/dist/shared/src/util/getAttributeIcon.es.js +6 -5
- package/dist/shared/src/util/getAttributeIcon.es.js.map +1 -1
- package/dist/shared/src/util/getGroupByDataType.cjs.js +2 -0
- package/dist/shared/src/util/getGroupByDataType.cjs.js.map +1 -0
- package/dist/shared/src/util/getGroupByDataType.es.js +16 -0
- package/dist/shared/src/util/getGroupByDataType.es.js.map +1 -0
- package/dist/shared/src/util/productTypes.cjs.js.map +1 -1
- package/dist/shared/src/util/productTypes.es.js.map +1 -1
- package/dist/types/api/generated/graphql.d.ts +378 -6
- package/dist/types/api/generated/graphqlLinks.d.ts +36 -1
- package/dist/types/api/generated/views.d.ts +52 -11
- package/dist/types/api/queries/actions/getActions.d.ts +192 -36
- package/dist/types/api/queries/activities/getActivities.d.ts +519 -88
- package/dist/types/api/queries/activities/getCategories.d.ts +64 -12
- package/dist/types/api/queries/activities/getMentions.d.ts +64 -12
- package/dist/types/api/queries/activities/updateActivities.d.ts +86 -0
- package/dist/types/api/queries/addons/getAddons.d.ts +526 -48
- package/dist/types/api/queries/attributes/getAttributes.d.ts +128 -24
- package/dist/types/api/queries/authentication/getAuthentication.d.ts +64 -12
- package/dist/types/api/queries/cloud/cloud.d.ts +128 -24
- package/dist/types/api/queries/entities/getEntity.d.ts +381 -60
- package/dist/types/api/queries/entities/getEntityPanel.d.ts +171 -24
- package/dist/types/api/queries/entities/updateEntity.d.ts +43 -0
- package/dist/types/api/queries/entityLists/getLists.d.ts +533 -168
- package/dist/types/api/queries/entityLists/getListsAttributes.d.ts +64 -12
- package/dist/types/api/queries/entityLists/listFolders.d.ts +64 -12
- package/dist/types/api/queries/folders/getFolders.d.ts +128 -24
- package/dist/types/api/queries/grouping/getGrouping.d.ts +64 -12
- package/dist/types/api/queries/links/getEntityLinks.d.ts +64 -12
- package/dist/types/api/queries/links/getLinks.d.ts +40 -40
- package/dist/types/api/queries/overview/filterRefetchUtils.d.ts +5 -0
- package/dist/types/api/queries/overview/getOverview.d.ts +529 -100
- package/dist/types/api/queries/overview/index.d.ts +2 -0
- package/dist/types/api/queries/overview/patchProducts.d.ts +13 -0
- package/dist/types/api/queries/overview/patchVersions.d.ts +13 -0
- package/dist/types/api/queries/overview/refetchFilteredEntities.d.ts +26 -0
- package/dist/types/api/queries/overview/updateOverview.d.ts +1 -10
- package/dist/types/api/queries/permissions/getPermissions.d.ts +128 -24
- package/dist/types/api/queries/project/getProject.d.ts +192 -36
- package/dist/types/api/queries/review/getReview.d.ts +192 -36
- package/dist/types/api/queries/share/share.d.ts +64 -12
- package/dist/types/api/queries/system/getSystem.d.ts +192 -36
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +265 -36
- package/dist/types/api/queries/users/getUsers.d.ts +731 -120
- package/dist/types/api/queries/users/guests.d.ts +64 -12
- package/dist/types/api/queries/versions/getVersionsProducts.d.ts +2931 -0
- package/dist/types/api/queries/versions/getVersionsProductsUtils.d.ts +31 -0
- package/dist/types/api/queries/versions/index.d.ts +2 -0
- package/dist/types/api/queries/versions/updateVersions.d.ts +262 -12
- package/dist/types/api/queries/views/getViews.d.ts +256 -48
- package/dist/types/api/queries/watchers/getWatchers.d.ts +64 -12
- package/dist/types/components/Badge/Badge.d.ts +5 -4
- package/dist/types/components/EarlyPreview/EarlyPreview.d.ts +5 -0
- package/dist/types/components/EarlyPreview/index.d.ts +1 -0
- package/dist/types/components/EnumEditor/EnumEditor.styled.d.ts +1 -1
- package/dist/types/components/FeaturedVersionOrder/FeaturedVersionOrder.d.ts +14 -0
- package/dist/types/components/FeaturedVersionOrder/index.d.ts +1 -0
- package/dist/types/components/LegacyBadge/LegacyBadge.d.ts +5 -0
- package/dist/types/components/LegacyBadge/index.d.ts +1 -0
- package/dist/types/components/ProjectTableSettings/ProjectTableSettings.d.ts +5 -0
- package/dist/types/components/ProjectTableSettings/index.d.ts +1 -0
- package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +45 -6
- package/dist/types/components/SettingsPanel/SettingsPanel.d.ts +2 -1
- package/dist/types/components/SizeSlider/SizeSlider.d.ts +13 -0
- package/dist/types/components/SizeSlider/index.d.ts +1 -0
- package/dist/types/components/SortingSetting/SortingSetting.d.ts +6 -0
- package/dist/types/components/SortingSetting/SortingSetting.styled.d.ts +3 -0
- package/dist/types/components/SortingSetting/index.d.ts +1 -0
- package/dist/types/components/TableGridSwitch/TableGridSwitch.d.ts +6 -0
- package/dist/types/components/TableGridSwitch/TableGridSwitch.styled.d.ts +4 -0
- package/dist/types/components/TableGridSwitch/index.d.ts +1 -0
- package/dist/types/components/index.d.ts +6 -0
- package/dist/types/containers/Actions/ActionsDropdown/ActionsDropdown.styled.d.ts +1 -1
- package/dist/types/containers/DetailsPanel/DetailsPanel.d.ts +2 -1
- package/dist/types/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.d.ts +10 -6
- package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +2 -2
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +10 -1
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.styled.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +7 -2
- package/dist/types/containers/ProjectTreeTable/components/GroupSettingsFallback.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/context/DetailsPanelEntityContext.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +3 -1
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +5 -3
- package/dist/types/containers/ProjectTreeTable/hooks/index.d.ts +0 -2
- package/dist/types/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.d.ts +3 -2
- package/dist/types/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +5 -2
- package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useGetGroupedFields.d.ts +12 -4
- package/dist/types/containers/ProjectTreeTable/hooks/useGroupBySettings.d.ts +11 -0
- package/dist/types/containers/ProjectTreeTable/types/columnConfig.d.ts +14 -0
- package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +3 -2
- package/dist/types/containers/ProjectTreeTable/types/table.d.ts +19 -4
- package/dist/types/containers/ProjectTreeTable/types/widgetDisplayConfig.d.ts +0 -0
- package/dist/types/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +2 -0
- package/dist/types/containers/ProjectTreeTable/utils/loadingUtils.d.ts +1 -6
- package/dist/types/containers/ProjectTreeTable/utils/metaRows.d.ts +33 -0
- package/dist/types/containers/ProjectTreeTable/utils/restrictedEntity.d.ts +13 -0
- package/dist/types/containers/ProjectTreeTable/widgets/CellWidget.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/widgets/DateWidget.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/widgets/EmptyWidget.d.ts +9 -0
- package/dist/types/containers/ProjectTreeTable/widgets/EntityNameWidget.d.ts +4 -2
- package/dist/types/containers/ProjectTreeTable/widgets/EnumCellValue.d.ts +1 -2
- package/dist/types/containers/ProjectTreeTable/widgets/ErrorWidget.d.ts +9 -0
- package/dist/types/containers/ProjectTreeTable/widgets/LoadMoreWidget.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/widgets/MetaWidget.d.ts +10 -0
- package/dist/types/containers/ProjectTreeTable/widgets/index.d.ts +3 -0
- package/dist/types/containers/SimpleTable/SimpleTable.d.ts +4 -2
- package/dist/types/containers/SimpleTable/SimpleTableRowTemplate.d.ts +10 -0
- package/dist/types/containers/SimpleTable/hooks/useRowKeydown.d.ts +2 -1
- package/dist/types/containers/Slicer/types.d.ts +2 -0
- package/dist/types/containers/Views/ViewItem/ViewItem.d.ts +2 -2
- package/dist/types/containers/Views/index.d.ts +1 -1
- package/dist/types/context/DetailsPanelContext.d.ts +10 -0
- package/dist/types/hooks/index.d.ts +3 -1
- package/dist/types/hooks/useGetEntityGroups.d.ts +11 -0
- package/dist/types/{containers/ProjectTreeTable/hooks/useProjectTableModules.d.ts → hooks/useGroupByRemoteModules.d.ts} +6 -5
- package/dist/types/hooks/useGroupedPagination.d.ts +25 -0
- package/dist/types/util/getGroupByDataType.d.ts +20 -0
- package/dist/types/util/index.d.ts +1 -0
- package/dist/types/util/productTypes.d.ts +1 -1
- package/dist/util.cjs.js +1 -1
- package/dist/util.es.js +25 -23
- package/dist/util.es.js.map +1 -1
- package/package.json +1 -1
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js +0 -60
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js.map +0 -1
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js +0 -343
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js.map +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js +0 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js.map +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js +0 -95
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js.map +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js +0 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js.map +0 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js +0 -132
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js.map +0 -1
- package/dist/shared/src/hooks/useTagStyling.cjs.js +0 -2
- package/dist/shared/src/hooks/useTagStyling.cjs.js.map +0 -1
- package/dist/shared/src/hooks/useTagStyling.es.js +0 -33
- package/dist/shared/src/hooks/useTagStyling.es.js.map +0 -1
- package/dist/types/components/ProjectTableSettings/RowHeightSettings.d.ts +0 -3
- package/dist/types/containers/ProjectTreeTable/hooks/useGetTaskGroups.d.ts +0 -10
- package/dist/types/hooks/useTagStyling.d.ts +0 -17
package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupSettingsFallback.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/components/GroupSettingsFallback.tsx"],"sourcesContent":["import { SettingsPanelItem, TableSettingsFallback } from '../../../components'\nimport { FC } from 'react'\nimport { ColumnSettingsContextType } from '../context'\nimport styled from 'styled-components'\nimport { Button, Icon } from '@ynput/ayon-react-components'\n\nconst FieldItem = styled.li`\n display: flex;\n align-items: center;\n padding: 0;\n margin: 0;\n`\n\nconst FieldButton = styled(Button)`\n width: 100%;\n justify-content: start;\n`\n\nexport type GroupByConfig = {\n showEmpty?: boolean\n}\n\nexport interface GroupSettingsProps {\n fields: SettingsPanelItem[]\n config
|
|
1
|
+
{"version":3,"file":"GroupSettingsFallback.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/components/GroupSettingsFallback.tsx"],"sourcesContent":["import { SettingsPanelItem, TableSettingsFallback } from '../../../components'\nimport { FC } from 'react'\nimport { ColumnSettingsContextType } from '../context'\nimport styled from 'styled-components'\nimport { Button, Icon } from '@ynput/ayon-react-components'\n\nconst FieldItem = styled.li`\n display: flex;\n align-items: center;\n padding: 0;\n margin: 0;\n`\n\nconst FieldButton = styled(Button)`\n width: 100%;\n justify-content: start;\n`\n\nexport type GroupByConfig = {\n showEmpty?: boolean\n entityType: string\n}\n\nexport interface GroupSettingsProps {\n fields: SettingsPanelItem[]\n config: GroupByConfig\n onChange?: ColumnSettingsContextType['updateGroupBy']\n groupBy?: ColumnSettingsContextType['groupBy']\n updateGroupBy?: ColumnSettingsContextType['updateGroupBy']\n onConfigChange?: (config: GroupByConfig) => void\n}\n\nexport interface GroupSettingsFallbackProps extends GroupSettingsProps {\n requiredVersion?: string\n}\n\nexport const GroupSettingsFallback: FC<GroupSettingsFallbackProps> = ({\n requiredVersion,\n fields,\n}) => (\n <TableSettingsFallback feature={'groupAttributes'} requiredVersion={requiredVersion}>\n {fields.map((field) => (\n <FieldItem key={field.value}>\n <FieldButton variant=\"text\" icon={field.icon}>\n {field.label}\n <Icon icon={'bolt'} style={{ marginLeft: 'auto' }} />\n </FieldButton>\n </FieldItem>\n ))}\n </TableSettingsFallback>\n)\n"],"names":["FieldItem","styled","FieldButton","Button","GroupSettingsFallback","requiredVersion","fields","TableSettingsFallback","field","jsx","jsxs","Icon"],"mappings":"6yaAMMA,EAAYC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA,EAOnBC,EAAcD,EAAOE,QAAM;AAAA;AAAA;AAAA,EAuBpBC,EAAwD,CAAC,CACpE,gBAAAC,EACA,OAAAC,CACF,4BACGC,EAAAA,sBAAsB,CAAA,QAAS,kBAAmB,gBAAAF,EAChD,WAAO,IAAKG,GACXC,EAAAA,kBAAAA,IAACT,GACC,SAACU,yBAAAR,EAAA,CAAY,QAAQ,OAAO,KAAMM,EAAM,KACrC,SAAA,CAAMA,EAAA,MACPC,wBAACE,EAAAA,MAAK,KAAM,OAAQ,MAAO,CAAE,WAAY,OAAU,CAAA,CAAA,CAAA,CACrD,CAJc,EAAAH,EAAM,KAKtB,CACD,CACH,CAAA"}
|
|
@@ -70,6 +70,7 @@ import "../../../api/queries/links/getLinks.es.js";
|
|
|
70
70
|
import "../../../api/queries/links/getEntityLinks.es.js";
|
|
71
71
|
import "../../../api/queries/overview/getOverview.es.js";
|
|
72
72
|
import "../../../api/queries/overview/updateOverview.es.js";
|
|
73
|
+
import "../../../api/queries/versions/getVersionsProducts.es.js";
|
|
73
74
|
import "../../../api/queries/permissions/getPermissions.es.js";
|
|
74
75
|
import "../../../api/queries/products/createProduct.es.js";
|
|
75
76
|
import "../../../api/queries/project/getProject.es.js";
|
|
@@ -148,6 +149,7 @@ import "../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.j
|
|
|
148
149
|
import "../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
|
|
149
150
|
import "../ProjectTreeTable.es.js";
|
|
150
151
|
import "../context/CellEditingContext.es.js";
|
|
152
|
+
import "short-uuid";
|
|
151
153
|
import "@tanstack/react-table";
|
|
152
154
|
import "../widgets/CollapsedWidget.es.js";
|
|
153
155
|
import "../widgets/DateWidget.es.js";
|
|
@@ -162,6 +164,8 @@ import "../../../components/LinksManager/CellEditingDialog.es.js";
|
|
|
162
164
|
import "../context/DetailsPanelEntityContext.es.js";
|
|
163
165
|
import "../context/SelectedRowsContext.es.js";
|
|
164
166
|
import "../../../components/LinksManager/LinksManager.styled.es.js";
|
|
167
|
+
import "../widgets/EmptyWidget.es.js";
|
|
168
|
+
import "../widgets/ErrorWidget.es.js";
|
|
165
169
|
import "../ProjectTreeTable.styled.es.js";
|
|
166
170
|
import "./SelectionCell.es.js";
|
|
167
171
|
import "./RowSelectionHeader.es.js";
|
|
@@ -203,11 +207,13 @@ import "../../../components/DetailsPanelDetails/FieldLabel.es.js";
|
|
|
203
207
|
import "../../../components/Watchers/Watchers.es.js";
|
|
204
208
|
import "../../../components/ProjectTableSettings/ProjectTableSettings.es.js";
|
|
205
209
|
import { TableSettingsFallback as n } from "../../../components/ProjectTableSettings/TableSettingsFallback.es.js";
|
|
210
|
+
import "../../../components/SizeSlider/SizeSlider.es.js";
|
|
206
211
|
import "../../../components/SettingsPanel/SettingsPanel.es.js";
|
|
207
212
|
import "../../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
|
|
208
213
|
import "../../../components/AttributeEditor/components/MinMaxField.es.js";
|
|
209
214
|
import "../../../components/EnumEditor/EnumEditor.styled.es.js";
|
|
210
215
|
import "../../../components/SearchFilter/filterDates.es.js";
|
|
216
|
+
import "../../../components/FeaturedVersionOrder/FeaturedVersionOrder.es.js";
|
|
211
217
|
import "../../../components/Badge/Badge.es.js";
|
|
212
218
|
import "../../../components/Powerpack/PowerpackButton.es.js";
|
|
213
219
|
import "../../../components/Powerpack/PricingLink.es.js";
|
|
@@ -225,6 +231,10 @@ import "../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
|
|
|
225
231
|
import "../../../components/AccessUser/AccessUser.es.js";
|
|
226
232
|
import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
|
|
227
233
|
import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
|
|
234
|
+
import "../../../components/TableGridSwitch/TableGridSwitch.es.js";
|
|
235
|
+
import "../../../components/SortingSetting/SortingSetting.styled.es.js";
|
|
236
|
+
import "../../../components/EarlyPreview/EarlyPreview.es.js";
|
|
237
|
+
import "../../../components/LegacyBadge/LegacyBadge.es.js";
|
|
228
238
|
import o from "styled-components";
|
|
229
239
|
const s = o.li`
|
|
230
240
|
display: flex;
|
|
@@ -234,7 +244,7 @@ const s = o.li`
|
|
|
234
244
|
`, a = o(p)`
|
|
235
245
|
width: 100%;
|
|
236
246
|
justify-content: start;
|
|
237
|
-
`,
|
|
247
|
+
`, Tr = ({
|
|
238
248
|
requiredVersion: r,
|
|
239
249
|
fields: m
|
|
240
250
|
}) => /* @__PURE__ */ t.jsx(n, { feature: "groupAttributes", requiredVersion: r, children: m.map((i) => /* @__PURE__ */ t.jsx(s, { children: /* @__PURE__ */ t.jsxs(a, { variant: "text", icon: i.icon, children: [
|
|
@@ -242,6 +252,6 @@ const s = o.li`
|
|
|
242
252
|
/* @__PURE__ */ t.jsx(e, { icon: "bolt", style: { marginLeft: "auto" } })
|
|
243
253
|
] }) }, i.value)) });
|
|
244
254
|
export {
|
|
245
|
-
|
|
255
|
+
Tr as GroupSettingsFallback
|
|
246
256
|
};
|
|
247
257
|
//# sourceMappingURL=GroupSettingsFallback.es.js.map
|
package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupSettingsFallback.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/components/GroupSettingsFallback.tsx"],"sourcesContent":["import { SettingsPanelItem, TableSettingsFallback } from '../../../components'\nimport { FC } from 'react'\nimport { ColumnSettingsContextType } from '../context'\nimport styled from 'styled-components'\nimport { Button, Icon } from '@ynput/ayon-react-components'\n\nconst FieldItem = styled.li`\n display: flex;\n align-items: center;\n padding: 0;\n margin: 0;\n`\n\nconst FieldButton = styled(Button)`\n width: 100%;\n justify-content: start;\n`\n\nexport type GroupByConfig = {\n showEmpty?: boolean\n}\n\nexport interface GroupSettingsProps {\n fields: SettingsPanelItem[]\n config
|
|
1
|
+
{"version":3,"file":"GroupSettingsFallback.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/components/GroupSettingsFallback.tsx"],"sourcesContent":["import { SettingsPanelItem, TableSettingsFallback } from '../../../components'\nimport { FC } from 'react'\nimport { ColumnSettingsContextType } from '../context'\nimport styled from 'styled-components'\nimport { Button, Icon } from '@ynput/ayon-react-components'\n\nconst FieldItem = styled.li`\n display: flex;\n align-items: center;\n padding: 0;\n margin: 0;\n`\n\nconst FieldButton = styled(Button)`\n width: 100%;\n justify-content: start;\n`\n\nexport type GroupByConfig = {\n showEmpty?: boolean\n entityType: string\n}\n\nexport interface GroupSettingsProps {\n fields: SettingsPanelItem[]\n config: GroupByConfig\n onChange?: ColumnSettingsContextType['updateGroupBy']\n groupBy?: ColumnSettingsContextType['groupBy']\n updateGroupBy?: ColumnSettingsContextType['updateGroupBy']\n onConfigChange?: (config: GroupByConfig) => void\n}\n\nexport interface GroupSettingsFallbackProps extends GroupSettingsProps {\n requiredVersion?: string\n}\n\nexport const GroupSettingsFallback: FC<GroupSettingsFallbackProps> = ({\n requiredVersion,\n fields,\n}) => (\n <TableSettingsFallback feature={'groupAttributes'} requiredVersion={requiredVersion}>\n {fields.map((field) => (\n <FieldItem key={field.value}>\n <FieldButton variant=\"text\" icon={field.icon}>\n {field.label}\n <Icon icon={'bolt'} style={{ marginLeft: 'auto' }} />\n </FieldButton>\n </FieldItem>\n ))}\n </TableSettingsFallback>\n)\n"],"names":["FieldItem","styled","FieldButton","Button","GroupSettingsFallback","requiredVersion","fields","TableSettingsFallback","field","jsx","jsxs","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAMA,IAAYC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA,GAOnBC,IAAcD,EAAOE,CAAM;AAAA;AAAA;AAAA,GAuBpBC,KAAwD,CAAC;AAAA,EACpE,iBAAAC;AAAA,EACA,QAAAC;AACF,4BACGC,GAAsB,EAAA,SAAS,mBAAmB,iBAAAF,GAChD,YAAO,IAAI,CAACG,MACXC,gBAAAA,EAAAA,IAACT,KACC,UAACU,gBAAAA,OAAAR,GAAA,EAAY,SAAQ,QAAO,MAAMM,EAAM,MACrC,UAAA;AAAA,EAAMA,EAAA;AAAA,EACPC,gBAAAA,MAACE,KAAK,MAAM,QAAQ,OAAO,EAAE,YAAY,SAAU,CAAA;AAAA,EAAA,CACrD,EAJc,GAAAH,EAAM,KAKtB,CACD,EACH,CAAA;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const M=require("../../../../../_virtual/jsx-runtime.cjs.js"),l=require("react");require("@ynput/ayon-react-components");require("lodash");const a=require("react-toastify");require("uuid");require("../../../util/pubsub.cjs.js");const _=require("../utils/cellUtils.cjs.js"),v=require("../utils/getTypeDefaultValue.cjs.js");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.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("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.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/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/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/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../ProjectTreeTable.cjs.js");const S=require("./CellEditingContext.cjs.js"),V=require("../hooks/useHistory.cjs.js"),B=require("./SelectionCellsContext.cjs.js"),H=require("../hooks/useUpdateTableData.cjs.js"),L=require("./ProjectTableContext.cjs.js"),$=require("../utils/validateUpdateEntities.cjs.js");require("./ClipboardContext.cjs.js");require("./ColumnSettingsContext.cjs.js");require("./ProjectTableQueriesContext.cjs.js");require("./SelectedRowsContext.cjs.js");require("./DetailsPanelEntityContext.cjs.js");require("./ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const z=({children:A})=>{const[f,D]=l.useState(null),T=l.useCallback(i=>i===f,[f]),C=V(),{pushHistory:F,undo:U,redo:P,canUndo:w,canRedo:k}=C,{selectedCells:E}=B.useSelectionCellsContext(),{updateEntities:I,inheritFromParent:c}=H({pushHistory:F}),{attribFields:y,getEntityById:j}=L.useProjectTableContext(),d=l.useCallback(async(i=[],e=!0)=>{try{return $(i,y),await I(i,e)}catch(r){return a.toast.error(r.message),Promise.reject(r)}},[I,y]),g=async()=>{const[i,e,r]=U()||[];if(i&&i.length>0)try{await d(i,!1)}catch{a.toast.error("Failed to undo changes")}if(e&&e.length>0)try{await c(e,!1)}catch{a.toast.error("Failed to inherit changes")}r&&r.length>0&&r.forEach(t=>{try{t()}catch{a.toast.error("Failed to execute custom undo action")}})},h=async()=>{const[i,e,r]=P()||[];if(i&&i.length>0)try{await d(i,!1)}catch{a.toast.error("Failed to redo changes")}if(e&&e.length>0)try{await c(e,!1)}catch{a.toast.error("Failed to inherit changes")}r&&r.length>0&&r.forEach(t=>{try{t()}catch{a.toast.error("Failed to execute custom redo action")}})},x=l.useCallback(async i=>{const e=[],r=[];for(const t of i){const{colId:o,rowId:s}=_.parseCellId(t)||{};if(!o||!s){console.warn(`Invalid cellId: ${t}`);continue}const u=j(s);if(!u)return;const q=o.replace("attrib_",""),n=o.startsWith("attrib_");if(!q){console.warn(`Invalid column ID: ${o}`);continue}let p=null;if(n){const b=y.find(m=>m.name===q);if(!b){console.warn(`Attribute field not found: ${q}`);continue}if(b.data.inherit){const m=r.find(R=>R.entityId===u.entityId);m?m.attribs.push(q):r.push({entityId:u.entityId,attribs:[q],entityType:u.entityType,ownAttrib:u.ownAttrib||[],rowId:s,folderId:u.entityType==="folder"?u.parentId:u.entityType==="task"?u.folderId:void 0});continue}else p=b.data.default||v.getTypeDefaultValue(b.data.type)}else if(q==="assignees")p=v.getTypeDefaultValue("list_of_strings");else if(q==="tags")p=v.getTypeDefaultValue("list_of_strings");else{console.warn(`Field not editable: ${q}`);continue}const N={id:s,rowId:s,field:q,value:p,isAttrib:n,type:u.entityType};e.push(N)}if(e.length>0)try{await d(e,!0)}catch(t){a.toast.error("Failed to clear selected cells"),console.error("Error clearing selected cells:",t)}if(r.length>0)try{await c(r,!0)}catch(t){a.toast.error("Failed to inherit parent values for cleared cells"),console.error("Error clearing inherited cells:",t)}e.length===0&&r.length===0&&a.toast.warn("No valid cells selected to clear")},[y,I]),K=l.useMemo(()=>({editingCellId:f,setEditingCellId:D,isEditing:T,updateEntities:d,inheritFromParent:c,undo:g,redo:h,history:C}),[f,T,d,c,g,h,C]);return l.useEffect(()=>{const i=e=>{const r=e.target;if(r.tagName==="INPUT"||r.tagName==="TEXTAREA"||r.isContentEditable||r.getAttribute("role")==="textbox"||r.tagName==="LI")return;const o=typeof navigator<"u"&&(navigator.userAgentData&&navigator.userAgentData.platform.toUpperCase().includes("MAC")||navigator.userAgent.toUpperCase().includes("MAC"))?e.metaKey:e.ctrlKey;if(o&&e.key==="z"&&(e.preventDefault(),w&&g()),(o&&e.key==="y"||o&&e.shiftKey&&e.key==="z"||o&&e.key==="Z")&&(e.preventDefault(),k&&h()),e.key==="Backspace"&&!(e.ctrlKey||e.metaKey)||e.key==="Delete"){if(!E.size)return;e.preventDefault();const s=Array.from(E).map(n=>document.getElementById(n)),u=n=>n==null?void 0:n.classList.contains("editable"),q=s.filter(u);if(q.length===0){a.toast.warn("No editable cells selected to clear");return}x(q.map(n=>n==null?void 0:n.id).filter(Boolean))}};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[w,k,g,h,E,x]),M.jsxRuntimeExports.jsx(S.CellEditingContext.Provider,{value:K,children:A})};exports.CellEditingProvider=z;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const M=require("../../../../../_virtual/jsx-runtime.cjs.js"),l=require("react");require("@ynput/ayon-react-components");require("short-uuid");require("lodash");const a=require("react-toastify");require("uuid");require("../../../util/pubsub.cjs.js");const _=require("../utils/cellUtils.cjs.js"),v=require("../utils/getTypeDefaultValue.cjs.js");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.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("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.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/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/versions/getVersionsProducts.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../ProjectTreeTable.cjs.js");const S=require("./CellEditingContext.cjs.js"),V=require("../hooks/useHistory.cjs.js"),B=require("./SelectionCellsContext.cjs.js"),H=require("../hooks/useUpdateTableData.cjs.js"),L=require("./ProjectTableContext.cjs.js"),$=require("../utils/validateUpdateEntities.cjs.js");require("./ClipboardContext.cjs.js");require("./ColumnSettingsContext.cjs.js");require("./ProjectTableQueriesContext.cjs.js");require("./SelectedRowsContext.cjs.js");require("./DetailsPanelEntityContext.cjs.js");require("./ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/SizeSlider/SizeSlider.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/TableGridSwitch/TableGridSwitch.cjs.js");require("../../../components/SortingSetting/SortingSetting.styled.cjs.js");require("../../../components/EarlyPreview/EarlyPreview.cjs.js");require("../../../components/LegacyBadge/LegacyBadge.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../widgets/EmptyWidget.cjs.js");require("../widgets/ErrorWidget.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const z=({children:A})=>{const[f,D]=l.useState(null),T=l.useCallback(i=>i===f,[f]),C=V(),{pushHistory:F,undo:U,redo:P,canUndo:w,canRedo:k}=C,{selectedCells:E}=B.useSelectionCellsContext(),{updateEntities:I,inheritFromParent:c}=H({pushHistory:F}),{attribFields:y,getEntityById:j}=L.useProjectTableContext(),d=l.useCallback(async(i=[],e=!0)=>{try{return $(i,y),await I(i,e)}catch(r){return a.toast.error(r.message),Promise.reject(r)}},[I,y]),g=async()=>{const[i,e,r]=U()||[];if(i&&i.length>0)try{await d(i,!1)}catch{a.toast.error("Failed to undo changes")}if(e&&e.length>0)try{await c(e,!1)}catch{a.toast.error("Failed to inherit changes")}r&&r.length>0&&r.forEach(t=>{try{t()}catch{a.toast.error("Failed to execute custom undo action")}})},h=async()=>{const[i,e,r]=P()||[];if(i&&i.length>0)try{await d(i,!1)}catch{a.toast.error("Failed to redo changes")}if(e&&e.length>0)try{await c(e,!1)}catch{a.toast.error("Failed to inherit changes")}r&&r.length>0&&r.forEach(t=>{try{t()}catch{a.toast.error("Failed to execute custom redo action")}})},x=l.useCallback(async i=>{const e=[],r=[];for(const t of i){const{colId:o,rowId:s}=_.parseCellId(t)||{};if(!o||!s){console.warn(`Invalid cellId: ${t}`);continue}const u=j(s);if(!u)return;const q=o.replace("attrib_",""),n=o.startsWith("attrib_");if(!q){console.warn(`Invalid column ID: ${o}`);continue}let p=null;if(n){const b=y.find(m=>m.name===q);if(!b){console.warn(`Attribute field not found: ${q}`);continue}if(b.data.inherit){const m=r.find(R=>R.entityId===u.entityId);m?m.attribs.push(q):r.push({entityId:u.entityId,attribs:[q],entityType:u.entityType,ownAttrib:u.ownAttrib||[],rowId:s,folderId:u.entityType==="folder"?u.parentId:u.entityType==="task"?u.folderId:void 0});continue}else p=b.data.default||v.getTypeDefaultValue(b.data.type)}else if(q==="assignees")p=v.getTypeDefaultValue("list_of_strings");else if(q==="tags")p=v.getTypeDefaultValue("list_of_strings");else{console.warn(`Field not editable: ${q}`);continue}const N={id:s,rowId:s,field:q,value:p,isAttrib:n,type:u.entityType};e.push(N)}if(e.length>0)try{await d(e,!0)}catch(t){a.toast.error("Failed to clear selected cells"),console.error("Error clearing selected cells:",t)}if(r.length>0)try{await c(r,!0)}catch(t){a.toast.error("Failed to inherit parent values for cleared cells"),console.error("Error clearing inherited cells:",t)}e.length===0&&r.length===0&&a.toast.warn("No valid cells selected to clear")},[y,I]),K=l.useMemo(()=>({editingCellId:f,setEditingCellId:D,isEditing:T,updateEntities:d,inheritFromParent:c,undo:g,redo:h,history:C}),[f,T,d,c,g,h,C]);return l.useEffect(()=>{const i=e=>{const r=e.target;if(r.tagName==="INPUT"||r.tagName==="TEXTAREA"||r.isContentEditable||r.getAttribute("role")==="textbox"||r.tagName==="LI")return;const o=typeof navigator<"u"&&(navigator.userAgentData&&navigator.userAgentData.platform.toUpperCase().includes("MAC")||navigator.userAgent.toUpperCase().includes("MAC"))?e.metaKey:e.ctrlKey;if(o&&e.key==="z"&&(e.preventDefault(),w&&g()),(o&&e.key==="y"||o&&e.shiftKey&&e.key==="z"||o&&e.key==="Z")&&(e.preventDefault(),k&&h()),e.key==="Backspace"&&!(e.ctrlKey||e.metaKey)||e.key==="Delete"){if(!E.size)return;e.preventDefault();const s=Array.from(E).map(n=>document.getElementById(n)),u=n=>n==null?void 0:n.classList.contains("editable"),q=s.filter(u);if(q.length===0){a.toast.warn("No editable cells selected to clear");return}x(q.map(n=>n==null?void 0:n.id).filter(Boolean))}};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[w,k,g,h,E,x]),M.jsxRuntimeExports.jsx(S.CellEditingContext.Provider,{value:K,children:A})};exports.CellEditingProvider=z;
|
|
2
2
|
//# sourceMappingURL=CellEditingProvider.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CellEditingProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellId] = useState<CellId | null>(null)\n\n // Memoize these functions to prevent unnecessary re-renders\n const isEditing = useCallback((id: CellId) => id === editingCellId, [editingCellId])\n\n // Get history functions\n const history = useHistory()\n const { pushHistory, undo: undoHistory, redo: redoHistory, canUndo, canRedo } = history\n\n const { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n })\n const { attribFields, getEntityById } = useProjectTableContext()\n\n const handleUpdateEntities: UpdateTableEntities = useCallback(\n async (entities = [], pushToHistory = true) => {\n try {\n // validate the entities before updating\n validateUpdateEntities(entities, attribFields)\n\n // if validation passes, update the entities\n return await updateOverviewEntities(entities, pushToHistory)\n } catch (error: any) {\n // if validation fails, show a toast and return\n toast.error(error.message)\n\n return Promise.reject(error)\n }\n },\n [updateOverviewEntities, attribFields],\n )\n\n // Handle undo\n const handleUndo = async () => {\n const [entitiesToUndo, entitiesToInherit, callbacks] = undoHistory() || []\n\n if (entitiesToUndo && entitiesToUndo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToUndo, false)\n } catch (error) {\n toast.error('Failed to undo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom undo action')\n }\n })\n }\n }\n\n // Handle redo\n const handleRedo = async () => {\n const [entitiesToRedo, entitiesToInherit, callbacks] = redoHistory() || []\n\n if (entitiesToRedo && entitiesToRedo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToRedo, false)\n } catch (error) {\n toast.error('Failed to redo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom redo action')\n }\n })\n }\n }\n\n // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (entityUpdates.length === 0 && entityInheriting.length === 0) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities],\n )\n\n const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n history,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n history,\n ],\n )\n\n // Listen for shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellId","useState","isEditing","useCallback","id","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","value","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CellEditingProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellId] = useState<CellId | null>(null)\n\n // Memoize these functions to prevent unnecessary re-renders\n const isEditing = useCallback((id: CellId) => id === editingCellId, [editingCellId])\n\n // Get history functions\n const history = useHistory()\n const { pushHistory, undo: undoHistory, redo: redoHistory, canUndo, canRedo } = history\n\n const { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n })\n const { attribFields, getEntityById } = useProjectTableContext()\n\n const handleUpdateEntities: UpdateTableEntities = useCallback(\n async (entities = [], pushToHistory = true) => {\n try {\n // validate the entities before updating\n validateUpdateEntities(entities, attribFields)\n\n // if validation passes, update the entities\n return await updateOverviewEntities(entities, pushToHistory)\n } catch (error: any) {\n // if validation fails, show a toast and return\n toast.error(error.message)\n\n return Promise.reject(error)\n }\n },\n [updateOverviewEntities, attribFields],\n )\n\n // Handle undo\n const handleUndo = async () => {\n const [entitiesToUndo, entitiesToInherit, callbacks] = undoHistory() || []\n\n if (entitiesToUndo && entitiesToUndo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToUndo, false)\n } catch (error) {\n toast.error('Failed to undo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom undo action')\n }\n })\n }\n }\n\n // Handle redo\n const handleRedo = async () => {\n const [entitiesToRedo, entitiesToInherit, callbacks] = redoHistory() || []\n\n if (entitiesToRedo && entitiesToRedo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToRedo, false)\n } catch (error) {\n toast.error('Failed to redo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom redo action')\n }\n })\n }\n }\n\n // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (entityUpdates.length === 0 && entityInheriting.length === 0) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities],\n )\n\n const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n history,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n history,\n ],\n )\n\n // Listen for shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellId","useState","isEditing","useCallback","id","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","value","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { j as R } from "../../../../../_virtual/jsx-runtime.es.js";
|
|
2
2
|
import { useState as B, useCallback as w, useMemo as H, useEffect as L } from "react";
|
|
3
3
|
import "@ynput/ayon-react-components";
|
|
4
|
+
import "short-uuid";
|
|
4
5
|
import "lodash";
|
|
5
6
|
import { toast as a } from "react-toastify";
|
|
6
7
|
import "uuid";
|
|
@@ -86,6 +87,7 @@ import "../../../api/queries/links/getLinks.es.js";
|
|
|
86
87
|
import "../../../api/queries/links/getEntityLinks.es.js";
|
|
87
88
|
import "../../../api/queries/overview/getOverview.es.js";
|
|
88
89
|
import "../../../api/queries/overview/updateOverview.es.js";
|
|
90
|
+
import "../../../api/queries/versions/getVersionsProducts.es.js";
|
|
89
91
|
import "../../../api/queries/permissions/getPermissions.es.js";
|
|
90
92
|
import "../../../api/queries/products/createProduct.es.js";
|
|
91
93
|
import "../../../api/queries/project/getProject.es.js";
|
|
@@ -209,11 +211,13 @@ import "../../../components/Powerpack/PricingLink.es.js";
|
|
|
209
211
|
import "../../../components/Powerpack/PowerpackDialog.styled.es.js";
|
|
210
212
|
import "../../../components/Powerpack/CTAButton.es.js";
|
|
211
213
|
import "../../../components/Powerpack/RequiredAddonVersion.es.js";
|
|
214
|
+
import "../../../components/SizeSlider/SizeSlider.es.js";
|
|
212
215
|
import "../../../components/SettingsPanel/SettingsPanel.es.js";
|
|
213
216
|
import "../../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
|
|
214
217
|
import "../../../components/AttributeEditor/components/MinMaxField.es.js";
|
|
215
218
|
import "../../../components/EnumEditor/EnumEditor.styled.es.js";
|
|
216
219
|
import "../../../components/SearchFilter/filterDates.es.js";
|
|
220
|
+
import "../../../components/FeaturedVersionOrder/FeaturedVersionOrder.es.js";
|
|
217
221
|
import "../../../components/Badge/Badge.es.js";
|
|
218
222
|
import "../../../components/VersionUploader/components/UploadVersionDialog.es.js";
|
|
219
223
|
import "../../../components/VersionUploader/context/VersionUploadContext.es.js";
|
|
@@ -227,10 +231,16 @@ import "../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
|
|
|
227
231
|
import "../../../components/AccessUser/AccessUser.es.js";
|
|
228
232
|
import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
|
|
229
233
|
import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
|
|
234
|
+
import "../../../components/TableGridSwitch/TableGridSwitch.es.js";
|
|
235
|
+
import "../../../components/SortingSetting/SortingSetting.styled.es.js";
|
|
236
|
+
import "../../../components/EarlyPreview/EarlyPreview.es.js";
|
|
237
|
+
import "../../../components/LegacyBadge/LegacyBadge.es.js";
|
|
230
238
|
import "../../../components/LinksManager/CellEditingDialog.es.js";
|
|
239
|
+
import "../widgets/EmptyWidget.es.js";
|
|
240
|
+
import "../widgets/ErrorWidget.es.js";
|
|
231
241
|
import "../ProjectTreeTable.styled.es.js";
|
|
232
242
|
import "../widgets/LoadMoreWidget.es.js";
|
|
233
|
-
const
|
|
243
|
+
const ve = ({ children: F }) => {
|
|
234
244
|
const [d, D] = B(null), T = w((i) => i === d, [d]), E = S(), { pushHistory: U, undo: K, redo: N, canUndo: k, canRedo: A } = E, { selectedCells: b } = V(), { updateEntities: v, inheritFromParent: l } = O({
|
|
235
245
|
pushHistory: U
|
|
236
246
|
}), { attribFields: f, getEntityById: P } = W(), c = w(
|
|
@@ -399,6 +409,6 @@ const ce = ({ children: F }) => {
|
|
|
399
409
|
}, [k, A, u, y, b, x]), /* @__PURE__ */ R.jsx(z.Provider, { value: _, children: F });
|
|
400
410
|
};
|
|
401
411
|
export {
|
|
402
|
-
|
|
412
|
+
ve as CellEditingProvider
|
|
403
413
|
};
|
|
404
414
|
//# sourceMappingURL=CellEditingProvider.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CellEditingProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellId] = useState<CellId | null>(null)\n\n // Memoize these functions to prevent unnecessary re-renders\n const isEditing = useCallback((id: CellId) => id === editingCellId, [editingCellId])\n\n // Get history functions\n const history = useHistory()\n const { pushHistory, undo: undoHistory, redo: redoHistory, canUndo, canRedo } = history\n\n const { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n })\n const { attribFields, getEntityById } = useProjectTableContext()\n\n const handleUpdateEntities: UpdateTableEntities = useCallback(\n async (entities = [], pushToHistory = true) => {\n try {\n // validate the entities before updating\n validateUpdateEntities(entities, attribFields)\n\n // if validation passes, update the entities\n return await updateOverviewEntities(entities, pushToHistory)\n } catch (error: any) {\n // if validation fails, show a toast and return\n toast.error(error.message)\n\n return Promise.reject(error)\n }\n },\n [updateOverviewEntities, attribFields],\n )\n\n // Handle undo\n const handleUndo = async () => {\n const [entitiesToUndo, entitiesToInherit, callbacks] = undoHistory() || []\n\n if (entitiesToUndo && entitiesToUndo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToUndo, false)\n } catch (error) {\n toast.error('Failed to undo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom undo action')\n }\n })\n }\n }\n\n // Handle redo\n const handleRedo = async () => {\n const [entitiesToRedo, entitiesToInherit, callbacks] = redoHistory() || []\n\n if (entitiesToRedo && entitiesToRedo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToRedo, false)\n } catch (error) {\n toast.error('Failed to redo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom redo action')\n }\n })\n }\n }\n\n // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (entityUpdates.length === 0 && entityInheriting.length === 0) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities],\n )\n\n const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n history,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n history,\n ],\n )\n\n // Listen for shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellId","useState","isEditing","useCallback","id","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","value","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcO,MAAMA,KAAyD,CAAC,EAAE,UAAAC,QAAe;AACtF,QAAM,CAACC,GAAeC,CAAgB,IAAIC,EAAwB,IAAI,GAGhEC,IAAYC,EAAY,CAACC,MAAeA,MAAOL,GAAe,CAACA,CAAa,CAAC,GAG7EM,IAAUC,EAAW,GACrB,EAAE,aAAAC,GAAa,MAAMC,GAAa,MAAMC,GAAa,SAAAC,GAAS,SAAAC,MAAYN,GAE1E,EAAE,eAAAO,EAAc,IAAIC,EAAyB,GAC7C,EAAE,gBAAgBC,GAAwB,mBAAAC,EAAA,IAAsBC,EAAmB;AAAA,IACvF,aAAAT;AAAA,EAAA,CACD,GACK,EAAE,cAAAU,GAAc,eAAAC,EAAc,IAAIC,EAAuB,GAEzDC,IAA4CjB;AAAA,IAChD,OAAOkB,IAAW,CAAA,GAAIC,IAAgB,OAAS;AACzC,UAAA;AAEF,eAAAC,EAAuBF,GAAUJ,CAAY,GAGtC,MAAMH,EAAuBO,GAAUC,CAAa;AAAA,eACpDE,GAAY;AAEb,eAAAC,EAAA,MAAMD,EAAM,OAAO,GAElB,QAAQ,OAAOA,CAAK;AAAA,MAAA;AAAA,IAE/B;AAAA,IACA,CAACV,GAAwBG,CAAY;AAAA,EACvC,GAGMS,IAAa,YAAY;AAC7B,UAAM,CAACC,GAAgBC,GAAmBC,CAAS,IAAIrB,OAAiB,CAAC;AAErE,QAAAmB,KAAkBA,EAAe,SAAS;AACxC,UAAA;AACI,cAAAP,EAAqBO,GAAgB,EAAK;AAAA,cAClC;AACd,QAAAF,EAAM,MAAM,wBAAwB;AAAA,MAAA;AAGpC,QAAAG,KAAqBA,EAAkB,SAAS;AAC9C,UAAA;AACI,cAAAb,EAAkBa,GAAmB,EAAK;AAAA,cAClC;AACd,QAAAH,EAAM,MAAM,2BAA2B;AAAA,MAAA;AAIvC,IAAAI,KAAaA,EAAU,SAAS,KACxBA,EAAA,QAAQ,CAACC,MAAa;AAC1B,UAAA;AACO,QAAAA,EAAA;AAAA,cACK;AACd,QAAAL,EAAM,MAAM,sCAAsC;AAAA,MAAA;AAAA,IACpD,CACD;AAAA,EAEL,GAGMM,IAAa,YAAY;AAC7B,UAAM,CAACC,GAAgBJ,GAAmBC,CAAS,IAAIpB,OAAiB,CAAC;AAErE,QAAAuB,KAAkBA,EAAe,SAAS;AACxC,UAAA;AACI,cAAAZ,EAAqBY,GAAgB,EAAK;AAAA,cAClC;AACd,QAAAP,EAAM,MAAM,wBAAwB;AAAA,MAAA;AAGpC,QAAAG,KAAqBA,EAAkB,SAAS;AAC9C,UAAA;AACI,cAAAb,EAAkBa,GAAmB,EAAK;AAAA,cAClC;AACd,QAAAH,EAAM,MAAM,2BAA2B;AAAA,MAAA;AAIvC,IAAAI,KAAaA,EAAU,SAAS,KACxBA,EAAA,QAAQ,CAACC,MAAa;AAC1B,UAAA;AACO,QAAAA,EAAA;AAAA,cACK;AACd,QAAAL,EAAM,MAAM,sCAAsC;AAAA,MAAA;AAAA,IACpD,CACD;AAAA,EAEL,GAGMQ,IAAc9B;AAAA,IAClB,OAAO+B,MAAoB;AAEzB,YAAMC,IAAgC,CAAC,GAEjCC,IAA8C,CAAC;AAErD,iBAAWC,KAAUH,GAAO;AAC1B,cAAM,EAAE,OAAAI,GAAO,OAAAC,EAAA,IAAUC,EAAYH,CAAM,KAAK,CAAC;AAC7C,YAAA,CAACC,KAAS,CAACC,GAAO;AACZ,kBAAA,KAAK,mBAAmBF,CAAM,EAAE;AACxC;AAAA,QAAA;AAII,cAAAI,IAASvB,EAAcqB,CAAK;AAElC,YAAI,CAACE,EAAQ;AAGb,cAAMC,IAAYJ,EAAM,QAAQ,WAAW,EAAE,GACvCK,IAAWL,EAAM,WAAW,SAAS;AAE3C,YAAI,CAACI,GAAW;AACN,kBAAA,KAAK,sBAAsBJ,CAAK,EAAE;AAC1C;AAAA,QAAA;AAGF,YAAIM,IAAoB;AACxB,YAAID,GAAU;AAEZ,gBAAME,IAAc5B,EAAa,KAAK,CAAC6B,MAAMA,EAAE,SAASJ,CAAS;AACjE,cAAI,CAACG,GAAa;AACR,oBAAA,KAAK,8BAA8BH,CAAS,EAAE;AACtD;AAAA,UAAA;AAGE,cAAAG,EAAY,KAAK,SAAS;AAGtB,kBAAAE,IAAkBX,EAAiB,KAAK,CAACY,MAAMA,EAAE,aAAaP,EAAO,QAAQ;AACnF,YAAIM,IAEcA,EAAA,QAAQ,KAAKL,CAAS,IAGtCN,EAAiB,KAAK;AAAA,cACpB,UAAUK,EAAO;AAAA,cACjB,SAAS,CAACC,CAAS;AAAA,cACnB,YAAYD,EAAO;AAAA,cACnB,WAAWA,EAAO,aAAa,CAAC;AAAA,cAChC,OAAAF;AAAA,cACA,UACEE,EAAO,eAAe,WAClBA,EAAO,WACPA,EAAO,eAAe,SACtBA,EAAO,WACP;AAAA,YAAA,CACP;AAEH;AAAA,UAAA;AAGA,YAAAG,IAAeC,EAAY,KAAK,WAAWI,EAAoBJ,EAAY,KAAK,IAAI;AAAA,QACtF,WACSH,MAAc;AAEvB,UAAAE,IAAeK,EAAoB,iBAAiB;AAAA,iBAC3CP,MAAc;AAEvB,UAAAE,IAAeK,EAAoB,iBAAiB;AAAA,aAC/C;AAEG,kBAAA,KAAK,uBAAuBP,CAAS,EAAE;AAC/C;AAAA,QAAA;AAIF,cAAMQ,IAAuB;AAAA,UAC3B,IAAIX;AAAA,UACJ,OAAAA;AAAA,UACA,OAAOG;AAAA,UACP,OAAOE;AAAA,UACP,UAAAD;AAAA,UACA,MAAMF,EAAO;AAAA,QACf;AAEA,QAAAN,EAAc,KAAKe,CAAM;AAAA,MAAA;AAIvB,UAAAf,EAAc,SAAS;AACrB,YAAA;AACI,gBAAAf,EAAqBe,GAAe,EAAI;AAAA,iBACvCX,GAAO;AACd,UAAAC,EAAM,MAAM,gCAAgC,GACpC,QAAA,MAAM,kCAAkCD,CAAK;AAAA,QAAA;AAKrD,UAAAY,EAAiB,SAAS;AACxB,YAAA;AACI,gBAAArB,EAAkBqB,GAAkB,EAAI;AAAA,iBACvCZ,GAAO;AACd,UAAAC,EAAM,MAAM,mDAAmD,GACvD,QAAA,MAAM,mCAAmCD,CAAK;AAAA,QAAA;AAK1D,MAAIW,EAAc,WAAW,KAAKC,EAAiB,WAAW,KAC5DX,EAAM,KAAK,kCAAkC;AAAA,IAEjD;AAAA,IACA,CAACR,GAAcH,CAAsB;AAAA,EACvC,GAEMqC,IAAQC;AAAA,IACZ,OAAO;AAAA,MACL,eAAArD;AAAA,MACA,kBAAAC;AAAA,MACA,WAAAE;AAAA,MACA,gBAAgBkB;AAAA,MAChB,mBAAAL;AAAA,MACA,MAAMW;AAAA,MACN,MAAMK;AAAA,MACN,SAAA1B;AAAA,IAAA;AAAA,IAEF;AAAA,MACEN;AAAA,MACAG;AAAA,MACAkB;AAAA,MACAL;AAAA,MACAW;AAAA,MACAK;AAAA,MACA1B;AAAA,IAAA;AAAA,EAEJ;AAMA,SAAAgD,EAAU,MAAM;AACR,UAAAC,IAAY,CAACN,MAAqB;AACtC,YAAMO,IAASP,EAAE;AACjB,UACEO,EAAO,YAAY,WACnBA,EAAO,YAAY,cACnBA,EAAO,qBACPA,EAAO,aAAa,MAAM,MAAM,aAChCA,EAAO,YAAY;AAEnB;AAUF,YAAMC,IANJ,OAAO,YAAc;AAAA,OAEnB,UAAU;AAAA,MAEV,UAAU,cAAc,SAAS,YAAA,EAAc,SAAS,KAAK,KAC7D,UAAU,UAAU,YAAY,EAAE,SAAS,KAAK,KAC5BR,EAAE,UAAUA,EAAE;AAiBjC,UAdDQ,KAAWR,EAAE,QAAQ,QACvBA,EAAE,eAAe,GACbtC,KAAoBgB,EAAA,KAIvB8B,KAAWR,EAAE,QAAQ,OACrBQ,KAAWR,EAAE,YAAYA,EAAE,QAAQ,OACnCQ,KAAWR,EAAE,QAAQ,SAEtBA,EAAE,eAAe,GACbrC,KAAoBoB,EAAA,IAGrBiB,EAAE,QAAQ,eAAe,EAAEA,EAAE,WAAWA,EAAE,YAAaA,EAAE,QAAQ,UAAU;AAE1E,YAAA,CAACpC,EAAc,KAAM;AACzB,QAAAoC,EAAE,eAAe;AAGjB,cAAMS,IAAuB,MAAM,KAAK7C,CAAa,EAAE;AAAA,UAAI,CAACyB,MAC1D,SAAS,eAAeA,CAAM;AAAA,QAChC,GAGMqB,IAAa,CAACC,MAA6BA,KAAA,gBAAAA,EAAM,UAAU,SAAS,aAGpEC,IAAgBH,EAAqB,OAAOC,CAAU;AACxD,YAAAE,EAAc,WAAW,GAAG;AAC9B,UAAAnC,EAAM,KAAK,qCAAqC;AAChD;AAAA,QAAA;AAGU,QAAAQ,EAAA2B,EAAc,IAAI,CAACD,MAASA,KAAA,gBAAAA,EAAM,EAAE,EAAE,OAAO,OAAO,CAAa;AAAA,MAAA;AAAA,IAEjF;AAES,oBAAA,iBAAiB,WAAWL,CAAS,GACvC,MAAM,SAAS,oBAAoB,WAAWA,CAAS;AAAA,EAAA,GAC7D,CAAC5C,GAASC,GAASe,GAAYK,GAAYnB,GAAeqB,CAAW,CAAC,GAEjE4B,gBAAAA,EAAAA,IAAAC,EAAmB,UAAnB,EAA4B,OAAAX,GAAe,UAAArD,EAAS,CAAA;AAC9D;"}
|
|
1
|
+
{"version":3,"file":"CellEditingProvider.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/CellEditingProvider.tsx"],"sourcesContent":["import { ReactNode, useCallback, useEffect, useMemo, useState } from 'react'\nimport { CellId, getTypeDefaultValue, parseCellId } from '../utils'\nimport useHistory from '../hooks/useHistory'\nimport { useSelectionCellsContext } from './SelectionCellsContext'\nimport useUpdateTableData, {\n EntityUpdate,\n InheritFromParentEntity,\n UpdateTableEntities,\n} from '../hooks/useUpdateTableData'\nimport { useProjectTableContext } from './ProjectTableContext'\nimport validateUpdateEntities from '../utils/validateUpdateEntities'\nimport { toast } from 'react-toastify'\nimport { CellEditingContext } from './CellEditingContext'\n\nexport const CellEditingProvider: React.FC<{ children: ReactNode }> = ({ children }) => {\n const [editingCellId, setEditingCellId] = useState<CellId | null>(null)\n\n // Memoize these functions to prevent unnecessary re-renders\n const isEditing = useCallback((id: CellId) => id === editingCellId, [editingCellId])\n\n // Get history functions\n const history = useHistory()\n const { pushHistory, undo: undoHistory, redo: redoHistory, canUndo, canRedo } = history\n\n const { selectedCells } = useSelectionCellsContext()\n const { updateEntities: updateOverviewEntities, inheritFromParent } = useUpdateTableData({\n pushHistory,\n })\n const { attribFields, getEntityById } = useProjectTableContext()\n\n const handleUpdateEntities: UpdateTableEntities = useCallback(\n async (entities = [], pushToHistory = true) => {\n try {\n // validate the entities before updating\n validateUpdateEntities(entities, attribFields)\n\n // if validation passes, update the entities\n return await updateOverviewEntities(entities, pushToHistory)\n } catch (error: any) {\n // if validation fails, show a toast and return\n toast.error(error.message)\n\n return Promise.reject(error)\n }\n },\n [updateOverviewEntities, attribFields],\n )\n\n // Handle undo\n const handleUndo = async () => {\n const [entitiesToUndo, entitiesToInherit, callbacks] = undoHistory() || []\n\n if (entitiesToUndo && entitiesToUndo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToUndo, false)\n } catch (error) {\n toast.error('Failed to undo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom undo action')\n }\n })\n }\n }\n\n // Handle redo\n const handleRedo = async () => {\n const [entitiesToRedo, entitiesToInherit, callbacks] = redoHistory() || []\n\n if (entitiesToRedo && entitiesToRedo.length > 0) {\n try {\n await handleUpdateEntities(entitiesToRedo, false)\n } catch (error) {\n toast.error('Failed to redo changes')\n }\n }\n if (entitiesToInherit && entitiesToInherit.length > 0) {\n try {\n await inheritFromParent(entitiesToInherit, false)\n } catch (error) {\n toast.error('Failed to inherit changes')\n }\n }\n // Execute custom callbacks if any\n if (callbacks && callbacks.length > 0) {\n callbacks.forEach((callback) => {\n try {\n callback()\n } catch (error) {\n toast.error('Failed to execute custom redo action')\n }\n })\n }\n }\n\n // Handle clearing cells\n const handleClear = useCallback(\n async (cells: CellId[]) => {\n // we explicity update the value of the cells to their default values\n const entityUpdates: EntityUpdate[] = []\n // of if they are inheritable, we inherit from the parent entity\n const entityInheriting: InheritFromParentEntity[] = []\n\n for (const cellId of cells) {\n const { colId, rowId } = parseCellId(cellId) || {}\n if (!colId || !rowId) {\n console.warn(`Invalid cellId: ${cellId}`)\n continue\n }\n\n // get the entity from the rowId\n const entity = getEntityById(rowId)\n\n if (!entity) return\n\n // get the field name and check if it is an attribute\n const fieldName = colId.replace('attrib_', '')\n const isAttrib = colId.startsWith('attrib_')\n\n if (!fieldName) {\n console.warn(`Invalid column ID: ${colId}`)\n continue\n }\n\n let defaultValue: any = null\n if (isAttrib) {\n // find default value for the attribute\n const attribField = attribFields.find((f) => f.name === fieldName)\n if (!attribField) {\n console.warn(`Attribute field not found: ${fieldName}`)\n continue\n }\n // check if the attribute is inheritable\n if (attribField.data.inherit) {\n // inherit from parent entity\n // check if this entity has already been added to the inheriting list\n const existingInherit = entityInheriting.find((e) => e.entityId === entity.entityId)\n if (existingInherit) {\n // add the attrib to the existing entity\n existingInherit.attribs.push(fieldName)\n } else {\n // add a new entity to the inheriting list\n entityInheriting.push({\n entityId: entity.entityId,\n attribs: [fieldName],\n entityType: entity.entityType,\n ownAttrib: entity.ownAttrib || [],\n rowId: rowId,\n folderId:\n entity.entityType === 'folder'\n ? entity.parentId\n : entity.entityType === 'task'\n ? entity.folderId\n : undefined,\n })\n }\n continue\n } else {\n // set explicit default value\n defaultValue = attribField.data.default || getTypeDefaultValue(attribField.data.type)\n }\n } else if (fieldName === 'assignees') {\n // for assignees, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else if (fieldName === 'tags') {\n // for tags, we set it to an empty array\n defaultValue = getTypeDefaultValue('list_of_strings')\n } else {\n // we ignore other fields\n console.warn(`Field not editable: ${fieldName}`)\n continue\n }\n\n // create the entity update\n const update: EntityUpdate = {\n id: rowId,\n rowId: rowId,\n field: fieldName,\n value: defaultValue,\n isAttrib,\n type: entity.entityType,\n }\n\n entityUpdates.push(update)\n }\n\n // if we have updates, call the updateEntities function\n if (entityUpdates.length > 0) {\n try {\n await handleUpdateEntities(entityUpdates, true)\n } catch (error) {\n toast.error('Failed to clear selected cells')\n console.error('Error clearing selected cells:', error)\n }\n }\n\n // if we have inheritable attributes, call inheritFromParent\n if (entityInheriting.length > 0) {\n try {\n await inheritFromParent(entityInheriting, true)\n } catch (error) {\n toast.error('Failed to inherit parent values for cleared cells')\n console.error('Error clearing inherited cells:', error)\n }\n }\n\n // if nothing was done, warn the user\n if (entityUpdates.length === 0 && entityInheriting.length === 0) {\n toast.warn('No valid cells selected to clear')\n }\n },\n [attribFields, updateOverviewEntities],\n )\n\n const value = useMemo(\n () => ({\n editingCellId,\n setEditingCellId,\n isEditing,\n updateEntities: handleUpdateEntities,\n inheritFromParent,\n undo: handleUndo,\n redo: handleRedo,\n history,\n }),\n [\n editingCellId,\n isEditing,\n handleUpdateEntities,\n inheritFromParent,\n handleUndo,\n handleRedo,\n history,\n ],\n )\n\n // Listen for shortcuts\n // undo - ctrl + z\n // redo - ctrl + y or ctrl + shift + z\n // clear - backspace or delete\n useEffect(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n if (\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA' ||\n target.isContentEditable ||\n target.getAttribute('role') === 'textbox' ||\n target.tagName === 'LI'\n ) {\n return\n }\n\n const isMac =\n typeof navigator !== 'undefined' &&\n // @ts-expect-error\n ((navigator.userAgentData &&\n // @ts-expect-error\n navigator.userAgentData.platform.toUpperCase().includes('MAC')) ||\n navigator.userAgent.toUpperCase().includes('MAC'))\n const ctrlKey = isMac ? e.metaKey : e.ctrlKey\n\n // undo\n if (ctrlKey && e.key === 'z') {\n e.preventDefault()\n if (canUndo) handleUndo()\n }\n // redo\n if (\n (ctrlKey && e.key === 'y') ||\n (ctrlKey && e.shiftKey && e.key === 'z') ||\n (ctrlKey && e.key === 'Z')\n ) {\n e.preventDefault()\n if (canRedo) handleRedo()\n }\n // clear\n if ((e.key === 'Backspace' && !(e.ctrlKey || e.metaKey)) || e.key === 'Delete') {\n // check we have cells selected\n if (!selectedCells.size) return\n e.preventDefault()\n\n // find selected cells elements\n const selectedCellElements = Array.from(selectedCells).map((cellId) =>\n document.getElementById(cellId),\n )\n\n // check the cell is editable from the classnames\n const isEditable = (cell: HTMLElement | null) => cell?.classList.contains('editable')\n\n // filter out non-editable cells\n const editableCells = selectedCellElements.filter(isEditable)\n if (editableCells.length === 0) {\n toast.warn('No editable cells selected to clear')\n return\n }\n // clear the selected cells\n handleClear(editableCells.map((cell) => cell?.id).filter(Boolean) as CellId[])\n }\n }\n\n document.addEventListener('keydown', onKeyDown)\n return () => document.removeEventListener('keydown', onKeyDown)\n }, [canUndo, canRedo, handleUndo, handleRedo, selectedCells, handleClear])\n\n return <CellEditingContext.Provider value={value}>{children}</CellEditingContext.Provider>\n}\n"],"names":["CellEditingProvider","children","editingCellId","setEditingCellId","useState","isEditing","useCallback","id","history","useHistory","pushHistory","undoHistory","redoHistory","canUndo","canRedo","selectedCells","useSelectionCellsContext","updateOverviewEntities","inheritFromParent","useUpdateTableData","attribFields","getEntityById","useProjectTableContext","handleUpdateEntities","entities","pushToHistory","validateUpdateEntities","error","toast","handleUndo","entitiesToUndo","entitiesToInherit","callbacks","callback","handleRedo","entitiesToRedo","handleClear","cells","entityUpdates","entityInheriting","cellId","colId","rowId","parseCellId","entity","fieldName","isAttrib","defaultValue","attribField","f","existingInherit","e","getTypeDefaultValue","update","value","useMemo","useEffect","onKeyDown","target","ctrlKey","selectedCellElements","isEditable","cell","editableCells","jsx","CellEditingContext"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const sn=require("../../../../../_virtual/jsx-runtime.cjs.js"),c=require("react"),C=require("@tanstack/react-table"),ln=require("./SelectionCellsContext.cjs.js"),cn=require("../ProjectTreeTable.cjs.js"),an=require("./ColumnSettingsContext.cjs.js"),mn=({children:v,config:A,onChange:E})=>{var j;const y=c.useRef([]),R=c.useRef(null),d=c.useRef(null),S=c.useRef(void 0),h=c.useRef(null),[O,g]=c.useState(null),[T,b]=c.useState(null),_=n=>{y.current=Array.from(new Set(n))},i=n=>E(n,y.current),o=A,{columnOrder:k=[],columnPinning:D={},columnVisibility:L={},columnSizing:a={},sorting:N=[],groupBy:w,groupByConfig:x={},rowHeight:m=34}=o||{};S.current!==m&&S.current!==void 0&&(T!==null&&b(null),d.current&&(clearTimeout(d.current),d.current=null)),S.current=m;const G=T??m,H=[...N],u=[...k],e={...D},P=["thumbnail","name","subType","status","tags"];if(P.forEach((n,t)=>{if(!u.includes(n)){const r=P[t-1],s=P[t+1];if(!r||!u.includes(r))u.unshift(n);else{const l=u.indexOf(r);u.splice(l+1,0,n)}s&&(e!=null&&e.left)&&(e!=null&&e.left.includes(s))&&(e.left=[n,...(e==null?void 0:e.left)||[]])}}),w){if(!((j=e.left)!=null&&j.includes("name")))e.left=["name",...(e==null?void 0:e.left)||[]];else{const n=e.left.filter(t=>t!=="name");e.left=["name",...n]}if(u.includes("name")){const n=u.indexOf("name");u.splice(n,1)}u.unshift("name")}u.unshift(cn.DRAG_HANDLE_COLUMN_ID,ln.ROW_SELECTION_COLUMN_ID);const p={...L};w&&!p.name&&(p.name=!0);const z=n=>{i({...o,columnVisibility:n})},I=n=>{i({...o,columnOrder:n})},V=n=>{i({...o,columnPinning:n})},W=O||a,B=n=>{g(n),R.current&&clearTimeout(R.current),R.current=setTimeout(()=>{i({...o,columnSizing:n}),g(null)},500)},M=n=>{const t={...e},r=t.left||[],s=Object.keys(n).filter(f=>n[f]===!1),l=r.filter(f=>!s.includes(f));return{...t,left:l}},F=n=>{const t={...e},r=t.left||[],s=n.filter(l=>r.includes(l));return{...t,left:s}},J=n=>[...u].sort((t,r)=>{var f,q;const s=(f=n.left)!=null&&f.includes(t)?1:0;return((q=n.left)!=null&&q.includes(r)?1:0)-s}),K=n=>{const t=M(n);i({...o,columnVisibility:n,columnPinning:t})},Q=n=>{const t=F(n);i({...o,columnOrder:n,columnPinning:t})},X=n=>{const t=J(n);i({...o,columnOrder:t,columnPinning:n})},U=n=>{i({...o,sorting:n})},Y=n=>{i({...o,groupBy:n})},Z=n=>{i({...o,groupByConfig:{...x,...n}})},$=c.useCallback(n=>{if(h.current===null){const r=a.thumbnail||63,s=m||34;h.current=r/s}const t=h.current*n;b(n),g({...O||a,thumbnail:t})},[a,m]),nn=c.useCallback(n=>{const l=(a.thumbnail||63)/(m||34)*n;b(n),g({...O||a,thumbnail:l}),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>{i({...o,rowHeight:n,columnSizing:{...a,thumbnail:l}}),b(null),g(null),h.current=null},300)},[o,i,a,m,O]),tn=n=>{const t=C.functionalUpdate(n,p);z(t)},en=n=>{const t=C.functionalUpdate(n,e);V(t)},on=n=>{const t=C.functionalUpdate(n,u);I(t)},un=n=>{const t=C.functionalUpdate(n,W);B(t)},rn=n=>{const t=C.functionalUpdate(n,H);U(t)};return sn.jsxRuntimeExports.jsx(an.ColumnSettingsContext.Provider,{value:{setAllColumns:_,columnVisibility:p,setColumnVisibility:z,updateColumnVisibility:K,columnVisibilityOnChange:tn,columnPinning:e,setColumnPinning:V,updateColumnPinning:X,columnPinningOnChange:en,columnOrder:u,setColumnOrder:I,updateColumnOrder:Q,columnOrderOnChange:on,columnSizing:W,setColumnSizing:B,columnSizingOnChange:un,sorting:H,updateSorting:U,sortingOnChange:rn,groupBy:w,updateGroupBy:Y,groupByConfig:x,updateGroupByConfig:Z,rowHeight:G,updateRowHeight:$,updateRowHeightWithPersistence:nn,setColumnsConfig:n=>i(n)},children:v})};exports.ColumnSettingsProvider=mn;
|
|
2
2
|
//# sourceMappingURL=ColumnSettingsProvider.cjs.js.map
|
package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnSettingsProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsProvider.tsx"],"sourcesContent":["import React, { ReactNode, useState } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n functionalUpdate,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ROW_SELECTION_COLUMN_ID } from './SelectionCellsContext'\nimport { DRAG_HANDLE_COLUMN_ID } from '../ProjectTreeTable'\nimport { ColumnsConfig, ColumnSettingsContext, TableGroupBy } from './ColumnSettingsContext'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\n\ninterface ColumnSettingsProviderProps {\n children: ReactNode\n config?: Record<string, any>\n onChange: (config: ColumnsConfig, allColumnIds?: string[]) => void\n}\n\nexport const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps> = ({\n children,\n config,\n onChange,\n}) => {\n const allColumnsRef = React.useRef<string[]>([])\n\n // Internal state for immediate updates (similar to column sizing)\n const [internalColumnSizing, setInternalColumnSizing] = useState<ColumnSizingState | null>(null)\n const [internalRowHeight, setInternalRowHeight] = useState<number | null>(null)\n\n // Local row height state that persists and doesn't get overridden by API\n const [localRowHeight, setLocalRowHeight] = useState<number>(34)\n\n // Flag to prevent API updates during active row height adjustments\n const isAdjustingRowHeightRef = React.useRef(false)\n\n const setAllColumns = (allColumnIds: string[]) => {\n allColumnsRef.current = Array.from(new Set(allColumnIds))\n }\n const onChangeWithColumns = (next: ColumnsConfig) => onChange(next, allColumnsRef.current)\n const columnsConfig = config as ColumnsConfig\n\n const {\n columnOrder: columnOrderInit = [],\n columnPinning: columnPinningInit = {},\n columnVisibility: columnVisibilityInit = {},\n columnSizing: columnsSizingExternal = {},\n sorting: sortingInit = [],\n groupBy,\n groupByConfig = {},\n rowHeight: configRowHeight,\n } = columnsConfig || {}\n\n // Initialize local row height from API only once on mount\n const hasInitializedRef = React.useRef(false)\n React.useEffect(() => {\n if (!hasInitializedRef.current && configRowHeight !== undefined && configRowHeight !== null) {\n setLocalRowHeight(configRowHeight)\n hasInitializedRef.current = true\n }\n }, [configRowHeight])\n\n // Use internal row height during slider adjustments, otherwise use local persistent state\n const rowHeight = internalRowHeight ?? localRowHeight\n\n const sorting = [...sortingInit]\n const columnOrder = [...columnOrderInit]\n const columnPinning = { ...columnPinningInit }\n const defaultOrder = ['thumbnail', 'name', 'subType', 'status', 'tags']\n // for each default column, if it is not in the columnOrder, find the index of the column before it, if none, add to beginning\n defaultOrder.forEach((col, i) => {\n if (!columnOrder.includes(col)) {\n const defaultBefore = defaultOrder[i - 1]\n const columnAfter = defaultOrder[i + 1]\n if (!defaultBefore || !columnOrder.includes(defaultBefore)) {\n // add to beginning\n columnOrder.unshift(col)\n } else {\n // find the index of that column in the columnOrder\n const index = columnOrder.indexOf(defaultBefore)\n // add the item after that column\n columnOrder.splice(index + 1, 0, col)\n }\n if (columnAfter && columnPinning?.left && columnPinning?.left.includes(columnAfter)) {\n // pin the column\n columnPinning.left = [col, ...(columnPinning?.left || [])]\n }\n }\n })\n\n // if we are in grouping mode, always pin the name column\n // and ensure it is first in column order\n if (groupBy) {\n // ensure name column is pinned and first in pinning order\n if (!columnPinning.left?.includes('name')) {\n columnPinning.left = ['name', ...(columnPinning?.left || [])]\n } else {\n // name is already pinned, but ensure it's first\n const filteredPinned = columnPinning.left.filter((col) => col !== 'name')\n columnPinning.left = ['name', ...filteredPinned]\n }\n\n // ensure name is first in column order\n if (columnOrder.includes('name')) {\n // remove name from its current position\n const nameIndex = columnOrder.indexOf('name')\n columnOrder.splice(nameIndex, 1)\n }\n // add name to the beginning\n columnOrder.unshift('name')\n }\n\n // add drag handle and selection columns to the beginning of the column order\n columnOrder.unshift(...[DRAG_HANDLE_COLUMN_ID, ROW_SELECTION_COLUMN_ID])\n\n // VISIBILITY STATE MUTATIONS\n const columnVisibility = { ...columnVisibilityInit }\n // if we are in grouping mode, name column must always be visible\n if (groupBy && !columnVisibility.name) {\n columnVisibility.name = true\n }\n\n // DIRECT STATE UPDATES - no side effects\n const setColumnVisibility = (visibility: VisibilityState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n })\n }\n\n const setColumnOrder = (order: ColumnOrderState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n })\n }\n\n const setColumnPinning = (pinning: ColumnPinningState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnPinning: pinning,\n })\n }\n\n // use internalColumnSizing if it exists, otherwise use the external column sizing\n const columnSizing = internalColumnSizing || columnsSizingExternal\n\n const resizingTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const rowHeightTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n\n const setColumnSizing = (sizing: ColumnSizingState) => {\n setInternalColumnSizing(sizing)\n\n // if there is a timeout already set, clear it\n if (resizingTimeoutRef.current) {\n clearTimeout(resizingTimeoutRef.current)\n }\n // set a timeout that tracks if the column sizing has finished\n resizingTimeoutRef.current = setTimeout(() => {\n // we have finished resizing now!\n // update the external column sizing\n onChangeWithColumns({\n ...columnsConfig,\n columnSizing: sizing,\n })\n // reset the internal column sizing to not be used anymore\n setInternalColumnSizing(null)\n }, 500)\n }\n\n // SIDE EFFECT UTILITIES\n const togglePinningOnVisibilityChange = (visibility: VisibilityState) => {\n // ensure that any columns that are now hidden are removed from the pinning\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const hiddenColumns = Object.keys(visibility).filter((col) => visibility[col] === false)\n const newPinnedColumns = pinnedColumns.filter((col) => !hiddenColumns.includes(col))\n\n return {\n ...newPinning,\n left: newPinnedColumns,\n }\n }\n\n const updatePinningOrderOnOrderChange = (order: ColumnOrderState) => {\n // ensure that the column pinning is in the order of the column order\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const pinnedColumnsOrder = order.filter((col) => pinnedColumns.includes(col))\n\n return {\n ...newPinning,\n left: pinnedColumnsOrder,\n }\n }\n\n const updateOrderOnPinningChange = (pinning: ColumnPinningState) => {\n // we resort the column order based on the pinning\n return [...columnOrder].sort((a, b) => {\n const aPinned = pinning.left?.includes(a) ? 1 : 0\n const bPinned = pinning.left?.includes(b) ? 1 : 0\n return bPinned - aPinned\n })\n }\n\n // UPDATE METHODS WITH SIDE EFFECTS\n const updateColumnVisibility = (visibility: VisibilityState) => {\n const newPinning = togglePinningOnVisibilityChange(visibility)\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnOrder = (order: ColumnOrderState) => {\n const newPinning = updatePinningOrderOnOrderChange(order)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnPinning = (pinning: ColumnPinningState) => {\n const newOrder = updateOrderOnPinningChange(pinning)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: newOrder,\n columnPinning: pinning,\n })\n }\n\n const updateSorting = (sortingState: SortingState) => {\n onChangeWithColumns({\n ...columnsConfig,\n sorting: sortingState,\n })\n }\n\n const updateGroupBy = (groupBy: TableGroupBy | undefined) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupBy: groupBy,\n })\n }\n\n const updateGroupByConfig = (config: GroupByConfig) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupByConfig: {\n ...groupByConfig,\n ...config,\n },\n })\n }\n\n // Update row height for immediate UI feedback (no API call)\n const updateRowHeightUI = (newRowHeight: number) => {\n setLocalRowHeight(newRowHeight)\n }\n\n // Update row height and persist to API\n const updateRowHeightWithPersistence = (newRowHeight: number) => {\n // Update UI immediately\n setLocalRowHeight(newRowHeight)\n\n // Block external API updates during adjustment period\n isAdjustingRowHeightRef.current = true\n setInternalRowHeight(newRowHeight)\n\n // Clear any existing timeout to debounce API calls\n if (rowHeightTimeoutRef.current) {\n clearTimeout(rowHeightTimeoutRef.current)\n }\n\n // Debounce API call to avoid excessive requests\n rowHeightTimeoutRef.current = setTimeout(() => {\n // Persist to API\n onChangeWithColumns({\n ...columnsConfig,\n rowHeight: newRowHeight,\n })\n\n // Clean up internal state\n setInternalRowHeight(null)\n isAdjustingRowHeightRef.current = false\n }, 200)\n }\n\n // Public API for immediate UI updates (used during slider drag)\n const updateRowHeight = updateRowHeightUI\n\n // Remove redundant local updater functions in favor of unified updaters with all columns\n\n // ON-CHANGE HANDLERS (TanStack-compatible)\n const columnVisibilityOnChange: OnChangeFn<VisibilityState> = (updater) => {\n const newVisibility = functionalUpdate(updater, columnVisibility)\n setColumnVisibility(newVisibility)\n }\n\n const columnPinningOnChange: OnChangeFn<ColumnPinningState> = (updater) => {\n const newPinning = functionalUpdate(updater, columnPinning)\n setColumnPinning(newPinning)\n }\n\n const columnOrderOnChange: OnChangeFn<ColumnOrderState> = (updater) => {\n const newOrder = functionalUpdate(updater, columnOrder)\n setColumnOrder(newOrder)\n }\n\n const columnSizingOnChange: OnChangeFn<ColumnSizingState> = (updater) => {\n const newSizing = functionalUpdate(updater, columnSizing)\n setColumnSizing(newSizing)\n }\n\n const sortingOnChange: OnChangeFn<SortingState> = (updater) => {\n const newSorting = functionalUpdate(updater, sorting)\n updateSorting(newSorting)\n }\n\n return (\n <ColumnSettingsContext.Provider\n value={{\n // all columns ref\n setAllColumns,\n // column visibility\n columnVisibility,\n setColumnVisibility,\n updateColumnVisibility,\n columnVisibilityOnChange,\n // column pinning\n columnPinning,\n setColumnPinning,\n updateColumnPinning,\n columnPinningOnChange,\n // column order\n columnOrder,\n setColumnOrder,\n updateColumnOrder,\n columnOrderOnChange,\n // column sizing\n columnSizing,\n setColumnSizing,\n columnSizingOnChange,\n // sorting\n sorting,\n updateSorting,\n sortingOnChange,\n // group by\n groupBy,\n updateGroupBy,\n groupByConfig,\n updateGroupByConfig,\n // row height\n rowHeight,\n updateRowHeight,\n updateRowHeightWithPersistence,\n\n // global change\n setColumnsConfig: (config: ColumnsConfig) => onChangeWithColumns(config),\n }}\n >\n {children}\n </ColumnSettingsContext.Provider>\n )\n}\n"],"names":["ColumnSettingsProvider","children","config","onChange","allColumnsRef","React","internalColumnSizing","setInternalColumnSizing","useState","internalRowHeight","setInternalRowHeight","localRowHeight","setLocalRowHeight","isAdjustingRowHeightRef","setAllColumns","allColumnIds","onChangeWithColumns","next","columnsConfig","columnOrderInit","columnPinningInit","columnVisibilityInit","columnsSizingExternal","sortingInit","groupBy","groupByConfig","configRowHeight","hasInitializedRef","rowHeight","sorting","columnOrder","columnPinning","defaultOrder","col","i","defaultBefore","columnAfter","index","_a","filteredPinned","nameIndex","DRAG_HANDLE_COLUMN_ID","ROW_SELECTION_COLUMN_ID","columnVisibility","setColumnVisibility","visibility","setColumnOrder","order","setColumnPinning","pinning","columnSizing","resizingTimeoutRef","rowHeightTimeoutRef","setColumnSizing","sizing","togglePinningOnVisibilityChange","newPinning","pinnedColumns","hiddenColumns","newPinnedColumns","updatePinningOrderOnOrderChange","pinnedColumnsOrder","updateOrderOnPinningChange","a","b","aPinned","_b","updateColumnVisibility","updateColumnOrder","updateColumnPinning","newOrder","updateSorting","sortingState","updateGroupBy","updateGroupByConfig","updateRowHeightUI","newRowHeight","updateRowHeightWithPersistence","updateRowHeight","columnVisibilityOnChange","updater","newVisibility","functionalUpdate","columnPinningOnChange","columnOrderOnChange","columnSizingOnChange","newSizing","sortingOnChange","newSorting","jsx","ColumnSettingsContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ColumnSettingsProvider.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/context/ColumnSettingsProvider.tsx"],"sourcesContent":["import React, { ReactNode, useState } from 'react'\nimport {\n ColumnOrderState,\n ColumnPinningState,\n functionalUpdate,\n OnChangeFn,\n VisibilityState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ROW_SELECTION_COLUMN_ID } from './SelectionCellsContext'\nimport { DRAG_HANDLE_COLUMN_ID } from '../ProjectTreeTable'\nimport { ColumnsConfig, ColumnSettingsContext, TableGroupBy } from './ColumnSettingsContext'\nimport { GroupByConfig } from '../components/GroupSettingsFallback'\n\ninterface ColumnSettingsProviderProps {\n children: ReactNode\n config?: Record<string, any>\n onChange: (config: ColumnsConfig, allColumnIds?: string[]) => void\n}\n\nexport const ColumnSettingsProvider: React.FC<ColumnSettingsProviderProps> = ({\n children,\n config,\n onChange,\n}) => {\n const allColumnsRef = React.useRef<string[]>([])\n const resizingTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const rowHeightTimeoutRef = React.useRef<NodeJS.Timeout | null>(null)\n const prevRowHeightRef = React.useRef<number | undefined>(undefined)\n const lockedAspectRatioRef = React.useRef<number | null>(null)\n // Internal state for immediate updates (similar to column sizing)\n const [internalColumnSizing, setInternalColumnSizing] = useState<ColumnSizingState | null>(null)\n const [internalRowHeight, setInternalRowHeight] = useState<number | null>(null)\n\n const setAllColumns = (allColumnIds: string[]) => {\n allColumnsRef.current = Array.from(new Set(allColumnIds))\n }\n const onChangeWithColumns = (next: ColumnsConfig) => onChange(next, allColumnsRef.current)\n const columnsConfig = config as ColumnsConfig\n\n const {\n columnOrder: columnOrderInit = [],\n columnPinning: columnPinningInit = {},\n columnVisibility: columnVisibilityInit = {},\n columnSizing: columnsSizingExternal = {},\n sorting: sortingInit = [],\n groupBy,\n groupByConfig = {},\n rowHeight: configRowHeight = 34,\n } = columnsConfig || {}\n\n // Clear internal row height when config changes (e.g., when switching views)\n // This happens during render, before the component uses the value\n if (prevRowHeightRef.current !== configRowHeight && prevRowHeightRef.current !== undefined) {\n // Config changed, clear internal state\n if (internalRowHeight !== null) {\n setInternalRowHeight(null)\n }\n // Clear any pending timeout\n if (rowHeightTimeoutRef.current) {\n clearTimeout(rowHeightTimeoutRef.current)\n rowHeightTimeoutRef.current = null\n }\n }\n prevRowHeightRef.current = configRowHeight\n\n // Use internal row height during adjustments, otherwise use config value\n const rowHeight = internalRowHeight ?? configRowHeight\n\n const sorting = [...sortingInit]\n const columnOrder = [...columnOrderInit]\n const columnPinning = { ...columnPinningInit }\n const defaultOrder = ['thumbnail', 'name', 'subType', 'status', 'tags']\n // for each default column, if it is not in the columnOrder, find the index of the column before it, if none, add to beginning\n defaultOrder.forEach((col, i) => {\n if (!columnOrder.includes(col)) {\n const defaultBefore = defaultOrder[i - 1]\n const columnAfter = defaultOrder[i + 1]\n if (!defaultBefore || !columnOrder.includes(defaultBefore)) {\n // add to beginning\n columnOrder.unshift(col)\n } else {\n // find the index of that column in the columnOrder\n const index = columnOrder.indexOf(defaultBefore)\n // add the item after that column\n columnOrder.splice(index + 1, 0, col)\n }\n if (columnAfter && columnPinning?.left && columnPinning?.left.includes(columnAfter)) {\n // pin the column\n columnPinning.left = [col, ...(columnPinning?.left || [])]\n }\n }\n })\n\n // if we are in grouping mode, always pin the name column\n // and ensure it is first in column order\n if (groupBy) {\n // ensure name column is pinned and first in pinning order\n if (!columnPinning.left?.includes('name')) {\n columnPinning.left = ['name', ...(columnPinning?.left || [])]\n } else {\n // name is already pinned, but ensure it's first\n const filteredPinned = columnPinning.left.filter((col) => col !== 'name')\n columnPinning.left = ['name', ...filteredPinned]\n }\n\n // ensure name is first in column order\n if (columnOrder.includes('name')) {\n // remove name from its current position\n const nameIndex = columnOrder.indexOf('name')\n columnOrder.splice(nameIndex, 1)\n }\n // add name to the beginning\n columnOrder.unshift('name')\n }\n\n // add drag handle and selection columns to the beginning of the column order\n columnOrder.unshift(...[DRAG_HANDLE_COLUMN_ID, ROW_SELECTION_COLUMN_ID])\n\n // VISIBILITY STATE MUTATIONS\n const columnVisibility = { ...columnVisibilityInit }\n // if we are in grouping mode, name column must always be visible\n if (groupBy && !columnVisibility.name) {\n columnVisibility.name = true\n }\n\n // DIRECT STATE UPDATES - no side effects\n const setColumnVisibility = (visibility: VisibilityState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n })\n }\n\n const setColumnOrder = (order: ColumnOrderState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n })\n }\n\n const setColumnPinning = (pinning: ColumnPinningState) => {\n onChangeWithColumns({\n ...columnsConfig,\n columnPinning: pinning,\n })\n }\n\n // use internalColumnSizing if it exists, otherwise use the external column sizing\n const columnSizing = internalColumnSizing || columnsSizingExternal\n\n const setColumnSizing = (sizing: ColumnSizingState) => {\n setInternalColumnSizing(sizing)\n\n // if there is a timeout already set, clear it\n if (resizingTimeoutRef.current) {\n clearTimeout(resizingTimeoutRef.current)\n }\n // set a timeout that tracks if the column sizing has finished\n resizingTimeoutRef.current = setTimeout(() => {\n // we have finished resizing now!\n // update the external column sizing\n onChangeWithColumns({\n ...columnsConfig,\n columnSizing: sizing,\n })\n // reset the internal column sizing to not be used anymore\n setInternalColumnSizing(null)\n }, 500)\n }\n\n // SIDE EFFECT UTILITIES\n const togglePinningOnVisibilityChange = (visibility: VisibilityState) => {\n // ensure that any columns that are now hidden are removed from the pinning\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const hiddenColumns = Object.keys(visibility).filter((col) => visibility[col] === false)\n const newPinnedColumns = pinnedColumns.filter((col) => !hiddenColumns.includes(col))\n\n return {\n ...newPinning,\n left: newPinnedColumns,\n }\n }\n\n const updatePinningOrderOnOrderChange = (order: ColumnOrderState) => {\n // ensure that the column pinning is in the order of the column order\n const newPinning = { ...columnPinning }\n const pinnedColumns = newPinning.left || []\n const pinnedColumnsOrder = order.filter((col) => pinnedColumns.includes(col))\n\n return {\n ...newPinning,\n left: pinnedColumnsOrder,\n }\n }\n\n const updateOrderOnPinningChange = (pinning: ColumnPinningState) => {\n // we resort the column order based on the pinning\n return [...columnOrder].sort((a, b) => {\n const aPinned = pinning.left?.includes(a) ? 1 : 0\n const bPinned = pinning.left?.includes(b) ? 1 : 0\n return bPinned - aPinned\n })\n }\n\n // UPDATE METHODS WITH SIDE EFFECTS\n const updateColumnVisibility = (visibility: VisibilityState) => {\n const newPinning = togglePinningOnVisibilityChange(visibility)\n onChangeWithColumns({\n ...columnsConfig,\n columnVisibility: visibility,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnOrder = (order: ColumnOrderState) => {\n const newPinning = updatePinningOrderOnOrderChange(order)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: order,\n columnPinning: newPinning,\n })\n }\n\n const updateColumnPinning = (pinning: ColumnPinningState) => {\n const newOrder = updateOrderOnPinningChange(pinning)\n onChangeWithColumns({\n ...columnsConfig,\n columnOrder: newOrder,\n columnPinning: pinning,\n })\n }\n\n const updateSorting = (sortingState: SortingState) => {\n onChangeWithColumns({\n ...columnsConfig,\n sorting: sortingState,\n })\n }\n\n const updateGroupBy = (groupBy: TableGroupBy | undefined) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupBy: groupBy,\n })\n }\n\n const updateGroupByConfig = (config: GroupByConfig) => {\n onChangeWithColumns({\n ...columnsConfig,\n groupByConfig: {\n ...groupByConfig,\n ...config,\n },\n })\n }\n\n // Update row height for immediate UI feedback (no API call)\n const updateRowHeight = React.useCallback((newRowHeight: number) => {\n // Lock the aspect ratio on first call if not already locked\n if (lockedAspectRatioRef.current === null) {\n const currentThumbnailWidth = columnsSizingExternal.thumbnail || 63\n const currentRowHeight = configRowHeight || 34\n lockedAspectRatioRef.current = currentThumbnailWidth / currentRowHeight\n }\n const newThumbnailWidth = lockedAspectRatioRef.current * newRowHeight\n\n setInternalRowHeight(newRowHeight)\n setInternalColumnSizing({\n ...(internalColumnSizing || columnsSizingExternal),\n thumbnail: newThumbnailWidth\n })\n }, [columnsSizingExternal, configRowHeight])\n\n // Update row height and persist to API\n const updateRowHeightWithPersistence = React.useCallback((newRowHeight: number) => {\n const currentThumbnailWidth = columnsSizingExternal.thumbnail || 63\n const currentRowHeight = configRowHeight || 34\n const currentRatio = currentThumbnailWidth / currentRowHeight\n\n const newThumbnailWidth = currentRatio * newRowHeight\n\n // Update UI immediately\n setInternalRowHeight(newRowHeight)\n setInternalColumnSizing({\n ...(internalColumnSizing || columnsSizingExternal),\n thumbnail: newThumbnailWidth\n })\n\n // Clear any existing timeout to debounce API calls\n if (rowHeightTimeoutRef.current) {\n clearTimeout(rowHeightTimeoutRef.current)\n }\n\n // Debounce API call to avoid excessive requests\n rowHeightTimeoutRef.current = setTimeout(() => {\n // Persist to API\n onChangeWithColumns({\n ...columnsConfig,\n rowHeight: newRowHeight,\n columnSizing: {\n ...columnsSizingExternal,\n thumbnail: newThumbnailWidth\n }\n })\n\n // Clean up internal state after API call completes\n setInternalRowHeight(null)\n setInternalColumnSizing(null)\n lockedAspectRatioRef.current = null\n }, 300)\n }, [columnsConfig, onChangeWithColumns, columnsSizingExternal, configRowHeight, internalColumnSizing])\n\n // Remove redundant local updater functions in favor of unified updaters with all columns\n\n // ON-CHANGE HANDLERS (TanStack-compatible)\n const columnVisibilityOnChange: OnChangeFn<VisibilityState> = (updater) => {\n const newVisibility = functionalUpdate(updater, columnVisibility)\n setColumnVisibility(newVisibility)\n }\n\n const columnPinningOnChange: OnChangeFn<ColumnPinningState> = (updater) => {\n const newPinning = functionalUpdate(updater, columnPinning)\n setColumnPinning(newPinning)\n }\n\n const columnOrderOnChange: OnChangeFn<ColumnOrderState> = (updater) => {\n const newOrder = functionalUpdate(updater, columnOrder)\n setColumnOrder(newOrder)\n }\n\n const columnSizingOnChange: OnChangeFn<ColumnSizingState> = (updater) => {\n const newSizing = functionalUpdate(updater, columnSizing)\n setColumnSizing(newSizing)\n }\n\n const sortingOnChange: OnChangeFn<SortingState> = (updater) => {\n const newSorting = functionalUpdate(updater, sorting)\n updateSorting(newSorting)\n }\n\n return (\n <ColumnSettingsContext.Provider\n value={{\n // all columns ref\n setAllColumns,\n // column visibility\n columnVisibility,\n setColumnVisibility,\n updateColumnVisibility,\n columnVisibilityOnChange,\n // column pinning\n columnPinning,\n setColumnPinning,\n updateColumnPinning,\n columnPinningOnChange,\n // column order\n columnOrder,\n setColumnOrder,\n updateColumnOrder,\n columnOrderOnChange,\n // column sizing\n columnSizing,\n setColumnSizing,\n columnSizingOnChange,\n // sorting\n sorting,\n updateSorting,\n sortingOnChange,\n // group by\n groupBy,\n updateGroupBy,\n groupByConfig,\n updateGroupByConfig,\n // row height\n rowHeight,\n updateRowHeight,\n updateRowHeightWithPersistence,\n\n // global change\n setColumnsConfig: (config: ColumnsConfig) => onChangeWithColumns(config),\n }}\n >\n {children}\n </ColumnSettingsContext.Provider>\n )\n}\n"],"names":["ColumnSettingsProvider","children","config","onChange","allColumnsRef","React","resizingTimeoutRef","rowHeightTimeoutRef","prevRowHeightRef","lockedAspectRatioRef","internalColumnSizing","setInternalColumnSizing","useState","internalRowHeight","setInternalRowHeight","setAllColumns","allColumnIds","onChangeWithColumns","next","columnsConfig","columnOrderInit","columnPinningInit","columnVisibilityInit","columnsSizingExternal","sortingInit","groupBy","groupByConfig","configRowHeight","rowHeight","sorting","columnOrder","columnPinning","defaultOrder","col","i","defaultBefore","columnAfter","index","_a","filteredPinned","nameIndex","DRAG_HANDLE_COLUMN_ID","ROW_SELECTION_COLUMN_ID","columnVisibility","setColumnVisibility","visibility","setColumnOrder","order","setColumnPinning","pinning","columnSizing","setColumnSizing","sizing","togglePinningOnVisibilityChange","newPinning","pinnedColumns","hiddenColumns","newPinnedColumns","updatePinningOrderOnOrderChange","pinnedColumnsOrder","updateOrderOnPinningChange","a","b","aPinned","_b","updateColumnVisibility","updateColumnOrder","updateColumnPinning","newOrder","updateSorting","sortingState","updateGroupBy","updateGroupByConfig","updateRowHeight","newRowHeight","currentThumbnailWidth","currentRowHeight","newThumbnailWidth","updateRowHeightWithPersistence","columnVisibilityOnChange","updater","newVisibility","functionalUpdate","columnPinningOnChange","columnOrderOnChange","columnSizingOnChange","newSizing","sortingOnChange","newSorting","jsx","ColumnSettingsContext"],"mappings":"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"}
|