@ynput/ayon-frontend-shared 0.3.31 → 0.3.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/DetailsPanel.cjs.js +1 -1
- package/dist/DetailsPanel.es.js +24 -22
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +213 -197
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +19 -18
- package/dist/Slicer.es.js.map +1 -1
- package/dist/_virtual/index.cjs22.js +1 -1
- package/dist/_virtual/index.cjs23.js +1 -1
- package/dist/_virtual/index.cjs24.js +1 -1
- package/dist/_virtual/index.cjs4.js +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.cjs6.js +1 -1
- package/dist/_virtual/index.cjs8.js +1 -1
- package/dist/_virtual/index.es19.js +2 -2
- package/dist/_virtual/index.es20.js +2 -2
- package/dist/_virtual/index.es22.js +3 -3
- package/dist/_virtual/index.es23.js +5 -5
- package/dist/_virtual/index.es24.js +5 -5
- package/dist/_virtual/index.es4.js +2 -5
- package/dist/_virtual/index.es4.js.map +1 -1
- package/dist/_virtual/index.es5.js +5 -2
- package/dist/_virtual/index.es5.js.map +1 -1
- package/dist/_virtual/index.es6.js +2 -2
- package/dist/_virtual/index.es8.js +2 -2
- package/dist/api.cjs.js +1 -1
- package/dist/api.es.js +453 -434
- package/dist/api.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +11 -9
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
- package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
- package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
- package/dist/node_modules/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/remove-accents/index.cjs.js +1 -1
- package/dist/node_modules/remove-accents/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
- package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
- package/dist/shared/node_modules/prop-types/index.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 +21 -17
- package/dist/shared/src/api/base/client.es.js.map +1 -1
- package/dist/shared/src/api/generated/folders.cjs.js +1 -1
- package/dist/shared/src/api/generated/folders.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/folders.es.js +2 -14
- package/dist/shared/src/api/generated/folders.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +237 -55
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +361 -161
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/activityQueries.cjs.js +1 -0
- package/dist/shared/src/api/queries/activities/activityQueries.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/activityQueries.es.js +1 -0
- package/dist/shared/src/api/queries/activities/activityQueries.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +33 -21
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.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 +74 -60
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -1
- package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js +2 -0
- package/dist/shared/src/api/queries/columnStats/columnStats.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/columnStats/columnStats.es.js +96 -0
- package/dist/shared/src/api/queries/columnStats/columnStats.es.js.map +1 -0
- package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js +2 -0
- package/dist/shared/src/api/queries/columnStats/metricTargets.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/columnStats/metricTargets.es.js +88 -0
- package/dist/shared/src/api/queries/columnStats/metricTargets.es.js.map +1 -0
- package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/getEntityPanel.es.js +62 -48
- package/dist/shared/src/api/queries/entities/getEntityPanel.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 +7 -3
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.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 +94 -79
- package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
- package/dist/shared/src/api/queries/folders/getFolders.cjs.js +1 -1
- package/dist/shared/src/api/queries/folders/getFolders.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/folders/getFolders.es.js +104 -71
- package/dist/shared/src/api/queries/folders/getFolders.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.es.js +265 -216
- package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.es.js +198 -183
- package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js +138 -107
- package/dist/shared/src/api/queries/userDashboard/getUserDashboard.es.js.map +1 -1
- package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js +1 -1
- package/dist/shared/src/api/queries/versions/getVersionsProducts.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js +332 -239
- package/dist/shared/src/api/queries/versions/getVersionsProducts.es.js.map +1 -1
- package/dist/shared/src/api/queries/views/updateViews.cjs.js +1 -1
- package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/views/updateViews.es.js +38 -38
- package/dist/shared/src/api/queries/views/updateViews.es.js.map +1 -1
- package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js +1 -1
- package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js.map +1 -1
- package/dist/shared/src/components/ColumnHeaderMenuUI.es.js +3 -2
- package/dist/shared/src/components/ColumnHeaderMenuUI.es.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +4 -2
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
- package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js +1 -1
- package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityIcon/EntityIcon.es.js +3 -2
- package/dist/shared/src/components/EntityIcon/EntityIcon.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +137 -158
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +4 -2
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
- package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
- package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +3 -2
- package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.es.js +3 -2
- package/dist/shared/src/components/LinksManager/LinksManager.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 +4 -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 +3 -2
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
- package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
- package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
- package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +3 -2
- package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
- package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
- package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/Menu.es.js +3 -2
- package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.es.js +1 -0
- package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
- package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuList.es.js +3 -2
- package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +3 -2
- package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +3 -2
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js +3 -2
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +79 -77
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +6 -4
- 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 +3 -2
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +4 -2
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +4 -2
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.es.js +4 -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 +3 -2
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +4 -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 +5 -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 +4 -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/ReviewablesSelector/Card.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js +4 -2
- package/dist/shared/src/components/ReviewablesSelector/Card.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 +7 -6
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +3 -2
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +6 -4
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +4 -2
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +3 -2
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +2 -2
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +11 -10
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +49 -44
- package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js +3 -3
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.cjs.js.map +1 -1
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js +32 -22
- package/dist/shared/src/components/ThumbnailSimple/ThumbnailSimple.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +4 -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 +8 -6
- 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/config/powerpackFeatures.cjs.js +1 -1
- package/dist/shared/src/config/powerpackFeatures.cjs.js.map +1 -1
- package/dist/shared/src/config/powerpackFeatures.es.js +7 -1
- package/dist/shared/src/config/powerpackFeatures.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 +4 -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 +3 -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 +4 -2
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +4 -2
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +4 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +41 -38
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +4 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +4 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +4 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +18 -16
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +4 -2
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +4 -2
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +13 -11
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.es.js +14 -14
- package/dist/shared/src/containers/DetailsPanel/helpers/getThumbnails.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 +13 -9
- 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 +4 -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 +4 -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 +4 -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 +4 -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 +3 -2
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.es.js +5 -4
- package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +4 -2
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +4 -2
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +4 -2
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +28 -27
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +4 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +8 -6
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +3 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +3 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +3 -2
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +37 -44
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +3 -2
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.es.js +14 -13
- package/dist/shared/src/containers/Feed/helpers/groupActivityVersions.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/ListTable/ListTable.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.es.js +212 -204
- package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js +4 -2
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +4 -2
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +729 -675
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js +32 -10
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.styled.es.js +42 -18
- 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 +17 -14
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +57 -43
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +4 -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 +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js +48 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js +103 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/TableFooterRow.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/constants.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/constants.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/constants.es.js +6 -0
- package/dist/shared/src/containers/ProjectTreeTable/constants.es.js.map +1 -0
- 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 +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +4 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +7 -5
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsContext.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 +215 -181
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/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 +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js +21 -17
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js +1 -2
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.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 +17 -11
- 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 +83 -81
- 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 +116 -111
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +6 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +4 -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 +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFolderRelationships.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 +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +4 -2
- 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 +4 -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 +4 -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 +80 -78
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.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 +45 -44
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.es.js +16 -0
- package/dist/shared/src/containers/ProjectTreeTable/types/summaryTypes.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 +15 -13
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.es.js +29 -25
- package/dist/shared/src/containers/ProjectTreeTable/utils/checkColumnVisibility.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js +17 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/pinningUtils.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +12 -10
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +4 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js +4 -4
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.es.js +24 -19
- package/dist/shared/src/containers/ProjectTreeTable/widgets/ThumbnailWidget.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 +4 -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 +4 -2
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +3 -2
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +4 -2
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +5 -4
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +4 -2
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +12 -11
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +3 -2
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +4 -2
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +3 -2
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js +119 -118
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js +18 -16
- package/dist/shared/src/containers/Views/hooks/pages/useListsViewSettings.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js +79 -51
- package/dist/shared/src/containers/Views/hooks/pages/useOverviewViewSettings.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.es.js +19 -17
- package/dist/shared/src/containers/Views/hooks/pages/useTaskProgressViewSettings.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +6 -5
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +12 -11
- 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 +78 -65
- 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 +5 -4
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.es.js +5 -4
- package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.es.js +7 -6
- package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.es.js +5 -4
- package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.es.js +5 -4
- package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
- package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.es.js +5 -4
- package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/UriContext.cjs.js +1 -1
- package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
- package/dist/shared/src/context/UriContext.es.js +6 -5
- package/dist/shared/src/context/UriContext.es.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.es.js +6 -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 +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
- package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +3 -2
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.es.js +3 -2
- package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
- package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.es.js +3 -2
- package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/shared/src/util/columnConfigConverter.cjs.js +1 -1
- package/dist/shared/src/util/columnConfigConverter.cjs.js.map +1 -1
- package/dist/shared/src/util/columnConfigConverter.es.js +86 -65
- package/dist/shared/src/util/columnConfigConverter.es.js.map +1 -1
- package/dist/shared/src/util/getThumbnailUrl.cjs.js +2 -0
- package/dist/shared/src/util/getThumbnailUrl.cjs.js.map +1 -0
- package/dist/shared/src/util/getThumbnailUrl.es.js +23 -0
- package/dist/shared/src/util/getThumbnailUrl.es.js.map +1 -0
- package/dist/shared/src/util/thumbnailWebsocket.cjs.js +2 -0
- package/dist/shared/src/util/thumbnailWebsocket.cjs.js.map +1 -0
- package/dist/shared/src/util/thumbnailWebsocket.es.js +54 -0
- package/dist/shared/src/util/thumbnailWebsocket.es.js.map +1 -0
- package/dist/types/api/generated/folders.d.ts +1 -6
- package/dist/types/api/generated/graphql.d.ts +275 -6
- package/dist/types/api/generated/graphqlLinks.d.ts +7 -4
- package/dist/types/api/queries/activities/activityQueries.d.ts +1 -0
- package/dist/types/api/queries/activities/getActivities.d.ts +47 -0
- package/dist/types/api/queries/activities/updateActivities.d.ts +94 -0
- package/dist/types/api/queries/activities/util/activitiesHelpers.d.ts +1 -0
- package/dist/types/api/queries/columnStats/columnStats.d.ts +28 -0
- package/dist/types/api/queries/columnStats/index.d.ts +2 -0
- package/dist/types/api/queries/columnStats/metricTargets.d.ts +31 -0
- package/dist/types/api/queries/entities/getEntity.d.ts +47 -0
- package/dist/types/api/queries/entities/getEntityPanel.d.ts +47 -0
- package/dist/types/api/queries/entities/transformDetailsPanelData.d.ts +1 -0
- package/dist/types/api/queries/entities/updateEntity.d.ts +47 -0
- package/dist/types/api/queries/entityLists/getLists.d.ts +47 -0
- package/dist/types/api/queries/index.d.ts +1 -0
- package/dist/types/api/queries/overview/getOverview.d.ts +733 -1
- package/dist/types/api/queries/project/getProject.d.ts +47 -0
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +69 -0
- package/dist/types/api/queries/users/getUsers.d.ts +47 -0
- package/dist/types/api/queries/versions/getVersionsProducts.d.ts +828 -1
- package/dist/types/components/EntityPanelUploader/EntityPanelUploader.d.ts +1 -11
- package/dist/types/components/Thumbnail/StackedThumbnails.d.ts +2 -2
- package/dist/types/components/Thumbnail/Thumbnail.d.ts +2 -2
- package/dist/types/components/ThumbnailSimple/ThumbnailSimple.d.ts +1 -1
- package/dist/types/config/powerpackFeatures.d.ts +1 -1
- package/dist/types/containers/DetailsPanel/containers/FeedWrapper.d.ts +1 -0
- package/dist/types/containers/DetailsPanel/helpers/getThumbnails.d.ts +2 -2
- package/dist/types/containers/Feed/components/ActivityVersions/ActivityVersions.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +8 -3
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.styled.d.ts +2 -0
- package/dist/types/containers/ProjectTreeTable/buildTreeTableColumns.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/components/TableFooterRow.d.ts +14 -0
- package/dist/types/containers/ProjectTreeTable/constants.d.ts +2 -0
- package/dist/types/containers/ProjectTreeTable/context/ColumnSettingsContext.d.ts +10 -0
- package/dist/types/containers/ProjectTreeTable/context/SelectionCellsContext.d.ts +0 -1
- package/dist/types/containers/ProjectTreeTable/index.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/types/index.d.ts +17 -1
- package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +2 -0
- package/dist/types/containers/ProjectTreeTable/types/summaryTypes.d.ts +50 -0
- package/dist/types/containers/ProjectTreeTable/types/table.d.ts +3 -0
- package/dist/types/containers/ProjectTreeTable/utils/checkColumnVisibility.d.ts +2 -0
- package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/utils/pinningUtils.d.ts +6 -0
- package/dist/types/containers/ProjectTreeTable/widgets/ThumbnailWidget.d.ts +1 -1
- package/dist/types/containers/Views/hooks/useSelectedView.d.ts +2 -1
- package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +7 -3
- package/dist/types/util/getThumbnailUrl.d.ts +18 -0
- package/dist/types/util/index.d.ts +2 -0
- package/dist/types/util/thumbnailWebsocket.d.ts +21 -0
- package/dist/util.cjs.js +1 -1
- package/dist/util.es.js +35 -30
- package/dist/util.es.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../api/base/client.cjs.js");require("../api/generated/graphql.cjs.js");require("../api/generated/graphqlLinks.cjs.js");require("../api/generated/access.cjs.js");require("../api/generated/actions.cjs.js");require("../api/generated/activityFeed.cjs.js");require("../api/generated/addons.cjs.js");require("../api/generated/anatomy.cjs.js");require("../api/generated/attributes.cjs.js");require("../api/generated/authentication.cjs.js");require("../api/generated/bundles.cjs.js");require("../api/generated/configuration.cjs.js");require("../api/generated/dataImport.cjs.js");require("../api/generated/desktop.cjs.js");require("../api/generated/entityLists.cjs.js");require("../api/generated/events.cjs.js");require("../api/generated/files.cjs.js");require("../api/generated/folders.cjs.js");require("../api/generated/inbox.cjs.js");require("../api/generated/links.cjs.js");require("../api/generated/market.cjs.js");require("../api/generated/onboarding.cjs.js");require("../api/generated/operations.cjs.js");require("../api/generated/products.cjs.js");require("../api/generated/projectDashboard.cjs.js");require("../api/generated/projects.cjs.js");require("../api/generated/projectFolders.cjs.js");require("../api/generated/reviewables.cjs.js");require("../api/generated/services.cjs.js");require("../api/generated/system.cjs.js");require("../api/generated/tasks.cjs.js");require("../api/generated/teams.cjs.js");require("../api/generated/thumbnails.cjs.js");require("../api/generated/uRIs.cjs.js");require("../api/generated/users.cjs.js");require("../api/generated/versions.cjs.js");require("../api/generated/workfiles.cjs.js");require("../api/generated/ynputCloud.cjs.js");require("../api/generated/grouping.cjs.js");require("../api/generated/views.cjs.js");require("../api/queries/actions/getActions.cjs.js");require("../api/queries/activities/getActivities.cjs.js");require("../api/queries/activities/updateActivities.cjs.js");require("../api/queries/activities/updateReaction.cjs.js");require("../api/queries/activities/getMentions.cjs.js");require("../api/queries/activities/getCategories.cjs.js");require("../api/queries/addons/getAddons.cjs.js");require("../api/queries/addons/updateAddons.cjs.js");require("../api/queries/attributes/getAttributes.cjs.js");require("../api/queries/attributes/updateAttributes.cjs.js");require("../api/queries/authentication/getAuthentication.cjs.js");require("../api/queries/cloud/cloud.cjs.js");require("../api/queries/config/getConfig.cjs.js");require("../api/queries/config/updateConfig.cjs.js");require("../api/queries/entities/getEntity.cjs.js");require("../api/queries/entities/getEntityPanel.cjs.js");require("../api/queries/overview/getOverview.cjs.js");require("../api/queries/overview/updateOverview.cjs.js");require("../api/queries/versions/getVersionsProducts.cjs.js");require("../api/queries/links/getEntityLinks.cjs.js");require("../api/queries/entities/updateEntity.cjs.js");require("../api/queries/entityLists/getLists.cjs.js");require("../api/queries/entityLists/updateLists.cjs.js");require("../api/queries/entityLists/getListsAttributes.cjs.js");require("../api/queries/entityLists/updateListsAttributes.cjs.js");require("../api/queries/entityLists/listFolders.cjs.js");require("../api/queries/folders/getFolders.cjs.js");require("../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../api/queries/grouping/getGrouping.cjs.js");require("../api/queries/links/updateLinks.cjs.js");require("../api/queries/links/getLinks.cjs.js");require("../api/queries/permissions/getPermissions.cjs.js");require("../api/queries/products/createProduct.cjs.js");require("../api/queries/products/getFolderProducts.cjs.js");require("../api/queries/project/getProject.cjs.js");require("../api/queries/project/updateProject.cjs.js");require("../api/queries/projectFolders/projectFolders.cjs.js");require("../api/queries/review/getReview.cjs.js");require("../api/queries/review/updateReview.cjs.js");require("../api/queries/share/share.cjs.js");require("../api/queries/system/getSystem.cjs.js");require("../api/queries/tasks/getTasks.cjs.js");require("../api/queries/tasks/updateTasks.cjs.js");require("../api/queries/teams/getTeams.cjs.js");require("../api/queries/userDashboard/getUserDashboard.cjs.js");require("../api/queries/users/getUsers.cjs.js");const P=require("../api/queries/users/updateUsers.cjs.js");require("../api/queries/users/guests.cjs.js");require("../api/queries/versions/updateVersions.cjs.js");require("../api/queries/views/getViews.cjs.js");require("../api/queries/views/updateViews.cjs.js");require("../api/queries/watchers/getWatchers.cjs.js");require("../api/queries/uris/getUris.cjs.js");require("../context/RemoteModulesContext.cjs.js");require("../../../_virtual/jsx-runtime.cjs.js");require("react");require("../../../_virtual/runtime.cjs.js");require("../../../_virtual/semver.cjs.js");require("lodash");const C=require("react-toastify");require("react-redux");require("custom-protocol-check");require("../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("uuid");require("../util/pubsub.cjs.js");require("../context/PowerpackContextInstance.cjs.js");require("../context/UriContext.cjs.js");require("../context/DetailsPanelContextInstance.cjs.js");require("../context/SubtasksModulesContextInstance.cjs.js");require("../context/ThumbnailUploaderContext.cjs.js");require("../context/SettingsPanelContext.cjs.js");require("../context/pip/PiPProvider.cjs.js");require("react-dom");require("../context/pip/PiPWrapper.cjs.js");require("../context/AddonProjectContext.cjs.js");require("../context/AddonContext.cjs.js");require("../context/MoveEntityContext.cjs.js");require("../context/MenuContext.cjs.js");require("../context/WebsocketContext.cjs.js");const m=require("../context/GlobalContext.cjs.js");require("../context/ProjectContext.cjs.js");require("../context/ProjectFoldersContext.cjs.js");const y=({selectors:d=[],init:f})=>{const{user:i}=m.useGlobalContext(),{data:{frontendPreferences:t={}}={}}=i||{},n=d.filter(e=>e!=null).map(e=>e.replace(/\s/g,""));let u=t;for(const e of n)u=u?.[e];u=u||f||{};const[l]=P.useSetFrontendPreferencesMutation();return[u,async e=>{try{if(!i?.name)throw{data:{detail:"User not found"}};let r={...t};const s=(q,o,a)=>{if(o.length===0)return{...q,...a};const[c,...g]=o,p=q?.[c]||{};return{...q,[c]:s(p,g,a)}};r=s(r,n,e),await l({userName:i.name,patchData:r,disableInvalidations:!0}).unwrap()}catch(r){console.error(r),C.toast.error(r.data?.detail)}},{isSuccess:!0}]};exports.useUserProjectConfig=y;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../api/base/client.cjs.js");require("../api/generated/graphql.cjs.js");require("../api/generated/graphqlLinks.cjs.js");require("../api/generated/access.cjs.js");require("../api/generated/actions.cjs.js");require("../api/generated/activityFeed.cjs.js");require("../api/generated/addons.cjs.js");require("../api/generated/anatomy.cjs.js");require("../api/generated/attributes.cjs.js");require("../api/generated/authentication.cjs.js");require("../api/generated/bundles.cjs.js");require("../api/generated/configuration.cjs.js");require("../api/generated/dataImport.cjs.js");require("../api/generated/desktop.cjs.js");require("../api/generated/entityLists.cjs.js");require("../api/generated/events.cjs.js");require("../api/generated/files.cjs.js");require("../api/generated/folders.cjs.js");require("../api/generated/inbox.cjs.js");require("../api/generated/links.cjs.js");require("../api/generated/market.cjs.js");require("../api/generated/onboarding.cjs.js");require("../api/generated/operations.cjs.js");require("../api/generated/products.cjs.js");require("../api/generated/projectDashboard.cjs.js");require("../api/generated/projects.cjs.js");require("../api/generated/projectFolders.cjs.js");require("../api/generated/reviewables.cjs.js");require("../api/generated/services.cjs.js");require("../api/generated/system.cjs.js");require("../api/generated/tasks.cjs.js");require("../api/generated/teams.cjs.js");require("../api/generated/thumbnails.cjs.js");require("../api/generated/uRIs.cjs.js");require("../api/generated/users.cjs.js");require("../api/generated/versions.cjs.js");require("../api/generated/workfiles.cjs.js");require("../api/generated/ynputCloud.cjs.js");require("../api/generated/grouping.cjs.js");require("../api/generated/views.cjs.js");require("../api/queries/actions/getActions.cjs.js");require("../api/queries/activities/getActivities.cjs.js");require("../api/queries/activities/updateActivities.cjs.js");require("../api/queries/activities/updateReaction.cjs.js");require("../api/queries/activities/getMentions.cjs.js");require("../api/queries/activities/getCategories.cjs.js");require("../api/queries/addons/getAddons.cjs.js");require("../api/queries/addons/updateAddons.cjs.js");require("../api/queries/attributes/getAttributes.cjs.js");require("../api/queries/attributes/updateAttributes.cjs.js");require("../api/queries/authentication/getAuthentication.cjs.js");require("../api/queries/cloud/cloud.cjs.js");require("../api/queries/columnStats/metricTargets.cjs.js");require("../api/queries/config/getConfig.cjs.js");require("../api/queries/config/updateConfig.cjs.js");require("../api/queries/entities/getEntity.cjs.js");require("../api/queries/entities/getEntityPanel.cjs.js");require("../api/queries/overview/getOverview.cjs.js");require("../api/queries/overview/updateOverview.cjs.js");require("../api/queries/versions/getVersionsProducts.cjs.js");require("../api/queries/links/getEntityLinks.cjs.js");require("../api/queries/entities/updateEntity.cjs.js");require("../api/queries/entityLists/getLists.cjs.js");require("../api/queries/entityLists/updateLists.cjs.js");require("../api/queries/entityLists/getListsAttributes.cjs.js");require("../api/queries/entityLists/updateListsAttributes.cjs.js");require("../api/queries/entityLists/listFolders.cjs.js");require("../api/queries/folders/getFolders.cjs.js");require("../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../api/queries/grouping/getGrouping.cjs.js");require("../api/queries/links/updateLinks.cjs.js");require("../api/queries/links/getLinks.cjs.js");require("../api/queries/permissions/getPermissions.cjs.js");require("../api/queries/products/createProduct.cjs.js");require("../api/queries/products/getFolderProducts.cjs.js");require("../api/queries/project/getProject.cjs.js");require("../api/queries/project/updateProject.cjs.js");require("../api/queries/projectFolders/projectFolders.cjs.js");require("../api/queries/review/getReview.cjs.js");require("../api/queries/review/updateReview.cjs.js");require("../api/queries/share/share.cjs.js");require("../api/queries/system/getSystem.cjs.js");require("../api/queries/tasks/getTasks.cjs.js");require("../api/queries/tasks/updateTasks.cjs.js");require("../api/queries/teams/getTeams.cjs.js");require("../api/queries/userDashboard/getUserDashboard.cjs.js");require("../api/queries/users/getUsers.cjs.js");const P=require("../api/queries/users/updateUsers.cjs.js");require("../api/queries/users/guests.cjs.js");require("../api/queries/versions/updateVersions.cjs.js");require("../api/queries/views/getViews.cjs.js");require("../api/queries/views/updateViews.cjs.js");require("../api/queries/watchers/getWatchers.cjs.js");require("../api/queries/uris/getUris.cjs.js");require("../context/RemoteModulesContext.cjs.js");require("../../../_virtual/jsx-runtime.cjs.js");require("react");require("../../../_virtual/runtime.cjs.js");require("../../../_virtual/semver.cjs.js");require("lodash");const C=require("react-toastify");require("react-redux");require("custom-protocol-check");require("../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("uuid");require("../util/pubsub.cjs.js");require("../context/PowerpackContextInstance.cjs.js");require("../context/UriContext.cjs.js");require("../context/DetailsPanelContextInstance.cjs.js");require("../context/SubtasksModulesContextInstance.cjs.js");require("../context/ThumbnailUploaderContext.cjs.js");require("../context/SettingsPanelContext.cjs.js");require("../context/pip/PiPProvider.cjs.js");require("react-dom");require("../context/pip/PiPWrapper.cjs.js");require("../context/AddonProjectContext.cjs.js");require("../context/AddonContext.cjs.js");require("../context/MoveEntityContext.cjs.js");require("../context/MenuContext.cjs.js");require("../context/WebsocketContext.cjs.js");const m=require("../context/GlobalContext.cjs.js");require("../context/ProjectContext.cjs.js");require("../context/ProjectFoldersContext.cjs.js");const y=({selectors:d=[],init:f})=>{const{user:i}=m.useGlobalContext(),{data:{frontendPreferences:t={}}={}}=i||{},n=d.filter(e=>e!=null).map(e=>e.replace(/\s/g,""));let u=t;for(const e of n)u=u?.[e];u=u||f||{};const[l]=P.useSetFrontendPreferencesMutation();return[u,async e=>{try{if(!i?.name)throw{data:{detail:"User not found"}};let r={...t};const s=(q,o,a)=>{if(o.length===0)return{...q,...a};const[c,...g]=o,p=q?.[c]||{};return{...q,[c]:s(p,g,a)}};r=s(r,n,e),await l({userName:i.name,patchData:r,disableInvalidations:!0}).unwrap()}catch(r){console.error(r),C.toast.error(r.data?.detail)}},{isSuccess:!0}]};exports.useUserProjectConfig=y;
|
|
2
2
|
//# sourceMappingURL=useUserProjectConfig.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUserProjectConfig.cjs.js","sources":["../../../../src/hooks/useUserProjectConfig.ts"],"sourcesContent":["import { useSetFrontendPreferencesMutation } from '@shared/api'\nimport { useGlobalContext } from '@shared/context'\nimport { toast } from 'react-toastify'\n\ntype Props = {\n selectors?: (string | undefined | null)[]\n init?: any\n}\n\ntype Result = [\n Record<string, any>,\n (config: Record<string, any>) => Promise<void>,\n { isSuccess: boolean },\n]\n\nexport const useUserProjectConfig = ({ selectors = [], init }: Props): Result => {\n // GET CURRENT USER\n const { user } = useGlobalContext()\n // extract out columns config for project\n const { data: { frontendPreferences: preferences = {} } = {} } = user || {}\n\n const configPath = selectors\n .filter((selector) => selector !== undefined && selector !== null)\n .map((selector) => selector.replace(/\\s/g, ''))\n // Start with the root preferences\n let userConfig = preferences\n for (const selector of configPath) {\n userConfig = userConfig?.[selector]\n }\n\n userConfig = userConfig || init || {}\n\n const [updateUserPreferences] = useSetFrontendPreferencesMutation()\n\n // update the user preferences when the columns config changes\n const updateProjectConfig = async (config: Record<string, any>) => {\n try {\n if (!user?.name) throw { data: { detail: 'User not found' } }\n\n // Set the updated config at the correct nested path using only selectors\n let updatedPreferences = { ...preferences }\n\n // Helper function to set nested value\n const setNestedValue = (obj: any, path: string[], value: any): any => {\n if (path.length === 0) return { ...obj, ...value }\n\n const [first, ...rest] = path\n const nestedObj = obj?.[first] || {}\n\n return {\n ...obj,\n [first]: setNestedValue(nestedObj, rest, value),\n }\n }\n\n // Use the helper to set the value at the correct path\n updatedPreferences = setNestedValue(updatedPreferences, configPath, config)\n\n await updateUserPreferences({\n userName: user.name,\n patchData: updatedPreferences,\n // @ts-expect-error - disableInvalidations is not in the api\n disableInvalidations: true,\n }).unwrap()\n } catch (error: any) {\n console.error(error)\n toast.error(error.data?.detail)\n }\n }\n\n return [userConfig, updateProjectConfig, { isSuccess: true }]\n}\n"],"names":["useUserProjectConfig","selectors","init","user","useGlobalContext","preferences","configPath","selector","userConfig","updateUserPreferences","useSetFrontendPreferencesMutation","config","updatedPreferences","setNestedValue","obj","path","value","first","rest","nestedObj","error","toast"],"mappings":"
|
|
1
|
+
{"version":3,"file":"useUserProjectConfig.cjs.js","sources":["../../../../src/hooks/useUserProjectConfig.ts"],"sourcesContent":["import { useSetFrontendPreferencesMutation } from '@shared/api'\nimport { useGlobalContext } from '@shared/context'\nimport { toast } from 'react-toastify'\n\ntype Props = {\n selectors?: (string | undefined | null)[]\n init?: any\n}\n\ntype Result = [\n Record<string, any>,\n (config: Record<string, any>) => Promise<void>,\n { isSuccess: boolean },\n]\n\nexport const useUserProjectConfig = ({ selectors = [], init }: Props): Result => {\n // GET CURRENT USER\n const { user } = useGlobalContext()\n // extract out columns config for project\n const { data: { frontendPreferences: preferences = {} } = {} } = user || {}\n\n const configPath = selectors\n .filter((selector) => selector !== undefined && selector !== null)\n .map((selector) => selector.replace(/\\s/g, ''))\n // Start with the root preferences\n let userConfig = preferences\n for (const selector of configPath) {\n userConfig = userConfig?.[selector]\n }\n\n userConfig = userConfig || init || {}\n\n const [updateUserPreferences] = useSetFrontendPreferencesMutation()\n\n // update the user preferences when the columns config changes\n const updateProjectConfig = async (config: Record<string, any>) => {\n try {\n if (!user?.name) throw { data: { detail: 'User not found' } }\n\n // Set the updated config at the correct nested path using only selectors\n let updatedPreferences = { ...preferences }\n\n // Helper function to set nested value\n const setNestedValue = (obj: any, path: string[], value: any): any => {\n if (path.length === 0) return { ...obj, ...value }\n\n const [first, ...rest] = path\n const nestedObj = obj?.[first] || {}\n\n return {\n ...obj,\n [first]: setNestedValue(nestedObj, rest, value),\n }\n }\n\n // Use the helper to set the value at the correct path\n updatedPreferences = setNestedValue(updatedPreferences, configPath, config)\n\n await updateUserPreferences({\n userName: user.name,\n patchData: updatedPreferences,\n // @ts-expect-error - disableInvalidations is not in the api\n disableInvalidations: true,\n }).unwrap()\n } catch (error: any) {\n console.error(error)\n toast.error(error.data?.detail)\n }\n }\n\n return [userConfig, updateProjectConfig, { isSuccess: true }]\n}\n"],"names":["useUserProjectConfig","selectors","init","user","useGlobalContext","preferences","configPath","selector","userConfig","updateUserPreferences","useSetFrontendPreferencesMutation","config","updatedPreferences","setNestedValue","obj","path","value","first","rest","nestedObj","error","toast"],"mappings":"w5LAeO,MAAMA,EAAuB,CAAC,CAAE,UAAAC,EAAY,CAAA,EAAI,KAAAC,KAA0B,CAE/E,KAAM,CAAE,KAAAC,CAAA,EAASC,mBAAA,EAEX,CAAE,KAAM,CAAE,oBAAqBC,EAAc,CAAA,GAAO,CAAA,GAAOF,GAAQ,CAAA,EAEnEG,EAAaL,EAChB,OAAQM,GAAuCA,GAAa,IAAI,EAChE,IAAKA,GAAaA,EAAS,QAAQ,MAAO,EAAE,CAAC,EAEhD,IAAIC,EAAaH,EACjB,UAAWE,KAAYD,EACrBE,EAAaA,IAAaD,CAAQ,EAGpCC,EAAaA,GAAcN,GAAQ,CAAA,EAEnC,KAAM,CAACO,CAAqB,EAAIC,oCAAA,EAsChC,MAAO,CAACF,EAnCoB,MAAOG,GAAgC,CACjE,GAAI,CACF,GAAI,CAACR,GAAM,KAAM,KAAM,CAAE,KAAM,CAAE,OAAQ,iBAAiB,EAG1D,IAAIS,EAAqB,CAAE,GAAGP,CAAA,EAG9B,MAAMQ,EAAiB,CAACC,EAAUC,EAAgBC,IAAoB,CACpE,GAAID,EAAK,SAAW,EAAG,MAAO,CAAE,GAAGD,EAAK,GAAGE,CAAA,EAE3C,KAAM,CAACC,EAAO,GAAGC,CAAI,EAAIH,EACnBI,EAAYL,IAAMG,CAAK,GAAK,CAAA,EAElC,MAAO,CACL,GAAGH,EACH,CAACG,CAAK,EAAGJ,EAAeM,EAAWD,EAAMF,CAAK,CAAA,CAElD,EAGAJ,EAAqBC,EAAeD,EAAoBN,EAAYK,CAAM,EAE1E,MAAMF,EAAsB,CAC1B,SAAUN,EAAK,KACf,UAAWS,EAEX,qBAAsB,EAAA,CACvB,EAAE,OAAA,CACL,OAASQ,EAAY,CACnB,QAAQ,MAAMA,CAAK,EACnBC,EAAAA,MAAM,MAAMD,EAAM,MAAM,MAAM,CAChC,CACF,EAEyC,CAAE,UAAW,GAAM,CAC9D"}
|
|
@@ -50,6 +50,7 @@ import "../api/queries/attributes/getAttributes.es.js";
|
|
|
50
50
|
import "../api/queries/attributes/updateAttributes.es.js";
|
|
51
51
|
import "../api/queries/authentication/getAuthentication.es.js";
|
|
52
52
|
import "../api/queries/cloud/cloud.es.js";
|
|
53
|
+
import "../api/queries/columnStats/metricTargets.es.js";
|
|
53
54
|
import "../api/queries/config/getConfig.es.js";
|
|
54
55
|
import "../api/queries/config/updateConfig.es.js";
|
|
55
56
|
import "../api/queries/entities/getEntity.es.js";
|
|
@@ -120,7 +121,7 @@ import "../context/WebsocketContext.es.js";
|
|
|
120
121
|
import { useGlobalContext as h } from "../context/GlobalContext.es.js";
|
|
121
122
|
import "../context/ProjectContext.es.js";
|
|
122
123
|
import "../context/ProjectFoldersContext.es.js";
|
|
123
|
-
const
|
|
124
|
+
const kr = ({ selectors: f = [], init: u }) => {
|
|
124
125
|
const { user: i } = h(), { data: { frontendPreferences: m = {} } = {} } = i || {}, e = f.filter((t) => t != null).map((t) => t.replace(/\s/g, ""));
|
|
125
126
|
let o = m;
|
|
126
127
|
for (const t of e)
|
|
@@ -151,6 +152,6 @@ const Vr = ({ selectors: f = [], init: u }) => {
|
|
|
151
152
|
}, { isSuccess: !0 }];
|
|
152
153
|
};
|
|
153
154
|
export {
|
|
154
|
-
|
|
155
|
+
kr as useUserProjectConfig
|
|
155
156
|
};
|
|
156
157
|
//# sourceMappingURL=useUserProjectConfig.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUserProjectConfig.es.js","sources":["../../../../src/hooks/useUserProjectConfig.ts"],"sourcesContent":["import { useSetFrontendPreferencesMutation } from '@shared/api'\nimport { useGlobalContext } from '@shared/context'\nimport { toast } from 'react-toastify'\n\ntype Props = {\n selectors?: (string | undefined | null)[]\n init?: any\n}\n\ntype Result = [\n Record<string, any>,\n (config: Record<string, any>) => Promise<void>,\n { isSuccess: boolean },\n]\n\nexport const useUserProjectConfig = ({ selectors = [], init }: Props): Result => {\n // GET CURRENT USER\n const { user } = useGlobalContext()\n // extract out columns config for project\n const { data: { frontendPreferences: preferences = {} } = {} } = user || {}\n\n const configPath = selectors\n .filter((selector) => selector !== undefined && selector !== null)\n .map((selector) => selector.replace(/\\s/g, ''))\n // Start with the root preferences\n let userConfig = preferences\n for (const selector of configPath) {\n userConfig = userConfig?.[selector]\n }\n\n userConfig = userConfig || init || {}\n\n const [updateUserPreferences] = useSetFrontendPreferencesMutation()\n\n // update the user preferences when the columns config changes\n const updateProjectConfig = async (config: Record<string, any>) => {\n try {\n if (!user?.name) throw { data: { detail: 'User not found' } }\n\n // Set the updated config at the correct nested path using only selectors\n let updatedPreferences = { ...preferences }\n\n // Helper function to set nested value\n const setNestedValue = (obj: any, path: string[], value: any): any => {\n if (path.length === 0) return { ...obj, ...value }\n\n const [first, ...rest] = path\n const nestedObj = obj?.[first] || {}\n\n return {\n ...obj,\n [first]: setNestedValue(nestedObj, rest, value),\n }\n }\n\n // Use the helper to set the value at the correct path\n updatedPreferences = setNestedValue(updatedPreferences, configPath, config)\n\n await updateUserPreferences({\n userName: user.name,\n patchData: updatedPreferences,\n // @ts-expect-error - disableInvalidations is not in the api\n disableInvalidations: true,\n }).unwrap()\n } catch (error: any) {\n console.error(error)\n toast.error(error.data?.detail)\n }\n }\n\n return [userConfig, updateProjectConfig, { isSuccess: true }]\n}\n"],"names":["useUserProjectConfig","selectors","init","user","useGlobalContext","preferences","configPath","selector","userConfig","updateUserPreferences","useSetFrontendPreferencesMutation","config","updatedPreferences","setNestedValue","obj","path","value","first","rest","nestedObj","error","toast"],"mappings":"
|
|
1
|
+
{"version":3,"file":"useUserProjectConfig.es.js","sources":["../../../../src/hooks/useUserProjectConfig.ts"],"sourcesContent":["import { useSetFrontendPreferencesMutation } from '@shared/api'\nimport { useGlobalContext } from '@shared/context'\nimport { toast } from 'react-toastify'\n\ntype Props = {\n selectors?: (string | undefined | null)[]\n init?: any\n}\n\ntype Result = [\n Record<string, any>,\n (config: Record<string, any>) => Promise<void>,\n { isSuccess: boolean },\n]\n\nexport const useUserProjectConfig = ({ selectors = [], init }: Props): Result => {\n // GET CURRENT USER\n const { user } = useGlobalContext()\n // extract out columns config for project\n const { data: { frontendPreferences: preferences = {} } = {} } = user || {}\n\n const configPath = selectors\n .filter((selector) => selector !== undefined && selector !== null)\n .map((selector) => selector.replace(/\\s/g, ''))\n // Start with the root preferences\n let userConfig = preferences\n for (const selector of configPath) {\n userConfig = userConfig?.[selector]\n }\n\n userConfig = userConfig || init || {}\n\n const [updateUserPreferences] = useSetFrontendPreferencesMutation()\n\n // update the user preferences when the columns config changes\n const updateProjectConfig = async (config: Record<string, any>) => {\n try {\n if (!user?.name) throw { data: { detail: 'User not found' } }\n\n // Set the updated config at the correct nested path using only selectors\n let updatedPreferences = { ...preferences }\n\n // Helper function to set nested value\n const setNestedValue = (obj: any, path: string[], value: any): any => {\n if (path.length === 0) return { ...obj, ...value }\n\n const [first, ...rest] = path\n const nestedObj = obj?.[first] || {}\n\n return {\n ...obj,\n [first]: setNestedValue(nestedObj, rest, value),\n }\n }\n\n // Use the helper to set the value at the correct path\n updatedPreferences = setNestedValue(updatedPreferences, configPath, config)\n\n await updateUserPreferences({\n userName: user.name,\n patchData: updatedPreferences,\n // @ts-expect-error - disableInvalidations is not in the api\n disableInvalidations: true,\n }).unwrap()\n } catch (error: any) {\n console.error(error)\n toast.error(error.data?.detail)\n }\n }\n\n return [userConfig, updateProjectConfig, { isSuccess: true }]\n}\n"],"names":["useUserProjectConfig","selectors","init","user","useGlobalContext","preferences","configPath","selector","userConfig","updateUserPreferences","useSetFrontendPreferencesMutation","config","updatedPreferences","setNestedValue","obj","path","value","first","rest","nestedObj","error","toast"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeO,MAAMA,KAAuB,CAAC,EAAE,WAAAC,IAAY,CAAA,GAAI,MAAAC,QAA0B;AAE/E,QAAM,EAAE,MAAAC,EAAA,IAASC,EAAA,GAEX,EAAE,MAAM,EAAE,qBAAqBC,IAAc,CAAA,MAAO,CAAA,MAAOF,KAAQ,CAAA,GAEnEG,IAAaL,EAChB,OAAO,CAACM,MAAuCA,KAAa,IAAI,EAChE,IAAI,CAACA,MAAaA,EAAS,QAAQ,OAAO,EAAE,CAAC;AAEhD,MAAIC,IAAaH;AACjB,aAAWE,KAAYD;AACrB,IAAAE,IAAaA,IAAaD,CAAQ;AAGpC,EAAAC,IAAaA,KAAcN,KAAQ,CAAA;AAEnC,QAAM,CAACO,CAAqB,IAAIC,EAAA;AAsChC,SAAO,CAACF,GAnCoB,OAAOG,MAAgC;AACjE,QAAI;AACF,UAAI,CAACR,GAAM,KAAM,OAAM,EAAE,MAAM,EAAE,QAAQ,mBAAiB;AAG1D,UAAIS,IAAqB,EAAE,GAAGP,EAAA;AAG9B,YAAMQ,IAAiB,CAACC,GAAUC,GAAgBC,MAAoB;AACpE,YAAID,EAAK,WAAW,EAAG,QAAO,EAAE,GAAGD,GAAK,GAAGE,EAAA;AAE3C,cAAM,CAACC,GAAO,GAAGC,CAAI,IAAIH,GACnBI,IAAYL,IAAMG,CAAK,KAAK,CAAA;AAElC,eAAO;AAAA,UACL,GAAGH;AAAA,UACH,CAACG,CAAK,GAAGJ,EAAeM,GAAWD,GAAMF,CAAK;AAAA,QAAA;AAAA,MAElD;AAGA,MAAAJ,IAAqBC,EAAeD,GAAoBN,GAAYK,CAAM,GAE1E,MAAMF,EAAsB;AAAA,QAC1B,UAAUN,EAAK;AAAA,QACf,WAAWS;AAAA;AAAA,QAEX,sBAAsB;AAAA,MAAA,CACvB,EAAE,OAAA;AAAA,IACL,SAASQ,GAAY;AACnB,cAAQ,MAAMA,CAAK,GACnBC,EAAM,MAAMD,EAAM,MAAM,MAAM;AAAA,IAChC;AAAA,EACF,GAEyC,EAAE,WAAW,IAAM;AAC9D;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=require("../containers/ProjectTreeTable/constants.cjs.js"),T=new Set([O.ROW_SELECTION_COLUMN_ID,O.DRAG_HANDLE_COLUMN_ID]);function b(t){const{columns:e=[],groupBy:i,groupSortByDesc:n,showEmptyGroups:r,sortBy:o,sortDesc:l,rowHeight:c}=t||{},y={},u={left:[],right:[]},a=[],g={},h={},p={},S={};e.forEach(m=>{const{name:f,visible:D,pinned:_,width:v,summary:B,summaryScope:E,summaryFormat:w}=m;T.has(f)||(y[f]=D??!1,a.push(f),_&&u.left?.push(f),v!==void 0&&(g[f]=v),B&&(h[f]=B),E&&(p[f]=E),w&&(S[f]=w))});const C=o?[{id:o,desc:l||!1}]:[];let s;if(typeof i=="string"&&i.length>0)s={id:i,desc:n??!1};else if(Array.isArray(i)){const m=i.find(f=>typeof f=="string"&&f.length>0);m?s={id:m,desc:n??!1}:s=void 0}else s=void 0;return{columnVisibility:y,columnPinning:u,columnOrder:a,columnSizing:g,columnSummaries:h,columnSummaryScopes:p,columnSummaryFormats:S,sorting:C,groupBy:s,groupByConfig:{showEmpty:r||!1,entityType:""},rowHeight:c??34}}function A(t,e,i){const n=[...t],r=e.filter(o=>!t.includes(o)&&i.has(o));return[...n,...r]}function L(t,e,i,n){const r=new Set;return Object.keys(t).forEach(o=>r.add(o)),Object.keys(e).forEach(o=>r.add(o)),i.left?.forEach(o=>r.add(o)),i.right?.forEach(o=>r.add(o)),n?.forEach(o=>r.add(o)),r}function k(t,e,i,n,r,o,l){const c={name:t,visible:!!e[t]};r[t]&&(c.summary=r[t]),o[t]&&(c.summaryScope=o[t]),l[t]&&(c.summaryFormat=l[t]),e.hasOwnProperty(t)&&(c.visible=e[t]);const y=i.left?.includes(t),u=i.right?.includes(t);return(y||u)&&(c.pinned=!0),n[t]!==void 0&&(c.width=n[t]),c}function H(t,e){const{columnVisibility:i,columnPinning:n,columnOrder:r,columnSizing:o,columnSummaries:l={},columnSummaryScopes:c={},columnSummaryFormats:y={},sorting:u,groupBy:a,groupByConfig:g,rowHeight:h}=t,p=L(i,o,n,e||[]),s={columns:A(r,e||[],p).filter(d=>!T.has(d)).map(d=>k(d,i,n,o,l,c,y))};if(a){const d=Array.isArray(a.id)?a.id[0]:a.id;s.groupBy=d||void 0,s.groupSortByDesc=a.desc??!1}else s.groupBy=void 0,s.groupSortByDesc=void 0;if(g?.showEmpty!==void 0&&(s.showEmptyGroups=g.showEmpty),u)if(u.length>0){const d=u[0];s.sortBy=d.id,s.sortDesc=d.desc}else s.sortBy=void 0,s.sortDesc=void 0;return h!==void 0&&(s.rowHeight=h),s}exports.convertColumnConfigToTanstackStates=b;exports.convertTanstackStatesToColumnConfig=H;
|
|
2
2
|
//# sourceMappingURL=columnConfigConverter.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnConfigConverter.cjs.js","sources":["../../../../src/util/columnConfigConverter.ts"],"sourcesContent":["import {\n VisibilityState,\n ColumnPinningState,\n ColumnOrderState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ColumnItemModel, OverviewSettings } from '@shared/api/generated/views'\nimport { ColumnsConfig, TableGroupBy } from '@shared/containers'\nimport { GroupByConfig } from '@shared/containers/ProjectTreeTable/components/GroupSettingsFallback'\n\n/**\n * Converts ColumnItemModel array from OverviewSettings to TanStack table states\n */\nexport function convertColumnConfigToTanstackStates(settings: OverviewSettings): ColumnsConfig {\n const {\n columns = [],\n groupBy: groupByField,\n groupSortByDesc,\n showEmptyGroups,\n sortBy,\n sortDesc,\n rowHeight,\n } = settings || {}\n\n // Initialize state objects\n const columnVisibility: VisibilityState = {}\n const columnPinning: ColumnPinningState = { left: [], right: [] }\n const columnOrder: ColumnOrderState = []\n const columnSizing: ColumnSizingState = {}\n\n // Process each column from the settings\n columns.forEach((column) => {\n const { name, visible, pinned, width } = column\n\n // Column visibility: undefined means hidden (opt-in model)\n columnVisibility[name] = visible ?? false\n\n // Column order: maintain the order from the settings\n columnOrder.push(name)\n\n // Column pinning: assuming pinned: true means left pinning\n if (pinned) {\n columnPinning.left?.push(name)\n }\n\n // Column sizing: set width if provided\n if (width !== undefined) {\n columnSizing[name] = width\n }\n })\n\n // Handle sorting\n const sorting: SortingState = sortBy ? [{ id: sortBy, desc: sortDesc || false }] : []\n\n // Handle grouping\n let groupBy: TableGroupBy | undefined\n if (typeof groupByField === 'string' && groupByField.length > 0) {\n groupBy = { id: groupByField, desc: groupSortByDesc ?? false }\n } else if (Array.isArray(groupByField)) {\n const first = groupByField.find((v) => typeof v === 'string' && v.length > 0)\n if (first) {\n groupBy = { id: first, desc: groupSortByDesc ?? false }\n } else {\n groupBy = undefined\n }\n } else {\n groupBy = undefined\n }\n\n const groupByConfig: GroupByConfig = {\n showEmpty: showEmptyGroups || false,\n entityType: '',\n }\n\n return {\n columnVisibility,\n columnPinning,\n columnOrder,\n columnSizing,\n sorting,\n groupBy,\n groupByConfig,\n rowHeight: rowHeight ?? 34,\n }\n}\n\n/**\n * Determines the final column order based on columnOrder and allColumnIds\n * - Columns in columnOrder come first (in their specified order)\n * - Remaining columns follow the order from allColumnIds\n */\nfunction determineColumnOrder(\n columnOrder: ColumnOrderState,\n allColumnIds: string[],\n columnsWithState: Set<string>,\n): string[] {\n // Start with columns from columnOrder (these have explicit positioning)\n const orderedColumns = [...columnOrder]\n\n // Add remaining columns from allColumnIds that aren't already in columnOrder\n const remainingColumns = allColumnIds.filter(\n (columnId) => !columnOrder.includes(columnId) && columnsWithState.has(columnId),\n )\n\n return [...orderedColumns, ...remainingColumns]\n}\n\n/**\n * Collects all columns that have any state (visibility, sizing, pinning, etc.)\n */\nfunction collectColumnsWithState(\n columnVisibility: VisibilityState,\n columnSizing: ColumnSizingState,\n columnPinning: ColumnPinningState,\n allColumnIds: string[],\n): Set<string> {\n const columnsWithState = new Set<string>()\n\n // Add columns with visibility state\n Object.keys(columnVisibility).forEach((col) => columnsWithState.add(col))\n\n // Add columns with sizing state\n Object.keys(columnSizing).forEach((col) => columnsWithState.add(col))\n\n // Add pinned columns\n columnPinning.left?.forEach((col) => columnsWithState.add(col))\n columnPinning.right?.forEach((col) => columnsWithState.add(col))\n\n // Add any additional columns from allColumnIds\n allColumnIds?.forEach((col) => columnsWithState.add(col))\n\n return columnsWithState\n}\n\n/**\n * Creates a ColumnItemModel for a given column name with all applicable state\n */\nfunction createColumnItem(\n columnName: string,\n columnVisibility: VisibilityState,\n columnPinning: ColumnPinningState,\n columnSizing: ColumnSizingState,\n): ColumnItemModel {\n const column: ColumnItemModel = {\n name: columnName,\n }\n\n // Set visibility if defined in state\n if (columnVisibility.hasOwnProperty(columnName)) {\n column.visible = columnVisibility[columnName]\n }\n\n // Set pinning if column is pinned\n const isPinnedLeft = columnPinning.left?.includes(columnName)\n const isPinnedRight = columnPinning.right?.includes(columnName)\n\n if (isPinnedLeft || isPinnedRight) {\n column.pinned = true\n }\n\n // Set width if defined in state\n if (columnSizing[columnName] !== undefined) {\n column.width = columnSizing[columnName]\n }\n\n return column\n}\n\n/**\n * Converts TanStack table states back to OverviewSettings format\n *\n * Column ordering logic:\n * 1. Columns in columnOrder appear first (in their specified order)\n * 2. Remaining columns follow the order from allColumnIds\n * 3. Only columns with state (visibility, sizing, pinning) or in allColumnIds are included\n */\nexport function convertTanstackStatesToColumnConfig(\n states: ColumnsConfig,\n allColumnIds?: string[],\n): OverviewSettings {\n const {\n columnVisibility,\n columnPinning,\n columnOrder,\n columnSizing,\n sorting,\n groupBy,\n groupByConfig,\n rowHeight,\n } = states\n\n // Collect all columns that have any state\n const columnsWithState = collectColumnsWithState(\n columnVisibility,\n columnSizing,\n columnPinning,\n allColumnIds || [],\n )\n\n // Determine the final column order\n const finalColumnOrder = determineColumnOrder(columnOrder, allColumnIds || [], columnsWithState)\n\n // Create ColumnItemModel for each column in the determined order\n const columns: ColumnItemModel[] = finalColumnOrder.map((columnName) =>\n createColumnItem(columnName, columnVisibility, columnPinning, columnSizing),\n )\n\n // Build the result object\n const result: OverviewSettings = {\n columns,\n }\n\n // Add grouping information if present\n if (groupBy) {\n const id = Array.isArray(groupBy.id) ? groupBy.id[0] : groupBy.id\n result.groupBy = id || undefined\n result.groupSortByDesc = groupBy.desc ?? false\n } else {\n result.groupBy = undefined\n result.groupSortByDesc = undefined\n }\n\n if (groupByConfig?.showEmpty !== undefined) {\n result.showEmptyGroups = groupByConfig.showEmpty\n }\n\n // Add sorting information if present\n if (sorting) {\n if (sorting.length > 0) {\n // find the column that is being sorted\n const firstSort = sorting[0]\n result.sortBy = firstSort.id\n result.sortDesc = firstSort.desc\n } else {\n // remove sorting\n result.sortBy = undefined\n result.sortDesc = undefined\n }\n }\n\n // Add row height if present\n if (rowHeight !== undefined) {\n result.rowHeight = rowHeight\n }\n\n return result\n}\n"],"names":["convertColumnConfigToTanstackStates","settings","columns","groupByField","groupSortByDesc","showEmptyGroups","sortBy","sortDesc","rowHeight","columnVisibility","columnPinning","columnOrder","columnSizing","column","name","visible","pinned","width","sorting","groupBy","first","v","determineColumnOrder","allColumnIds","columnsWithState","orderedColumns","remainingColumns","columnId","collectColumnsWithState","col","createColumnItem","columnName","isPinnedLeft","isPinnedRight","convertTanstackStatesToColumnConfig","states","groupByConfig","result","id","firstSort"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"columnConfigConverter.cjs.js","sources":["../../../../src/util/columnConfigConverter.ts"],"sourcesContent":["import {\n VisibilityState,\n ColumnPinningState,\n ColumnOrderState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ColumnItemModel, OverviewSettings } from '@shared/api/generated/views'\nimport { ColumnsConfig, TableGroupBy } from '@shared/containers'\nimport { GroupByConfig } from '@shared/containers/ProjectTreeTable/components/GroupSettingsFallback'\nimport {\n SummaryCalc,\n SummaryFormat,\n RowScope,\n} from '@shared/containers/ProjectTreeTable/types/summaryTypes'\nimport {\n ROW_SELECTION_COLUMN_ID,\n DRAG_HANDLE_COLUMN_ID,\n} from '@shared/containers/ProjectTreeTable/constants'\n\n// These columns are always injected by ColumnSettingsProvider and must never be\n// persisted or loaded from saved view settings.\nconst INTERNAL_COLUMN_IDS = new Set([ROW_SELECTION_COLUMN_ID, DRAG_HANDLE_COLUMN_ID])\n\n// Backend doesn't store summary/summaryScope/summaryFormat on ColumnItemModel yet\ntype ColumnItem = ColumnItemModel & {\n summary?: SummaryCalc\n summaryScope?: RowScope\n summaryFormat?: SummaryFormat\n}\n\n/**\n * Converts ColumnItemModel array from OverviewSettings to TanStack table states\n */\nexport function convertColumnConfigToTanstackStates(settings: OverviewSettings): ColumnsConfig {\n const {\n columns = [],\n groupBy: groupByField,\n groupSortByDesc,\n showEmptyGroups,\n sortBy,\n sortDesc,\n rowHeight,\n } = settings || {}\n\n // Initialize state objects\n const columnVisibility: VisibilityState = {}\n const columnPinning: ColumnPinningState = { left: [], right: [] }\n const columnOrder: ColumnOrderState = []\n const columnSizing: ColumnSizingState = {}\n const columnSummaries: Record<string, SummaryCalc> = {}\n const columnSummaryScopes: Record<string, RowScope> = {}\n const columnSummaryFormats: Record<string, SummaryFormat> = {}\n\n // Process each column from the settings\n columns.forEach((column) => {\n const { name, visible, pinned, width, summary, summaryScope, summaryFormat } =\n column as ColumnItem\n\n // Skip internal columns — they are always injected by ColumnSettingsProvider\n if (INTERNAL_COLUMN_IDS.has(name)) return\n\n // Column visibility: undefined means hidden (opt-in model)\n columnVisibility[name] = visible ?? false\n\n // Column order: maintain the order from the settings\n columnOrder.push(name)\n\n // Column pinning: assuming pinned: true means left pinning\n if (pinned) {\n columnPinning.left?.push(name)\n }\n\n // Column sizing: set width if provided\n if (width !== undefined) {\n columnSizing[name] = width\n }\n\n // Column summary calc type\n if (summary) {\n columnSummaries[name] = summary\n }\n\n // Column summary row scope\n if (summaryScope) {\n columnSummaryScopes[name] = summaryScope\n }\n\n // Column summary display format\n if (summaryFormat) {\n columnSummaryFormats[name] = summaryFormat\n }\n })\n\n // Handle sorting\n const sorting: SortingState = sortBy ? [{ id: sortBy, desc: sortDesc || false }] : []\n\n // Handle grouping\n let groupBy: TableGroupBy | undefined\n if (typeof groupByField === 'string' && groupByField.length > 0) {\n groupBy = { id: groupByField, desc: groupSortByDesc ?? false }\n } else if (Array.isArray(groupByField)) {\n const first = groupByField.find((v) => typeof v === 'string' && v.length > 0)\n if (first) {\n groupBy = { id: first, desc: groupSortByDesc ?? false }\n } else {\n groupBy = undefined\n }\n } else {\n groupBy = undefined\n }\n\n const groupByConfig: GroupByConfig = {\n showEmpty: showEmptyGroups || false,\n entityType: '',\n }\n\n return {\n columnVisibility,\n columnPinning,\n columnOrder,\n columnSizing,\n columnSummaries,\n columnSummaryScopes,\n columnSummaryFormats,\n sorting,\n groupBy,\n groupByConfig,\n rowHeight: rowHeight ?? 34,\n }\n}\n\n/**\n * Determines the final column order based on columnOrder and allColumnIds\n * - Columns in columnOrder come first (in their specified order)\n * - Remaining columns follow the order from allColumnIds\n */\nfunction determineColumnOrder(\n columnOrder: ColumnOrderState,\n allColumnIds: string[],\n columnsWithState: Set<string>,\n): string[] {\n // Start with columns from columnOrder (these have explicit positioning)\n const orderedColumns = [...columnOrder]\n\n // Add remaining columns from allColumnIds that aren't already in columnOrder\n const remainingColumns = allColumnIds.filter(\n (columnId) => !columnOrder.includes(columnId) && columnsWithState.has(columnId),\n )\n\n return [...orderedColumns, ...remainingColumns]\n}\n\n/**\n * Collects all columns that have any state (visibility, sizing, pinning, etc.)\n */\nfunction collectColumnsWithState(\n columnVisibility: VisibilityState,\n columnSizing: ColumnSizingState,\n columnPinning: ColumnPinningState,\n allColumnIds: string[],\n): Set<string> {\n const columnsWithState = new Set<string>()\n\n // Add columns with visibility state\n Object.keys(columnVisibility).forEach((col) => columnsWithState.add(col))\n\n // Add columns with sizing state\n Object.keys(columnSizing).forEach((col) => columnsWithState.add(col))\n\n // Add pinned columns\n columnPinning.left?.forEach((col) => columnsWithState.add(col))\n columnPinning.right?.forEach((col) => columnsWithState.add(col))\n\n // Add any additional columns from allColumnIds\n allColumnIds?.forEach((col) => columnsWithState.add(col))\n\n return columnsWithState\n}\n\n/**\n * Creates a ColumnItemModel for a given column name with all applicable state\n */\nfunction createColumnItem(\n columnName: string,\n columnVisibility: VisibilityState,\n columnPinning: ColumnPinningState,\n columnSizing: ColumnSizingState,\n columnSummaries: Record<string, SummaryCalc>,\n columnSummaryScopes: Record<string, RowScope>,\n columnSummaryFormats: Record<string, SummaryFormat>,\n): ColumnItem {\n const column: ColumnItem = {\n name: columnName,\n visible: !!columnVisibility[columnName],\n }\n\n // Set summary calc type if chosen for this column\n if (columnSummaries[columnName]) {\n column.summary = columnSummaries[columnName]\n }\n\n // Set summary row scope if chosen for this column\n if (columnSummaryScopes[columnName]) {\n column.summaryScope = columnSummaryScopes[columnName]\n }\n\n // Set summary display format if chosen for this column\n if (columnSummaryFormats[columnName]) {\n column.summaryFormat = columnSummaryFormats[columnName]\n }\n\n // Set visibility if defined in state\n if (columnVisibility.hasOwnProperty(columnName)) {\n column.visible = columnVisibility[columnName]\n }\n\n // Set pinning if column is pinned\n const isPinnedLeft = columnPinning.left?.includes(columnName)\n const isPinnedRight = columnPinning.right?.includes(columnName)\n\n if (isPinnedLeft || isPinnedRight) {\n column.pinned = true\n }\n\n // Set width if defined in state\n if (columnSizing[columnName] !== undefined) {\n column.width = columnSizing[columnName]\n }\n\n return column\n}\n\n/**\n * Converts TanStack table states back to OverviewSettings format\n *\n * Column ordering logic:\n * 1. Columns in columnOrder appear first (in their specified order)\n * 2. Remaining columns follow the order from allColumnIds\n * 3. Only columns with state (visibility, sizing, pinning) or in allColumnIds are included\n */\nexport function convertTanstackStatesToColumnConfig(\n states: ColumnsConfig,\n allColumnIds?: string[],\n): OverviewSettings {\n const {\n columnVisibility,\n columnPinning,\n columnOrder,\n columnSizing,\n columnSummaries = {},\n columnSummaryScopes = {},\n columnSummaryFormats = {},\n sorting,\n groupBy,\n groupByConfig,\n rowHeight,\n } = states\n\n // Collect all columns that have any state\n const columnsWithState = collectColumnsWithState(\n columnVisibility,\n columnSizing,\n columnPinning,\n allColumnIds || [],\n )\n\n // Determine the final column order, excluding internal columns\n const finalColumnOrder = determineColumnOrder(\n columnOrder,\n allColumnIds || [],\n columnsWithState,\n ).filter((id) => !INTERNAL_COLUMN_IDS.has(id))\n\n // Create ColumnItemModel for each column in the determined order\n const columns: ColumnItem[] = finalColumnOrder.map((columnName) =>\n createColumnItem(\n columnName,\n columnVisibility,\n columnPinning,\n columnSizing,\n columnSummaries,\n columnSummaryScopes,\n columnSummaryFormats,\n ),\n )\n\n // Build the result object\n const result: OverviewSettings = {\n columns,\n }\n\n // Add grouping information if present\n if (groupBy) {\n const id = Array.isArray(groupBy.id) ? groupBy.id[0] : groupBy.id\n result.groupBy = id || undefined\n result.groupSortByDesc = groupBy.desc ?? false\n } else {\n result.groupBy = undefined\n result.groupSortByDesc = undefined\n }\n\n if (groupByConfig?.showEmpty !== undefined) {\n result.showEmptyGroups = groupByConfig.showEmpty\n }\n\n // Add sorting information if present\n if (sorting) {\n if (sorting.length > 0) {\n // find the column that is being sorted\n const firstSort = sorting[0]\n result.sortBy = firstSort.id\n result.sortDesc = firstSort.desc\n } else {\n // remove sorting\n result.sortBy = undefined\n result.sortDesc = undefined\n }\n }\n\n // Add row height if present\n if (rowHeight !== undefined) {\n result.rowHeight = rowHeight\n }\n\n return result\n}\n"],"names":["INTERNAL_COLUMN_IDS","ROW_SELECTION_COLUMN_ID","DRAG_HANDLE_COLUMN_ID","convertColumnConfigToTanstackStates","settings","columns","groupByField","groupSortByDesc","showEmptyGroups","sortBy","sortDesc","rowHeight","columnVisibility","columnPinning","columnOrder","columnSizing","columnSummaries","columnSummaryScopes","columnSummaryFormats","column","name","visible","pinned","width","summary","summaryScope","summaryFormat","sorting","groupBy","first","v","determineColumnOrder","allColumnIds","columnsWithState","orderedColumns","remainingColumns","columnId","collectColumnsWithState","col","createColumnItem","columnName","isPinnedLeft","isPinnedRight","convertTanstackStatesToColumnConfig","states","groupByConfig","result","id","firstSort"],"mappings":"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"}
|
|
@@ -1,93 +1,114 @@
|
|
|
1
|
-
|
|
1
|
+
import { ROW_SELECTION_COLUMN_ID as A, DRAG_HANDLE_COLUMN_ID as L } from "../containers/ProjectTreeTable/constants.es.js";
|
|
2
|
+
const O = /* @__PURE__ */ new Set([A, L]);
|
|
3
|
+
function F(t) {
|
|
2
4
|
const {
|
|
3
|
-
columns:
|
|
4
|
-
groupBy:
|
|
5
|
+
columns: e = [],
|
|
6
|
+
groupBy: i,
|
|
5
7
|
groupSortByDesc: n,
|
|
6
|
-
showEmptyGroups:
|
|
7
|
-
sortBy:
|
|
8
|
-
sortDesc:
|
|
9
|
-
rowHeight:
|
|
10
|
-
} =
|
|
11
|
-
|
|
12
|
-
const { name:
|
|
13
|
-
l[
|
|
8
|
+
showEmptyGroups: r,
|
|
9
|
+
sortBy: o,
|
|
10
|
+
sortDesc: y,
|
|
11
|
+
rowHeight: c
|
|
12
|
+
} = t || {}, l = {}, u = { left: [], right: [] }, a = [], g = {}, h = {}, p = {}, S = {};
|
|
13
|
+
e.forEach((m) => {
|
|
14
|
+
const { name: f, visible: D, pinned: _, width: v, summary: B, summaryScope: E, summaryFormat: w } = m;
|
|
15
|
+
O.has(f) || (l[f] = D ?? !1, a.push(f), _ && u.left?.push(f), v !== void 0 && (g[f] = v), B && (h[f] = B), E && (p[f] = E), w && (S[f] = w));
|
|
14
16
|
});
|
|
15
|
-
const
|
|
16
|
-
let
|
|
17
|
-
if (typeof
|
|
18
|
-
|
|
19
|
-
else if (Array.isArray(
|
|
20
|
-
const
|
|
21
|
-
|
|
17
|
+
const C = o ? [{ id: o, desc: y || !1 }] : [];
|
|
18
|
+
let s;
|
|
19
|
+
if (typeof i == "string" && i.length > 0)
|
|
20
|
+
s = { id: i, desc: n ?? !1 };
|
|
21
|
+
else if (Array.isArray(i)) {
|
|
22
|
+
const m = i.find((f) => typeof f == "string" && f.length > 0);
|
|
23
|
+
m ? s = { id: m, desc: n ?? !1 } : s = void 0;
|
|
22
24
|
} else
|
|
23
|
-
|
|
25
|
+
s = void 0;
|
|
24
26
|
return {
|
|
25
27
|
columnVisibility: l,
|
|
26
|
-
columnPinning:
|
|
28
|
+
columnPinning: u,
|
|
27
29
|
columnOrder: a,
|
|
28
|
-
columnSizing:
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
columnSizing: g,
|
|
31
|
+
columnSummaries: h,
|
|
32
|
+
columnSummaryScopes: p,
|
|
33
|
+
columnSummaryFormats: S,
|
|
34
|
+
sorting: C,
|
|
35
|
+
groupBy: s,
|
|
31
36
|
groupByConfig: {
|
|
32
|
-
showEmpty:
|
|
37
|
+
showEmpty: r || !1,
|
|
33
38
|
entityType: ""
|
|
34
39
|
},
|
|
35
|
-
rowHeight:
|
|
40
|
+
rowHeight: c ?? 34
|
|
36
41
|
};
|
|
37
42
|
}
|
|
38
|
-
function
|
|
39
|
-
const n = [...
|
|
40
|
-
(
|
|
43
|
+
function T(t, e, i) {
|
|
44
|
+
const n = [...t], r = e.filter(
|
|
45
|
+
(o) => !t.includes(o) && i.has(o)
|
|
41
46
|
);
|
|
42
|
-
return [...n, ...
|
|
47
|
+
return [...n, ...r];
|
|
43
48
|
}
|
|
44
|
-
function
|
|
45
|
-
const
|
|
46
|
-
return Object.keys(
|
|
49
|
+
function b(t, e, i, n) {
|
|
50
|
+
const r = /* @__PURE__ */ new Set();
|
|
51
|
+
return Object.keys(t).forEach((o) => r.add(o)), Object.keys(e).forEach((o) => r.add(o)), i.left?.forEach((o) => r.add(o)), i.right?.forEach((o) => r.add(o)), n?.forEach((o) => r.add(o)), r;
|
|
47
52
|
}
|
|
48
|
-
function
|
|
49
|
-
const
|
|
50
|
-
name:
|
|
53
|
+
function H(t, e, i, n, r, o, y) {
|
|
54
|
+
const c = {
|
|
55
|
+
name: t,
|
|
56
|
+
visible: !!e[t]
|
|
51
57
|
};
|
|
52
|
-
r.hasOwnProperty(
|
|
53
|
-
const
|
|
54
|
-
return (
|
|
58
|
+
r[t] && (c.summary = r[t]), o[t] && (c.summaryScope = o[t]), y[t] && (c.summaryFormat = y[t]), e.hasOwnProperty(t) && (c.visible = e[t]);
|
|
59
|
+
const l = i.left?.includes(t), u = i.right?.includes(t);
|
|
60
|
+
return (l || u) && (c.pinned = !0), n[t] !== void 0 && (c.width = n[t]), c;
|
|
55
61
|
}
|
|
56
|
-
function
|
|
62
|
+
function I(t, e) {
|
|
57
63
|
const {
|
|
58
|
-
columnVisibility:
|
|
64
|
+
columnVisibility: i,
|
|
59
65
|
columnPinning: n,
|
|
60
|
-
columnOrder:
|
|
61
|
-
columnSizing:
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
66
|
+
columnOrder: r,
|
|
67
|
+
columnSizing: o,
|
|
68
|
+
columnSummaries: y = {},
|
|
69
|
+
columnSummaryScopes: c = {},
|
|
70
|
+
columnSummaryFormats: l = {},
|
|
71
|
+
sorting: u,
|
|
72
|
+
groupBy: a,
|
|
73
|
+
groupByConfig: g,
|
|
74
|
+
rowHeight: h
|
|
75
|
+
} = t, p = b(
|
|
76
|
+
i,
|
|
77
|
+
o,
|
|
69
78
|
n,
|
|
70
|
-
|
|
71
|
-
),
|
|
72
|
-
columns:
|
|
73
|
-
|
|
79
|
+
e || []
|
|
80
|
+
), s = {
|
|
81
|
+
columns: T(
|
|
82
|
+
r,
|
|
83
|
+
e || [],
|
|
84
|
+
p
|
|
85
|
+
).filter((d) => !O.has(d)).map(
|
|
86
|
+
(d) => H(
|
|
87
|
+
d,
|
|
88
|
+
i,
|
|
89
|
+
n,
|
|
90
|
+
o,
|
|
91
|
+
y,
|
|
92
|
+
c,
|
|
93
|
+
l
|
|
94
|
+
)
|
|
74
95
|
)
|
|
75
96
|
};
|
|
76
|
-
if (
|
|
77
|
-
const
|
|
78
|
-
|
|
97
|
+
if (a) {
|
|
98
|
+
const d = Array.isArray(a.id) ? a.id[0] : a.id;
|
|
99
|
+
s.groupBy = d || void 0, s.groupSortByDesc = a.desc ?? !1;
|
|
79
100
|
} else
|
|
80
|
-
|
|
81
|
-
if (
|
|
82
|
-
if (
|
|
83
|
-
const
|
|
84
|
-
|
|
101
|
+
s.groupBy = void 0, s.groupSortByDesc = void 0;
|
|
102
|
+
if (g?.showEmpty !== void 0 && (s.showEmptyGroups = g.showEmpty), u)
|
|
103
|
+
if (u.length > 0) {
|
|
104
|
+
const d = u[0];
|
|
105
|
+
s.sortBy = d.id, s.sortDesc = d.desc;
|
|
85
106
|
} else
|
|
86
|
-
|
|
87
|
-
return
|
|
107
|
+
s.sortBy = void 0, s.sortDesc = void 0;
|
|
108
|
+
return h !== void 0 && (s.rowHeight = h), s;
|
|
88
109
|
}
|
|
89
110
|
export {
|
|
90
|
-
|
|
91
|
-
|
|
111
|
+
F as convertColumnConfigToTanstackStates,
|
|
112
|
+
I as convertTanstackStatesToColumnConfig
|
|
92
113
|
};
|
|
93
114
|
//# sourceMappingURL=columnConfigConverter.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnConfigConverter.es.js","sources":["../../../../src/util/columnConfigConverter.ts"],"sourcesContent":["import {\n VisibilityState,\n ColumnPinningState,\n ColumnOrderState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ColumnItemModel, OverviewSettings } from '@shared/api/generated/views'\nimport { ColumnsConfig, TableGroupBy } from '@shared/containers'\nimport { GroupByConfig } from '@shared/containers/ProjectTreeTable/components/GroupSettingsFallback'\n\n/**\n * Converts ColumnItemModel array from OverviewSettings to TanStack table states\n */\nexport function convertColumnConfigToTanstackStates(settings: OverviewSettings): ColumnsConfig {\n const {\n columns = [],\n groupBy: groupByField,\n groupSortByDesc,\n showEmptyGroups,\n sortBy,\n sortDesc,\n rowHeight,\n } = settings || {}\n\n // Initialize state objects\n const columnVisibility: VisibilityState = {}\n const columnPinning: ColumnPinningState = { left: [], right: [] }\n const columnOrder: ColumnOrderState = []\n const columnSizing: ColumnSizingState = {}\n\n // Process each column from the settings\n columns.forEach((column) => {\n const { name, visible, pinned, width } = column\n\n // Column visibility: undefined means hidden (opt-in model)\n columnVisibility[name] = visible ?? false\n\n // Column order: maintain the order from the settings\n columnOrder.push(name)\n\n // Column pinning: assuming pinned: true means left pinning\n if (pinned) {\n columnPinning.left?.push(name)\n }\n\n // Column sizing: set width if provided\n if (width !== undefined) {\n columnSizing[name] = width\n }\n })\n\n // Handle sorting\n const sorting: SortingState = sortBy ? [{ id: sortBy, desc: sortDesc || false }] : []\n\n // Handle grouping\n let groupBy: TableGroupBy | undefined\n if (typeof groupByField === 'string' && groupByField.length > 0) {\n groupBy = { id: groupByField, desc: groupSortByDesc ?? false }\n } else if (Array.isArray(groupByField)) {\n const first = groupByField.find((v) => typeof v === 'string' && v.length > 0)\n if (first) {\n groupBy = { id: first, desc: groupSortByDesc ?? false }\n } else {\n groupBy = undefined\n }\n } else {\n groupBy = undefined\n }\n\n const groupByConfig: GroupByConfig = {\n showEmpty: showEmptyGroups || false,\n entityType: '',\n }\n\n return {\n columnVisibility,\n columnPinning,\n columnOrder,\n columnSizing,\n sorting,\n groupBy,\n groupByConfig,\n rowHeight: rowHeight ?? 34,\n }\n}\n\n/**\n * Determines the final column order based on columnOrder and allColumnIds\n * - Columns in columnOrder come first (in their specified order)\n * - Remaining columns follow the order from allColumnIds\n */\nfunction determineColumnOrder(\n columnOrder: ColumnOrderState,\n allColumnIds: string[],\n columnsWithState: Set<string>,\n): string[] {\n // Start with columns from columnOrder (these have explicit positioning)\n const orderedColumns = [...columnOrder]\n\n // Add remaining columns from allColumnIds that aren't already in columnOrder\n const remainingColumns = allColumnIds.filter(\n (columnId) => !columnOrder.includes(columnId) && columnsWithState.has(columnId),\n )\n\n return [...orderedColumns, ...remainingColumns]\n}\n\n/**\n * Collects all columns that have any state (visibility, sizing, pinning, etc.)\n */\nfunction collectColumnsWithState(\n columnVisibility: VisibilityState,\n columnSizing: ColumnSizingState,\n columnPinning: ColumnPinningState,\n allColumnIds: string[],\n): Set<string> {\n const columnsWithState = new Set<string>()\n\n // Add columns with visibility state\n Object.keys(columnVisibility).forEach((col) => columnsWithState.add(col))\n\n // Add columns with sizing state\n Object.keys(columnSizing).forEach((col) => columnsWithState.add(col))\n\n // Add pinned columns\n columnPinning.left?.forEach((col) => columnsWithState.add(col))\n columnPinning.right?.forEach((col) => columnsWithState.add(col))\n\n // Add any additional columns from allColumnIds\n allColumnIds?.forEach((col) => columnsWithState.add(col))\n\n return columnsWithState\n}\n\n/**\n * Creates a ColumnItemModel for a given column name with all applicable state\n */\nfunction createColumnItem(\n columnName: string,\n columnVisibility: VisibilityState,\n columnPinning: ColumnPinningState,\n columnSizing: ColumnSizingState,\n): ColumnItemModel {\n const column: ColumnItemModel = {\n name: columnName,\n }\n\n // Set visibility if defined in state\n if (columnVisibility.hasOwnProperty(columnName)) {\n column.visible = columnVisibility[columnName]\n }\n\n // Set pinning if column is pinned\n const isPinnedLeft = columnPinning.left?.includes(columnName)\n const isPinnedRight = columnPinning.right?.includes(columnName)\n\n if (isPinnedLeft || isPinnedRight) {\n column.pinned = true\n }\n\n // Set width if defined in state\n if (columnSizing[columnName] !== undefined) {\n column.width = columnSizing[columnName]\n }\n\n return column\n}\n\n/**\n * Converts TanStack table states back to OverviewSettings format\n *\n * Column ordering logic:\n * 1. Columns in columnOrder appear first (in their specified order)\n * 2. Remaining columns follow the order from allColumnIds\n * 3. Only columns with state (visibility, sizing, pinning) or in allColumnIds are included\n */\nexport function convertTanstackStatesToColumnConfig(\n states: ColumnsConfig,\n allColumnIds?: string[],\n): OverviewSettings {\n const {\n columnVisibility,\n columnPinning,\n columnOrder,\n columnSizing,\n sorting,\n groupBy,\n groupByConfig,\n rowHeight,\n } = states\n\n // Collect all columns that have any state\n const columnsWithState = collectColumnsWithState(\n columnVisibility,\n columnSizing,\n columnPinning,\n allColumnIds || [],\n )\n\n // Determine the final column order\n const finalColumnOrder = determineColumnOrder(columnOrder, allColumnIds || [], columnsWithState)\n\n // Create ColumnItemModel for each column in the determined order\n const columns: ColumnItemModel[] = finalColumnOrder.map((columnName) =>\n createColumnItem(columnName, columnVisibility, columnPinning, columnSizing),\n )\n\n // Build the result object\n const result: OverviewSettings = {\n columns,\n }\n\n // Add grouping information if present\n if (groupBy) {\n const id = Array.isArray(groupBy.id) ? groupBy.id[0] : groupBy.id\n result.groupBy = id || undefined\n result.groupSortByDesc = groupBy.desc ?? false\n } else {\n result.groupBy = undefined\n result.groupSortByDesc = undefined\n }\n\n if (groupByConfig?.showEmpty !== undefined) {\n result.showEmptyGroups = groupByConfig.showEmpty\n }\n\n // Add sorting information if present\n if (sorting) {\n if (sorting.length > 0) {\n // find the column that is being sorted\n const firstSort = sorting[0]\n result.sortBy = firstSort.id\n result.sortDesc = firstSort.desc\n } else {\n // remove sorting\n result.sortBy = undefined\n result.sortDesc = undefined\n }\n }\n\n // Add row height if present\n if (rowHeight !== undefined) {\n result.rowHeight = rowHeight\n }\n\n return result\n}\n"],"names":["convertColumnConfigToTanstackStates","settings","columns","groupByField","groupSortByDesc","showEmptyGroups","sortBy","sortDesc","rowHeight","columnVisibility","columnPinning","columnOrder","columnSizing","column","name","visible","pinned","width","sorting","groupBy","first","v","determineColumnOrder","allColumnIds","columnsWithState","orderedColumns","remainingColumns","columnId","collectColumnsWithState","col","createColumnItem","columnName","isPinnedLeft","isPinnedRight","convertTanstackStatesToColumnConfig","states","groupByConfig","result","id","firstSort"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"columnConfigConverter.es.js","sources":["../../../../src/util/columnConfigConverter.ts"],"sourcesContent":["import {\n VisibilityState,\n ColumnPinningState,\n ColumnOrderState,\n ColumnSizingState,\n SortingState,\n} from '@tanstack/react-table'\nimport { ColumnItemModel, OverviewSettings } from '@shared/api/generated/views'\nimport { ColumnsConfig, TableGroupBy } from '@shared/containers'\nimport { GroupByConfig } from '@shared/containers/ProjectTreeTable/components/GroupSettingsFallback'\nimport {\n SummaryCalc,\n SummaryFormat,\n RowScope,\n} from '@shared/containers/ProjectTreeTable/types/summaryTypes'\nimport {\n ROW_SELECTION_COLUMN_ID,\n DRAG_HANDLE_COLUMN_ID,\n} from '@shared/containers/ProjectTreeTable/constants'\n\n// These columns are always injected by ColumnSettingsProvider and must never be\n// persisted or loaded from saved view settings.\nconst INTERNAL_COLUMN_IDS = new Set([ROW_SELECTION_COLUMN_ID, DRAG_HANDLE_COLUMN_ID])\n\n// Backend doesn't store summary/summaryScope/summaryFormat on ColumnItemModel yet\ntype ColumnItem = ColumnItemModel & {\n summary?: SummaryCalc\n summaryScope?: RowScope\n summaryFormat?: SummaryFormat\n}\n\n/**\n * Converts ColumnItemModel array from OverviewSettings to TanStack table states\n */\nexport function convertColumnConfigToTanstackStates(settings: OverviewSettings): ColumnsConfig {\n const {\n columns = [],\n groupBy: groupByField,\n groupSortByDesc,\n showEmptyGroups,\n sortBy,\n sortDesc,\n rowHeight,\n } = settings || {}\n\n // Initialize state objects\n const columnVisibility: VisibilityState = {}\n const columnPinning: ColumnPinningState = { left: [], right: [] }\n const columnOrder: ColumnOrderState = []\n const columnSizing: ColumnSizingState = {}\n const columnSummaries: Record<string, SummaryCalc> = {}\n const columnSummaryScopes: Record<string, RowScope> = {}\n const columnSummaryFormats: Record<string, SummaryFormat> = {}\n\n // Process each column from the settings\n columns.forEach((column) => {\n const { name, visible, pinned, width, summary, summaryScope, summaryFormat } =\n column as ColumnItem\n\n // Skip internal columns — they are always injected by ColumnSettingsProvider\n if (INTERNAL_COLUMN_IDS.has(name)) return\n\n // Column visibility: undefined means hidden (opt-in model)\n columnVisibility[name] = visible ?? false\n\n // Column order: maintain the order from the settings\n columnOrder.push(name)\n\n // Column pinning: assuming pinned: true means left pinning\n if (pinned) {\n columnPinning.left?.push(name)\n }\n\n // Column sizing: set width if provided\n if (width !== undefined) {\n columnSizing[name] = width\n }\n\n // Column summary calc type\n if (summary) {\n columnSummaries[name] = summary\n }\n\n // Column summary row scope\n if (summaryScope) {\n columnSummaryScopes[name] = summaryScope\n }\n\n // Column summary display format\n if (summaryFormat) {\n columnSummaryFormats[name] = summaryFormat\n }\n })\n\n // Handle sorting\n const sorting: SortingState = sortBy ? [{ id: sortBy, desc: sortDesc || false }] : []\n\n // Handle grouping\n let groupBy: TableGroupBy | undefined\n if (typeof groupByField === 'string' && groupByField.length > 0) {\n groupBy = { id: groupByField, desc: groupSortByDesc ?? false }\n } else if (Array.isArray(groupByField)) {\n const first = groupByField.find((v) => typeof v === 'string' && v.length > 0)\n if (first) {\n groupBy = { id: first, desc: groupSortByDesc ?? false }\n } else {\n groupBy = undefined\n }\n } else {\n groupBy = undefined\n }\n\n const groupByConfig: GroupByConfig = {\n showEmpty: showEmptyGroups || false,\n entityType: '',\n }\n\n return {\n columnVisibility,\n columnPinning,\n columnOrder,\n columnSizing,\n columnSummaries,\n columnSummaryScopes,\n columnSummaryFormats,\n sorting,\n groupBy,\n groupByConfig,\n rowHeight: rowHeight ?? 34,\n }\n}\n\n/**\n * Determines the final column order based on columnOrder and allColumnIds\n * - Columns in columnOrder come first (in their specified order)\n * - Remaining columns follow the order from allColumnIds\n */\nfunction determineColumnOrder(\n columnOrder: ColumnOrderState,\n allColumnIds: string[],\n columnsWithState: Set<string>,\n): string[] {\n // Start with columns from columnOrder (these have explicit positioning)\n const orderedColumns = [...columnOrder]\n\n // Add remaining columns from allColumnIds that aren't already in columnOrder\n const remainingColumns = allColumnIds.filter(\n (columnId) => !columnOrder.includes(columnId) && columnsWithState.has(columnId),\n )\n\n return [...orderedColumns, ...remainingColumns]\n}\n\n/**\n * Collects all columns that have any state (visibility, sizing, pinning, etc.)\n */\nfunction collectColumnsWithState(\n columnVisibility: VisibilityState,\n columnSizing: ColumnSizingState,\n columnPinning: ColumnPinningState,\n allColumnIds: string[],\n): Set<string> {\n const columnsWithState = new Set<string>()\n\n // Add columns with visibility state\n Object.keys(columnVisibility).forEach((col) => columnsWithState.add(col))\n\n // Add columns with sizing state\n Object.keys(columnSizing).forEach((col) => columnsWithState.add(col))\n\n // Add pinned columns\n columnPinning.left?.forEach((col) => columnsWithState.add(col))\n columnPinning.right?.forEach((col) => columnsWithState.add(col))\n\n // Add any additional columns from allColumnIds\n allColumnIds?.forEach((col) => columnsWithState.add(col))\n\n return columnsWithState\n}\n\n/**\n * Creates a ColumnItemModel for a given column name with all applicable state\n */\nfunction createColumnItem(\n columnName: string,\n columnVisibility: VisibilityState,\n columnPinning: ColumnPinningState,\n columnSizing: ColumnSizingState,\n columnSummaries: Record<string, SummaryCalc>,\n columnSummaryScopes: Record<string, RowScope>,\n columnSummaryFormats: Record<string, SummaryFormat>,\n): ColumnItem {\n const column: ColumnItem = {\n name: columnName,\n visible: !!columnVisibility[columnName],\n }\n\n // Set summary calc type if chosen for this column\n if (columnSummaries[columnName]) {\n column.summary = columnSummaries[columnName]\n }\n\n // Set summary row scope if chosen for this column\n if (columnSummaryScopes[columnName]) {\n column.summaryScope = columnSummaryScopes[columnName]\n }\n\n // Set summary display format if chosen for this column\n if (columnSummaryFormats[columnName]) {\n column.summaryFormat = columnSummaryFormats[columnName]\n }\n\n // Set visibility if defined in state\n if (columnVisibility.hasOwnProperty(columnName)) {\n column.visible = columnVisibility[columnName]\n }\n\n // Set pinning if column is pinned\n const isPinnedLeft = columnPinning.left?.includes(columnName)\n const isPinnedRight = columnPinning.right?.includes(columnName)\n\n if (isPinnedLeft || isPinnedRight) {\n column.pinned = true\n }\n\n // Set width if defined in state\n if (columnSizing[columnName] !== undefined) {\n column.width = columnSizing[columnName]\n }\n\n return column\n}\n\n/**\n * Converts TanStack table states back to OverviewSettings format\n *\n * Column ordering logic:\n * 1. Columns in columnOrder appear first (in their specified order)\n * 2. Remaining columns follow the order from allColumnIds\n * 3. Only columns with state (visibility, sizing, pinning) or in allColumnIds are included\n */\nexport function convertTanstackStatesToColumnConfig(\n states: ColumnsConfig,\n allColumnIds?: string[],\n): OverviewSettings {\n const {\n columnVisibility,\n columnPinning,\n columnOrder,\n columnSizing,\n columnSummaries = {},\n columnSummaryScopes = {},\n columnSummaryFormats = {},\n sorting,\n groupBy,\n groupByConfig,\n rowHeight,\n } = states\n\n // Collect all columns that have any state\n const columnsWithState = collectColumnsWithState(\n columnVisibility,\n columnSizing,\n columnPinning,\n allColumnIds || [],\n )\n\n // Determine the final column order, excluding internal columns\n const finalColumnOrder = determineColumnOrder(\n columnOrder,\n allColumnIds || [],\n columnsWithState,\n ).filter((id) => !INTERNAL_COLUMN_IDS.has(id))\n\n // Create ColumnItemModel for each column in the determined order\n const columns: ColumnItem[] = finalColumnOrder.map((columnName) =>\n createColumnItem(\n columnName,\n columnVisibility,\n columnPinning,\n columnSizing,\n columnSummaries,\n columnSummaryScopes,\n columnSummaryFormats,\n ),\n )\n\n // Build the result object\n const result: OverviewSettings = {\n columns,\n }\n\n // Add grouping information if present\n if (groupBy) {\n const id = Array.isArray(groupBy.id) ? groupBy.id[0] : groupBy.id\n result.groupBy = id || undefined\n result.groupSortByDesc = groupBy.desc ?? false\n } else {\n result.groupBy = undefined\n result.groupSortByDesc = undefined\n }\n\n if (groupByConfig?.showEmpty !== undefined) {\n result.showEmptyGroups = groupByConfig.showEmpty\n }\n\n // Add sorting information if present\n if (sorting) {\n if (sorting.length > 0) {\n // find the column that is being sorted\n const firstSort = sorting[0]\n result.sortBy = firstSort.id\n result.sortDesc = firstSort.desc\n } else {\n // remove sorting\n result.sortBy = undefined\n result.sortDesc = undefined\n }\n }\n\n // Add row height if present\n if (rowHeight !== undefined) {\n result.rowHeight = rowHeight\n }\n\n return result\n}\n"],"names":["INTERNAL_COLUMN_IDS","ROW_SELECTION_COLUMN_ID","DRAG_HANDLE_COLUMN_ID","convertColumnConfigToTanstackStates","settings","columns","groupByField","groupSortByDesc","showEmptyGroups","sortBy","sortDesc","rowHeight","columnVisibility","columnPinning","columnOrder","columnSizing","columnSummaries","columnSummaryScopes","columnSummaryFormats","column","name","visible","pinned","width","summary","summaryScope","summaryFormat","sorting","groupBy","first","v","determineColumnOrder","allColumnIds","columnsWithState","orderedColumns","remainingColumns","columnId","collectColumnsWithState","col","createColumnItem","columnName","isPinnedLeft","isPinnedRight","convertTanstackStatesToColumnConfig","states","groupByConfig","result","id","firstSort"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const $=({projectName:r,entityType:l,entityId:n,thumbnailId:u,thumbnailHash:t})=>{if(!r)return null;if(l==="project")return i(r,t);if(!u&&(!n||!l))return null;const s=t?`?hash=${t}`:"";return n&&l?`/api/projects/${r}/${l}s/${n}/thumbnail${s}`:`/api/projects/${r}/thumbnails/${u}${s}`},i=(r,l)=>{if(!r)return null;const n=l?`?hash=${l}`:"";return`/api/projects/${r}/thumbnail${n}`};exports.getEntityThumbnailUrl=$;exports.getProjectThumbnailUrl=i;
|
|
2
|
+
//# sourceMappingURL=getThumbnailUrl.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getThumbnailUrl.cjs.js","sources":["../../../../src/util/getThumbnailUrl.ts"],"sourcesContent":["export interface GetEntityThumbnailUrlParams {\n projectName: string\n entityType?: string // 'folder' | 'task' | 'version' | 'project' | etc.\n entityId?: string\n thumbnailId?: string // fallback path when no entityId/entityType is available\n thumbnailHash?: string // appended as ?hash= for cache busting; omitted if not provided\n}\n\n/**\n * Builds a thumbnail URL for a project entity.\n *\n * Always uses `?hash=<thumbnailHash>` for cache busting when a hash is available.\n * If no hash is provided the URL is returned without any query parameter — never\n * falls back to `updatedAt` or similar fields.\n *\n * Returns `null` when the required identity information is missing.\n */\nexport const getEntityThumbnailUrl = ({\n projectName,\n entityType,\n entityId,\n thumbnailId,\n thumbnailHash,\n}: GetEntityThumbnailUrlParams): string | null => {\n if (!projectName) return null\n\n if (entityType === 'project') {\n return getProjectThumbnailUrl(projectName, thumbnailHash)\n }\n\n if (!thumbnailId && (!entityId || !entityType)) return null\n\n const hashParam = thumbnailHash ? `?hash=${thumbnailHash}` : ''\n\n if (entityId && entityType) {\n return `/api/projects/${projectName}/${entityType}s/${entityId}/thumbnail${hashParam}`\n }\n\n // fallback: look up by thumbnailId\n return `/api/projects/${projectName}/thumbnails/${thumbnailId}${hashParam}`\n}\n\nexport const getProjectThumbnailUrl = (projectName: string, thumbnailHash?: string) => {\n if (!projectName) return null\n const hashParam = thumbnailHash ? `?hash=${thumbnailHash}` : ''\n return `/api/projects/${projectName}/thumbnail${hashParam}`\n}\n"],"names":["getEntityThumbnailUrl","projectName","entityType","entityId","thumbnailId","thumbnailHash","getProjectThumbnailUrl","hashParam"],"mappings":"gFAiBO,MAAMA,EAAwB,CAAC,CACpC,YAAAC,EACA,WAAAC,EACA,SAAAC,EACA,YAAAC,EACA,cAAAC,CACF,IAAkD,CAChD,GAAI,CAACJ,EAAa,OAAO,KAEzB,GAAIC,IAAe,UACjB,OAAOI,EAAuBL,EAAaI,CAAa,EAG1D,GAAI,CAACD,IAAgB,CAACD,GAAY,CAACD,GAAa,OAAO,KAEvD,MAAMK,EAAYF,EAAgB,SAASA,CAAa,GAAK,GAE7D,OAAIF,GAAYD,EACP,iBAAiBD,CAAW,IAAIC,CAAU,KAAKC,CAAQ,aAAaI,CAAS,GAI/E,iBAAiBN,CAAW,eAAeG,CAAW,GAAGG,CAAS,EAC3E,EAEaD,EAAyB,CAACL,EAAqBI,IAA2B,CACrF,GAAI,CAACJ,EAAa,OAAO,KACzB,MAAMM,EAAYF,EAAgB,SAASA,CAAa,GAAK,GAC7D,MAAO,iBAAiBJ,CAAW,aAAaM,CAAS,EAC3D"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
const o = ({
|
|
2
|
+
projectName: r,
|
|
3
|
+
entityType: n,
|
|
4
|
+
entityId: u,
|
|
5
|
+
thumbnailId: s,
|
|
6
|
+
thumbnailHash: $
|
|
7
|
+
}) => {
|
|
8
|
+
if (!r) return null;
|
|
9
|
+
if (n === "project")
|
|
10
|
+
return h(r, $);
|
|
11
|
+
if (!s && (!u || !n)) return null;
|
|
12
|
+
const l = $ ? `?hash=${$}` : "";
|
|
13
|
+
return u && n ? `/api/projects/${r}/${n}s/${u}/thumbnail${l}` : `/api/projects/${r}/thumbnails/${s}${l}`;
|
|
14
|
+
}, h = (r, n) => {
|
|
15
|
+
if (!r) return null;
|
|
16
|
+
const u = n ? `?hash=${n}` : "";
|
|
17
|
+
return `/api/projects/${r}/thumbnail${u}`;
|
|
18
|
+
};
|
|
19
|
+
export {
|
|
20
|
+
o as getEntityThumbnailUrl,
|
|
21
|
+
h as getProjectThumbnailUrl
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=getThumbnailUrl.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getThumbnailUrl.es.js","sources":["../../../../src/util/getThumbnailUrl.ts"],"sourcesContent":["export interface GetEntityThumbnailUrlParams {\n projectName: string\n entityType?: string // 'folder' | 'task' | 'version' | 'project' | etc.\n entityId?: string\n thumbnailId?: string // fallback path when no entityId/entityType is available\n thumbnailHash?: string // appended as ?hash= for cache busting; omitted if not provided\n}\n\n/**\n * Builds a thumbnail URL for a project entity.\n *\n * Always uses `?hash=<thumbnailHash>` for cache busting when a hash is available.\n * If no hash is provided the URL is returned without any query parameter — never\n * falls back to `updatedAt` or similar fields.\n *\n * Returns `null` when the required identity information is missing.\n */\nexport const getEntityThumbnailUrl = ({\n projectName,\n entityType,\n entityId,\n thumbnailId,\n thumbnailHash,\n}: GetEntityThumbnailUrlParams): string | null => {\n if (!projectName) return null\n\n if (entityType === 'project') {\n return getProjectThumbnailUrl(projectName, thumbnailHash)\n }\n\n if (!thumbnailId && (!entityId || !entityType)) return null\n\n const hashParam = thumbnailHash ? `?hash=${thumbnailHash}` : ''\n\n if (entityId && entityType) {\n return `/api/projects/${projectName}/${entityType}s/${entityId}/thumbnail${hashParam}`\n }\n\n // fallback: look up by thumbnailId\n return `/api/projects/${projectName}/thumbnails/${thumbnailId}${hashParam}`\n}\n\nexport const getProjectThumbnailUrl = (projectName: string, thumbnailHash?: string) => {\n if (!projectName) return null\n const hashParam = thumbnailHash ? `?hash=${thumbnailHash}` : ''\n return `/api/projects/${projectName}/thumbnail${hashParam}`\n}\n"],"names":["getEntityThumbnailUrl","projectName","entityType","entityId","thumbnailId","thumbnailHash","getProjectThumbnailUrl","hashParam"],"mappings":"AAiBO,MAAMA,IAAwB,CAAC;AAAA,EACpC,aAAAC;AAAA,EACA,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,eAAAC;AACF,MAAkD;AAChD,MAAI,CAACJ,EAAa,QAAO;AAEzB,MAAIC,MAAe;AACjB,WAAOI,EAAuBL,GAAaI,CAAa;AAG1D,MAAI,CAACD,MAAgB,CAACD,KAAY,CAACD,GAAa,QAAO;AAEvD,QAAMK,IAAYF,IAAgB,SAASA,CAAa,KAAK;AAE7D,SAAIF,KAAYD,IACP,iBAAiBD,CAAW,IAAIC,CAAU,KAAKC,CAAQ,aAAaI,CAAS,KAI/E,iBAAiBN,CAAW,eAAeG,CAAW,GAAGG,CAAS;AAC3E,GAEaD,IAAyB,CAACL,GAAqBI,MAA2B;AACrF,MAAI,CAACJ,EAAa,QAAO;AACzB,QAAMM,IAAYF,IAAgB,SAASA,CAAa,KAAK;AAC7D,SAAO,iBAAiBJ,CAAW,aAAaM,CAAS;AAC3D;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let e=null;const c=new Set;let u,r=[],a;const w=()=>{if(r.length===0)return;const o=[...r];r=[],c.forEach(({updater:s,entityTypes:t})=>{const n=t?o.filter(i=>t.includes(i.summary.entityType)):o;n.length>0&&s(n)})},p=o=>{r.push(o),a&&window.clearTimeout(a);const s=3e3+Math.random()*1e3;a=window.setTimeout(()=>{a=void 0,w()},s)},l=()=>{if(e&&(e.readyState===WebSocket.OPEN||e.readyState===WebSocket.CONNECTING))return;const s=`${window.location.protocol.replace("http","ws")}//${window.location.host}/ws`;e=new WebSocket(s),e.onopen=()=>{const t=localStorage.getItem("accessToken");e?.readyState===WebSocket.OPEN&&e.send(JSON.stringify({topic:"auth",token:t,subscribe:["thumbnail.updated"]}))},e.onmessage=t=>{try{const n=JSON.parse(t.data);if(n.topic==="thumbnail.updated"){const i=n;i.sender&&i.sender===window.senderId?c.forEach(({updater:m,entityTypes:d})=>{(!d||d.includes(i.summary.entityType))&&m([i])}):p(i)}}catch(n){console.error("Failed to parse thumbnail update websocket message",n)}},e.onclose=()=>{e=null,c.size>0&&(u=window.setTimeout(()=>l(),5e3))}},b=(o,s)=>{const t={updater:o,entityTypes:s};return c.add(t),c.size===1&&l(),()=>{c.delete(t),c.size===0&&(u&&(window.clearTimeout(u),u=void 0),a&&(window.clearTimeout(a),a=void 0,r=[]),e&&(e.onclose=null,e.close(),e=null))}};exports.subscribeToThumbnailUpdates=b;
|
|
2
|
+
//# sourceMappingURL=thumbnailWebsocket.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thumbnailWebsocket.cjs.js","sources":["../../../../src/util/thumbnailWebsocket.ts"],"sourcesContent":["/**\n * The expected structure of a websocket message when a thumbnail is updated.\n */\nexport type ThumbnailUpdateMessage = {\n project: string\n sender?: string\n summary: {\n entityId: string\n entityType: string\n thumbnailHash?: string\n }\n}\n\nexport type ThumbnailUpdater = (messages: ThumbnailUpdateMessage[]) => void\n\n// Singleton WebSocket instance\nlet ws: WebSocket | null = null\n// Set of active updater objects with their filters\nconst updaters = new Set<{ updater: ThumbnailUpdater; entityTypes?: string[] }>()\nlet reconnectTimeout: ReturnType<typeof setTimeout> | undefined\n\n// Queue for lazy batched updates\nlet messageQueue: ThumbnailUpdateMessage[] = []\nlet processTimeout: ReturnType<typeof setTimeout> | undefined\n\nconst processQueue = () => {\n if (messageQueue.length === 0) return\n\n // Create a copy of the queue to process\n const queueToProcess = [...messageQueue]\n messageQueue = []\n\n updaters.forEach(({ updater, entityTypes }) => {\n const filtered = entityTypes\n ? queueToProcess.filter((m) => entityTypes.includes(m.summary.entityType))\n : queueToProcess\n\n if (filtered.length > 0) {\n updater(filtered)\n }\n })\n}\n\nconst queueMessage = (message: ThumbnailUpdateMessage) => {\n messageQueue.push(message)\n\n // Clear previous timeout to implement true debouncing\n if (processTimeout) {\n window.clearTimeout(processTimeout)\n }\n\n // Jitter/debounce window: Delays processing until 3-4s of silence occurs\n // (Adjust the logic here if you preferred a fixed throttling interval instead)\n const debounceDelay = 3000 + Math.random() * 1000\n\n processTimeout = window.setTimeout(() => {\n processTimeout = undefined\n processQueue()\n }, debounceDelay)\n}\n\n/**\n * Initializes the WebSocket connection and sets up event listeners.\n */\nconst connectWS = () => {\n if (ws && (ws.readyState === WebSocket.OPEN || ws.readyState === WebSocket.CONNECTING)) {\n return\n }\n\n const proto = window.location.protocol.replace('http', 'ws')\n const wsAddress = `${proto}//${window.location.host}/ws`\n\n ws = new WebSocket(wsAddress)\n\n ws.onopen = () => {\n const accessToken = localStorage.getItem('accessToken')\n if (ws?.readyState === WebSocket.OPEN) {\n ws.send(\n JSON.stringify({\n topic: 'auth',\n token: accessToken,\n subscribe: ['thumbnail.updated'],\n }),\n )\n }\n }\n\n ws.onmessage = (event) => {\n try {\n const data = JSON.parse(event.data)\n\n // Note: Ensure your server data structure matches this check.\n // If the server wraps the message in a 'payload' property, adjust accordingly.\n if (data.topic === 'thumbnail.updated') {\n const message = data as ThumbnailUpdateMessage\n\n // Bypass debounce if current client initiated the change\n if (message.sender && message.sender === (window as any).senderId) {\n updaters.forEach(({ updater, entityTypes }) => {\n if (!entityTypes || entityTypes.includes(message.summary.entityType)) {\n updater([message])\n }\n })\n } else {\n queueMessage(message)\n }\n }\n } catch (error) {\n console.error('Failed to parse thumbnail update websocket message', error)\n }\n }\n\n ws.onclose = () => {\n ws = null\n // Auto-reconnect after 5 seconds if there are still active subscribers\n if (updaters.size > 0) {\n reconnectTimeout = window.setTimeout(() => connectWS(), 5000)\n }\n }\n}\n\n/**\n * Subscribes a callback to listen for thumbnail updates.\n *\n * @param updater Callback to run when a thumbnail update is received.\n * @param entityTypes Optional list of entity types to filter by (e.g., ['folder', 'task']).\n * @returns A cleanup function to unsubscribe from updates.\n */\nexport const subscribeToThumbnailUpdates = (updater: ThumbnailUpdater, entityTypes?: string[]) => {\n const updaterObj = { updater, entityTypes }\n updaters.add(updaterObj)\n\n if (updaters.size === 1) {\n connectWS()\n }\n\n return () => {\n updaters.delete(updaterObj)\n\n if (updaters.size === 0) {\n if (reconnectTimeout) {\n window.clearTimeout(reconnectTimeout)\n reconnectTimeout = undefined\n }\n if (processTimeout) {\n window.clearTimeout(processTimeout)\n processTimeout = undefined\n messageQueue = []\n }\n if (ws) {\n ws.onclose = null // Prevent reconnect loop on intentional disconnect\n ws.close()\n ws = null\n }\n }\n }\n}\n"],"names":["ws","updaters","reconnectTimeout","messageQueue","processTimeout","processQueue","queueToProcess","updater","entityTypes","filtered","m","queueMessage","message","debounceDelay","connectWS","wsAddress","accessToken","event","data","error","subscribeToThumbnailUpdates","updaterObj"],"mappings":"gFAgBA,IAAIA,EAAuB,KAE3B,MAAMC,MAAe,IACrB,IAAIC,EAGAC,EAAyC,CAAA,EACzCC,EAEJ,MAAMC,EAAe,IAAM,CACzB,GAAIF,EAAa,SAAW,EAAG,OAG/B,MAAMG,EAAiB,CAAC,GAAGH,CAAY,EACvCA,EAAe,CAAA,EAEfF,EAAS,QAAQ,CAAC,CAAE,QAAAM,EAAS,YAAAC,KAAkB,CAC7C,MAAMC,EAAWD,EACbF,EAAe,OAAQI,GAAMF,EAAY,SAASE,EAAE,QAAQ,UAAU,CAAC,EACvEJ,EAEAG,EAAS,OAAS,GACpBF,EAAQE,CAAQ,CAEpB,CAAC,CACH,EAEME,EAAgBC,GAAoC,CACxDT,EAAa,KAAKS,CAAO,EAGrBR,GACF,OAAO,aAAaA,CAAc,EAKpC,MAAMS,EAAgB,IAAO,KAAK,OAAA,EAAW,IAE7CT,EAAiB,OAAO,WAAW,IAAM,CACvCA,EAAiB,OACjBC,EAAA,CACF,EAAGQ,CAAa,CAClB,EAKMC,EAAY,IAAM,CACtB,GAAId,IAAOA,EAAG,aAAe,UAAU,MAAQA,EAAG,aAAe,UAAU,YACzE,OAIF,MAAMe,EAAY,GADJ,OAAO,SAAS,SAAS,QAAQ,OAAQ,IAAI,CACjC,KAAK,OAAO,SAAS,IAAI,MAEnDf,EAAK,IAAI,UAAUe,CAAS,EAE5Bf,EAAG,OAAS,IAAM,CAChB,MAAMgB,EAAc,aAAa,QAAQ,aAAa,EAClDhB,GAAI,aAAe,UAAU,MAC/BA,EAAG,KACD,KAAK,UAAU,CACb,MAAO,OACP,MAAOgB,EACP,UAAW,CAAC,mBAAmB,CAAA,CAChC,CAAA,CAGP,EAEAhB,EAAG,UAAaiB,GAAU,CACxB,GAAI,CACF,MAAMC,EAAO,KAAK,MAAMD,EAAM,IAAI,EAIlC,GAAIC,EAAK,QAAU,oBAAqB,CACtC,MAAMN,EAAUM,EAGZN,EAAQ,QAAUA,EAAQ,SAAY,OAAe,SACvDX,EAAS,QAAQ,CAAC,CAAE,QAAAM,EAAS,YAAAC,KAAkB,EACzC,CAACA,GAAeA,EAAY,SAASI,EAAQ,QAAQ,UAAU,IACjEL,EAAQ,CAACK,CAAO,CAAC,CAErB,CAAC,EAEDD,EAAaC,CAAO,CAExB,CACF,OAASO,EAAO,CACd,QAAQ,MAAM,qDAAsDA,CAAK,CAC3E,CACF,EAEAnB,EAAG,QAAU,IAAM,CACjBA,EAAK,KAEDC,EAAS,KAAO,IAClBC,EAAmB,OAAO,WAAW,IAAMY,EAAA,EAAa,GAAI,EAEhE,CACF,EASaM,EAA8B,CAACb,EAA2BC,IAA2B,CAChG,MAAMa,EAAa,CAAE,QAAAd,EAAS,YAAAC,CAAA,EAC9B,OAAAP,EAAS,IAAIoB,CAAU,EAEnBpB,EAAS,OAAS,GACpBa,EAAA,EAGK,IAAM,CACXb,EAAS,OAAOoB,CAAU,EAEtBpB,EAAS,OAAS,IAChBC,IACF,OAAO,aAAaA,CAAgB,EACpCA,EAAmB,QAEjBE,IACF,OAAO,aAAaA,CAAc,EAClCA,EAAiB,OACjBD,EAAe,CAAA,GAEbH,IACFA,EAAG,QAAU,KACbA,EAAG,MAAA,EACHA,EAAK,MAGX,CACF"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
let e = null;
|
|
2
|
+
const i = /* @__PURE__ */ new Set();
|
|
3
|
+
let d, r = [], a;
|
|
4
|
+
const m = () => {
|
|
5
|
+
if (r.length === 0) return;
|
|
6
|
+
const t = [...r];
|
|
7
|
+
r = [], i.forEach(({ updater: s, entityTypes: o }) => {
|
|
8
|
+
const n = o ? t.filter((c) => o.includes(c.summary.entityType)) : t;
|
|
9
|
+
n.length > 0 && s(n);
|
|
10
|
+
});
|
|
11
|
+
}, p = (t) => {
|
|
12
|
+
r.push(t), a && window.clearTimeout(a);
|
|
13
|
+
const s = 3e3 + Math.random() * 1e3;
|
|
14
|
+
a = window.setTimeout(() => {
|
|
15
|
+
a = void 0, m();
|
|
16
|
+
}, s);
|
|
17
|
+
}, l = () => {
|
|
18
|
+
if (e && (e.readyState === WebSocket.OPEN || e.readyState === WebSocket.CONNECTING))
|
|
19
|
+
return;
|
|
20
|
+
const s = `${window.location.protocol.replace("http", "ws")}//${window.location.host}/ws`;
|
|
21
|
+
e = new WebSocket(s), e.onopen = () => {
|
|
22
|
+
const o = localStorage.getItem("accessToken");
|
|
23
|
+
e?.readyState === WebSocket.OPEN && e.send(
|
|
24
|
+
JSON.stringify({
|
|
25
|
+
topic: "auth",
|
|
26
|
+
token: o,
|
|
27
|
+
subscribe: ["thumbnail.updated"]
|
|
28
|
+
})
|
|
29
|
+
);
|
|
30
|
+
}, e.onmessage = (o) => {
|
|
31
|
+
try {
|
|
32
|
+
const n = JSON.parse(o.data);
|
|
33
|
+
if (n.topic === "thumbnail.updated") {
|
|
34
|
+
const c = n;
|
|
35
|
+
c.sender && c.sender === window.senderId ? i.forEach(({ updater: w, entityTypes: u }) => {
|
|
36
|
+
(!u || u.includes(c.summary.entityType)) && w([c]);
|
|
37
|
+
}) : p(c);
|
|
38
|
+
}
|
|
39
|
+
} catch (n) {
|
|
40
|
+
console.error("Failed to parse thumbnail update websocket message", n);
|
|
41
|
+
}
|
|
42
|
+
}, e.onclose = () => {
|
|
43
|
+
e = null, i.size > 0 && (d = window.setTimeout(() => l(), 5e3));
|
|
44
|
+
};
|
|
45
|
+
}, f = (t, s) => {
|
|
46
|
+
const o = { updater: t, entityTypes: s };
|
|
47
|
+
return i.add(o), i.size === 1 && l(), () => {
|
|
48
|
+
i.delete(o), i.size === 0 && (d && (window.clearTimeout(d), d = void 0), a && (window.clearTimeout(a), a = void 0, r = []), e && (e.onclose = null, e.close(), e = null));
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
export {
|
|
52
|
+
f as subscribeToThumbnailUpdates
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=thumbnailWebsocket.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thumbnailWebsocket.es.js","sources":["../../../../src/util/thumbnailWebsocket.ts"],"sourcesContent":["/**\n * The expected structure of a websocket message when a thumbnail is updated.\n */\nexport type ThumbnailUpdateMessage = {\n project: string\n sender?: string\n summary: {\n entityId: string\n entityType: string\n thumbnailHash?: string\n }\n}\n\nexport type ThumbnailUpdater = (messages: ThumbnailUpdateMessage[]) => void\n\n// Singleton WebSocket instance\nlet ws: WebSocket | null = null\n// Set of active updater objects with their filters\nconst updaters = new Set<{ updater: ThumbnailUpdater; entityTypes?: string[] }>()\nlet reconnectTimeout: ReturnType<typeof setTimeout> | undefined\n\n// Queue for lazy batched updates\nlet messageQueue: ThumbnailUpdateMessage[] = []\nlet processTimeout: ReturnType<typeof setTimeout> | undefined\n\nconst processQueue = () => {\n if (messageQueue.length === 0) return\n\n // Create a copy of the queue to process\n const queueToProcess = [...messageQueue]\n messageQueue = []\n\n updaters.forEach(({ updater, entityTypes }) => {\n const filtered = entityTypes\n ? queueToProcess.filter((m) => entityTypes.includes(m.summary.entityType))\n : queueToProcess\n\n if (filtered.length > 0) {\n updater(filtered)\n }\n })\n}\n\nconst queueMessage = (message: ThumbnailUpdateMessage) => {\n messageQueue.push(message)\n\n // Clear previous timeout to implement true debouncing\n if (processTimeout) {\n window.clearTimeout(processTimeout)\n }\n\n // Jitter/debounce window: Delays processing until 3-4s of silence occurs\n // (Adjust the logic here if you preferred a fixed throttling interval instead)\n const debounceDelay = 3000 + Math.random() * 1000\n\n processTimeout = window.setTimeout(() => {\n processTimeout = undefined\n processQueue()\n }, debounceDelay)\n}\n\n/**\n * Initializes the WebSocket connection and sets up event listeners.\n */\nconst connectWS = () => {\n if (ws && (ws.readyState === WebSocket.OPEN || ws.readyState === WebSocket.CONNECTING)) {\n return\n }\n\n const proto = window.location.protocol.replace('http', 'ws')\n const wsAddress = `${proto}//${window.location.host}/ws`\n\n ws = new WebSocket(wsAddress)\n\n ws.onopen = () => {\n const accessToken = localStorage.getItem('accessToken')\n if (ws?.readyState === WebSocket.OPEN) {\n ws.send(\n JSON.stringify({\n topic: 'auth',\n token: accessToken,\n subscribe: ['thumbnail.updated'],\n }),\n )\n }\n }\n\n ws.onmessage = (event) => {\n try {\n const data = JSON.parse(event.data)\n\n // Note: Ensure your server data structure matches this check.\n // If the server wraps the message in a 'payload' property, adjust accordingly.\n if (data.topic === 'thumbnail.updated') {\n const message = data as ThumbnailUpdateMessage\n\n // Bypass debounce if current client initiated the change\n if (message.sender && message.sender === (window as any).senderId) {\n updaters.forEach(({ updater, entityTypes }) => {\n if (!entityTypes || entityTypes.includes(message.summary.entityType)) {\n updater([message])\n }\n })\n } else {\n queueMessage(message)\n }\n }\n } catch (error) {\n console.error('Failed to parse thumbnail update websocket message', error)\n }\n }\n\n ws.onclose = () => {\n ws = null\n // Auto-reconnect after 5 seconds if there are still active subscribers\n if (updaters.size > 0) {\n reconnectTimeout = window.setTimeout(() => connectWS(), 5000)\n }\n }\n}\n\n/**\n * Subscribes a callback to listen for thumbnail updates.\n *\n * @param updater Callback to run when a thumbnail update is received.\n * @param entityTypes Optional list of entity types to filter by (e.g., ['folder', 'task']).\n * @returns A cleanup function to unsubscribe from updates.\n */\nexport const subscribeToThumbnailUpdates = (updater: ThumbnailUpdater, entityTypes?: string[]) => {\n const updaterObj = { updater, entityTypes }\n updaters.add(updaterObj)\n\n if (updaters.size === 1) {\n connectWS()\n }\n\n return () => {\n updaters.delete(updaterObj)\n\n if (updaters.size === 0) {\n if (reconnectTimeout) {\n window.clearTimeout(reconnectTimeout)\n reconnectTimeout = undefined\n }\n if (processTimeout) {\n window.clearTimeout(processTimeout)\n processTimeout = undefined\n messageQueue = []\n }\n if (ws) {\n ws.onclose = null // Prevent reconnect loop on intentional disconnect\n ws.close()\n ws = null\n }\n }\n }\n}\n"],"names":["ws","updaters","reconnectTimeout","messageQueue","processTimeout","processQueue","queueToProcess","updater","entityTypes","filtered","m","queueMessage","message","debounceDelay","connectWS","wsAddress","accessToken","event","data","error","subscribeToThumbnailUpdates","updaterObj"],"mappings":"AAgBA,IAAIA,IAAuB;AAE3B,MAAMC,wBAAe,IAAA;AACrB,IAAIC,GAGAC,IAAyC,CAAA,GACzCC;AAEJ,MAAMC,IAAe,MAAM;AACzB,MAAIF,EAAa,WAAW,EAAG;AAG/B,QAAMG,IAAiB,CAAC,GAAGH,CAAY;AACvC,EAAAA,IAAe,CAAA,GAEfF,EAAS,QAAQ,CAAC,EAAE,SAAAM,GAAS,aAAAC,QAAkB;AAC7C,UAAMC,IAAWD,IACbF,EAAe,OAAO,CAACI,MAAMF,EAAY,SAASE,EAAE,QAAQ,UAAU,CAAC,IACvEJ;AAEJ,IAAIG,EAAS,SAAS,KACpBF,EAAQE,CAAQ;AAAA,EAEpB,CAAC;AACH,GAEME,IAAe,CAACC,MAAoC;AACxD,EAAAT,EAAa,KAAKS,CAAO,GAGrBR,KACF,OAAO,aAAaA,CAAc;AAKpC,QAAMS,IAAgB,MAAO,KAAK,OAAA,IAAW;AAE7C,EAAAT,IAAiB,OAAO,WAAW,MAAM;AACvC,IAAAA,IAAiB,QACjBC,EAAA;AAAA,EACF,GAAGQ,CAAa;AAClB,GAKMC,IAAY,MAAM;AACtB,MAAId,MAAOA,EAAG,eAAe,UAAU,QAAQA,EAAG,eAAe,UAAU;AACzE;AAIF,QAAMe,IAAY,GADJ,OAAO,SAAS,SAAS,QAAQ,QAAQ,IAAI,CACjC,KAAK,OAAO,SAAS,IAAI;AAEnD,EAAAf,IAAK,IAAI,UAAUe,CAAS,GAE5Bf,EAAG,SAAS,MAAM;AAChB,UAAMgB,IAAc,aAAa,QAAQ,aAAa;AACtD,IAAIhB,GAAI,eAAe,UAAU,QAC/BA,EAAG;AAAA,MACD,KAAK,UAAU;AAAA,QACb,OAAO;AAAA,QACP,OAAOgB;AAAA,QACP,WAAW,CAAC,mBAAmB;AAAA,MAAA,CAChC;AAAA,IAAA;AAAA,EAGP,GAEAhB,EAAG,YAAY,CAACiB,MAAU;AACxB,QAAI;AACF,YAAMC,IAAO,KAAK,MAAMD,EAAM,IAAI;AAIlC,UAAIC,EAAK,UAAU,qBAAqB;AACtC,cAAMN,IAAUM;AAGhB,QAAIN,EAAQ,UAAUA,EAAQ,WAAY,OAAe,WACvDX,EAAS,QAAQ,CAAC,EAAE,SAAAM,GAAS,aAAAC,QAAkB;AAC7C,WAAI,CAACA,KAAeA,EAAY,SAASI,EAAQ,QAAQ,UAAU,MACjEL,EAAQ,CAACK,CAAO,CAAC;AAAA,QAErB,CAAC,IAEDD,EAAaC,CAAO;AAAA,MAExB;AAAA,IACF,SAASO,GAAO;AACd,cAAQ,MAAM,sDAAsDA,CAAK;AAAA,IAC3E;AAAA,EACF,GAEAnB,EAAG,UAAU,MAAM;AACjB,IAAAA,IAAK,MAEDC,EAAS,OAAO,MAClBC,IAAmB,OAAO,WAAW,MAAMY,EAAA,GAAa,GAAI;AAAA,EAEhE;AACF,GASaM,IAA8B,CAACb,GAA2BC,MAA2B;AAChG,QAAMa,IAAa,EAAE,SAAAd,GAAS,aAAAC,EAAA;AAC9B,SAAAP,EAAS,IAAIoB,CAAU,GAEnBpB,EAAS,SAAS,KACpBa,EAAA,GAGK,MAAM;AACX,IAAAb,EAAS,OAAOoB,CAAU,GAEtBpB,EAAS,SAAS,MAChBC,MACF,OAAO,aAAaA,CAAgB,GACpCA,IAAmB,SAEjBE,MACF,OAAO,aAAaA,CAAc,GAClCA,IAAiB,QACjBD,IAAe,CAAA,IAEbH,MACFA,EAAG,UAAU,MACbA,EAAG,MAAA,GACHA,IAAK;AAAA,EAGX;AACF;"}
|