@ynput/ayon-frontend-shared 0.2.34 → 0.2.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/DetailsPanel.cjs.js +1 -1
- package/dist/DetailsPanel.es.js +24 -23
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/Feed.cjs.js +1 -1
- package/dist/Feed.es.js +20 -19
- package/dist/_virtual/attach-listener.cjs.js +2 -0
- package/dist/_virtual/attach-listener.cjs.js.map +1 -0
- package/dist/_virtual/attach-listener.es.js +5 -0
- package/dist/_virtual/attach-listener.es.js.map +1 -0
- package/dist/_virtual/attach-shared-listeners.cjs.js +2 -0
- package/dist/_virtual/attach-shared-listeners.cjs.js.map +1 -0
- package/dist/_virtual/attach-shared-listeners.es.js +5 -0
- package/dist/_virtual/attach-shared-listeners.es.js.map +1 -0
- package/dist/_virtual/constants.cjs.js +2 -0
- package/dist/_virtual/constants.cjs.js.map +1 -0
- package/dist/_virtual/constants.es.js +5 -0
- package/dist/_virtual/constants.es.js.map +1 -0
- package/dist/_virtual/create-or-join.cjs.js +2 -0
- package/dist/_virtual/create-or-join.cjs.js.map +1 -0
- package/dist/_virtual/create-or-join.es.js +5 -0
- package/dist/_virtual/create-or-join.es.js.map +1 -0
- package/dist/_virtual/get-url.cjs.js +2 -0
- package/dist/_virtual/get-url.cjs.js.map +1 -0
- package/dist/_virtual/get-url.es.js +5 -0
- package/dist/_virtual/get-url.es.js.map +1 -0
- package/dist/_virtual/globals.cjs.js +2 -0
- package/dist/_virtual/globals.cjs.js.map +1 -0
- package/dist/_virtual/globals.es.js +5 -0
- package/dist/_virtual/globals.es.js.map +1 -0
- package/dist/_virtual/heartbeat.cjs.js +2 -0
- package/dist/_virtual/heartbeat.cjs.js.map +1 -0
- package/dist/_virtual/heartbeat.es.js +5 -0
- package/dist/_virtual/heartbeat.es.js.map +1 -0
- package/dist/_virtual/index.cjs.js +1 -1
- package/dist/_virtual/index.cjs10.js +1 -1
- package/dist/_virtual/index.cjs11.js +2 -0
- package/dist/_virtual/index.cjs11.js.map +1 -0
- package/dist/_virtual/index.cjs12.js +2 -0
- package/dist/_virtual/index.cjs12.js.map +1 -0
- package/dist/_virtual/index.cjs2.js +1 -1
- package/dist/_virtual/index.cjs3.js +1 -1
- package/dist/_virtual/index.cjs4.js +1 -1
- package/dist/_virtual/index.cjs6.js +1 -1
- package/dist/_virtual/index.cjs8.js +1 -1
- package/dist/_virtual/index.cjs9.js +1 -1
- package/dist/_virtual/index.es.js +5 -4
- package/dist/_virtual/index.es10.js +5 -5
- package/dist/_virtual/index.es11.js +8 -0
- package/dist/_virtual/index.es11.js.map +1 -0
- package/dist/_virtual/index.es12.js +8 -0
- package/dist/_virtual/index.es12.js.map +1 -0
- package/dist/_virtual/index.es2.js +2 -2
- package/dist/_virtual/index.es3.js +5 -2
- package/dist/_virtual/index.es3.js.map +1 -1
- package/dist/_virtual/index.es4.js +2 -5
- package/dist/_virtual/index.es4.js.map +1 -1
- package/dist/_virtual/index.es6.js +5 -5
- package/dist/_virtual/index.es8.js +4 -4
- package/dist/_virtual/index.es9.js +2 -5
- package/dist/_virtual/index.es9.js.map +1 -1
- package/dist/_virtual/manage-subscribers.cjs.js +2 -0
- package/dist/_virtual/manage-subscribers.cjs.js.map +1 -0
- package/dist/_virtual/manage-subscribers.es.js +5 -0
- package/dist/_virtual/manage-subscribers.es.js.map +1 -0
- package/dist/_virtual/proxy.cjs.js +2 -0
- package/dist/_virtual/proxy.cjs.js.map +1 -0
- package/dist/_virtual/proxy.es.js +5 -0
- package/dist/_virtual/proxy.es.js.map +1 -0
- package/dist/_virtual/socket-io.cjs.js +2 -0
- package/dist/_virtual/socket-io.cjs.js.map +1 -0
- package/dist/_virtual/socket-io.es.js +5 -0
- package/dist/_virtual/socket-io.es.js.map +1 -0
- package/dist/_virtual/use-event-source.cjs.js +2 -0
- package/dist/_virtual/use-event-source.cjs.js.map +1 -0
- package/dist/_virtual/use-event-source.es.js +5 -0
- package/dist/_virtual/use-event-source.es.js.map +1 -0
- package/dist/_virtual/use-socket-io.cjs.js +2 -0
- package/dist/_virtual/use-socket-io.cjs.js.map +1 -0
- package/dist/_virtual/use-socket-io.es.js +5 -0
- package/dist/_virtual/use-socket-io.es.js.map +1 -0
- package/dist/_virtual/use-websocket.cjs.js +2 -0
- package/dist/_virtual/use-websocket.cjs.js.map +1 -0
- package/dist/_virtual/use-websocket.es.js +5 -0
- package/dist/_virtual/use-websocket.es.js.map +1 -0
- package/dist/_virtual/util.cjs.js +2 -0
- package/dist/_virtual/util.cjs.js.map +1 -0
- package/dist/_virtual/util.es.js +5 -0
- package/dist/_virtual/util.es.js.map +1 -0
- package/dist/api.cjs.js +1 -1
- package/dist/api.es.js +233 -230
- package/dist/api.es.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +25 -23
- package/dist/components.es.js.map +1 -1
- package/dist/context.cjs.js +1 -1
- package/dist/context.es.js +17 -13
- package/dist/context.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +11 -10
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.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/react-use-websocket/dist/index.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/index.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/index.es.js +36 -0
- package/dist/node_modules/react-use-websocket/dist/index.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/attach-listener.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/attach-listener.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/attach-listener.es.js +79 -0
- package/dist/node_modules/react-use-websocket/dist/lib/attach-listener.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/attach-shared-listeners.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/attach-shared-listeners.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/attach-shared-listeners.es.js +72 -0
- package/dist/node_modules/react-use-websocket/dist/lib/attach-shared-listeners.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/constants.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/constants.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/constants.es.js +32 -0
- package/dist/node_modules/react-use-websocket/dist/lib/constants.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/create-or-join.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/create-or-join.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/create-or-join.es.js +53 -0
- package/dist/node_modules/react-use-websocket/dist/lib/create-or-join.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/get-url.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/get-url.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/get-url.es.js +144 -0
- package/dist/node_modules/react-use-websocket/dist/lib/get-url.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/globals.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/globals.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/globals.es.js +19 -0
- package/dist/node_modules/react-use-websocket/dist/lib/globals.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/heartbeat.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/heartbeat.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/heartbeat.es.js +35 -0
- package/dist/node_modules/react-use-websocket/dist/lib/heartbeat.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/manage-subscribers.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/manage-subscribers.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/manage-subscribers.es.js +36 -0
- package/dist/node_modules/react-use-websocket/dist/lib/manage-subscribers.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/proxy.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/proxy.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/proxy.es.js +24 -0
- package/dist/node_modules/react-use-websocket/dist/lib/proxy.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/socket-io.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/socket-io.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/socket-io.es.js +39 -0
- package/dist/node_modules/react-use-websocket/dist/lib/socket-io.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-event-source.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-event-source.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-event-source.es.js +51 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-event-source.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-socket-io.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-socket-io.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-socket-io.es.js +54 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-socket-io.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-websocket.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-websocket.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-websocket.es.js +198 -0
- package/dist/node_modules/react-use-websocket/dist/lib/use-websocket.es.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/util.cjs.js +2 -0
- package/dist/node_modules/react-use-websocket/dist/lib/util.cjs.js.map +1 -0
- package/dist/node_modules/react-use-websocket/dist/lib/util.es.js +21 -0
- package/dist/node_modules/react-use-websocket/dist/lib/util.es.js.map +1 -0
- package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js.map +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.cjs.js.map +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.cjs.js.map +1 -1
- package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
- package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js +1 -1
- package/dist/node_modules/rehype-prism-plus/dist/index.es.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/prop-types/index.cjs.js +1 -1
- package/dist/shared/node_modules/prop-types/index.es.js +1 -1
- package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
- package/dist/shared/node_modules/react-is/index.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js.map +1 -1
- package/dist/shared/src/api/base/client.es.js +7 -6
- package/dist/shared/src/api/base/client.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.es.js +71 -60
- package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/getCategories.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/getCategories.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/getCategories.es.js +11 -6
- package/dist/shared/src/api/queries/activities/getCategories.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/updateActivities.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/updateActivities.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/updateActivities.es.js +1 -1
- package/dist/shared/src/api/queries/activities/updateActivities.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/updateReaction.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/updateReaction.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/updateReaction.es.js +1 -1
- package/dist/shared/src/api/queries/activities/updateReaction.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js +2 -0
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js +144 -0
- package/dist/shared/src/api/queries/activities/util/activityRealtimeHandler.es.js.map +1 -0
- 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 +3 -2
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.cjs.js +4 -4
- package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.es.js +36 -35
- package/dist/shared/src/components/DetailsPanelDetails/BorderedSection.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/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 +28 -27
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.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/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 +4 -3
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +4 -3
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +2 -2
- 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 +4 -3
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/RequiredAddonVersion.cjs.js +9 -0
- package/dist/shared/src/components/Powerpack/RequiredAddonVersion.cjs.js.map +1 -0
- package/dist/shared/src/components/Powerpack/RequiredAddonVersion.es.js +30 -0
- package/dist/shared/src/components/Powerpack/RequiredAddonVersion.es.js.map +1 -0
- 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 -5
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js +4 -3
- package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +5 -4
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/components/QuillListStyles/QuillListStyles.cjs.js +1 -0
- package/dist/shared/src/components/QuillListStyles/QuillListStyles.cjs.js.map +1 -1
- package/dist/shared/src/components/QuillListStyles/QuillListStyles.es.js +1 -0
- package/dist/shared/src/components/QuillListStyles/QuillListStyles.es.js.map +1 -1
- package/dist/shared/src/components/RefreshToast/RefreshToast.cjs.js +2 -0
- package/dist/shared/src/components/RefreshToast/RefreshToast.cjs.js.map +1 -0
- package/dist/shared/src/components/RefreshToast/RefreshToast.es.js +10 -0
- package/dist/shared/src/components/RefreshToast/RefreshToast.es.js.map +1 -0
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +2 -2
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.es.js +4 -3
- package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +4 -3
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +5 -4
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +4 -3
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +4 -4
- 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/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 -3
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +6 -5
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.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 -3
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +4 -3
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.es.js +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 -3
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +4 -3
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +4 -3
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +5 -4
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +4 -3
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
- package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +3 -2
- package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +3 -2
- package/dist/shared/src/containers/DetailsPanel/FeedWrapper.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 -3
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +4 -3
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +4 -3
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +4 -3
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +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 +4 -3
- package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js +2 -2
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js +42 -39
- package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.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 +13 -12
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.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 +7 -6
- 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 +2 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +258 -245
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +66 -11
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +68 -13
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.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 +13 -10
- 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 +6 -5
- 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 +63 -51
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.es.js +35 -31
- package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js +1 -0
- package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.styled.es.js +3 -2
- package/dist/shared/src/containers/Feed/components/FilesGrid/FilesGrid.styled.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 +3 -2
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
- package/dist/shared/src/containers/Feed/context/FeedContext.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 +73 -72
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +4 -3
- 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 -3
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.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 +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +6 -5
- 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 +3 -2
- 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 +4 -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 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.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 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.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 +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +15 -14
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.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 +4 -3
- 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 -5
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +4 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.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 -3
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +4 -3
- package/dist/shared/src/containers/SimpleTable/SimpleTable.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/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 +5 -4
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
- package/dist/shared/src/context/AddonContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonContext.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js +27 -13
- 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/PowerpackContext.cjs.js +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.es.js +11 -10
- package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js +2 -0
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -0
- package/dist/shared/src/context/WebsocketContext.es.js +309 -0
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -0
- 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/src/components/Menu/MenuComponents/Menu.cjs.js +1 -1
- package/dist/src/components/Menu/MenuComponents/Menu.cjs.js.map +1 -1
- package/dist/src/components/Menu/MenuComponents/Menu.es.js +3 -2
- package/dist/src/components/Menu/MenuComponents/Menu.es.js.map +1 -1
- package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js +1 -1
- package/dist/src/components/Menu/MenuComponents/MenuItem.cjs.js.map +1 -1
- package/dist/src/components/Menu/MenuComponents/MenuItem.es.js +7 -6
- package/dist/src/components/Menu/MenuComponents/MenuItem.es.js.map +1 -1
- package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js +1 -1
- package/dist/src/components/Menu/MenuComponents/MenuList.cjs.js.map +1 -1
- package/dist/src/components/Menu/MenuComponents/MenuList.es.js +11 -10
- package/dist/src/components/Menu/MenuComponents/MenuList.es.js.map +1 -1
- package/dist/types/api/queries/activities/getActivities.d.ts +1 -1
- package/dist/types/api/queries/activities/index.d.ts +0 -1
- package/dist/types/api/queries/activities/util/activityRealtimeHandler.d.ts +40 -0
- package/dist/types/api/queries/index.d.ts +1 -0
- package/dist/types/components/Powerpack/RequiredAddonVersion.d.ts +12 -0
- package/dist/types/components/Powerpack/index.d.ts +1 -1
- package/dist/types/components/RefreshToast/RefreshToast.d.ts +1 -0
- package/dist/types/components/RefreshToast/index.d.ts +1 -0
- package/dist/types/components/index.d.ts +1 -0
- package/dist/types/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.d.ts +5 -0
- package/dist/types/containers/Feed/components/FileUploadCard/FileUploadCard.d.ts +2 -1
- package/dist/types/containers/Feed/components/FilesGrid/FilesGrid.d.ts +6 -2
- package/dist/types/context/AddonContext.d.ts +1 -0
- package/dist/types/context/AddonProjectContext.d.ts +6 -1
- package/dist/types/context/WebsocketContext.d.ts +21 -0
- package/dist/types/context/index.d.ts +1 -0
- package/package.json +1 -1
- package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.cjs.js +0 -9
- package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.cjs.js.map +0 -1
- package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.es.js +0 -25
- package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.es.js.map +0 -1
- package/dist/types/components/Powerpack/RequiredPowerpackVersion.d.ts +0 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildTreeTableColumns.cjs.js","sources":["../../../../../src/containers/ProjectTreeTable/buildTreeTableColumns.tsx"],"sourcesContent":["import { ColumnDef, FilterFnOption, Row, SortingFn, sortingFns } from '@tanstack/react-table'\nimport { TableRow } from './types/table'\nimport { AttributeData, ProjectTableAttribute, BuiltInFieldOptions } from './types'\nimport { CellWidget, EntityNameWidget, GroupHeaderWidget, ThumbnailWidget } from './widgets'\nimport { getCellId, getCellValue } from './utils/cellUtils'\nimport { LinkColumnHeader, TableCellContent } from './ProjectTreeTable.styled'\nimport clsx from 'clsx'\nimport { SelectionCell } from './components/SelectionCell'\nimport RowSelectionHeader from './components/RowSelectionHeader'\nimport { ROW_SELECTION_COLUMN_ID } from './context/SelectionCellsContext'\nimport { TableGroupBy, useCellEditing, useColumnSettingsContext } from './context'\nimport { NEXT_PAGE_ID } from './hooks/useBuildGroupByTableData'\nimport LoadMoreWidget from './widgets/LoadMoreWidget'\nimport { LinkTypeModel } from '@shared/api'\nimport { LinkWidgetData } from './widgets/LinksWidget'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { getEntityTypeIcon } from '@shared/util'\nimport { NameWidgetData } from '@shared/components/RenameForm'\n\nconst MIN_SIZE = 50\n\n// Wrapper function for sorting that pushes isLoading rows to the bottom\nconst withLoadingStateSort = (sortFn: SortingFn<any>): SortingFn<any> => {\n return (rowA, rowB, ...args) => {\n // If row loading states differ, prioritize non-loading rows\n if (rowA.original.isLoading !== rowB.original.isLoading) {\n return rowA.original.isLoading ? 1 : -1\n }\n // Otherwise, use the original sort function\n return sortFn(rowA, rowB, ...args)\n }\n}\n\nconst pathSort: SortingFn<any> = (rowA, rowB) => {\n const labelA = rowA.original.path || rowA.original.name\n const labelB = rowB.original.path || rowB.original.name\n // sort alphabetically by label\n return labelA.localeCompare(labelB)\n}\n\nconst valueLengthSort: SortingFn<any> = (rowA, rowB, columnId) => {\n const valueA = getCellValue(rowA.original, columnId)\n const valueB = getCellValue(rowB.original, columnId)\n const lengthA = Array.isArray(valueA) ? valueA.length : valueA ? String(valueA).length : 0\n const lengthB = Array.isArray(valueB) ? valueB.length : valueB ? String(valueB).length : 0\n return lengthA - lengthB\n}\n\ntype AttribSortingFn = (rowA: any, rowB: any, columnId: string, attribute?: AttributeData) => number\n// sort by the order of the enum options\nconst attribSort: AttribSortingFn = (rowA, rowB, columnId, attrib) => {\n const valueA = getCellValue(rowA.original, columnId)\n const valueB = getCellValue(rowB.original, columnId)\n // if attrib is defined and has enum options, use them\n if (attrib && attrib.enum) {\n const indexA = attrib.enum.findIndex((o) => o.value === valueA)\n const indexB = attrib.enum.findIndex((o) => o.value === valueB)\n return indexB - indexA < 0 ? 1 : -1\n } else if (attrib?.type === 'datetime') {\n return sortingFns.datetime(rowA, rowB, columnId)\n } else if (attrib?.type === 'boolean') {\n const boolA = valueA === true ? 1 : 0\n const boolB = valueB === true ? 1 : 0\n return boolA - boolB\n } else {\n return sortingFns.alphanumeric(rowA, rowB, columnId)\n }\n}\n\nexport const getLinkLabel = (\n link: Pick<LinkTypeModel, 'linkType'>,\n direction: 'in' | 'out' | string,\n) => `${link.linkType.charAt(0).toUpperCase() + link.linkType.slice(1)} (${direction})`\n\nexport const getLinkKey = (link: Pick<LinkTypeModel, 'name'>, direction: 'in' | 'out' | string) =>\n `${link.name.replaceAll('_', '').replaceAll('-', '').replaceAll('|', '_')}_${direction}`\n\nexport const getLinkColumnId = (\n link: Pick<LinkTypeModel, 'name'>,\n direction: 'in' | 'out' | string,\n) => `link_${getLinkKey(link, direction)}`\n\nexport type DefaultColumns =\n | typeof ROW_SELECTION_COLUMN_ID\n | 'thumbnail'\n | 'name'\n | 'status'\n | 'subType'\n | 'assignees'\n | 'tags'\n | 'createdAt'\n | 'updatedAt'\n\nexport type TreeTableExtraColumn = { column: ColumnDef<TableRow>; position?: number }\n\nexport type BuildTreeTableColumnsProps = {\n attribs: ProjectTableAttribute[]\n links: LinkTypeModel[]\n showHierarchy: boolean\n options: BuiltInFieldOptions\n excluded?: (DefaultColumns | string)[]\n extraColumns?: TreeTableExtraColumn[]\n groupBy?: TableGroupBy\n}\n\nconst buildTreeTableColumns = ({\n attribs,\n links = [],\n showHierarchy,\n options,\n excluded,\n extraColumns,\n groupBy,\n}: BuildTreeTableColumnsProps) => {\n const staticColumns: ColumnDef<TableRow>[] = []\n\n // Helper to check if a column should be included\n const isIncluded = (id: DefaultColumns | string) => !excluded?.includes(id)\n\n // Conditionally add static columns\n if (isIncluded(ROW_SELECTION_COLUMN_ID)) {\n staticColumns.push({\n id: ROW_SELECTION_COLUMN_ID,\n enableResizing: false,\n enableSorting: false,\n enablePinning: false,\n enableHiding: false,\n\n header: () => <RowSelectionHeader />,\n cell: ({ row }) => {\n if (row.original.entityType === 'group') return null\n return <SelectionCell />\n },\n size: 20,\n })\n }\n\n if (isIncluded('thumbnail')) {\n staticColumns.push({\n id: 'thumbnail',\n header: 'Thumbnail',\n size: 63,\n minSize: 24,\n enableResizing: true,\n enableSorting: false,\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n if (!meta) return null\n const cellId = getCellId(row.id, column.id)\n return (\n <ThumbnailWidget\n id={cellId}\n entityId={row.original.entityId || row.id}\n entityType={row.original.entityType}\n updatedAt={row.original.updatedAt}\n icon={row.original.icon}\n projectName={meta?.projectName as string}\n className={clsx('thumbnail', {\n loading: row.original.isLoading,\n })}\n isPlayable={row.original.hasReviewables}\n />\n )\n },\n })\n }\n\n if (isIncluded('name')) {\n staticColumns.push({\n id: 'name',\n accessorKey: 'name',\n header: 'Folder / Task',\n minSize: MIN_SIZE,\n sortingFn: withLoadingStateSort(pathSort),\n enableSorting: groupBy ? false : true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: groupBy ? false : true,\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n const meta = table.options.meta\n const { isEditing } = useCellEditing()\n const { rowHeight = 40 } = useColumnSettingsContext()\n const cellId = getCellId(row.id, column.id)\n\n if (row.original.entityType === NEXT_PAGE_ID && row.original.group) {\n return (\n <LoadMoreWidget\n label={'Load more tasks'}\n id={row.original.group.value}\n onLoadMore={(id) => meta?.loadMoreTasks?.(id)}\n />\n )\n }\n\n return (\n <TableCellContent\n id={cellId}\n className={clsx('large', row.original.entityType, {\n loading: row.original.isLoading,\n hierarchy: showHierarchy,\n })}\n style={{\n paddingLeft: `calc(${row.depth * 1}rem + 8px)`,\n }}\n tabIndex={0}\n >\n {row.original.group ? (\n <GroupHeaderWidget\n id={row.id}\n label={row.original.group.label}\n name={row.original.name}\n icon={row.original.group.icon}\n img={row.original.group.img}\n color={row.original.group.color}\n count={row.original.group.count}\n isExpanded={row.getIsExpanded()}\n isEmpty={row.subRows.length === 0}\n toggleExpanded={row.getToggleExpandedHandler()}\n />\n ) : (\n <EntityNameWidget\n id={row.id}\n label={row.original.label}\n name={row.original.name}\n path={!showHierarchy ? '/' + row.original.parents?.join('/') : undefined}\n showHierarchy={showHierarchy}\n icon={row.original.icon}\n type={row.original.entityType}\n isExpanded={row.getIsExpanded()}\n toggleExpandAll={() => meta?.toggleExpandAll?.([row.id])}\n toggleExpanded={row.getToggleExpandedHandler()}\n rowHeight={rowHeight}\n />\n )}\n {isEditing(cellId) && (\n <CellWidget\n rowId={id}\n className={clsx('name', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n valueData={\n {\n name: row.original.name,\n label: row.original.label,\n meta,\n entityRowId: id,\n columnId: column.id,\n hasVersions: !!row.original.hasVersions,\n } as NameWidgetData\n }\n entityType={type}\n attributeData={{ type: 'name' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={meta?.readOnly?.includes(column.id)}\n />\n )}\n </TableCellContent>\n )\n },\n })\n }\n\n if (isIncluded('status')) {\n staticColumns.push({\n id: 'status',\n accessorKey: 'status',\n minSize: MIN_SIZE,\n header: 'Status',\n sortingFn: withLoadingStateSort((a, b, c) =>\n attribSort(a, b, c, { enum: options.status, type: 'string' }),\n ),\n sortDescFirst: true,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n const meta = table.options.meta\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('status', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'string' }}\n options={meta?.options?.status.filter((s) => s.scope?.includes(type))}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n pt={{\n enum: {\n pt: {\n template: {\n pt: {\n icon: {\n style: {\n fontVariationSettings: \"'FILL' 1, 'wght' 200, 'GRAD' 200, 'opsz' 20\",\n },\n },\n },\n },\n },\n },\n }}\n />\n )\n },\n })\n }\n\n if (isIncluded('subType')) {\n staticColumns.push({\n id: 'subType',\n accessorKey: 'subType',\n header: 'Type',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort((a, b, c) =>\n attribSort(a, b, c, { enum: [...options.folderType, ...options.taskType], type: 'string' }),\n ),\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n const fieldId = type === 'folder' ? 'folderType' : 'taskType'\n const meta = table.options.meta\n return (\n <CellWidget\n rowId={id}\n className={clsx('subType', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'string' }}\n options={\n type === 'folder'\n ? meta?.options?.folderType\n : type === 'task'\n ? meta?.options?.taskType\n : []\n }\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: fieldId, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id) || meta?.readOnly?.includes(fieldId)}\n />\n )\n },\n })\n }\n\n if (isIncluded('assignees')) {\n staticColumns.push({\n id: 'assignees',\n accessorKey: 'assignees',\n header: 'Assignees',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(valueLengthSort),\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n\n if (type === 'folder')\n return (\n <CellWidget\n rowId={id}\n className={clsx('assignees', { loading: row.original.isLoading })}\n columnId={column.id}\n value=\"\"\n isPlaceholder\n />\n )\n return (\n <CellWidget\n rowId={id}\n className={clsx('assignees', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'list_of_strings' }}\n options={meta?.options?.assignee}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n pt={{\n enum: {\n multiSelectClose: value?.length === 0, // close the dropdown on first assignment\n search: true, // enable search at all times\n multipleOverride: false,\n },\n }}\n />\n )\n },\n })\n }\n\n if (isIncluded('tags')) {\n staticColumns.push({\n id: 'tags',\n accessorKey: 'tags',\n header: 'Tags',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(valueLengthSort),\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('tags', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'list_of_strings' }}\n options={meta?.options?.tag}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n enableCustomValues\n />\n )\n },\n })\n }\n\n if (isIncluded('createdAt')) {\n staticColumns.push({\n id: 'createdAt',\n accessorKey: 'createdAt',\n header: 'Created at',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(sortingFns.datetime),\n cell: ({ row, column }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('createdAt', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'datetime' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={true}\n />\n )\n },\n })\n }\n\n if (isIncluded('updatedAt')) {\n staticColumns.push({\n id: 'updatedAt',\n accessorKey: 'updatedAt',\n header: 'Updated at',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(sortingFns.datetime),\n cell: ({ row, column }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('updatedAt', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'datetime' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={true}\n />\n )\n },\n })\n }\n\n const attributeColumns: ColumnDef<TableRow>[] = attribs\n .filter((attrib) => {\n const columnId = 'attrib_' + attrib.name\n // Check if the specific attribute column is excluded\n // or if all built-in attributes are excluded and this is a built-in attribute\n if (!isIncluded(columnId)) return false\n if (attrib.builtin && !isIncluded('attrib')) return false\n return true\n })\n .map((attrib) => {\n const attribColumn: ColumnDef<TableRow> = {\n id: 'attrib_' + attrib.name,\n accessorKey: 'attrib.' + attrib.name,\n header: attrib.data.title || attrib.name,\n minSize: MIN_SIZE,\n filterFn: 'fuzzy' as FilterFnOption<TableRow>,\n sortingFn: withLoadingStateSort((a, b, c) => attribSort(a, b, c, attrib.data)),\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const columnIdParsed = column.id.replace('attrib_', '')\n const { value, id, type } = getValueIdType(row, columnIdParsed, 'attrib')\n const isInherited = !row.original.ownAttrib?.includes(columnIdParsed)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n const isTypeInScope = attrib.scope?.includes(type as (typeof attrib.scope)[number])\n\n // if the attribute is not in scope, we should nothing\n if (!isTypeInScope) return null\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('attrib', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: attrib.data.type || 'string' }}\n options={attrib.data.enum || []}\n isCollapsed={!!row.original.childOnlyMatch}\n isInherited={isInherited && ['folder', 'task'].includes(type)}\n isReadOnly={\n // check attrib is not read only\n attrib.readOnly ||\n // check if there is any other reason the cell should be read only\n meta?.readOnly?.some(\n (id) => id === columnIdParsed || (id === 'attrib' && attrib.builtin),\n )\n }\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: columnIdParsed, value, type, isAttrib: true, rowId: row.id },\n { selection: !!attrib.data.enum?.length ? meta?.selection : undefined },\n )\n }\n />\n )\n },\n }\n return attribColumn\n })\n\n const linkColumns: ColumnDef<TableRow>[] = links\n .filter((link) => {\n // Check if the link type is excluded\n if (!isIncluded(link.linkType) || !isIncluded('link')) return false\n return true\n })\n .flatMap((link) => {\n const createLinkColumn = (direction: 'in' | 'out'): ColumnDef<TableRow> => {\n return {\n id: getLinkColumnId(link, direction),\n accessorKey: `links.${getLinkKey(link, direction)}`,\n header: () => (\n <LinkColumnHeader>\n {getLinkLabel(link, direction)}{' '}\n <Icon\n icon={getEntityTypeIcon(direction === 'in' ? link.inputType : link.outputType)}\n />\n </LinkColumnHeader>\n ),\n minSize: MIN_SIZE,\n enableSorting: false,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column }) => {\n const columnIdParsed = column.id.replace('link_', '')\n\n const { id, value } = getValueIdType(row, columnIdParsed, 'links')\n const cellValue = value?.map((v: any) => v.label)\n const valueData: LinkWidgetData = {\n links: value,\n direction: direction,\n entityId: row.original.entityId || row.original.id,\n entityType: row.original.entityType,\n link: {\n label: link.linkType,\n linkType: link.name,\n targetEntityType: direction === 'in' ? link.inputType : link.outputType,\n },\n }\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('links', { loading: row.original.isLoading })}\n columnId={column.id}\n value={cellValue}\n valueData={valueData}\n folderId={row.original.folderId}\n attributeData={{ type: 'links' }}\n />\n )\n },\n }\n }\n\n return [createLinkColumn('in'), createLinkColumn('out')]\n })\n\n const allColumns = [...staticColumns, ...attributeColumns, ...linkColumns]\n\n // Add extra columns if provided\n if (extraColumns) {\n extraColumns.forEach(({ column, position = -1 }) => {\n if (position >= 0 && position < allColumns.length) {\n allColumns.splice(position, 0, column)\n } else {\n allColumns.push(column)\n }\n })\n }\n\n return allColumns\n}\n\nexport default buildTreeTableColumns\n\nexport const getValueIdType = (\n row: Row<TableRow>,\n field: string,\n nestedField?: keyof TableRow,\n): {\n value: any\n id: string\n type: string\n} => ({\n value: nestedField\n ? (row.original[nestedField as keyof TableRow] as any)?.[field]\n : (row.original[field as keyof TableRow] as any),\n id: row.id,\n type: row.original.entityType,\n})\n"],"names":["MIN_SIZE","withLoadingStateSort","sortFn","rowA","rowB","args","pathSort","labelA","labelB","valueLengthSort","columnId","valueA","getCellValue","valueB","lengthA","lengthB","attribSort","attrib","indexA","o","sortingFns","getLinkLabel","link","direction","getLinkKey","getLinkColumnId","buildTreeTableColumns","attribs","links","showHierarchy","options","excluded","extraColumns","groupBy","staticColumns","isIncluded","id","ROW_SELECTION_COLUMN_ID","jsx","RowSelectionHeader","row","SelectionCell","column","table","meta","cellId","getCellId","ThumbnailWidget","clsx","value","type","getValueIdType","isEditing","useCellEditing","rowHeight","useColumnSettingsContext","NEXT_PAGE_ID","LoadMoreWidget","_a","jsxs","TableCellContent","GroupHeaderWidget","EntityNameWidget","CellWidget","_b","a","b","c","s","fieldId","_c","_d","attributeColumns","columnIdParsed","isInherited","linkColumns","createLinkColumn","LinkColumnHeader","Icon","getEntityTypeIcon","cellValue","v","valueData","allColumns","position","field","nestedField"],"mappings":"o0YAmBA,MAAMA,EAAW,GAGXC,EAAwBC,GACrB,CAACC,EAAMC,KAASC,IAEjBF,EAAK,SAAS,YAAcC,EAAK,SAAS,UACrCD,EAAK,SAAS,UAAY,EAAI,GAGhCD,EAAOC,EAAMC,EAAM,GAAGC,CAAI,EAI/BC,GAA2B,CAACH,EAAMC,IAAS,CAC/C,MAAMG,EAASJ,EAAK,SAAS,MAAQA,EAAK,SAAS,KAC7CK,EAASJ,EAAK,SAAS,MAAQA,EAAK,SAAS,KAE5C,OAAAG,EAAO,cAAcC,CAAM,CACpC,EAEMC,EAAkC,CAACN,EAAMC,EAAMM,IAAa,CAChE,MAAMC,EAASC,EAAA,aAAaT,EAAK,SAAUO,CAAQ,EAC7CG,EAASD,EAAA,aAAaR,EAAK,SAAUM,CAAQ,EAC7CI,EAAU,MAAM,QAAQH,CAAM,EAAIA,EAAO,OAASA,EAAS,OAAOA,CAAM,EAAE,OAAS,EACnFI,EAAU,MAAM,QAAQF,CAAM,EAAIA,EAAO,OAASA,EAAS,OAAOA,CAAM,EAAE,OAAS,EACzF,OAAOC,EAAUC,CACnB,EAIMC,EAA8B,CAACb,EAAMC,EAAMM,EAAUO,IAAW,CACpE,MAAMN,EAASC,EAAA,aAAaT,EAAK,SAAUO,CAAQ,EAC7CG,EAASD,EAAA,aAAaR,EAAK,SAAUM,CAAQ,EAE/C,GAAAO,GAAUA,EAAO,KAAM,CACnB,MAAAC,EAASD,EAAO,KAAK,UAAWE,GAAMA,EAAE,QAAUR,CAAM,EAEvD,OADQM,EAAO,KAAK,UAAWE,GAAMA,EAAE,QAAUN,CAAM,EAC9CK,EAAS,EAAI,EAAI,EAAA,KACnC,QAAWD,GAAA,YAAAA,EAAQ,QAAS,WACnBG,EAAW,WAAA,SAASjB,EAAMC,EAAMM,CAAQ,GACtCO,GAAA,YAAAA,EAAQ,QAAS,WACZN,IAAW,GAAO,EAAI,IACtBE,IAAW,GAAO,EAAI,GAG7BO,EAAW,WAAA,aAAajB,EAAMC,EAAMM,CAAQ,CAEvD,EAEaW,EAAe,CAC1BC,EACAC,IACG,GAAGD,EAAK,SAAS,OAAO,CAAC,EAAE,cAAgBA,EAAK,SAAS,MAAM,CAAC,CAAC,KAAKC,CAAS,IAEvEC,EAAa,CAACF,EAAmCC,IAC5D,GAAGD,EAAK,KAAK,WAAW,IAAK,EAAE,EAAE,WAAW,IAAK,EAAE,EAAE,WAAW,IAAK,GAAG,CAAC,IAAIC,CAAS,GAE3EE,EAAkB,CAC7BH,EACAC,IACG,QAAQC,EAAWF,EAAMC,CAAS,CAAC,GAyBlCG,GAAwB,CAAC,CAC7B,QAAAC,EACA,MAAAC,EAAQ,CAAC,EACT,cAAAC,EACA,QAAAC,EACA,SAAAC,EACA,aAAAC,EACA,QAAAC,CACF,IAAkC,CAChC,MAAMC,EAAuC,CAAC,EAGxCC,EAAcC,GAAgC,EAACL,GAAA,MAAAA,EAAU,SAASK,IAGpED,EAAWE,EAAAA,uBAAuB,GACpCH,EAAc,KAAK,CACjB,GAAIG,EAAA,wBACJ,eAAgB,GAChB,cAAe,GACf,cAAe,GACf,aAAc,GAEd,OAAQ,IAAMC,EAAAA,kBAAAA,IAACC,EAAmB,EAAA,EAClC,KAAM,CAAC,CAAE,IAAAC,KACHA,EAAI,SAAS,aAAe,QAAgB,6BACxCC,EAAc,cAAA,EAAA,EAExB,KAAM,EAAA,CACP,EAGCN,EAAW,WAAW,GACxBD,EAAc,KAAK,CACjB,GAAI,YACJ,OAAQ,YACR,KAAM,GACN,QAAS,GACT,eAAgB,GAChB,cAAe,GACf,KAAM,CAAC,CAAE,IAAAM,EAAK,OAAAE,EAAQ,MAAAC,KAAY,CAC1B,MAAAC,EAAOD,EAAM,QAAQ,KACvB,GAAA,CAACC,EAAa,OAAA,KAClB,MAAMC,EAASC,EAAAA,UAAUN,EAAI,GAAIE,EAAO,EAAE,EAExC,OAAAJ,EAAA,kBAAA,IAACS,EAAA,gBAAA,CACC,GAAIF,EACJ,SAAUL,EAAI,SAAS,UAAYA,EAAI,GACvC,WAAYA,EAAI,SAAS,WACzB,UAAWA,EAAI,SAAS,UACxB,KAAMA,EAAI,SAAS,KACnB,YAAaI,GAAA,YAAAA,EAAM,YACnB,UAAWI,EAAK,YAAa,CAC3B,QAASR,EAAI,SAAS,SAAA,CACvB,EACD,WAAYA,EAAI,SAAS,cAAA,CAC3B,CAAA,CAEJ,CACD,EAGCL,EAAW,MAAM,GACnBD,EAAc,KAAK,CACjB,GAAI,OACJ,YAAa,OACb,OAAQ,gBACR,QAASlC,EACT,UAAWC,EAAqBK,EAAQ,EACxC,cAAe,CAAA2B,EACf,eAAgB,GAChB,cAAe,GACf,aAAc,CAAAA,EACd,KAAM,CAAC,CAAE,IAAAO,EAAK,OAAAE,EAAQ,MAAAC,KAAY,SAC1B,KAAA,CAAE,MAAAM,EAAO,GAAAb,EAAI,KAAAc,CAAA,EAASC,EAAeX,EAAKE,EAAO,EAAE,EACnDE,EAAOD,EAAM,QAAQ,KACrB,CAAE,UAAAS,CAAU,EAAIC,iBAAe,EAC/B,CAAE,UAAAC,EAAY,EAAG,EAAIC,4BAAyB,EAC9CV,EAASC,EAAAA,UAAUN,EAAI,GAAIE,EAAO,EAAE,EAE1C,OAAIF,EAAI,SAAS,aAAegB,EAAgB,cAAAhB,EAAI,SAAS,MAEzDF,EAAA,kBAAA,IAACmB,GAAA,CACC,MAAO,kBACP,GAAIjB,EAAI,SAAS,MAAM,MACvB,WAAaJ,UAAO,OAAAsB,EAAAd,GAAA,YAAAA,EAAM,gBAAN,YAAAc,EAAA,KAAAd,EAAsBR,GAAE,CAC9C,EAKFuB,EAAA,kBAAA,KAACC,EAAA,iBAAA,CACC,GAAIf,EACJ,UAAWG,EAAK,QAASR,EAAI,SAAS,WAAY,CAChD,QAASA,EAAI,SAAS,UACtB,UAAWX,CAAA,CACZ,EACD,MAAO,CACL,YAAa,QAAQW,EAAI,MAAQ,CAAC,YACpC,EACA,SAAU,EAET,SAAA,CAAAA,EAAI,SAAS,MACZF,EAAA,kBAAA,IAACuB,EAAA,kBAAA,CACC,GAAIrB,EAAI,GACR,MAAOA,EAAI,SAAS,MAAM,MAC1B,KAAMA,EAAI,SAAS,KACnB,KAAMA,EAAI,SAAS,MAAM,KACzB,IAAKA,EAAI,SAAS,MAAM,IACxB,MAAOA,EAAI,SAAS,MAAM,MAC1B,MAAOA,EAAI,SAAS,MAAM,MAC1B,WAAYA,EAAI,cAAc,EAC9B,QAASA,EAAI,QAAQ,SAAW,EAChC,eAAgBA,EAAI,yBAAyB,CAAA,CAAA,EAG/CF,EAAA,kBAAA,IAACwB,EAAA,iBAAA,CACC,GAAItB,EAAI,GACR,MAAOA,EAAI,SAAS,MACpB,KAAMA,EAAI,SAAS,KACnB,KAAOX,EAAwD,OAAxC,MAAM6B,EAAAlB,EAAI,SAAS,UAAb,YAAAkB,EAAsB,KAAK,MACxD,cAAA7B,EACA,KAAMW,EAAI,SAAS,KACnB,KAAMA,EAAI,SAAS,WACnB,WAAYA,EAAI,cAAc,EAC9B,gBAAiB,IAAM,OAAA,OAAAkB,EAAAd,GAAA,YAAAA,EAAM,kBAAN,YAAAc,EAAA,KAAAd,EAAwB,CAACJ,EAAI,EAAE,IACtD,eAAgBA,EAAI,yBAAyB,EAC7C,UAAAc,CAAA,CACF,EAEDF,EAAUP,CAAM,GACfP,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,OAAQ,CAAE,QAASR,EAAI,SAAS,UAAW,EAC3D,SAAUE,EAAO,GACjB,MAAAO,EACA,UACE,CACE,KAAMT,EAAI,SAAS,KACnB,MAAOA,EAAI,SAAS,MACpB,KAAAI,EACA,YAAaR,EACb,SAAUM,EAAO,GACjB,YAAa,CAAC,CAACF,EAAI,SAAS,WAC9B,EAEF,WAAYU,EACZ,cAAe,CAAE,KAAM,MAAO,EAC9B,YAAa,CAAC,CAACV,EAAI,SAAS,eAC5B,YAAYwB,EAAApB,GAAA,YAAAA,EAAM,WAAN,YAAAoB,EAAgB,SAAStB,EAAO,GAAE,CAAA,CAChD,CAAA,CAEJ,CAAA,CAEJ,CACD,EAGCP,EAAW,QAAQ,GACrBD,EAAc,KAAK,CACjB,GAAI,SACJ,YAAa,SACb,QAASlC,EACT,OAAQ,SACR,UAAWC,EAAqB,CAACgE,EAAGC,EAAGC,IACrCnD,EAAWiD,EAAGC,EAAGC,EAAG,CAAE,KAAMrC,EAAQ,OAAQ,KAAM,QAAU,CAAA,CAC9D,EACA,cAAe,GACf,cAAe,GACf,eAAgB,GAChB,cAAe,GACf,aAAc,GACd,KAAM,CAAC,CAAE,IAAAU,EAAK,OAAAE,EAAQ,MAAAC,KAAY,SAC1B,KAAA,CAAE,MAAAM,EAAO,GAAAb,EAAI,KAAAc,CAAA,EAASC,EAAeX,EAAKE,EAAO,EAAE,EACnDE,EAAOD,EAAM,QAAQ,KAC3B,MAAI,CAAC,QAASa,EAAY,YAAA,EAAE,SAASN,CAAI,EAAU,KAGjDZ,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,SAAU,CAAE,QAASR,EAAI,SAAS,UAAW,EAC7D,SAAUE,EAAO,GACjB,MAAAO,EACA,cAAe,CAAE,KAAM,QAAS,EAChC,SAASS,EAAAd,GAAA,YAAAA,EAAM,UAAN,YAAAc,EAAe,OAAO,OAAQU,GAAA,OAAM,OAAAV,EAAAU,EAAE,QAAF,YAAAV,EAAS,SAASR,KAC/D,YAAa,CAAC,CAACV,EAAI,SAAS,eAC5B,SAAWS,GACT,OAAA,OAAAS,EAAAd,GAAA,YAAAA,EAAM,iBAAN,YAAAc,EAAA,KAAAd,EACE,CAAE,MAAOF,EAAO,GAAI,MAAAO,EAAO,KAAAC,EAAM,MAAOd,CAAG,EAC3C,CAAE,UAAWQ,GAAA,YAAAA,EAAM,SAAU,IAGjC,YAAYoB,EAAApB,GAAA,YAAAA,EAAM,WAAN,YAAAoB,EAAgB,SAAStB,EAAO,IAC5C,GAAI,CACF,KAAM,CACJ,GAAI,CACF,SAAU,CACR,GAAI,CACF,KAAM,CACJ,MAAO,CACL,sBAAuB,6CAAA,CACzB,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CAAA,CAEJ,CACD,EAGCP,EAAW,SAAS,GACtBD,EAAc,KAAK,CACjB,GAAI,UACJ,YAAa,UACb,OAAQ,OACR,QAASlC,EACT,cAAe,GACf,eAAgB,GAChB,cAAe,GACf,aAAc,GACd,UAAWC,EAAqB,CAACgE,EAAGC,EAAGC,IACrCnD,EAAWiD,EAAGC,EAAGC,EAAG,CAAE,KAAM,CAAC,GAAGrC,EAAQ,WAAY,GAAGA,EAAQ,QAAQ,EAAG,KAAM,QAAU,CAAA,CAC5F,EACA,KAAM,CAAC,CAAE,IAAAU,EAAK,OAAAE,EAAQ,MAAAC,KAAY,aAC1B,KAAA,CAAE,MAAAM,EAAO,GAAAb,EAAI,KAAAc,CAAA,EAASC,EAAeX,EAAKE,EAAO,EAAE,EACzD,GAAI,CAAC,QAASc,EAAY,YAAA,EAAE,SAASN,CAAI,EAAU,OAAA,KAC7C,MAAAmB,EAAUnB,IAAS,SAAW,aAAe,WAC7CN,EAAOD,EAAM,QAAQ,KAEzB,OAAAL,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,UAAW,CAAE,QAASR,EAAI,SAAS,UAAW,EAC9D,SAAUE,EAAO,GACjB,MAAAO,EACA,cAAe,CAAE,KAAM,QAAS,EAChC,QACEC,IAAS,UACLQ,EAAAd,GAAA,YAAAA,EAAM,UAAN,YAAAc,EAAe,WACfR,IAAS,QACTc,EAAApB,GAAA,YAAAA,EAAM,UAAN,YAAAoB,EAAe,SACf,CAAC,EAEP,YAAa,CAAC,CAACxB,EAAI,SAAS,eAC5B,SAAWS,GACT,OAAA,OAAAS,EAAAd,GAAA,YAAAA,EAAM,iBAAN,YAAAc,EAAA,KAAAd,EACE,CAAE,MAAOyB,EAAS,MAAApB,EAAO,KAAAC,EAAM,MAAOV,EAAI,EAAG,EAC7C,CAAE,UAAWI,GAAA,YAAAA,EAAM,SAAU,IAGjC,aAAY0B,EAAA1B,GAAA,YAAAA,EAAM,WAAN,YAAA0B,EAAgB,SAAS5B,EAAO,QAAO6B,EAAA3B,GAAA,YAAAA,EAAM,WAAN,YAAA2B,EAAgB,SAASF,GAAO,CACrF,CAAA,CAEJ,CACD,EAGClC,EAAW,WAAW,GACxBD,EAAc,KAAK,CACjB,GAAI,YACJ,YAAa,YACb,OAAQ,YACR,QAASlC,EACT,cAAe,GACf,eAAgB,GAChB,cAAe,GACf,aAAc,GACd,UAAWC,EAAqBQ,CAAe,EAC/C,KAAM,CAAC,CAAE,IAAA+B,EAAK,OAAAE,EAAQ,MAAAC,KAAY,SAC1B,MAAAC,EAAOD,EAAM,QAAQ,KACrB,CAAE,MAAAM,EAAO,GAAAb,EAAI,KAAAc,CAAA,EAASC,EAAeX,EAAKE,EAAO,EAAE,EACzD,MAAI,CAAC,QAASc,EAAY,YAAA,EAAE,SAASN,CAAI,EAAU,KAE/CA,IAAS,SAETZ,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,YAAa,CAAE,QAASR,EAAI,SAAS,UAAW,EAChE,SAAUE,EAAO,GACjB,MAAM,GACN,cAAa,EAAA,CACf,EAGFJ,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,YAAa,CAAE,QAASR,EAAI,SAAS,UAAW,EAChE,SAAUE,EAAO,GACjB,MAAAO,EACA,cAAe,CAAE,KAAM,iBAAkB,EACzC,SAASS,EAAAd,GAAA,YAAAA,EAAM,UAAN,YAAAc,EAAe,SACxB,YAAa,CAAC,CAAClB,EAAI,SAAS,eAC5B,SAAWS,GACT,OAAA,OAAAS,EAAAd,GAAA,YAAAA,EAAM,iBAAN,YAAAc,EAAA,KAAAd,EACE,CAAE,MAAOF,EAAO,GAAI,MAAAO,EAAO,KAAAC,EAAM,MAAOV,EAAI,EAAG,EAC/C,CAAE,UAAWI,GAAA,YAAAA,EAAM,SAAU,IAGjC,YAAYoB,EAAApB,GAAA,YAAAA,EAAM,WAAN,YAAAoB,EAAgB,SAAStB,EAAO,IAC5C,GAAI,CACF,KAAM,CACJ,kBAAkBO,GAAA,YAAAA,EAAO,UAAW,EACpC,OAAQ,GACR,iBAAkB,EAAA,CACpB,CACF,CACF,CAAA,CAEJ,CACD,EAGCd,EAAW,MAAM,GACnBD,EAAc,KAAK,CACjB,GAAI,OACJ,YAAa,OACb,OAAQ,OACR,QAASlC,EACT,cAAe,GACf,eAAgB,GAChB,cAAe,GACf,aAAc,GACd,UAAWC,EAAqBQ,CAAe,EAC/C,KAAM,CAAC,CAAE,IAAA+B,EAAK,OAAAE,EAAQ,MAAAC,KAAY,SAC1B,MAAAC,EAAOD,EAAM,QAAQ,KACrB,CAAE,MAAAM,EAAO,GAAAb,EAAI,KAAAc,CAAA,EAASC,EAAeX,EAAKE,EAAO,EAAE,EACzD,MAAI,CAAC,QAASc,EAAY,YAAA,EAAE,SAASN,CAAI,EAAU,KAEjDZ,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,OAAQ,CAAE,QAASR,EAAI,SAAS,UAAW,EAC3D,SAAUE,EAAO,GACjB,MAAAO,EACA,cAAe,CAAE,KAAM,iBAAkB,EACzC,SAASS,EAAAd,GAAA,YAAAA,EAAM,UAAN,YAAAc,EAAe,IACxB,YAAa,CAAC,CAAClB,EAAI,SAAS,eAC5B,SAAWS,GACT,OAAA,OAAAS,EAAAd,GAAA,YAAAA,EAAM,iBAAN,YAAAc,EAAA,KAAAd,EACE,CAAE,MAAOF,EAAO,GAAI,MAAAO,EAAO,KAAAC,EAAM,MAAOV,EAAI,EAAG,EAC/C,CAAE,UAAWI,GAAA,YAAAA,EAAM,SAAU,IAGjC,YAAYoB,EAAApB,GAAA,YAAAA,EAAM,WAAN,YAAAoB,EAAgB,SAAStB,EAAO,IAC5C,mBAAkB,EAAA,CACpB,CAAA,CAEJ,CACD,EAGCP,EAAW,WAAW,GACxBD,EAAc,KAAK,CACjB,GAAI,YACJ,YAAa,YACb,OAAQ,aACR,QAASlC,EACT,cAAe,GACf,eAAgB,GAChB,cAAe,GACf,aAAc,GACd,UAAWC,EAAqBmB,EAAA,WAAW,QAAQ,EACnD,KAAM,CAAC,CAAE,IAAAoB,EAAK,OAAAE,KAAa,CACnB,KAAA,CAAE,MAAAO,EAAO,GAAAb,EAAI,KAAAc,CAAA,EAASC,EAAeX,EAAKE,EAAO,EAAE,EACzD,MAAI,CAAC,QAASc,EAAY,YAAA,EAAE,SAASN,CAAI,EAAU,KAEjDZ,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,YAAa,CAAE,QAASR,EAAI,SAAS,UAAW,EAChE,SAAUE,EAAO,GACjB,MAAAO,EACA,cAAe,CAAE,KAAM,UAAW,EAClC,YAAa,CAAC,CAACT,EAAI,SAAS,eAC5B,WAAY,EAAA,CACd,CAAA,CAEJ,CACD,EAGCL,EAAW,WAAW,GACxBD,EAAc,KAAK,CACjB,GAAI,YACJ,YAAa,YACb,OAAQ,aACR,QAASlC,EACT,cAAe,GACf,eAAgB,GAChB,cAAe,GACf,aAAc,GACd,UAAWC,EAAqBmB,EAAA,WAAW,QAAQ,EACnD,KAAM,CAAC,CAAE,IAAAoB,EAAK,OAAAE,KAAa,CACnB,KAAA,CAAE,MAAAO,EAAO,GAAAb,EAAI,KAAAc,CAAA,EAASC,EAAeX,EAAKE,EAAO,EAAE,EACzD,MAAI,CAAC,QAASc,EAAY,YAAA,EAAE,SAASN,CAAI,EAAU,KAEjDZ,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,YAAa,CAAE,QAASR,EAAI,SAAS,UAAW,EAChE,SAAUE,EAAO,GACjB,MAAAO,EACA,cAAe,CAAE,KAAM,UAAW,EAClC,YAAa,CAAC,CAACT,EAAI,SAAS,eAC5B,WAAY,EAAA,CACd,CAAA,CAEJ,CACD,EAGH,MAAMgC,EAA0C7C,EAC7C,OAAQV,GAAW,CACZ,MAAAP,EAAW,UAAYO,EAAO,KAIpC,MADI,GAACkB,EAAWzB,CAAQ,GACpBO,EAAO,SAAW,CAACkB,EAAW,QAAQ,EACnC,CACR,EACA,IAAKlB,IACsC,CACxC,GAAI,UAAYA,EAAO,KACvB,YAAa,UAAYA,EAAO,KAChC,OAAQA,EAAO,KAAK,OAASA,EAAO,KACpC,QAASjB,EACT,SAAU,QACV,UAAWC,EAAqB,CAACgE,EAAGC,EAAGC,IAAMnD,EAAWiD,EAAGC,EAAGC,EAAGlD,EAAO,IAAI,CAAC,EAC7E,cAAe,GACf,eAAgB,GAChB,cAAe,GACf,aAAc,GACd,KAAM,CAAC,CAAE,IAAAuB,EAAK,OAAAE,EAAQ,MAAAC,KAAY,WAC1B,MAAAC,EAAOD,EAAM,QAAQ,KACrB8B,EAAiB/B,EAAO,GAAG,QAAQ,UAAW,EAAE,EAChD,CAAE,MAAAO,EAAO,GAAAb,EAAI,KAAAc,CAAA,EAASC,EAAeX,EAAKiC,EAAgB,QAAQ,EAClEC,EAAc,GAAChB,EAAAlB,EAAI,SAAS,YAAb,MAAAkB,EAAwB,SAASe,IAKlD,MAJA,CAAC,QAASjB,EAAY,YAAA,EAAE,SAASN,CAAI,GAIrC,GAHkBc,EAAA/C,EAAO,QAAP,YAAA+C,EAAc,SAASd,IAGlB,KAGzBZ,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,SAAU,CAAE,QAASR,EAAI,SAAS,UAAW,EAC7D,SAAUE,EAAO,GACjB,MAAAO,EACA,cAAe,CAAE,KAAMhC,EAAO,KAAK,MAAQ,QAAS,EACpD,QAASA,EAAO,KAAK,MAAQ,CAAC,EAC9B,YAAa,CAAC,CAACuB,EAAI,SAAS,eAC5B,YAAakC,GAAe,CAAC,SAAU,MAAM,EAAE,SAASxB,CAAI,EAC5D,WAEEjC,EAAO,YAEPqD,EAAA1B,GAAA,YAAAA,EAAM,WAAN,YAAA0B,EAAgB,KACblC,GAAOA,IAAOqC,GAAmBrC,IAAO,UAAYnB,EAAO,UAGhE,SAAWgC,GACT,SAAA,OAAAe,EAAApB,GAAA,YAAAA,EAAM,iBAAN,YAAAoB,EAAA,KAAApB,EACE,CAAE,MAAO6B,EAAgB,MAAAxB,EAAO,KAAAC,EAAM,SAAU,GAAM,MAAOV,EAAI,EAAG,EACpE,CAAE,WAAakB,EAAAzC,EAAO,KAAK,OAAZ,MAAAyC,EAAkB,OAASd,GAAA,YAAAA,EAAM,UAAY,MAAU,GACxE,CAEJ,CAAA,CAGN,EAED,EAEG+B,EAAqC/C,EACxC,OAAQN,GAEH,GAACa,EAAWb,EAAK,QAAQ,GAAK,CAACa,EAAW,MAAM,EAErD,EACA,QAASb,GAAS,CACX,MAAAsD,EAAoBrD,IACjB,CACL,GAAIE,EAAgBH,EAAMC,CAAS,EACnC,YAAa,SAASC,EAAWF,EAAMC,CAAS,CAAC,GACjD,OAAQ,IACNoC,EAAAA,kBAAAA,KAACkB,EACE,iBAAA,CAAA,SAAA,CAAAxD,EAAaC,EAAMC,CAAS,EAAG,IAChCe,EAAA,kBAAA,IAACwC,EAAA,KAAA,CACC,KAAMC,EAAkB,kBAAAxD,IAAc,KAAOD,EAAK,UAAYA,EAAK,UAAU,CAAA,CAAA,CAC/E,EACF,EAEF,QAAStB,EACT,cAAe,GACf,eAAgB,GAChB,cAAe,GACf,aAAc,GACd,KAAM,CAAC,CAAE,IAAAwC,EAAK,OAAAE,KAAa,CACzB,MAAM+B,EAAiB/B,EAAO,GAAG,QAAQ,QAAS,EAAE,EAE9C,CAAE,GAAAN,EAAI,MAAAa,GAAUE,EAAeX,EAAKiC,EAAgB,OAAO,EAC3DO,EAAY/B,GAAA,YAAAA,EAAO,IAAKgC,GAAWA,EAAE,OACrCC,EAA4B,CAChC,MAAOjC,EACP,UAAA1B,EACA,SAAUiB,EAAI,SAAS,UAAYA,EAAI,SAAS,GAChD,WAAYA,EAAI,SAAS,WACzB,KAAM,CACJ,MAAOlB,EAAK,SACZ,SAAUA,EAAK,KACf,iBAAkBC,IAAc,KAAOD,EAAK,UAAYA,EAAK,UAAA,CAEjE,EAGE,OAAAgB,EAAA,kBAAA,IAACyB,EAAA,WAAA,CACC,MAAO3B,EACP,UAAWY,EAAK,QAAS,CAAE,QAASR,EAAI,SAAS,UAAW,EAC5D,SAAUE,EAAO,GACjB,MAAOsC,EACP,UAAAE,EACA,SAAU1C,EAAI,SAAS,SACvB,cAAe,CAAE,KAAM,OAAQ,CAAA,CACjC,CAAA,CAGN,GAGF,MAAO,CAACoC,EAAiB,IAAI,EAAGA,EAAiB,KAAK,CAAC,CAAA,CACxD,EAEGO,EAAa,CAAC,GAAGjD,EAAe,GAAGsC,EAAkB,GAAGG,CAAW,EAGzE,OAAI3C,GACFA,EAAa,QAAQ,CAAC,CAAE,OAAAU,EAAQ,SAAA0C,EAAW,MAAS,CAC9CA,GAAY,GAAKA,EAAWD,EAAW,OAC9BA,EAAA,OAAOC,EAAU,EAAG1C,CAAM,EAErCyC,EAAW,KAAKzC,CAAM,CACxB,CACD,EAGIyC,CACT,EAIahC,EAAiB,CAC5BX,EACA6C,EACAC,IAKI,OAAA,OACJ,MAAOA,GACF5B,EAAAlB,EAAI,SAAS8C,CAA6B,IAA1C,YAAA5B,EAAsD2B,GACtD7C,EAAI,SAAS6C,CAAuB,EACzC,GAAI7C,EAAI,GACR,KAAMA,EAAI,SAAS,UACrB"}
|
|
1
|
+
{"version":3,"file":"buildTreeTableColumns.cjs.js","sources":["../../../../../src/containers/ProjectTreeTable/buildTreeTableColumns.tsx"],"sourcesContent":["import { ColumnDef, FilterFnOption, Row, SortingFn, sortingFns } from '@tanstack/react-table'\nimport { TableRow } from './types/table'\nimport { AttributeData, ProjectTableAttribute, BuiltInFieldOptions } from './types'\nimport { CellWidget, EntityNameWidget, GroupHeaderWidget, ThumbnailWidget } from './widgets'\nimport { getCellId, getCellValue } from './utils/cellUtils'\nimport { LinkColumnHeader, TableCellContent } from './ProjectTreeTable.styled'\nimport clsx from 'clsx'\nimport { SelectionCell } from './components/SelectionCell'\nimport RowSelectionHeader from './components/RowSelectionHeader'\nimport { ROW_SELECTION_COLUMN_ID } from './context/SelectionCellsContext'\nimport { TableGroupBy, useCellEditing, useColumnSettingsContext } from './context'\nimport { NEXT_PAGE_ID } from './hooks/useBuildGroupByTableData'\nimport LoadMoreWidget from './widgets/LoadMoreWidget'\nimport { LinkTypeModel } from '@shared/api'\nimport { LinkWidgetData } from './widgets/LinksWidget'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { getEntityTypeIcon } from '@shared/util'\nimport { NameWidgetData } from '@shared/components/RenameForm'\n\nconst MIN_SIZE = 50\n\n// Wrapper function for sorting that pushes isLoading rows to the bottom\nconst withLoadingStateSort = (sortFn: SortingFn<any>): SortingFn<any> => {\n return (rowA, rowB, ...args) => {\n // If row loading states differ, prioritize non-loading rows\n if (rowA.original.isLoading !== rowB.original.isLoading) {\n return rowA.original.isLoading ? 1 : -1\n }\n // Otherwise, use the original sort function\n return sortFn(rowA, rowB, ...args)\n }\n}\n\nconst pathSort: SortingFn<any> = (rowA, rowB) => {\n const labelA = rowA.original.path || rowA.original.name\n const labelB = rowB.original.path || rowB.original.name\n // sort alphabetically by label\n return labelA.localeCompare(labelB)\n}\n\nconst valueLengthSort: SortingFn<any> = (rowA, rowB, columnId) => {\n const valueA = getCellValue(rowA.original, columnId)\n const valueB = getCellValue(rowB.original, columnId)\n const lengthA = Array.isArray(valueA) ? valueA.length : valueA ? String(valueA).length : 0\n const lengthB = Array.isArray(valueB) ? valueB.length : valueB ? String(valueB).length : 0\n return lengthA - lengthB\n}\n\ntype AttribSortingFn = (rowA: any, rowB: any, columnId: string, attribute?: AttributeData) => number\n// sort by the order of the enum options\nconst attribSort: AttribSortingFn = (rowA, rowB, columnId, attrib) => {\n const valueA = getCellValue(rowA.original, columnId)\n const valueB = getCellValue(rowB.original, columnId)\n // if attrib is defined and has enum options, use them\n if (attrib && attrib.enum) {\n const indexA = attrib.enum.findIndex((o) => o.value === valueA)\n const indexB = attrib.enum.findIndex((o) => o.value === valueB)\n return indexB - indexA < 0 ? 1 : -1\n } else if (attrib?.type === 'datetime') {\n return sortingFns.datetime(rowA, rowB, columnId)\n } else if (attrib?.type === 'boolean') {\n const boolA = valueA === true ? 1 : 0\n const boolB = valueB === true ? 1 : 0\n return boolA - boolB\n } else {\n return sortingFns.alphanumeric(rowA, rowB, columnId)\n }\n}\n\nexport const getLinkLabel = (\n link: Pick<LinkTypeModel, 'linkType'>,\n direction: 'in' | 'out' | string,\n) => `${link.linkType.charAt(0).toUpperCase() + link.linkType.slice(1)} (${direction})`\n\nexport const getLinkKey = (link: Pick<LinkTypeModel, 'name'>, direction: 'in' | 'out' | string) =>\n `${link.name.replaceAll('_', '').replaceAll('-', '').replaceAll('|', '_')}_${direction}`\n\nexport const getLinkColumnId = (\n link: Pick<LinkTypeModel, 'name'>,\n direction: 'in' | 'out' | string,\n) => `link_${getLinkKey(link, direction)}`\n\nexport type DefaultColumns =\n | typeof ROW_SELECTION_COLUMN_ID\n | 'thumbnail'\n | 'name'\n | 'status'\n | 'subType'\n | 'assignees'\n | 'tags'\n | 'createdAt'\n | 'updatedAt'\n\nexport type TreeTableExtraColumn = { column: ColumnDef<TableRow>; position?: number }\n\nexport type BuildTreeTableColumnsProps = {\n attribs: ProjectTableAttribute[]\n links: LinkTypeModel[]\n showHierarchy: boolean\n options: BuiltInFieldOptions\n excluded?: (DefaultColumns | string)[]\n extraColumns?: TreeTableExtraColumn[]\n groupBy?: TableGroupBy\n}\n\nconst buildTreeTableColumns = ({\n attribs,\n links = [],\n showHierarchy,\n options,\n excluded,\n extraColumns,\n groupBy,\n}: BuildTreeTableColumnsProps) => {\n const staticColumns: ColumnDef<TableRow>[] = []\n\n // Helper to check if a column should be included\n const isIncluded = (id: DefaultColumns | string) => !excluded?.includes(id)\n\n // Conditionally add static columns\n if (isIncluded(ROW_SELECTION_COLUMN_ID)) {\n staticColumns.push({\n id: ROW_SELECTION_COLUMN_ID,\n enableResizing: false,\n enableSorting: false,\n enablePinning: false,\n enableHiding: false,\n\n header: () => <RowSelectionHeader />,\n cell: ({ row }) => {\n if (row.original.entityType === 'group') return null\n return <SelectionCell />\n },\n size: 20,\n })\n }\n\n if (isIncluded('thumbnail')) {\n staticColumns.push({\n id: 'thumbnail',\n header: 'Thumbnail',\n size: 63,\n minSize: 24,\n enableResizing: true,\n enableSorting: false,\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n if (!meta) return null\n const cellId = getCellId(row.id, column.id)\n return (\n <ThumbnailWidget\n id={cellId}\n entityId={row.original.entityId || row.id}\n entityType={row.original.entityType}\n updatedAt={row.original.updatedAt}\n icon={row.original.icon}\n projectName={meta?.projectName as string}\n className={clsx('thumbnail', {\n loading: row.original.isLoading,\n })}\n isPlayable={row.original.hasReviewables}\n />\n )\n },\n })\n }\n\n if (isIncluded('name')) {\n staticColumns.push({\n id: 'name',\n accessorKey: 'name',\n header: 'Folder / Task',\n minSize: MIN_SIZE,\n sortingFn: withLoadingStateSort(pathSort),\n enableSorting: groupBy ? false : true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: groupBy ? false : true,\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n const meta = table.options.meta\n const { isEditing } = useCellEditing()\n const { rowHeight = 40 } = useColumnSettingsContext()\n const cellId = getCellId(row.id, column.id)\n\n if (row.original.entityType === NEXT_PAGE_ID && row.original.group) {\n return (\n <LoadMoreWidget\n label={'Load more tasks'}\n id={row.original.group.value}\n onLoadMore={(id) => meta?.loadMoreTasks?.(id)}\n />\n )\n }\n\n return (\n <TableCellContent\n id={cellId}\n className={clsx('large', row.original.entityType, {\n loading: row.original.isLoading,\n hierarchy: showHierarchy,\n })}\n style={{\n paddingLeft: `calc(${row.depth * 1}rem + 8px)`,\n }}\n tabIndex={0}\n >\n {row.original.group ? (\n <GroupHeaderWidget\n id={row.id}\n label={row.original.group.label}\n name={row.original.name}\n icon={row.original.group.icon}\n img={row.original.group.img}\n color={row.original.group.color}\n count={row.original.group.count}\n isExpanded={row.getIsExpanded()}\n isEmpty={row.subRows.length === 0}\n toggleExpanded={row.getToggleExpandedHandler()}\n />\n ) : (\n <EntityNameWidget\n id={row.id}\n label={row.original.label}\n name={row.original.name}\n path={!showHierarchy ? '/' + row.original.parents?.join('/') : undefined}\n showHierarchy={showHierarchy}\n icon={row.original.icon}\n type={row.original.entityType}\n isExpanded={row.getIsExpanded()}\n toggleExpandAll={() => meta?.toggleExpandAll?.([row.id])}\n toggleExpanded={row.getToggleExpandedHandler()}\n rowHeight={rowHeight}\n />\n )}\n {isEditing(cellId) && (\n <CellWidget\n rowId={id}\n className={clsx('name', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n valueData={\n {\n name: row.original.name,\n label: row.original.label,\n meta,\n entityRowId: id,\n columnId: column.id,\n hasVersions: !!row.original.hasVersions,\n } as NameWidgetData\n }\n entityType={type}\n attributeData={{ type: 'name' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={meta?.readOnly?.includes(column.id)}\n />\n )}\n </TableCellContent>\n )\n },\n })\n }\n\n if (isIncluded('status')) {\n staticColumns.push({\n id: 'status',\n accessorKey: 'status',\n minSize: MIN_SIZE,\n header: 'Status',\n sortingFn: withLoadingStateSort((a, b, c) =>\n attribSort(a, b, c, { enum: options.status, type: 'string' }),\n ),\n sortDescFirst: true,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n const meta = table.options.meta\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('status', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'string' }}\n options={meta?.options?.status.filter((s) => s.scope?.includes(type))}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n pt={{\n enum: {\n pt: {\n template: {\n pt: {\n icon: {\n style: {\n fontVariationSettings: \"'FILL' 1, 'wght' 200, 'GRAD' 200, 'opsz' 20\",\n },\n },\n },\n },\n },\n },\n }}\n />\n )\n },\n })\n }\n\n if (isIncluded('subType')) {\n staticColumns.push({\n id: 'subType',\n accessorKey: 'subType',\n header: 'Type',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort((a, b, c) =>\n attribSort(a, b, c, { enum: [...options.folderType, ...options.taskType], type: 'string' }),\n ),\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n const fieldId = type === 'folder' ? 'folderType' : 'taskType'\n const meta = table.options.meta\n return (\n <CellWidget\n rowId={id}\n className={clsx('subType', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'string' }}\n options={\n type === 'folder'\n ? meta?.options?.folderType\n : type === 'task'\n ? meta?.options?.taskType\n : []\n }\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: fieldId, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id) || meta?.readOnly?.includes(fieldId)}\n />\n )\n },\n })\n }\n\n if (isIncluded('assignees')) {\n staticColumns.push({\n id: 'assignees',\n accessorKey: 'assignees',\n header: 'Assignees',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(valueLengthSort),\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n\n if (type === 'folder')\n return (\n <CellWidget\n rowId={id}\n className={clsx('assignees', { loading: row.original.isLoading })}\n columnId={column.id}\n value=\"\"\n isPlaceholder\n />\n )\n return (\n <CellWidget\n rowId={id}\n className={clsx('assignees', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'list_of_strings' }}\n options={meta?.options?.assignee}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n pt={{\n enum: {\n multiSelectClose: value?.length === 0, // close the dropdown on first assignment\n search: true, // enable search at all times\n multipleOverride: false,\n },\n }}\n />\n )\n },\n })\n }\n\n if (isIncluded('tags')) {\n staticColumns.push({\n id: 'tags',\n accessorKey: 'tags',\n header: 'Tags',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(valueLengthSort),\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('tags', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'list_of_strings' }}\n options={meta?.options?.tag}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n enableCustomValues\n />\n )\n },\n })\n }\n\n if (isIncluded('createdAt')) {\n staticColumns.push({\n id: 'createdAt',\n accessorKey: 'createdAt',\n header: 'Created at',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(sortingFns.datetime),\n cell: ({ row, column }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('createdAt', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'datetime' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={true}\n />\n )\n },\n })\n }\n\n if (isIncluded('updatedAt')) {\n staticColumns.push({\n id: 'updatedAt',\n accessorKey: 'updatedAt',\n header: 'Updated at',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(sortingFns.datetime),\n cell: ({ row, column }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('updatedAt', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'datetime' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={true}\n />\n )\n },\n })\n }\n\n const attributeColumns: ColumnDef<TableRow>[] = attribs\n .filter((attrib) => {\n const columnId = 'attrib_' + attrib.name\n // Check if the specific attribute column is excluded\n // or if all built-in attributes are excluded and this is a built-in attribute\n if (!isIncluded(columnId)) return false\n if (attrib.builtin && !isIncluded('attrib')) return false\n return true\n })\n .map((attrib) => {\n const attribColumn: ColumnDef<TableRow> = {\n id: 'attrib_' + attrib.name,\n accessorKey: 'attrib.' + attrib.name,\n header: attrib.data.title || attrib.name,\n minSize: MIN_SIZE,\n filterFn: 'fuzzy' as FilterFnOption<TableRow>,\n sortingFn: withLoadingStateSort((a, b, c) => attribSort(a, b, c, attrib.data)),\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const columnIdParsed = column.id.replace('attrib_', '')\n const { value, id, type } = getValueIdType(row, columnIdParsed, 'attrib')\n const isInherited = !row.original.ownAttrib?.includes(columnIdParsed)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n const isTypeInScope = attrib.scope?.includes(type as (typeof attrib.scope)[number])\n\n // if the attribute is not in scope, we should nothing\n if (!isTypeInScope) return null\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('attrib', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: attrib.data.type || 'string' }}\n options={attrib.data.enum || []}\n isCollapsed={!!row.original.childOnlyMatch}\n isInherited={isInherited && ['folder', 'task'].includes(type)}\n isReadOnly={\n // check attrib is not read only\n attrib.readOnly ||\n // check if there is any other reason the cell should be read only\n meta?.readOnly?.some(\n (id) => id === columnIdParsed || (id === 'attrib' && attrib.builtin),\n )\n }\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: columnIdParsed, value, type, isAttrib: true, rowId: row.id },\n { selection: !!attrib.data.enum?.length ? meta?.selection : undefined },\n )\n }\n />\n )\n },\n }\n return attribColumn\n })\n\n const linkColumns: ColumnDef<TableRow>[] = links\n .filter((link) => {\n // Check if the link type is excluded\n if (!isIncluded(link.linkType) || !isIncluded('link')) return false\n return true\n })\n .flatMap((link) => {\n const createLinkColumn = (direction: 'in' | 'out'): ColumnDef<TableRow> => {\n return {\n id: getLinkColumnId(link, direction),\n accessorKey: `links.${getLinkKey(link, direction)}`,\n header: () => (\n <LinkColumnHeader>\n {getLinkLabel(link, direction)}{' '}\n <Icon\n icon={getEntityTypeIcon(direction === 'in' ? link.inputType : link.outputType)}\n />\n </LinkColumnHeader>\n ),\n minSize: MIN_SIZE,\n enableSorting: false,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column }) => {\n const columnIdParsed = column.id.replace('link_', '')\n\n const { id, value } = getValueIdType(row, columnIdParsed, 'links')\n const cellValue = value?.map((v: any) => v.label)\n const valueData: LinkWidgetData = {\n links: value,\n direction: direction,\n entityId: row.original.entityId || row.original.id,\n entityType: row.original.entityType,\n link: {\n label: link.linkType,\n linkType: link.name,\n targetEntityType: direction === 'in' ? link.inputType : link.outputType,\n },\n }\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('links', { loading: row.original.isLoading })}\n columnId={column.id}\n value={cellValue}\n valueData={valueData}\n folderId={row.original.folderId}\n attributeData={{ type: 'links' }}\n />\n )\n },\n }\n }\n\n return [createLinkColumn('in'), createLinkColumn('out')]\n })\n\n const allColumns = [...staticColumns, ...attributeColumns, ...linkColumns]\n\n // Add extra columns if provided\n if (extraColumns) {\n extraColumns.forEach(({ column, position = -1 }) => {\n if (position >= 0 && position < allColumns.length) {\n allColumns.splice(position, 0, column)\n } else {\n allColumns.push(column)\n }\n })\n }\n\n return allColumns\n}\n\nexport default buildTreeTableColumns\n\nexport const getValueIdType = (\n row: Row<TableRow>,\n field: string,\n nestedField?: keyof TableRow,\n): {\n value: any\n id: string\n type: string\n} => ({\n value: nestedField\n ? (row.original[nestedField as keyof TableRow] as any)?.[field]\n : (row.original[field as keyof TableRow] as any),\n id: row.id,\n type: row.original.entityType,\n})\n"],"names":["MIN_SIZE","withLoadingStateSort","sortFn","rowA","rowB","args","pathSort","labelA","labelB","valueLengthSort","columnId","valueA","getCellValue","valueB","lengthA","lengthB","attribSort","attrib","indexA","o","sortingFns","getLinkLabel","link","direction","getLinkKey","getLinkColumnId","buildTreeTableColumns","attribs","links","showHierarchy","options","excluded","extraColumns","groupBy","staticColumns","isIncluded","id","ROW_SELECTION_COLUMN_ID","jsx","RowSelectionHeader","row","SelectionCell","column","table","meta","cellId","getCellId","ThumbnailWidget","clsx","value","type","getValueIdType","isEditing","useCellEditing","rowHeight","useColumnSettingsContext","NEXT_PAGE_ID","LoadMoreWidget","_a","jsxs","TableCellContent","GroupHeaderWidget","EntityNameWidget","CellWidget","_b","a","b","c","s","fieldId","_c","_d","attributeColumns","columnIdParsed","isInherited","linkColumns","createLinkColumn","LinkColumnHeader","Icon","getEntityTypeIcon","cellValue","v","valueData","allColumns","position","field","nestedField"],"mappings":"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"}
|
|
@@ -120,6 +120,7 @@ import "../../context/AddonContext.es.js";
|
|
|
120
120
|
import "../../context/PowerpackContext.es.js";
|
|
121
121
|
import "../../context/MoveEntityContext.es.js";
|
|
122
122
|
import "../../context/MenuContext.es.js";
|
|
123
|
+
import "../../context/WebsocketContext.es.js";
|
|
123
124
|
import "../../components/ReviewableCard/ReviewableCard.es.js";
|
|
124
125
|
import "../../components/ReviewableProgressCard/ReviewableProgressCard.styled.es.js";
|
|
125
126
|
import "../../components/FileThumbnail/FileThumbnail.es.js";
|
|
@@ -207,7 +208,7 @@ import "../../components/Powerpack/PowerpackButton.es.js";
|
|
|
207
208
|
import "../../components/Powerpack/PricingLink.es.js";
|
|
208
209
|
import "../../components/Powerpack/PowerpackDialog.styled.es.js";
|
|
209
210
|
import "../../components/Powerpack/CTAButton.es.js";
|
|
210
|
-
import "../../components/Powerpack/
|
|
211
|
+
import "../../components/Powerpack/RequiredAddonVersion.es.js";
|
|
211
212
|
import "../../components/SettingsPanel/SettingsPanel.es.js";
|
|
212
213
|
import "../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
|
|
213
214
|
import "../../components/AttributeEditor/components/MinMaxField.es.js";
|
|
@@ -239,7 +240,7 @@ const S = 50, O = (s) => (d, u, ...a) => d.original.isLoading !== u.original.isL
|
|
|
239
240
|
const A = a.enum.findIndex((y) => y.value === I);
|
|
240
241
|
return a.enum.findIndex((y) => y.value === v) - A < 0 ? 1 : -1;
|
|
241
242
|
} else return (a == null ? void 0 : a.type) === "datetime" ? k.datetime(s, d, u) : (a == null ? void 0 : a.type) === "boolean" ? (I === !0 ? 1 : 0) - (v === !0 ? 1 : 0) : k.alphanumeric(s, d, u);
|
|
242
|
-
}, ni = (s, d) => `${s.linkType.charAt(0).toUpperCase() + s.linkType.slice(1)} (${d})`, V = (s, d) => `${s.name.replaceAll("_", "").replaceAll("-", "").replaceAll("|", "_")}_${d}`, ri = (s, d) => `link_${V(s, d)}`,
|
|
243
|
+
}, ni = (s, d) => `${s.linkType.charAt(0).toUpperCase() + s.linkType.slice(1)} (${d})`, V = (s, d) => `${s.name.replaceAll("_", "").replaceAll("-", "").replaceAll("|", "_")}_${d}`, ri = (s, d) => `link_${V(s, d)}`, Tr = ({
|
|
243
244
|
attribs: s,
|
|
244
245
|
links: d = [],
|
|
245
246
|
showHierarchy: u,
|
|
@@ -719,7 +720,7 @@ const S = 50, O = (s) => (d, u, ...a) => d.original.isLoading !== u.original.isL
|
|
|
719
720
|
};
|
|
720
721
|
};
|
|
721
722
|
export {
|
|
722
|
-
|
|
723
|
+
Tr as default,
|
|
723
724
|
ri as getLinkColumnId,
|
|
724
725
|
V as getLinkKey,
|
|
725
726
|
ni as getLinkLabel,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildTreeTableColumns.es.js","sources":["../../../../../src/containers/ProjectTreeTable/buildTreeTableColumns.tsx"],"sourcesContent":["import { ColumnDef, FilterFnOption, Row, SortingFn, sortingFns } from '@tanstack/react-table'\nimport { TableRow } from './types/table'\nimport { AttributeData, ProjectTableAttribute, BuiltInFieldOptions } from './types'\nimport { CellWidget, EntityNameWidget, GroupHeaderWidget, ThumbnailWidget } from './widgets'\nimport { getCellId, getCellValue } from './utils/cellUtils'\nimport { LinkColumnHeader, TableCellContent } from './ProjectTreeTable.styled'\nimport clsx from 'clsx'\nimport { SelectionCell } from './components/SelectionCell'\nimport RowSelectionHeader from './components/RowSelectionHeader'\nimport { ROW_SELECTION_COLUMN_ID } from './context/SelectionCellsContext'\nimport { TableGroupBy, useCellEditing, useColumnSettingsContext } from './context'\nimport { NEXT_PAGE_ID } from './hooks/useBuildGroupByTableData'\nimport LoadMoreWidget from './widgets/LoadMoreWidget'\nimport { LinkTypeModel } from '@shared/api'\nimport { LinkWidgetData } from './widgets/LinksWidget'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { getEntityTypeIcon } from '@shared/util'\nimport { NameWidgetData } from '@shared/components/RenameForm'\n\nconst MIN_SIZE = 50\n\n// Wrapper function for sorting that pushes isLoading rows to the bottom\nconst withLoadingStateSort = (sortFn: SortingFn<any>): SortingFn<any> => {\n return (rowA, rowB, ...args) => {\n // If row loading states differ, prioritize non-loading rows\n if (rowA.original.isLoading !== rowB.original.isLoading) {\n return rowA.original.isLoading ? 1 : -1\n }\n // Otherwise, use the original sort function\n return sortFn(rowA, rowB, ...args)\n }\n}\n\nconst pathSort: SortingFn<any> = (rowA, rowB) => {\n const labelA = rowA.original.path || rowA.original.name\n const labelB = rowB.original.path || rowB.original.name\n // sort alphabetically by label\n return labelA.localeCompare(labelB)\n}\n\nconst valueLengthSort: SortingFn<any> = (rowA, rowB, columnId) => {\n const valueA = getCellValue(rowA.original, columnId)\n const valueB = getCellValue(rowB.original, columnId)\n const lengthA = Array.isArray(valueA) ? valueA.length : valueA ? String(valueA).length : 0\n const lengthB = Array.isArray(valueB) ? valueB.length : valueB ? String(valueB).length : 0\n return lengthA - lengthB\n}\n\ntype AttribSortingFn = (rowA: any, rowB: any, columnId: string, attribute?: AttributeData) => number\n// sort by the order of the enum options\nconst attribSort: AttribSortingFn = (rowA, rowB, columnId, attrib) => {\n const valueA = getCellValue(rowA.original, columnId)\n const valueB = getCellValue(rowB.original, columnId)\n // if attrib is defined and has enum options, use them\n if (attrib && attrib.enum) {\n const indexA = attrib.enum.findIndex((o) => o.value === valueA)\n const indexB = attrib.enum.findIndex((o) => o.value === valueB)\n return indexB - indexA < 0 ? 1 : -1\n } else if (attrib?.type === 'datetime') {\n return sortingFns.datetime(rowA, rowB, columnId)\n } else if (attrib?.type === 'boolean') {\n const boolA = valueA === true ? 1 : 0\n const boolB = valueB === true ? 1 : 0\n return boolA - boolB\n } else {\n return sortingFns.alphanumeric(rowA, rowB, columnId)\n }\n}\n\nexport const getLinkLabel = (\n link: Pick<LinkTypeModel, 'linkType'>,\n direction: 'in' | 'out' | string,\n) => `${link.linkType.charAt(0).toUpperCase() + link.linkType.slice(1)} (${direction})`\n\nexport const getLinkKey = (link: Pick<LinkTypeModel, 'name'>, direction: 'in' | 'out' | string) =>\n `${link.name.replaceAll('_', '').replaceAll('-', '').replaceAll('|', '_')}_${direction}`\n\nexport const getLinkColumnId = (\n link: Pick<LinkTypeModel, 'name'>,\n direction: 'in' | 'out' | string,\n) => `link_${getLinkKey(link, direction)}`\n\nexport type DefaultColumns =\n | typeof ROW_SELECTION_COLUMN_ID\n | 'thumbnail'\n | 'name'\n | 'status'\n | 'subType'\n | 'assignees'\n | 'tags'\n | 'createdAt'\n | 'updatedAt'\n\nexport type TreeTableExtraColumn = { column: ColumnDef<TableRow>; position?: number }\n\nexport type BuildTreeTableColumnsProps = {\n attribs: ProjectTableAttribute[]\n links: LinkTypeModel[]\n showHierarchy: boolean\n options: BuiltInFieldOptions\n excluded?: (DefaultColumns | string)[]\n extraColumns?: TreeTableExtraColumn[]\n groupBy?: TableGroupBy\n}\n\nconst buildTreeTableColumns = ({\n attribs,\n links = [],\n showHierarchy,\n options,\n excluded,\n extraColumns,\n groupBy,\n}: BuildTreeTableColumnsProps) => {\n const staticColumns: ColumnDef<TableRow>[] = []\n\n // Helper to check if a column should be included\n const isIncluded = (id: DefaultColumns | string) => !excluded?.includes(id)\n\n // Conditionally add static columns\n if (isIncluded(ROW_SELECTION_COLUMN_ID)) {\n staticColumns.push({\n id: ROW_SELECTION_COLUMN_ID,\n enableResizing: false,\n enableSorting: false,\n enablePinning: false,\n enableHiding: false,\n\n header: () => <RowSelectionHeader />,\n cell: ({ row }) => {\n if (row.original.entityType === 'group') return null\n return <SelectionCell />\n },\n size: 20,\n })\n }\n\n if (isIncluded('thumbnail')) {\n staticColumns.push({\n id: 'thumbnail',\n header: 'Thumbnail',\n size: 63,\n minSize: 24,\n enableResizing: true,\n enableSorting: false,\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n if (!meta) return null\n const cellId = getCellId(row.id, column.id)\n return (\n <ThumbnailWidget\n id={cellId}\n entityId={row.original.entityId || row.id}\n entityType={row.original.entityType}\n updatedAt={row.original.updatedAt}\n icon={row.original.icon}\n projectName={meta?.projectName as string}\n className={clsx('thumbnail', {\n loading: row.original.isLoading,\n })}\n isPlayable={row.original.hasReviewables}\n />\n )\n },\n })\n }\n\n if (isIncluded('name')) {\n staticColumns.push({\n id: 'name',\n accessorKey: 'name',\n header: 'Folder / Task',\n minSize: MIN_SIZE,\n sortingFn: withLoadingStateSort(pathSort),\n enableSorting: groupBy ? false : true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: groupBy ? false : true,\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n const meta = table.options.meta\n const { isEditing } = useCellEditing()\n const { rowHeight = 40 } = useColumnSettingsContext()\n const cellId = getCellId(row.id, column.id)\n\n if (row.original.entityType === NEXT_PAGE_ID && row.original.group) {\n return (\n <LoadMoreWidget\n label={'Load more tasks'}\n id={row.original.group.value}\n onLoadMore={(id) => meta?.loadMoreTasks?.(id)}\n />\n )\n }\n\n return (\n <TableCellContent\n id={cellId}\n className={clsx('large', row.original.entityType, {\n loading: row.original.isLoading,\n hierarchy: showHierarchy,\n })}\n style={{\n paddingLeft: `calc(${row.depth * 1}rem + 8px)`,\n }}\n tabIndex={0}\n >\n {row.original.group ? (\n <GroupHeaderWidget\n id={row.id}\n label={row.original.group.label}\n name={row.original.name}\n icon={row.original.group.icon}\n img={row.original.group.img}\n color={row.original.group.color}\n count={row.original.group.count}\n isExpanded={row.getIsExpanded()}\n isEmpty={row.subRows.length === 0}\n toggleExpanded={row.getToggleExpandedHandler()}\n />\n ) : (\n <EntityNameWidget\n id={row.id}\n label={row.original.label}\n name={row.original.name}\n path={!showHierarchy ? '/' + row.original.parents?.join('/') : undefined}\n showHierarchy={showHierarchy}\n icon={row.original.icon}\n type={row.original.entityType}\n isExpanded={row.getIsExpanded()}\n toggleExpandAll={() => meta?.toggleExpandAll?.([row.id])}\n toggleExpanded={row.getToggleExpandedHandler()}\n rowHeight={rowHeight}\n />\n )}\n {isEditing(cellId) && (\n <CellWidget\n rowId={id}\n className={clsx('name', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n valueData={\n {\n name: row.original.name,\n label: row.original.label,\n meta,\n entityRowId: id,\n columnId: column.id,\n hasVersions: !!row.original.hasVersions,\n } as NameWidgetData\n }\n entityType={type}\n attributeData={{ type: 'name' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={meta?.readOnly?.includes(column.id)}\n />\n )}\n </TableCellContent>\n )\n },\n })\n }\n\n if (isIncluded('status')) {\n staticColumns.push({\n id: 'status',\n accessorKey: 'status',\n minSize: MIN_SIZE,\n header: 'Status',\n sortingFn: withLoadingStateSort((a, b, c) =>\n attribSort(a, b, c, { enum: options.status, type: 'string' }),\n ),\n sortDescFirst: true,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n const meta = table.options.meta\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('status', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'string' }}\n options={meta?.options?.status.filter((s) => s.scope?.includes(type))}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n pt={{\n enum: {\n pt: {\n template: {\n pt: {\n icon: {\n style: {\n fontVariationSettings: \"'FILL' 1, 'wght' 200, 'GRAD' 200, 'opsz' 20\",\n },\n },\n },\n },\n },\n },\n }}\n />\n )\n },\n })\n }\n\n if (isIncluded('subType')) {\n staticColumns.push({\n id: 'subType',\n accessorKey: 'subType',\n header: 'Type',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort((a, b, c) =>\n attribSort(a, b, c, { enum: [...options.folderType, ...options.taskType], type: 'string' }),\n ),\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n const fieldId = type === 'folder' ? 'folderType' : 'taskType'\n const meta = table.options.meta\n return (\n <CellWidget\n rowId={id}\n className={clsx('subType', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'string' }}\n options={\n type === 'folder'\n ? meta?.options?.folderType\n : type === 'task'\n ? meta?.options?.taskType\n : []\n }\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: fieldId, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id) || meta?.readOnly?.includes(fieldId)}\n />\n )\n },\n })\n }\n\n if (isIncluded('assignees')) {\n staticColumns.push({\n id: 'assignees',\n accessorKey: 'assignees',\n header: 'Assignees',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(valueLengthSort),\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n\n if (type === 'folder')\n return (\n <CellWidget\n rowId={id}\n className={clsx('assignees', { loading: row.original.isLoading })}\n columnId={column.id}\n value=\"\"\n isPlaceholder\n />\n )\n return (\n <CellWidget\n rowId={id}\n className={clsx('assignees', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'list_of_strings' }}\n options={meta?.options?.assignee}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n pt={{\n enum: {\n multiSelectClose: value?.length === 0, // close the dropdown on first assignment\n search: true, // enable search at all times\n multipleOverride: false,\n },\n }}\n />\n )\n },\n })\n }\n\n if (isIncluded('tags')) {\n staticColumns.push({\n id: 'tags',\n accessorKey: 'tags',\n header: 'Tags',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(valueLengthSort),\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('tags', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'list_of_strings' }}\n options={meta?.options?.tag}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n enableCustomValues\n />\n )\n },\n })\n }\n\n if (isIncluded('createdAt')) {\n staticColumns.push({\n id: 'createdAt',\n accessorKey: 'createdAt',\n header: 'Created at',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(sortingFns.datetime),\n cell: ({ row, column }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('createdAt', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'datetime' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={true}\n />\n )\n },\n })\n }\n\n if (isIncluded('updatedAt')) {\n staticColumns.push({\n id: 'updatedAt',\n accessorKey: 'updatedAt',\n header: 'Updated at',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(sortingFns.datetime),\n cell: ({ row, column }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('updatedAt', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'datetime' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={true}\n />\n )\n },\n })\n }\n\n const attributeColumns: ColumnDef<TableRow>[] = attribs\n .filter((attrib) => {\n const columnId = 'attrib_' + attrib.name\n // Check if the specific attribute column is excluded\n // or if all built-in attributes are excluded and this is a built-in attribute\n if (!isIncluded(columnId)) return false\n if (attrib.builtin && !isIncluded('attrib')) return false\n return true\n })\n .map((attrib) => {\n const attribColumn: ColumnDef<TableRow> = {\n id: 'attrib_' + attrib.name,\n accessorKey: 'attrib.' + attrib.name,\n header: attrib.data.title || attrib.name,\n minSize: MIN_SIZE,\n filterFn: 'fuzzy' as FilterFnOption<TableRow>,\n sortingFn: withLoadingStateSort((a, b, c) => attribSort(a, b, c, attrib.data)),\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const columnIdParsed = column.id.replace('attrib_', '')\n const { value, id, type } = getValueIdType(row, columnIdParsed, 'attrib')\n const isInherited = !row.original.ownAttrib?.includes(columnIdParsed)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n const isTypeInScope = attrib.scope?.includes(type as (typeof attrib.scope)[number])\n\n // if the attribute is not in scope, we should nothing\n if (!isTypeInScope) return null\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('attrib', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: attrib.data.type || 'string' }}\n options={attrib.data.enum || []}\n isCollapsed={!!row.original.childOnlyMatch}\n isInherited={isInherited && ['folder', 'task'].includes(type)}\n isReadOnly={\n // check attrib is not read only\n attrib.readOnly ||\n // check if there is any other reason the cell should be read only\n meta?.readOnly?.some(\n (id) => id === columnIdParsed || (id === 'attrib' && attrib.builtin),\n )\n }\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: columnIdParsed, value, type, isAttrib: true, rowId: row.id },\n { selection: !!attrib.data.enum?.length ? meta?.selection : undefined },\n )\n }\n />\n )\n },\n }\n return attribColumn\n })\n\n const linkColumns: ColumnDef<TableRow>[] = links\n .filter((link) => {\n // Check if the link type is excluded\n if (!isIncluded(link.linkType) || !isIncluded('link')) return false\n return true\n })\n .flatMap((link) => {\n const createLinkColumn = (direction: 'in' | 'out'): ColumnDef<TableRow> => {\n return {\n id: getLinkColumnId(link, direction),\n accessorKey: `links.${getLinkKey(link, direction)}`,\n header: () => (\n <LinkColumnHeader>\n {getLinkLabel(link, direction)}{' '}\n <Icon\n icon={getEntityTypeIcon(direction === 'in' ? link.inputType : link.outputType)}\n />\n </LinkColumnHeader>\n ),\n minSize: MIN_SIZE,\n enableSorting: false,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column }) => {\n const columnIdParsed = column.id.replace('link_', '')\n\n const { id, value } = getValueIdType(row, columnIdParsed, 'links')\n const cellValue = value?.map((v: any) => v.label)\n const valueData: LinkWidgetData = {\n links: value,\n direction: direction,\n entityId: row.original.entityId || row.original.id,\n entityType: row.original.entityType,\n link: {\n label: link.linkType,\n linkType: link.name,\n targetEntityType: direction === 'in' ? link.inputType : link.outputType,\n },\n }\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('links', { loading: row.original.isLoading })}\n columnId={column.id}\n value={cellValue}\n valueData={valueData}\n folderId={row.original.folderId}\n attributeData={{ type: 'links' }}\n />\n )\n },\n }\n }\n\n return [createLinkColumn('in'), createLinkColumn('out')]\n })\n\n const allColumns = [...staticColumns, ...attributeColumns, ...linkColumns]\n\n // Add extra columns if provided\n if (extraColumns) {\n extraColumns.forEach(({ column, position = -1 }) => {\n if (position >= 0 && position < allColumns.length) {\n allColumns.splice(position, 0, column)\n } else {\n allColumns.push(column)\n }\n })\n }\n\n return allColumns\n}\n\nexport default buildTreeTableColumns\n\nexport const getValueIdType = (\n row: Row<TableRow>,\n field: string,\n nestedField?: keyof TableRow,\n): {\n value: any\n id: string\n type: string\n} => ({\n value: nestedField\n ? (row.original[nestedField as keyof TableRow] as any)?.[field]\n : (row.original[field as keyof TableRow] as any),\n id: row.id,\n type: row.original.entityType,\n})\n"],"names":["MIN_SIZE","withLoadingStateSort","sortFn","rowA","rowB","args","pathSort","labelA","labelB","valueLengthSort","columnId","valueA","getCellValue","valueB","lengthA","lengthB","attribSort","attrib","indexA","o","sortingFns","getLinkLabel","link","direction","getLinkKey","getLinkColumnId","buildTreeTableColumns","attribs","links","showHierarchy","options","excluded","extraColumns","groupBy","staticColumns","isIncluded","id","ROW_SELECTION_COLUMN_ID","jsx","RowSelectionHeader","row","SelectionCell","column","table","meta","cellId","getCellId","ThumbnailWidget","clsx","value","type","getValueIdType","isEditing","useCellEditing","rowHeight","useColumnSettingsContext","NEXT_PAGE_ID","LoadMoreWidget","_a","jsxs","TableCellContent","GroupHeaderWidget","EntityNameWidget","CellWidget","_b","a","b","c","s","fieldId","_c","_d","attributeColumns","columnIdParsed","isInherited","linkColumns","createLinkColumn","LinkColumnHeader","Icon","getEntityTypeIcon","cellValue","v","valueData","allColumns","position","field","nestedField"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"buildTreeTableColumns.es.js","sources":["../../../../../src/containers/ProjectTreeTable/buildTreeTableColumns.tsx"],"sourcesContent":["import { ColumnDef, FilterFnOption, Row, SortingFn, sortingFns } from '@tanstack/react-table'\nimport { TableRow } from './types/table'\nimport { AttributeData, ProjectTableAttribute, BuiltInFieldOptions } from './types'\nimport { CellWidget, EntityNameWidget, GroupHeaderWidget, ThumbnailWidget } from './widgets'\nimport { getCellId, getCellValue } from './utils/cellUtils'\nimport { LinkColumnHeader, TableCellContent } from './ProjectTreeTable.styled'\nimport clsx from 'clsx'\nimport { SelectionCell } from './components/SelectionCell'\nimport RowSelectionHeader from './components/RowSelectionHeader'\nimport { ROW_SELECTION_COLUMN_ID } from './context/SelectionCellsContext'\nimport { TableGroupBy, useCellEditing, useColumnSettingsContext } from './context'\nimport { NEXT_PAGE_ID } from './hooks/useBuildGroupByTableData'\nimport LoadMoreWidget from './widgets/LoadMoreWidget'\nimport { LinkTypeModel } from '@shared/api'\nimport { LinkWidgetData } from './widgets/LinksWidget'\nimport { Icon } from '@ynput/ayon-react-components'\nimport { getEntityTypeIcon } from '@shared/util'\nimport { NameWidgetData } from '@shared/components/RenameForm'\n\nconst MIN_SIZE = 50\n\n// Wrapper function for sorting that pushes isLoading rows to the bottom\nconst withLoadingStateSort = (sortFn: SortingFn<any>): SortingFn<any> => {\n return (rowA, rowB, ...args) => {\n // If row loading states differ, prioritize non-loading rows\n if (rowA.original.isLoading !== rowB.original.isLoading) {\n return rowA.original.isLoading ? 1 : -1\n }\n // Otherwise, use the original sort function\n return sortFn(rowA, rowB, ...args)\n }\n}\n\nconst pathSort: SortingFn<any> = (rowA, rowB) => {\n const labelA = rowA.original.path || rowA.original.name\n const labelB = rowB.original.path || rowB.original.name\n // sort alphabetically by label\n return labelA.localeCompare(labelB)\n}\n\nconst valueLengthSort: SortingFn<any> = (rowA, rowB, columnId) => {\n const valueA = getCellValue(rowA.original, columnId)\n const valueB = getCellValue(rowB.original, columnId)\n const lengthA = Array.isArray(valueA) ? valueA.length : valueA ? String(valueA).length : 0\n const lengthB = Array.isArray(valueB) ? valueB.length : valueB ? String(valueB).length : 0\n return lengthA - lengthB\n}\n\ntype AttribSortingFn = (rowA: any, rowB: any, columnId: string, attribute?: AttributeData) => number\n// sort by the order of the enum options\nconst attribSort: AttribSortingFn = (rowA, rowB, columnId, attrib) => {\n const valueA = getCellValue(rowA.original, columnId)\n const valueB = getCellValue(rowB.original, columnId)\n // if attrib is defined and has enum options, use them\n if (attrib && attrib.enum) {\n const indexA = attrib.enum.findIndex((o) => o.value === valueA)\n const indexB = attrib.enum.findIndex((o) => o.value === valueB)\n return indexB - indexA < 0 ? 1 : -1\n } else if (attrib?.type === 'datetime') {\n return sortingFns.datetime(rowA, rowB, columnId)\n } else if (attrib?.type === 'boolean') {\n const boolA = valueA === true ? 1 : 0\n const boolB = valueB === true ? 1 : 0\n return boolA - boolB\n } else {\n return sortingFns.alphanumeric(rowA, rowB, columnId)\n }\n}\n\nexport const getLinkLabel = (\n link: Pick<LinkTypeModel, 'linkType'>,\n direction: 'in' | 'out' | string,\n) => `${link.linkType.charAt(0).toUpperCase() + link.linkType.slice(1)} (${direction})`\n\nexport const getLinkKey = (link: Pick<LinkTypeModel, 'name'>, direction: 'in' | 'out' | string) =>\n `${link.name.replaceAll('_', '').replaceAll('-', '').replaceAll('|', '_')}_${direction}`\n\nexport const getLinkColumnId = (\n link: Pick<LinkTypeModel, 'name'>,\n direction: 'in' | 'out' | string,\n) => `link_${getLinkKey(link, direction)}`\n\nexport type DefaultColumns =\n | typeof ROW_SELECTION_COLUMN_ID\n | 'thumbnail'\n | 'name'\n | 'status'\n | 'subType'\n | 'assignees'\n | 'tags'\n | 'createdAt'\n | 'updatedAt'\n\nexport type TreeTableExtraColumn = { column: ColumnDef<TableRow>; position?: number }\n\nexport type BuildTreeTableColumnsProps = {\n attribs: ProjectTableAttribute[]\n links: LinkTypeModel[]\n showHierarchy: boolean\n options: BuiltInFieldOptions\n excluded?: (DefaultColumns | string)[]\n extraColumns?: TreeTableExtraColumn[]\n groupBy?: TableGroupBy\n}\n\nconst buildTreeTableColumns = ({\n attribs,\n links = [],\n showHierarchy,\n options,\n excluded,\n extraColumns,\n groupBy,\n}: BuildTreeTableColumnsProps) => {\n const staticColumns: ColumnDef<TableRow>[] = []\n\n // Helper to check if a column should be included\n const isIncluded = (id: DefaultColumns | string) => !excluded?.includes(id)\n\n // Conditionally add static columns\n if (isIncluded(ROW_SELECTION_COLUMN_ID)) {\n staticColumns.push({\n id: ROW_SELECTION_COLUMN_ID,\n enableResizing: false,\n enableSorting: false,\n enablePinning: false,\n enableHiding: false,\n\n header: () => <RowSelectionHeader />,\n cell: ({ row }) => {\n if (row.original.entityType === 'group') return null\n return <SelectionCell />\n },\n size: 20,\n })\n }\n\n if (isIncluded('thumbnail')) {\n staticColumns.push({\n id: 'thumbnail',\n header: 'Thumbnail',\n size: 63,\n minSize: 24,\n enableResizing: true,\n enableSorting: false,\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n if (!meta) return null\n const cellId = getCellId(row.id, column.id)\n return (\n <ThumbnailWidget\n id={cellId}\n entityId={row.original.entityId || row.id}\n entityType={row.original.entityType}\n updatedAt={row.original.updatedAt}\n icon={row.original.icon}\n projectName={meta?.projectName as string}\n className={clsx('thumbnail', {\n loading: row.original.isLoading,\n })}\n isPlayable={row.original.hasReviewables}\n />\n )\n },\n })\n }\n\n if (isIncluded('name')) {\n staticColumns.push({\n id: 'name',\n accessorKey: 'name',\n header: 'Folder / Task',\n minSize: MIN_SIZE,\n sortingFn: withLoadingStateSort(pathSort),\n enableSorting: groupBy ? false : true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: groupBy ? false : true,\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n const meta = table.options.meta\n const { isEditing } = useCellEditing()\n const { rowHeight = 40 } = useColumnSettingsContext()\n const cellId = getCellId(row.id, column.id)\n\n if (row.original.entityType === NEXT_PAGE_ID && row.original.group) {\n return (\n <LoadMoreWidget\n label={'Load more tasks'}\n id={row.original.group.value}\n onLoadMore={(id) => meta?.loadMoreTasks?.(id)}\n />\n )\n }\n\n return (\n <TableCellContent\n id={cellId}\n className={clsx('large', row.original.entityType, {\n loading: row.original.isLoading,\n hierarchy: showHierarchy,\n })}\n style={{\n paddingLeft: `calc(${row.depth * 1}rem + 8px)`,\n }}\n tabIndex={0}\n >\n {row.original.group ? (\n <GroupHeaderWidget\n id={row.id}\n label={row.original.group.label}\n name={row.original.name}\n icon={row.original.group.icon}\n img={row.original.group.img}\n color={row.original.group.color}\n count={row.original.group.count}\n isExpanded={row.getIsExpanded()}\n isEmpty={row.subRows.length === 0}\n toggleExpanded={row.getToggleExpandedHandler()}\n />\n ) : (\n <EntityNameWidget\n id={row.id}\n label={row.original.label}\n name={row.original.name}\n path={!showHierarchy ? '/' + row.original.parents?.join('/') : undefined}\n showHierarchy={showHierarchy}\n icon={row.original.icon}\n type={row.original.entityType}\n isExpanded={row.getIsExpanded()}\n toggleExpandAll={() => meta?.toggleExpandAll?.([row.id])}\n toggleExpanded={row.getToggleExpandedHandler()}\n rowHeight={rowHeight}\n />\n )}\n {isEditing(cellId) && (\n <CellWidget\n rowId={id}\n className={clsx('name', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n valueData={\n {\n name: row.original.name,\n label: row.original.label,\n meta,\n entityRowId: id,\n columnId: column.id,\n hasVersions: !!row.original.hasVersions,\n } as NameWidgetData\n }\n entityType={type}\n attributeData={{ type: 'name' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={meta?.readOnly?.includes(column.id)}\n />\n )}\n </TableCellContent>\n )\n },\n })\n }\n\n if (isIncluded('status')) {\n staticColumns.push({\n id: 'status',\n accessorKey: 'status',\n minSize: MIN_SIZE,\n header: 'Status',\n sortingFn: withLoadingStateSort((a, b, c) =>\n attribSort(a, b, c, { enum: options.status, type: 'string' }),\n ),\n sortDescFirst: true,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n const meta = table.options.meta\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('status', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'string' }}\n options={meta?.options?.status.filter((s) => s.scope?.includes(type))}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n pt={{\n enum: {\n pt: {\n template: {\n pt: {\n icon: {\n style: {\n fontVariationSettings: \"'FILL' 1, 'wght' 200, 'GRAD' 200, 'opsz' 20\",\n },\n },\n },\n },\n },\n },\n }}\n />\n )\n },\n })\n }\n\n if (isIncluded('subType')) {\n staticColumns.push({\n id: 'subType',\n accessorKey: 'subType',\n header: 'Type',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort((a, b, c) =>\n attribSort(a, b, c, { enum: [...options.folderType, ...options.taskType], type: 'string' }),\n ),\n cell: ({ row, column, table }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n const fieldId = type === 'folder' ? 'folderType' : 'taskType'\n const meta = table.options.meta\n return (\n <CellWidget\n rowId={id}\n className={clsx('subType', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'string' }}\n options={\n type === 'folder'\n ? meta?.options?.folderType\n : type === 'task'\n ? meta?.options?.taskType\n : []\n }\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: fieldId, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id) || meta?.readOnly?.includes(fieldId)}\n />\n )\n },\n })\n }\n\n if (isIncluded('assignees')) {\n staticColumns.push({\n id: 'assignees',\n accessorKey: 'assignees',\n header: 'Assignees',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(valueLengthSort),\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n\n if (type === 'folder')\n return (\n <CellWidget\n rowId={id}\n className={clsx('assignees', { loading: row.original.isLoading })}\n columnId={column.id}\n value=\"\"\n isPlaceholder\n />\n )\n return (\n <CellWidget\n rowId={id}\n className={clsx('assignees', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'list_of_strings' }}\n options={meta?.options?.assignee}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n pt={{\n enum: {\n multiSelectClose: value?.length === 0, // close the dropdown on first assignment\n search: true, // enable search at all times\n multipleOverride: false,\n },\n }}\n />\n )\n },\n })\n }\n\n if (isIncluded('tags')) {\n staticColumns.push({\n id: 'tags',\n accessorKey: 'tags',\n header: 'Tags',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(valueLengthSort),\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('tags', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'list_of_strings' }}\n options={meta?.options?.tag}\n isCollapsed={!!row.original.childOnlyMatch}\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: column.id, value, type, rowId: row.id },\n { selection: meta?.selection },\n )\n }\n isReadOnly={meta?.readOnly?.includes(column.id)}\n enableCustomValues\n />\n )\n },\n })\n }\n\n if (isIncluded('createdAt')) {\n staticColumns.push({\n id: 'createdAt',\n accessorKey: 'createdAt',\n header: 'Created at',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(sortingFns.datetime),\n cell: ({ row, column }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('createdAt', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'datetime' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={true}\n />\n )\n },\n })\n }\n\n if (isIncluded('updatedAt')) {\n staticColumns.push({\n id: 'updatedAt',\n accessorKey: 'updatedAt',\n header: 'Updated at',\n minSize: MIN_SIZE,\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n sortingFn: withLoadingStateSort(sortingFns.datetime),\n cell: ({ row, column }) => {\n const { value, id, type } = getValueIdType(row, column.id)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n return (\n <CellWidget\n rowId={id}\n className={clsx('updatedAt', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: 'datetime' }}\n isCollapsed={!!row.original.childOnlyMatch}\n isReadOnly={true}\n />\n )\n },\n })\n }\n\n const attributeColumns: ColumnDef<TableRow>[] = attribs\n .filter((attrib) => {\n const columnId = 'attrib_' + attrib.name\n // Check if the specific attribute column is excluded\n // or if all built-in attributes are excluded and this is a built-in attribute\n if (!isIncluded(columnId)) return false\n if (attrib.builtin && !isIncluded('attrib')) return false\n return true\n })\n .map((attrib) => {\n const attribColumn: ColumnDef<TableRow> = {\n id: 'attrib_' + attrib.name,\n accessorKey: 'attrib.' + attrib.name,\n header: attrib.data.title || attrib.name,\n minSize: MIN_SIZE,\n filterFn: 'fuzzy' as FilterFnOption<TableRow>,\n sortingFn: withLoadingStateSort((a, b, c) => attribSort(a, b, c, attrib.data)),\n enableSorting: true,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column, table }) => {\n const meta = table.options.meta\n const columnIdParsed = column.id.replace('attrib_', '')\n const { value, id, type } = getValueIdType(row, columnIdParsed, 'attrib')\n const isInherited = !row.original.ownAttrib?.includes(columnIdParsed)\n if (['group', NEXT_PAGE_ID].includes(type)) return null\n const isTypeInScope = attrib.scope?.includes(type as (typeof attrib.scope)[number])\n\n // if the attribute is not in scope, we should nothing\n if (!isTypeInScope) return null\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('attrib', { loading: row.original.isLoading })}\n columnId={column.id}\n value={value}\n attributeData={{ type: attrib.data.type || 'string' }}\n options={attrib.data.enum || []}\n isCollapsed={!!row.original.childOnlyMatch}\n isInherited={isInherited && ['folder', 'task'].includes(type)}\n isReadOnly={\n // check attrib is not read only\n attrib.readOnly ||\n // check if there is any other reason the cell should be read only\n meta?.readOnly?.some(\n (id) => id === columnIdParsed || (id === 'attrib' && attrib.builtin),\n )\n }\n onChange={(value) =>\n meta?.updateEntities?.(\n { field: columnIdParsed, value, type, isAttrib: true, rowId: row.id },\n { selection: !!attrib.data.enum?.length ? meta?.selection : undefined },\n )\n }\n />\n )\n },\n }\n return attribColumn\n })\n\n const linkColumns: ColumnDef<TableRow>[] = links\n .filter((link) => {\n // Check if the link type is excluded\n if (!isIncluded(link.linkType) || !isIncluded('link')) return false\n return true\n })\n .flatMap((link) => {\n const createLinkColumn = (direction: 'in' | 'out'): ColumnDef<TableRow> => {\n return {\n id: getLinkColumnId(link, direction),\n accessorKey: `links.${getLinkKey(link, direction)}`,\n header: () => (\n <LinkColumnHeader>\n {getLinkLabel(link, direction)}{' '}\n <Icon\n icon={getEntityTypeIcon(direction === 'in' ? link.inputType : link.outputType)}\n />\n </LinkColumnHeader>\n ),\n minSize: MIN_SIZE,\n enableSorting: false,\n enableResizing: true,\n enablePinning: true,\n enableHiding: true,\n cell: ({ row, column }) => {\n const columnIdParsed = column.id.replace('link_', '')\n\n const { id, value } = getValueIdType(row, columnIdParsed, 'links')\n const cellValue = value?.map((v: any) => v.label)\n const valueData: LinkWidgetData = {\n links: value,\n direction: direction,\n entityId: row.original.entityId || row.original.id,\n entityType: row.original.entityType,\n link: {\n label: link.linkType,\n linkType: link.name,\n targetEntityType: direction === 'in' ? link.inputType : link.outputType,\n },\n }\n\n return (\n <CellWidget\n rowId={id}\n className={clsx('links', { loading: row.original.isLoading })}\n columnId={column.id}\n value={cellValue}\n valueData={valueData}\n folderId={row.original.folderId}\n attributeData={{ type: 'links' }}\n />\n )\n },\n }\n }\n\n return [createLinkColumn('in'), createLinkColumn('out')]\n })\n\n const allColumns = [...staticColumns, ...attributeColumns, ...linkColumns]\n\n // Add extra columns if provided\n if (extraColumns) {\n extraColumns.forEach(({ column, position = -1 }) => {\n if (position >= 0 && position < allColumns.length) {\n allColumns.splice(position, 0, column)\n } else {\n allColumns.push(column)\n }\n })\n }\n\n return allColumns\n}\n\nexport default buildTreeTableColumns\n\nexport const getValueIdType = (\n row: Row<TableRow>,\n field: string,\n nestedField?: keyof TableRow,\n): {\n value: any\n id: string\n type: string\n} => ({\n value: nestedField\n ? (row.original[nestedField as keyof TableRow] as any)?.[field]\n : (row.original[field as keyof TableRow] as any),\n id: row.id,\n type: row.original.entityType,\n})\n"],"names":["MIN_SIZE","withLoadingStateSort","sortFn","rowA","rowB","args","pathSort","labelA","labelB","valueLengthSort","columnId","valueA","getCellValue","valueB","lengthA","lengthB","attribSort","attrib","indexA","o","sortingFns","getLinkLabel","link","direction","getLinkKey","getLinkColumnId","buildTreeTableColumns","attribs","links","showHierarchy","options","excluded","extraColumns","groupBy","staticColumns","isIncluded","id","ROW_SELECTION_COLUMN_ID","jsx","RowSelectionHeader","row","SelectionCell","column","table","meta","cellId","getCellId","ThumbnailWidget","clsx","value","type","getValueIdType","isEditing","useCellEditing","rowHeight","useColumnSettingsContext","NEXT_PAGE_ID","LoadMoreWidget","_a","jsxs","TableCellContent","GroupHeaderWidget","EntityNameWidget","CellWidget","_b","a","b","c","s","fieldId","_c","_d","attributeColumns","columnIdParsed","isInherited","linkColumns","createLinkColumn","LinkColumnHeader","Icon","getEntityTypeIcon","cellValue","v","valueData","allColumns","position","field","nestedField"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("../../../../../_virtual/jsx-runtime.cjs.js"),M=require("@ynput/ayon-react-components"),R=require("styled-components"),k=require("react");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");const G=require("../../../context/MenuContext.cjs.js");require("react-toastify");require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../context/CellEditingContext.cjs.js");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../ProjectTreeTable.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");require("../context/ProjectTableContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("./GroupSettingsFallback.cjs.js");const B=require("../hooks/useColumnGroupBy.cjs.js");require("./HeaderActionButton.cjs.js");require("./RowSelectionHeader.cjs.js");require("./SelectionCell.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredPowerpackVersion.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");require("../context/SelectedRowsContext.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const P=require("../context/ColumnSettingsContext.cjs.js"),E=require("../../../../../src/components/Menu/MenuComponents/Menu.cjs.js"),I=require("../../../../../src/components/Menu/MenuComponents/MenuContainer2.cjs.js"),O=R(M.Button)`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("../../../../../_virtual/jsx-runtime.cjs.js"),M=require("@ynput/ayon-react-components"),R=require("styled-components"),k=require("react");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");const G=require("../../../context/MenuContext.cjs.js");require("../../../context/WebsocketContext.cjs.js");require("react-toastify");require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../context/CellEditingContext.cjs.js");require("@tanstack/react-table");require("../widgets/CollapsedWidget.cjs.js");require("../widgets/DateWidget.cjs.js");require("../widgets/EnumWidget.cjs.js");require("../widgets/TextWidget.cjs.js");require("../widgets/BooleanWidget.cjs.js");require("../widgets/CellWidget.cjs.js");require("../widgets/EntityNameWidget.cjs.js");require("../widgets/GroupHeaderWidget.cjs.js");require("../widgets/ThumbnailWidget.cjs.js");require("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/users/guests.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../ProjectTreeTable.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");require("../context/ProjectTableContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("./GroupSettingsFallback.cjs.js");const B=require("../hooks/useColumnGroupBy.cjs.js");require("./HeaderActionButton.cjs.js");require("./RowSelectionHeader.cjs.js");require("./SelectionCell.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredAddonVersion.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");require("../../../components/Chips/Chips.cjs.js");require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../../EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../../../components/LinksManager/CellEditingDialog.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");require("../context/SelectedRowsContext.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../widgets/LoadMoreWidget.cjs.js");const P=require("../context/ColumnSettingsContext.cjs.js"),E=require("../../../../../src/components/Menu/MenuComponents/Menu.cjs.js"),I=require("../../../../../src/components/Menu/MenuComponents/MenuContainer2.cjs.js"),O=R(M.Button)`
|
|
2
2
|
background-color: unset !important;
|
|
3
3
|
z-index: 110;
|
|
4
4
|
position: relative;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnHeaderMenu.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/components/ColumnHeaderMenu.tsx"],"sourcesContent":["import { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\nimport { Header } from '@tanstack/react-table'\nimport type { TableRow } from '../types/table'\nimport { useRef } from 'react'\nimport { useMenuContext } from '@shared/context'\nimport { useColumnSettingsContext } from '../context'\nimport { useColumnGroupBy } from '../hooks'\n// @ts-expect-error - non TS file\nimport Menu from '../../../../../src/components/Menu/MenuComponents/Menu'\n// @ts-expect-error - non TS file\nimport MenuContainer from '../../../../../src/components/Menu/MenuComponents/MenuContainer2'\n\nconst MenuButton = styled(Button)<{ $isOpen: boolean }>`\n background-color: unset !important;\n z-index: 110;\n position: relative;\n padding: 2px;\n width: 24px;\n height: 24px;\n\n &.hasIcon {\n padding: 2px;\n }\n\n &:hover,\n &.active {\n background-color: var(--md-sys-color-surface-container-hover) !important;\n }\n\n ${({ $isOpen }) =>\n $isOpen &&\n `\n background-color: var(--md-sys-color-surface-container-hover) !important;\n `}\n`\n\ninterface ColumnHeaderMenuProps {\n header: Header<TableRow, unknown>\n canHide?: boolean\n canPin?: boolean\n canSort?: boolean\n isResizing?: boolean\n className?: string\n menuId?: string\n isOpen?: boolean\n}\n\nexport const ColumnHeaderMenu = ({\n header,\n canHide,\n canPin,\n canSort,\n isResizing,\n className,\n menuId,\n isOpen,\n}: ColumnHeaderMenuProps) => {\n const { column } = header\n const columnId = String(column.id)\n const { toggleMenuOpen } = useMenuContext()\n const { updateGroupBy, groupBy } = useColumnSettingsContext()\n const buttonRef = useRef<HTMLButtonElement>(null)\n\n const { canGroupThisColumn, groupLabel, groupBySelectedColumn, targetGroupById } =\n useColumnGroupBy(columnId)\n\n // Hide the menu when resizing\n if (isResizing) {\n return null\n }\n\n const handleMenuToggle = (open: boolean = true) => {\n toggleMenuOpen(open ? menuId || false : false)\n }\n\n // Get current column state - we need to call these methods directly to get fresh state\n const isPinned = column.getIsPinned()\n const isVisible = column.getIsVisible()\n const isSorted = column.getIsSorted()\n\n // helpers for group by logic\n\n const menuItems: Array<{\n id: string\n label?: string\n icon?: string\n className?: string\n onClick?: () => void\n type?: 'divider'\n selected?: boolean\n }> = []\n\n if (canPin) {\n const isPinnedLeft = isPinned === 'left'\n menuItems.push({\n id: 'pin',\n label: isPinnedLeft ? 'Unpin column' : 'Pin column',\n icon: 'push_pin',\n selected: isPinnedLeft,\n onClick: () => {\n if (isPinnedLeft) {\n column.pin(false)\n } else {\n column.pin('left')\n }\n handleMenuToggle(false)\n },\n })\n }\n\n if (canPin && canSort) {\n menuItems.push({\n id: 'divider',\n type: 'divider',\n })\n }\n\n if (canSort) {\n menuItems.push({\n id: 'sort-asc',\n label: 'Sort ascending',\n icon: 'sort',\n className: 'sort-asc-icon',\n selected: isSorted === 'asc',\n onClick: () => {\n column.toggleSorting(false)\n handleMenuToggle(false)\n },\n })\n\n menuItems.push({\n id: 'sort-desc',\n label: 'Sort descending',\n icon: 'sort',\n className: 'sort-desc-icon',\n selected: isSorted === 'desc',\n onClick: () => {\n column.toggleSorting(true)\n handleMenuToggle(false)\n },\n })\n }\n\n if (canSort && canHide) {\n menuItems.push({\n id: 'divider',\n type: 'divider',\n })\n }\n\n if (canGroupThisColumn && columnId !== 'name' && columnId !== 'thumbnail') {\n // Check if this column is currently being used for grouping\n const isCurrentlyGrouped = groupBy?.id === targetGroupById\n\n menuItems.push({\n id: 'group-by',\n label: isCurrentlyGrouped ? 'Ungroup' : `Group by ${groupLabel}`,\n icon: 'splitscreen',\n onClick: () => {\n if (isCurrentlyGrouped) {\n updateGroupBy(undefined)\n } else {\n groupBySelectedColumn()\n }\n handleMenuToggle(false)\n },\n })\n }\n\n if (canHide) {\n menuItems.push({\n id: 'hide',\n label: isVisible ? 'Hide column' : 'Show column',\n icon: isVisible ? 'visibility_off' : 'visibility',\n onClick: () => {\n column.toggleVisibility()\n handleMenuToggle(false)\n },\n })\n }\n\n if (menuItems.length === 0) {\n return null\n }\n\n return (\n <>\n <MenuButton\n ref={buttonRef}\n className={className}\n onClick={(e) => {\n e.stopPropagation()\n handleMenuToggle()\n }}\n icon=\"more_horiz\"\n id={menuId}\n $isOpen={isOpen || false}\n />\n <MenuContainer\n target={buttonRef.current}\n id={menuId}\n align=\"left\"\n onClose={(e: any) => {\n e.stopPropagation()\n handleMenuToggle(false)\n }}\n >\n <Menu menu={menuItems} onClose={() => handleMenuToggle(false)} />\n </MenuContainer>\n </>\n )\n}\n"],"names":["MenuButton","styled","Button","$isOpen","ColumnHeaderMenu","header","canHide","canPin","canSort","isResizing","className","menuId","isOpen","column","columnId","toggleMenuOpen","useMenuContext","updateGroupBy","groupBy","useColumnSettingsContext","buttonRef","useRef","canGroupThisColumn","groupLabel","groupBySelectedColumn","targetGroupById","useColumnGroupBy","handleMenuToggle","open","isPinned","isVisible","isSorted","menuItems","isPinnedLeft","isCurrentlyGrouped","jsxs","Fragment","jsx","MenuContainer","Menu"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ColumnHeaderMenu.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/components/ColumnHeaderMenu.tsx"],"sourcesContent":["import { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\nimport { Header } from '@tanstack/react-table'\nimport type { TableRow } from '../types/table'\nimport { useRef } from 'react'\nimport { useMenuContext } from '@shared/context'\nimport { useColumnSettingsContext } from '../context'\nimport { useColumnGroupBy } from '../hooks'\n// @ts-expect-error - non TS file\nimport Menu from '../../../../../src/components/Menu/MenuComponents/Menu'\n// @ts-expect-error - non TS file\nimport MenuContainer from '../../../../../src/components/Menu/MenuComponents/MenuContainer2'\n\nconst MenuButton = styled(Button)<{ $isOpen: boolean }>`\n background-color: unset !important;\n z-index: 110;\n position: relative;\n padding: 2px;\n width: 24px;\n height: 24px;\n\n &.hasIcon {\n padding: 2px;\n }\n\n &:hover,\n &.active {\n background-color: var(--md-sys-color-surface-container-hover) !important;\n }\n\n ${({ $isOpen }) =>\n $isOpen &&\n `\n background-color: var(--md-sys-color-surface-container-hover) !important;\n `}\n`\n\ninterface ColumnHeaderMenuProps {\n header: Header<TableRow, unknown>\n canHide?: boolean\n canPin?: boolean\n canSort?: boolean\n isResizing?: boolean\n className?: string\n menuId?: string\n isOpen?: boolean\n}\n\nexport const ColumnHeaderMenu = ({\n header,\n canHide,\n canPin,\n canSort,\n isResizing,\n className,\n menuId,\n isOpen,\n}: ColumnHeaderMenuProps) => {\n const { column } = header\n const columnId = String(column.id)\n const { toggleMenuOpen } = useMenuContext()\n const { updateGroupBy, groupBy } = useColumnSettingsContext()\n const buttonRef = useRef<HTMLButtonElement>(null)\n\n const { canGroupThisColumn, groupLabel, groupBySelectedColumn, targetGroupById } =\n useColumnGroupBy(columnId)\n\n // Hide the menu when resizing\n if (isResizing) {\n return null\n }\n\n const handleMenuToggle = (open: boolean = true) => {\n toggleMenuOpen(open ? menuId || false : false)\n }\n\n // Get current column state - we need to call these methods directly to get fresh state\n const isPinned = column.getIsPinned()\n const isVisible = column.getIsVisible()\n const isSorted = column.getIsSorted()\n\n // helpers for group by logic\n\n const menuItems: Array<{\n id: string\n label?: string\n icon?: string\n className?: string\n onClick?: () => void\n type?: 'divider'\n selected?: boolean\n }> = []\n\n if (canPin) {\n const isPinnedLeft = isPinned === 'left'\n menuItems.push({\n id: 'pin',\n label: isPinnedLeft ? 'Unpin column' : 'Pin column',\n icon: 'push_pin',\n selected: isPinnedLeft,\n onClick: () => {\n if (isPinnedLeft) {\n column.pin(false)\n } else {\n column.pin('left')\n }\n handleMenuToggle(false)\n },\n })\n }\n\n if (canPin && canSort) {\n menuItems.push({\n id: 'divider',\n type: 'divider',\n })\n }\n\n if (canSort) {\n menuItems.push({\n id: 'sort-asc',\n label: 'Sort ascending',\n icon: 'sort',\n className: 'sort-asc-icon',\n selected: isSorted === 'asc',\n onClick: () => {\n column.toggleSorting(false)\n handleMenuToggle(false)\n },\n })\n\n menuItems.push({\n id: 'sort-desc',\n label: 'Sort descending',\n icon: 'sort',\n className: 'sort-desc-icon',\n selected: isSorted === 'desc',\n onClick: () => {\n column.toggleSorting(true)\n handleMenuToggle(false)\n },\n })\n }\n\n if (canSort && canHide) {\n menuItems.push({\n id: 'divider',\n type: 'divider',\n })\n }\n\n if (canGroupThisColumn && columnId !== 'name' && columnId !== 'thumbnail') {\n // Check if this column is currently being used for grouping\n const isCurrentlyGrouped = groupBy?.id === targetGroupById\n\n menuItems.push({\n id: 'group-by',\n label: isCurrentlyGrouped ? 'Ungroup' : `Group by ${groupLabel}`,\n icon: 'splitscreen',\n onClick: () => {\n if (isCurrentlyGrouped) {\n updateGroupBy(undefined)\n } else {\n groupBySelectedColumn()\n }\n handleMenuToggle(false)\n },\n })\n }\n\n if (canHide) {\n menuItems.push({\n id: 'hide',\n label: isVisible ? 'Hide column' : 'Show column',\n icon: isVisible ? 'visibility_off' : 'visibility',\n onClick: () => {\n column.toggleVisibility()\n handleMenuToggle(false)\n },\n })\n }\n\n if (menuItems.length === 0) {\n return null\n }\n\n return (\n <>\n <MenuButton\n ref={buttonRef}\n className={className}\n onClick={(e) => {\n e.stopPropagation()\n handleMenuToggle()\n }}\n icon=\"more_horiz\"\n id={menuId}\n $isOpen={isOpen || false}\n />\n <MenuContainer\n target={buttonRef.current}\n id={menuId}\n align=\"left\"\n onClose={(e: any) => {\n e.stopPropagation()\n handleMenuToggle(false)\n }}\n >\n <Menu menu={menuItems} onClose={() => handleMenuToggle(false)} />\n </MenuContainer>\n </>\n )\n}\n"],"names":["MenuButton","styled","Button","$isOpen","ColumnHeaderMenu","header","canHide","canPin","canSort","isResizing","className","menuId","isOpen","column","columnId","toggleMenuOpen","useMenuContext","updateGroupBy","groupBy","useColumnSettingsContext","buttonRef","useRef","canGroupThisColumn","groupLabel","groupBySelectedColumn","targetGroupById","useColumnGroupBy","handleMenuToggle","open","isPinned","isVisible","isSorted","menuItems","isPinnedLeft","isCurrentlyGrouped","jsxs","Fragment","jsx","MenuContainer","Menu"],"mappings":"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"}
|