@memberjunction/ng-conversations 6.2.0-edge.0 → 6.2.0-edge.1
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/README.md +35 -2
- package/dist/lib/components/active-tasks/active-tasks-panel.component.d.ts +19 -3
- package/dist/lib/components/active-tasks/active-tasks-panel.component.d.ts.map +1 -1
- package/dist/lib/components/active-tasks/active-tasks-panel.component.js +39 -7
- package/dist/lib/components/active-tasks/active-tasks-panel.component.js.map +1 -1
- package/dist/lib/components/agent/active-agent-indicator.component.d.ts +74 -6
- package/dist/lib/components/agent/active-agent-indicator.component.d.ts.map +1 -1
- package/dist/lib/components/agent/active-agent-indicator.component.js +111 -21
- package/dist/lib/components/agent/active-agent-indicator.component.js.map +1 -1
- package/dist/lib/components/agent/agent-process-panel.component.d.ts +31 -5
- package/dist/lib/components/agent/agent-process-panel.component.d.ts.map +1 -1
- package/dist/lib/components/agent/agent-process-panel.component.js +71 -15
- package/dist/lib/components/agent/agent-process-panel.component.js.map +1 -1
- package/dist/lib/components/artifact/artifact-share-modal.component.d.ts +65 -9
- package/dist/lib/components/artifact/artifact-share-modal.component.d.ts.map +1 -1
- package/dist/lib/components/artifact/artifact-share-modal.component.js +169 -57
- package/dist/lib/components/artifact/artifact-share-modal.component.js.map +1 -1
- package/dist/lib/components/attachment/image-viewer.component.d.ts +77 -11
- package/dist/lib/components/attachment/image-viewer.component.d.ts.map +1 -1
- package/dist/lib/components/attachment/image-viewer.component.js +181 -47
- package/dist/lib/components/attachment/image-viewer.component.js.map +1 -1
- package/dist/lib/components/collection/artifact-collection-picker-modal.component.d.ts +129 -19
- package/dist/lib/components/collection/artifact-collection-picker-modal.component.d.ts.map +1 -1
- package/dist/lib/components/collection/artifact-collection-picker-modal.component.js +350 -116
- package/dist/lib/components/collection/artifact-collection-picker-modal.component.js.map +1 -1
- package/dist/lib/components/collection/artifact-create-modal.component.d.ts +60 -8
- package/dist/lib/components/collection/artifact-create-modal.component.d.ts.map +1 -1
- package/dist/lib/components/collection/artifact-create-modal.component.js +130 -46
- package/dist/lib/components/collection/artifact-create-modal.component.js.map +1 -1
- package/dist/lib/components/collection/collection-artifact-card.component.d.ts +63 -3
- package/dist/lib/components/collection/collection-artifact-card.component.d.ts.map +1 -1
- package/dist/lib/components/collection/collection-artifact-card.component.js +113 -19
- package/dist/lib/components/collection/collection-artifact-card.component.js.map +1 -1
- package/dist/lib/components/collection/collection-form-modal.component.d.ts +54 -8
- package/dist/lib/components/collection/collection-form-modal.component.d.ts.map +1 -1
- package/dist/lib/components/collection/collection-form-modal.component.js +130 -46
- package/dist/lib/components/collection/collection-form-modal.component.js.map +1 -1
- package/dist/lib/components/collection/collection-share-modal.component.d.ts +70 -10
- package/dist/lib/components/collection/collection-share-modal.component.d.ts.map +1 -1
- package/dist/lib/components/collection/collection-share-modal.component.js +175 -53
- package/dist/lib/components/collection/collection-share-modal.component.js.map +1 -1
- package/dist/lib/components/collection/collection-tree.component.d.ts +89 -9
- package/dist/lib/components/collection/collection-tree.component.d.ts.map +1 -1
- package/dist/lib/components/collection/collection-tree.component.js +220 -70
- package/dist/lib/components/collection/collection-tree.component.js.map +1 -1
- package/dist/lib/components/collection/collection-view.component.d.ts +89 -11
- package/dist/lib/components/collection/collection-view.component.d.ts.map +1 -1
- package/dist/lib/components/collection/collection-view.component.js +154 -40
- package/dist/lib/components/collection/collection-view.component.js.map +1 -1
- package/dist/lib/components/collection/collections-full-view.component.d.ts +390 -38
- package/dist/lib/components/collection/collections-full-view.component.d.ts.map +1 -1
- package/dist/lib/components/collection/collections-full-view.component.js +951 -367
- package/dist/lib/components/collection/collections-full-view.component.js.map +1 -1
- package/dist/lib/components/composer/ai-composer.component.d.ts +213 -18
- package/dist/lib/components/composer/ai-composer.component.d.ts.map +1 -1
- package/dist/lib/components/composer/ai-composer.component.js +388 -44
- package/dist/lib/components/composer/ai-composer.component.js.map +1 -1
- package/dist/lib/components/conversation/conversation-agent-picker.component.d.ts +12 -1
- package/dist/lib/components/conversation/conversation-agent-picker.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/conversation-agent-picker.component.js +26 -4
- package/dist/lib/components/conversation/conversation-agent-picker.component.js.map +1 -1
- package/dist/lib/components/conversation/conversation-chat-area.component.d.ts +1090 -123
- package/dist/lib/components/conversation/conversation-chat-area.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/conversation-chat-area.component.js +2399 -706
- package/dist/lib/components/conversation/conversation-chat-area.component.js.map +1 -1
- package/dist/lib/components/conversation/conversation-empty-state.component.d.ts +139 -19
- package/dist/lib/components/conversation/conversation-empty-state.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/conversation-empty-state.component.js +296 -59
- package/dist/lib/components/conversation/conversation-empty-state.component.js.map +1 -1
- package/dist/lib/components/conversation/conversation-list.component.d.ts +579 -78
- package/dist/lib/components/conversation/conversation-list.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/conversation-list.component.js +2322 -823
- package/dist/lib/components/conversation/conversation-list.component.js.map +1 -1
- package/dist/lib/components/conversation/pinned-messages-panel.component.d.ts +40 -4
- package/dist/lib/components/conversation/pinned-messages-panel.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/pinned-messages-panel.component.js +72 -14
- package/dist/lib/components/conversation/pinned-messages-panel.component.js.map +1 -1
- package/dist/lib/components/dialogs/input-dialog.component.d.ts +57 -11
- package/dist/lib/components/dialogs/input-dialog.component.d.ts.map +1 -1
- package/dist/lib/components/dialogs/input-dialog.component.js +128 -16
- package/dist/lib/components/dialogs/input-dialog.component.js.map +1 -1
- package/dist/lib/components/dialogs/rating-dialog.component.d.ts +68 -10
- package/dist/lib/components/dialogs/rating-dialog.component.d.ts.map +1 -1
- package/dist/lib/components/dialogs/rating-dialog.component.js +151 -27
- package/dist/lib/components/dialogs/rating-dialog.component.js.map +1 -1
- package/dist/lib/components/export/export-modal.component.d.ts +84 -10
- package/dist/lib/components/export/export-modal.component.d.ts.map +1 -1
- package/dist/lib/components/export/export-modal.component.js +173 -49
- package/dist/lib/components/export/export-modal.component.js.map +1 -1
- package/dist/lib/components/global-tasks/global-tasks-panel.component.d.ts +29 -3
- package/dist/lib/components/global-tasks/global-tasks-panel.component.d.ts.map +1 -1
- package/dist/lib/components/global-tasks/global-tasks-panel.component.js +58 -12
- package/dist/lib/components/global-tasks/global-tasks-panel.component.js.map +1 -1
- package/dist/lib/components/library/library-full-view.component.d.ts +57 -8
- package/dist/lib/components/library/library-full-view.component.d.ts.map +1 -1
- package/dist/lib/components/library/library-full-view.component.js +119 -35
- package/dist/lib/components/library/library-full-view.component.js.map +1 -1
- package/dist/lib/components/members/members-modal.component.d.ts +76 -10
- package/dist/lib/components/members/members-modal.component.d.ts.map +1 -1
- package/dist/lib/components/members/members-modal.component.js +164 -50
- package/dist/lib/components/members/members-modal.component.js.map +1 -1
- package/dist/lib/components/message/actionable-commands.component.d.ts +37 -5
- package/dist/lib/components/message/actionable-commands.component.d.ts.map +1 -1
- package/dist/lib/components/message/actionable-commands.component.js +82 -16
- package/dist/lib/components/message/actionable-commands.component.js.map +1 -1
- package/dist/lib/components/message/conversation-message-rating.component.d.ts +46 -10
- package/dist/lib/components/message/conversation-message-rating.component.d.ts.map +1 -1
- package/dist/lib/components/message/conversation-message-rating.component.js +120 -36
- package/dist/lib/components/message/conversation-message-rating.component.js.map +1 -1
- package/dist/lib/components/message/message-input.component.d.ts +549 -74
- package/dist/lib/components/message/message-input.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-input.component.js +1250 -421
- package/dist/lib/components/message/message-input.component.js.map +1 -1
- package/dist/lib/components/message/message-item.component.d.ts +411 -29
- package/dist/lib/components/message/message-item.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-item.component.js +896 -222
- package/dist/lib/components/message/message-item.component.js.map +1 -1
- package/dist/lib/components/message/message-list.component.d.ts +288 -29
- package/dist/lib/components/message/message-list.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-list.component.js +561 -123
- package/dist/lib/components/message/message-list.component.js.map +1 -1
- package/dist/lib/components/navigation/conversation-navigation.component.d.ts +64 -5
- package/dist/lib/components/navigation/conversation-navigation.component.d.ts.map +1 -1
- package/dist/lib/components/navigation/conversation-navigation.component.js +101 -11
- package/dist/lib/components/navigation/conversation-navigation.component.js.map +1 -1
- package/dist/lib/components/notification/activity-indicator.component.d.ts +6 -2
- package/dist/lib/components/notification/activity-indicator.component.d.ts.map +1 -1
- package/dist/lib/components/notification/activity-indicator.component.js +13 -3
- package/dist/lib/components/notification/activity-indicator.component.js.map +1 -1
- package/dist/lib/components/notification/notification-badge.component.d.ts +15 -3
- package/dist/lib/components/notification/notification-badge.component.d.ts.map +1 -1
- package/dist/lib/components/notification/notification-badge.component.js +36 -8
- package/dist/lib/components/notification/notification-badge.component.js.map +1 -1
- package/dist/lib/components/overlay/chat-overlay.component.d.ts +1 -1
- package/dist/lib/components/overlay/chat-overlay.component.js +4 -4
- package/dist/lib/components/overlay/chat-overlay.component.js.map +1 -1
- package/dist/lib/components/project/project-form-modal.component.d.ts +93 -11
- package/dist/lib/components/project/project-form-modal.component.d.ts.map +1 -1
- package/dist/lib/components/project/project-form-modal.component.js +348 -87
- package/dist/lib/components/project/project-form-modal.component.js.map +1 -1
- package/dist/lib/components/project/project-selector.component.d.ts +78 -8
- package/dist/lib/components/project/project-selector.component.d.ts.map +1 -1
- package/dist/lib/components/project/project-selector.component.js +177 -46
- package/dist/lib/components/project/project-selector.component.js.map +1 -1
- package/dist/lib/components/realtime/realtime-activity-rail.component.d.ts +1 -1
- package/dist/lib/components/realtime/realtime-activity-rail.component.js +2 -2
- package/dist/lib/components/realtime/realtime-activity-rail.component.js.map +1 -1
- package/dist/lib/components/realtime/realtime-delegation-card.component.d.ts +1 -1
- package/dist/lib/components/realtime/realtime-delegation-card.component.js +2 -2
- package/dist/lib/components/realtime/realtime-delegation-card.component.js.map +1 -1
- package/dist/lib/components/realtime/realtime-session-overlay.component.d.ts +2 -2
- package/dist/lib/components/realtime/realtime-session-overlay.component.js +18 -18
- package/dist/lib/components/realtime/realtime-session-overlay.component.js.map +1 -1
- package/dist/lib/components/realtime/realtime-session-timeline-card.component.d.ts +47 -23
- package/dist/lib/components/realtime/realtime-session-timeline-card.component.d.ts.map +1 -1
- package/dist/lib/components/realtime/realtime-session-timeline-card.component.js +136 -92
- package/dist/lib/components/realtime/realtime-session-timeline-card.component.js.map +1 -1
- package/dist/lib/components/realtime/realtime-surface-tabs.component.d.ts +2 -2
- package/dist/lib/components/realtime/realtime-surface-tabs.component.js +4 -4
- package/dist/lib/components/realtime/realtime-surface-tabs.component.js.map +1 -1
- package/dist/lib/components/realtime/realtime-surface-tabs.model.d.ts +1 -1
- package/dist/lib/components/realtime/realtime-surface-tabs.model.js +3 -3
- package/dist/lib/components/realtime/realtime-surface-tabs.model.js.map +1 -1
- package/dist/lib/components/realtime/realtime-ui-config.d.ts +13 -11
- package/dist/lib/components/realtime/realtime-ui-config.d.ts.map +1 -1
- package/dist/lib/components/realtime/realtime-ui-config.js +29 -25
- package/dist/lib/components/realtime/realtime-ui-config.js.map +1 -1
- package/dist/lib/components/realtime/whiteboard/whiteboard-channel.d.ts +3 -1
- package/dist/lib/components/realtime/whiteboard/whiteboard-channel.d.ts.map +1 -1
- package/dist/lib/components/realtime/whiteboard/whiteboard-channel.js +6 -2
- package/dist/lib/components/realtime/whiteboard/whiteboard-channel.js.map +1 -1
- package/dist/lib/components/search/search-panel.component.d.ts +133 -22
- package/dist/lib/components/search/search-panel.component.d.ts.map +1 -1
- package/dist/lib/components/search/search-panel.component.js +312 -83
- package/dist/lib/components/search/search-panel.component.js.map +1 -1
- package/dist/lib/components/share/share-modal.component.d.ts +69 -9
- package/dist/lib/components/share/share-modal.component.d.ts.map +1 -1
- package/dist/lib/components/share/share-modal.component.js +139 -31
- package/dist/lib/components/share/share-modal.component.js.map +1 -1
- package/dist/lib/components/shared/user-picker.component.d.ts +48 -8
- package/dist/lib/components/shared/user-picker.component.d.ts.map +1 -1
- package/dist/lib/components/shared/user-picker.component.js +110 -30
- package/dist/lib/components/shared/user-picker.component.js.map +1 -1
- package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts +114 -11
- package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts.map +1 -1
- package/dist/lib/components/sidebar/conversation-sidebar.component.js +199 -21
- package/dist/lib/components/sidebar/conversation-sidebar.component.js.map +1 -1
- package/dist/lib/components/sidebar/routines-section.component.d.ts +20 -1
- package/dist/lib/components/sidebar/routines-section.component.d.ts.map +1 -1
- package/dist/lib/components/sidebar/routines-section.component.js +25 -5
- package/dist/lib/components/sidebar/routines-section.component.js.map +1 -1
- package/dist/lib/components/slots/slot-interfaces.d.ts +19 -0
- package/dist/lib/components/slots/slot-interfaces.d.ts.map +1 -1
- package/dist/lib/components/slots/slot-interfaces.js.map +1 -1
- package/dist/lib/components/task/tasks-full-view.component.d.ts +95 -13
- package/dist/lib/components/task/tasks-full-view.component.d.ts.map +1 -1
- package/dist/lib/components/task/tasks-full-view.component.js +223 -75
- package/dist/lib/components/task/tasks-full-view.component.js.map +1 -1
- package/dist/lib/components/tasks/task-widget.component.d.ts +46 -6
- package/dist/lib/components/tasks/task-widget.component.d.ts.map +1 -1
- package/dist/lib/components/tasks/task-widget.component.js +100 -16
- package/dist/lib/components/tasks/task-widget.component.js.map +1 -1
- package/dist/lib/components/tasks/tasks-dropdown.component.d.ts +64 -7
- package/dist/lib/components/tasks/tasks-dropdown.component.d.ts.map +1 -1
- package/dist/lib/components/tasks/tasks-dropdown.component.js +127 -27
- package/dist/lib/components/tasks/tasks-dropdown.component.js.map +1 -1
- package/dist/lib/components/thread/thread-panel.component.d.ts +66 -8
- package/dist/lib/components/thread/thread-panel.component.d.ts.map +1 -1
- package/dist/lib/components/thread/thread-panel.component.js +146 -36
- package/dist/lib/components/thread/thread-panel.component.js.map +1 -1
- package/dist/lib/components/toast/toast.component.d.ts +11 -1
- package/dist/lib/components/toast/toast.component.d.ts.map +1 -1
- package/dist/lib/components/toast/toast.component.js +25 -5
- package/dist/lib/components/toast/toast.component.js.map +1 -1
- package/dist/lib/components/workspace/conversation-workspace.component.d.ts +385 -42
- package/dist/lib/components/workspace/conversation-workspace.component.d.ts.map +1 -1
- package/dist/lib/components/workspace/conversation-workspace.component.js +887 -291
- package/dist/lib/components/workspace/conversation-workspace.component.js.map +1 -1
- package/dist/lib/composer-plugins/base-conversation-mention.provider.d.ts +8 -0
- package/dist/lib/composer-plugins/base-conversation-mention.provider.d.ts.map +1 -1
- package/dist/lib/composer-plugins/base-conversation-mention.provider.js +8 -1
- package/dist/lib/composer-plugins/base-conversation-mention.provider.js.map +1 -1
- package/dist/lib/directives/chat-slot.directive.d.ts +5 -1
- package/dist/lib/directives/chat-slot.directive.d.ts.map +1 -1
- package/dist/lib/directives/chat-slot.directive.js.map +1 -1
- package/dist/lib/directives/search-shortcut.directive.d.ts +9 -1
- package/dist/lib/directives/search-shortcut.directive.d.ts.map +1 -1
- package/dist/lib/directives/search-shortcut.directive.js +14 -4
- package/dist/lib/directives/search-shortcut.directive.js.map +1 -1
- package/dist/lib/events/chat-events.d.ts +34 -7
- package/dist/lib/events/chat-events.d.ts.map +1 -1
- package/dist/lib/events/chat-events.js +37 -7
- package/dist/lib/events/chat-events.js.map +1 -1
- package/dist/lib/models/agent-turn.model.d.ts +103 -0
- package/dist/lib/models/agent-turn.model.d.ts.map +1 -0
- package/dist/lib/models/agent-turn.model.js +12 -0
- package/dist/lib/models/agent-turn.model.js.map +1 -0
- package/dist/lib/models/collection-view.model.js.map +1 -1
- package/dist/lib/models/conversation-state.model.d.ts +8 -0
- package/dist/lib/models/conversation-state.model.d.ts.map +1 -1
- package/dist/lib/models/conversation-state.model.js.map +1 -1
- package/dist/lib/models/lazy-artifact-info.d.ts +44 -12
- package/dist/lib/models/lazy-artifact-info.d.ts.map +1 -1
- package/dist/lib/models/lazy-artifact-info.js +98 -34
- package/dist/lib/models/lazy-artifact-info.js.map +1 -1
- package/dist/lib/services/active-tasks.service.d.ts +30 -4
- package/dist/lib/services/active-tasks.service.d.ts.map +1 -1
- package/dist/lib/services/active-tasks.service.js +71 -19
- package/dist/lib/services/active-tasks.service.js.map +1 -1
- package/dist/lib/services/agent-state.service.d.ts +17 -1
- package/dist/lib/services/agent-state.service.d.ts.map +1 -1
- package/dist/lib/services/agent-state.service.js +48 -16
- package/dist/lib/services/agent-state.service.js.map +1 -1
- package/dist/lib/services/artifact-permission.service.d.ts +39 -0
- package/dist/lib/services/artifact-permission.service.d.ts.map +1 -1
- package/dist/lib/services/artifact-permission.service.js +152 -17
- package/dist/lib/services/artifact-permission.service.js.map +1 -1
- package/dist/lib/services/artifact-state.service.d.ts +58 -5
- package/dist/lib/services/artifact-state.service.d.ts.map +1 -1
- package/dist/lib/services/artifact-state.service.js +135 -35
- package/dist/lib/services/artifact-state.service.js.map +1 -1
- package/dist/lib/services/collection-permission.service.d.ts +28 -0
- package/dist/lib/services/collection-permission.service.d.ts.map +1 -1
- package/dist/lib/services/collection-permission.service.js +88 -32
- package/dist/lib/services/collection-permission.service.js.map +1 -1
- package/dist/lib/services/collection-state.service.d.ts +11 -1
- package/dist/lib/services/collection-state.service.d.ts.map +1 -1
- package/dist/lib/services/collection-state.service.js +25 -5
- package/dist/lib/services/collection-state.service.js.map +1 -1
- package/dist/lib/services/conversation-agent.service.d.ts +26 -4
- package/dist/lib/services/conversation-agent.service.d.ts.map +1 -1
- package/dist/lib/services/conversation-agent.service.js +57 -18
- package/dist/lib/services/conversation-agent.service.js.map +1 -1
- package/dist/lib/services/conversation-attachment.service.d.ts +17 -0
- package/dist/lib/services/conversation-attachment.service.d.ts.map +1 -1
- package/dist/lib/services/conversation-attachment.service.js +38 -10
- package/dist/lib/services/conversation-attachment.service.js.map +1 -1
- package/dist/lib/services/conversation-streaming.service.d.ts +22 -0
- package/dist/lib/services/conversation-streaming.service.d.ts.map +1 -1
- package/dist/lib/services/conversation-streaming.service.js +50 -10
- package/dist/lib/services/conversation-streaming.service.js.map +1 -1
- package/dist/lib/services/data-cache.service.d.ts +31 -0
- package/dist/lib/services/data-cache.service.d.ts.map +1 -1
- package/dist/lib/services/data-cache.service.js +71 -15
- package/dist/lib/services/data-cache.service.js.map +1 -1
- package/dist/lib/services/dialog.service.d.ts +13 -0
- package/dist/lib/services/dialog.service.d.ts.map +1 -1
- package/dist/lib/services/dialog.service.js +25 -5
- package/dist/lib/services/dialog.service.js.map +1 -1
- package/dist/lib/services/export.service.d.ts +2 -0
- package/dist/lib/services/export.service.d.ts.map +1 -1
- package/dist/lib/services/export.service.js +5 -1
- package/dist/lib/services/export.service.js.map +1 -1
- package/dist/lib/services/mention-parser.service.d.ts +10 -0
- package/dist/lib/services/mention-parser.service.d.ts.map +1 -1
- package/dist/lib/services/mention-parser.service.js +25 -5
- package/dist/lib/services/mention-parser.service.js.map +1 -1
- package/dist/lib/services/notification.service.d.ts +54 -6
- package/dist/lib/services/notification.service.d.ts.map +1 -1
- package/dist/lib/services/notification.service.js +123 -27
- package/dist/lib/services/notification.service.js.map +1 -1
- package/dist/lib/services/realtime-audio-recorder.d.ts +4 -4
- package/dist/lib/services/realtime-audio-recorder.js +12 -12
- package/dist/lib/services/realtime-audio-recorder.js.map +1 -1
- package/dist/lib/services/realtime-pcm-wav.d.ts +4 -0
- package/dist/lib/services/realtime-pcm-wav.d.ts.map +1 -1
- package/dist/lib/services/realtime-pcm-wav.js +10 -2
- package/dist/lib/services/realtime-pcm-wav.js.map +1 -1
- package/dist/lib/services/search.service.d.ts +42 -9
- package/dist/lib/services/search.service.d.ts.map +1 -1
- package/dist/lib/services/search.service.js +103 -23
- package/dist/lib/services/search.service.js.map +1 -1
- package/dist/lib/services/toast.service.d.ts +19 -1
- package/dist/lib/services/toast.service.d.ts.map +1 -1
- package/dist/lib/services/toast.service.js +45 -9
- package/dist/lib/services/toast.service.js.map +1 -1
- package/dist/lib/services/ui-command-handler.service.d.ts +16 -2
- package/dist/lib/services/ui-command-handler.service.d.ts.map +1 -1
- package/dist/lib/services/ui-command-handler.service.js +36 -8
- package/dist/lib/services/ui-command-handler.service.js.map +1 -1
- package/dist/lib/utils/agent-artifact-summary.d.ts +2 -2
- package/dist/lib/utils/agent-artifact-summary.js +3 -3
- package/dist/lib/utils/agent-artifact-summary.js.map +1 -1
- package/dist/lib/utils/agent-turn-routing.d.ts +69 -0
- package/dist/lib/utils/agent-turn-routing.d.ts.map +1 -0
- package/dist/lib/utils/agent-turn-routing.js +96 -0
- package/dist/lib/utils/agent-turn-routing.js.map +1 -0
- package/dist/lib/utils/artifact-panel-action.d.ts +15 -4
- package/dist/lib/utils/artifact-panel-action.d.ts.map +1 -1
- package/dist/lib/utils/artifact-panel-action.js +10 -2
- package/dist/lib/utils/artifact-panel-action.js.map +1 -1
- package/dist/lib/utils/distinct-artifacts.d.ts +2 -0
- package/dist/lib/utils/distinct-artifacts.d.ts.map +1 -1
- package/dist/lib/utils/distinct-artifacts.js +5 -1
- package/dist/lib/utils/distinct-artifacts.js.map +1 -1
- package/dist/lib/utils/plan-mode-preference.d.ts +2 -2
- package/dist/lib/utils/plan-mode-preference.js +6 -6
- package/dist/lib/utils/plan-mode-preference.js.map +1 -1
- package/dist/public-api.d.ts +3 -0
- package/dist/public-api.d.ts.map +1 -1
- package/dist/public-api.js +3 -0
- package/dist/public-api.js.map +1 -1
- package/package.json +32 -32
|
@@ -170,17 +170,105 @@ function CollectionTreeComponent_ng_template_8_Template(rf, ctx) { if (rf & 1) {
|
|
|
170
170
|
export class CollectionTreeComponent extends BaseAngularComponent {
|
|
171
171
|
permissionService;
|
|
172
172
|
confirmService;
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
173
|
+
EnvironmentId;
|
|
174
|
+
/** @deprecated Use {@link EnvironmentId}. */
|
|
175
|
+
set environmentId(value) {
|
|
176
|
+
this.EnvironmentId = value;
|
|
177
|
+
}
|
|
178
|
+
/** @deprecated Use {@link EnvironmentId}. */
|
|
179
|
+
get environmentId() {
|
|
180
|
+
return this.EnvironmentId;
|
|
181
|
+
}
|
|
182
|
+
CurrentUser;
|
|
183
|
+
/** @deprecated Use {@link CurrentUser}. */
|
|
184
|
+
set currentUser(value) {
|
|
185
|
+
this.CurrentUser = value;
|
|
186
|
+
}
|
|
187
|
+
/** @deprecated Use {@link CurrentUser}. */
|
|
188
|
+
get currentUser() {
|
|
189
|
+
return this.CurrentUser;
|
|
190
|
+
}
|
|
191
|
+
SelectedCollectionId = null;
|
|
192
|
+
/** @deprecated Use {@link SelectedCollectionId}. */
|
|
193
|
+
set selectedCollectionId(value) {
|
|
194
|
+
this.SelectedCollectionId = value;
|
|
195
|
+
}
|
|
196
|
+
/** @deprecated Use {@link SelectedCollectionId}. */
|
|
197
|
+
get selectedCollectionId() {
|
|
198
|
+
return this.SelectedCollectionId;
|
|
199
|
+
}
|
|
200
|
+
UserPermissions = new Map();
|
|
201
|
+
/** @deprecated Use {@link UserPermissions}. */
|
|
202
|
+
set userPermissions(value) {
|
|
203
|
+
this.UserPermissions = value;
|
|
204
|
+
}
|
|
205
|
+
/** @deprecated Use {@link UserPermissions}. */
|
|
206
|
+
get userPermissions() {
|
|
207
|
+
return this.UserPermissions;
|
|
208
|
+
}
|
|
209
|
+
CollectionSelected = new EventEmitter();
|
|
210
|
+
/**
|
|
211
|
+
* @deprecated Use {@link CollectionSelected}.
|
|
212
|
+
*
|
|
213
|
+
* The same emitter under the old binding name, so a template still binding
|
|
214
|
+
* (collectionSelected) keeps working. Must stay AFTER CollectionSelected: class fields
|
|
215
|
+
* initialise in order, and the other way round this captures undefined.
|
|
216
|
+
*/
|
|
217
|
+
collectionSelected = this.CollectionSelected;
|
|
218
|
+
CollectionCreated = new EventEmitter();
|
|
219
|
+
/**
|
|
220
|
+
* @deprecated Use {@link CollectionCreated}.
|
|
221
|
+
*
|
|
222
|
+
* The same emitter under the old binding name, so a template still binding
|
|
223
|
+
* (collectionCreated) keeps working. Must stay AFTER CollectionCreated: class fields
|
|
224
|
+
* initialise in order, and the other way round this captures undefined.
|
|
225
|
+
*/
|
|
226
|
+
collectionCreated = this.CollectionCreated;
|
|
227
|
+
CollectionDeleted = new EventEmitter();
|
|
228
|
+
/**
|
|
229
|
+
* @deprecated Use {@link CollectionDeleted}.
|
|
230
|
+
*
|
|
231
|
+
* The same emitter under the old binding name, so a template still binding
|
|
232
|
+
* (collectionDeleted) keeps working. Must stay AFTER CollectionDeleted: class fields
|
|
233
|
+
* initialise in order, and the other way round this captures undefined.
|
|
234
|
+
*/
|
|
235
|
+
collectionDeleted = this.CollectionDeleted;
|
|
236
|
+
Collections = [];
|
|
237
|
+
/** @deprecated Use {@link Collections}. */
|
|
238
|
+
get collections() {
|
|
239
|
+
return this.Collections;
|
|
240
|
+
}
|
|
241
|
+
/** @deprecated Use {@link Collections}. */
|
|
242
|
+
set collections(value) {
|
|
243
|
+
this.Collections = value;
|
|
244
|
+
}
|
|
245
|
+
TreeNodes = [];
|
|
246
|
+
/** @deprecated Use {@link TreeNodes}. */
|
|
247
|
+
get treeNodes() {
|
|
248
|
+
return this.TreeNodes;
|
|
249
|
+
}
|
|
250
|
+
/** @deprecated Use {@link TreeNodes}. */
|
|
251
|
+
set treeNodes(value) {
|
|
252
|
+
this.TreeNodes = value;
|
|
253
|
+
}
|
|
254
|
+
DraggedNode = null;
|
|
255
|
+
/** @deprecated Use {@link DraggedNode}. */
|
|
256
|
+
get draggedNode() {
|
|
257
|
+
return this.DraggedNode;
|
|
258
|
+
}
|
|
259
|
+
/** @deprecated Use {@link DraggedNode}. */
|
|
260
|
+
set draggedNode(value) {
|
|
261
|
+
this.DraggedNode = value;
|
|
262
|
+
}
|
|
263
|
+
DragOverNodeId = null;
|
|
264
|
+
/** @deprecated Use {@link DragOverNodeId}. */
|
|
265
|
+
get dragOverNodeId() {
|
|
266
|
+
return this.DragOverNodeId;
|
|
267
|
+
}
|
|
268
|
+
/** @deprecated Use {@link DragOverNodeId}. */
|
|
269
|
+
set dragOverNodeId(value) {
|
|
270
|
+
this.DragOverNodeId = value;
|
|
271
|
+
}
|
|
184
272
|
constructor(permissionService, confirmService) {
|
|
185
273
|
super();
|
|
186
274
|
this.permissionService = permissionService;
|
|
@@ -195,12 +283,12 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
195
283
|
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
196
284
|
const result = await rv.RunView({
|
|
197
285
|
EntityName: 'MJ: Collections',
|
|
198
|
-
ExtraFilter: `EnvironmentID='${this.
|
|
286
|
+
ExtraFilter: `EnvironmentID='${this.EnvironmentId}'`,
|
|
199
287
|
OrderBy: 'Sequence ASC, Name ASC',
|
|
200
288
|
ResultType: 'entity_object'
|
|
201
|
-
}, this.
|
|
289
|
+
}, this.CurrentUser);
|
|
202
290
|
if (result.Success) {
|
|
203
|
-
this.
|
|
291
|
+
this.Collections = result.Results || [];
|
|
204
292
|
this.buildTree();
|
|
205
293
|
}
|
|
206
294
|
}
|
|
@@ -209,11 +297,11 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
209
297
|
}
|
|
210
298
|
}
|
|
211
299
|
buildTree() {
|
|
212
|
-
const rootCollections = this.
|
|
213
|
-
this.
|
|
300
|
+
const rootCollections = this.Collections.filter(c => !c.ParentID);
|
|
301
|
+
this.TreeNodes = rootCollections.map(c => this.buildNode(c, 0));
|
|
214
302
|
}
|
|
215
303
|
buildNode(collection, level) {
|
|
216
|
-
const children = this.
|
|
304
|
+
const children = this.Collections.filter(c => UUIDsEqual(c.ParentID, collection.ID));
|
|
217
305
|
return {
|
|
218
306
|
collection,
|
|
219
307
|
children: children.map(c => this.buildNode(c, level + 1)),
|
|
@@ -221,28 +309,36 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
221
309
|
level
|
|
222
310
|
};
|
|
223
311
|
}
|
|
224
|
-
|
|
312
|
+
ToggleNode(node, event) {
|
|
225
313
|
event.stopPropagation();
|
|
226
314
|
node.expanded = !node.expanded;
|
|
227
315
|
}
|
|
316
|
+
/** @deprecated Use {@link ToggleNode}. */
|
|
317
|
+
toggleNode(node, event) {
|
|
318
|
+
return this.ToggleNode(node, event);
|
|
319
|
+
}
|
|
228
320
|
IsCollectionSelected(node) {
|
|
229
|
-
return UUIDsEqual(node.collection.ID, this.
|
|
321
|
+
return UUIDsEqual(node.collection.ID, this.SelectedCollectionId);
|
|
230
322
|
}
|
|
231
323
|
IsCollectionDragging(node) {
|
|
232
|
-
return UUIDsEqual(this.
|
|
324
|
+
return UUIDsEqual(this.DraggedNode?.collection?.ID, node.collection.ID);
|
|
233
325
|
}
|
|
326
|
+
OnSelectCollection(collection) {
|
|
327
|
+
this.SelectedCollectionId = collection.ID;
|
|
328
|
+
this.CollectionSelected.emit(collection);
|
|
329
|
+
}
|
|
330
|
+
/** @deprecated Use {@link OnSelectCollection}. */
|
|
234
331
|
onSelectCollection(collection) {
|
|
235
|
-
this.
|
|
236
|
-
this.collectionSelected.emit(collection);
|
|
332
|
+
return this.OnSelectCollection(collection);
|
|
237
333
|
}
|
|
238
|
-
async
|
|
334
|
+
async OnCreateCollection(parentId) {
|
|
239
335
|
// Validate permission if creating child collection
|
|
240
336
|
if (parentId) {
|
|
241
|
-
const parentCollection = this.
|
|
337
|
+
const parentCollection = this.Collections.find(c => UUIDsEqual(c.ID, parentId));
|
|
242
338
|
if (parentCollection) {
|
|
243
339
|
// Check if user has Edit permission on parent
|
|
244
|
-
if (parentCollection.OwnerID && !UUIDsEqual(parentCollection.OwnerID, this.
|
|
245
|
-
const permission = await this.permissionService.checkPermission(parentId, this.
|
|
340
|
+
if (parentCollection.OwnerID && !UUIDsEqual(parentCollection.OwnerID, this.CurrentUser.ID)) {
|
|
341
|
+
const permission = await this.permissionService.checkPermission(parentId, this.CurrentUser.ID, this.CurrentUser);
|
|
246
342
|
if (!permission?.canEdit) {
|
|
247
343
|
alert('You do not have Edit permission to create a sub-collection.');
|
|
248
344
|
return;
|
|
@@ -255,22 +351,22 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
255
351
|
return;
|
|
256
352
|
try {
|
|
257
353
|
const md = this.ProviderToUse;
|
|
258
|
-
const collection = await md.GetEntityObject('MJ: Collections', this.
|
|
354
|
+
const collection = await md.GetEntityObject('MJ: Collections', this.CurrentUser);
|
|
259
355
|
collection.Name = name;
|
|
260
|
-
collection.EnvironmentID = this.
|
|
356
|
+
collection.EnvironmentID = this.EnvironmentId;
|
|
261
357
|
if (parentId) {
|
|
262
358
|
// Child collection - inherit parent's owner and set parent
|
|
263
|
-
const parentCollection = this.
|
|
359
|
+
const parentCollection = this.Collections.find(c => UUIDsEqual(c.ID, parentId));
|
|
264
360
|
collection.ParentID = parentId;
|
|
265
|
-
collection.OwnerID = parentCollection?.OwnerID || this.
|
|
361
|
+
collection.OwnerID = parentCollection?.OwnerID || this.CurrentUser.ID;
|
|
266
362
|
}
|
|
267
363
|
else {
|
|
268
364
|
// Root collection - current user becomes owner
|
|
269
|
-
collection.OwnerID = this.
|
|
365
|
+
collection.OwnerID = this.CurrentUser.ID;
|
|
270
366
|
}
|
|
271
367
|
const saved = await collection.Save();
|
|
272
368
|
if (saved) {
|
|
273
|
-
this.
|
|
369
|
+
this.CollectionCreated.emit(collection);
|
|
274
370
|
await this.loadCollections();
|
|
275
371
|
}
|
|
276
372
|
}
|
|
@@ -279,10 +375,14 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
279
375
|
alert('Failed to create collection');
|
|
280
376
|
}
|
|
281
377
|
}
|
|
282
|
-
|
|
378
|
+
/** @deprecated Use {@link OnCreateCollection}. */
|
|
379
|
+
async onCreateCollection(parentId) {
|
|
380
|
+
return this.OnCreateCollection(parentId);
|
|
381
|
+
}
|
|
382
|
+
async OnDeleteCollection(collection) {
|
|
283
383
|
// Validate Delete permission
|
|
284
|
-
if (collection.OwnerID && !UUIDsEqual(collection.OwnerID, this.
|
|
285
|
-
const permission = await this.permissionService.checkPermission(collection.ID, this.
|
|
384
|
+
if (collection.OwnerID && !UUIDsEqual(collection.OwnerID, this.CurrentUser.ID)) {
|
|
385
|
+
const permission = await this.permissionService.checkPermission(collection.ID, this.CurrentUser.ID, this.CurrentUser);
|
|
286
386
|
if (!permission?.canDelete) {
|
|
287
387
|
alert('You do not have Delete permission for this collection.');
|
|
288
388
|
return;
|
|
@@ -293,7 +393,7 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
293
393
|
try {
|
|
294
394
|
const deleted = await collection.Delete();
|
|
295
395
|
if (deleted) {
|
|
296
|
-
this.
|
|
396
|
+
this.CollectionDeleted.emit(collection);
|
|
297
397
|
await this.loadCollections();
|
|
298
398
|
}
|
|
299
399
|
}
|
|
@@ -302,8 +402,12 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
302
402
|
alert('Failed to delete collection');
|
|
303
403
|
}
|
|
304
404
|
}
|
|
305
|
-
|
|
306
|
-
|
|
405
|
+
/** @deprecated Use {@link OnDeleteCollection}. */
|
|
406
|
+
async onDeleteCollection(collection) {
|
|
407
|
+
return this.OnDeleteCollection(collection);
|
|
408
|
+
}
|
|
409
|
+
OnDragStart(event, node) {
|
|
410
|
+
this.DraggedNode = node;
|
|
307
411
|
const dragData = {
|
|
308
412
|
collectionId: node.collection.ID,
|
|
309
413
|
parentId: node.collection.ParentID || null
|
|
@@ -313,50 +417,66 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
313
417
|
// Add visual feedback
|
|
314
418
|
event.target.style.opacity = '0.4';
|
|
315
419
|
}
|
|
316
|
-
|
|
420
|
+
/** @deprecated Use {@link OnDragStart}. */
|
|
421
|
+
onDragStart(event, node) {
|
|
422
|
+
return this.OnDragStart(event, node);
|
|
423
|
+
}
|
|
424
|
+
OnDragEnd(event) {
|
|
317
425
|
// Clean up visual feedback
|
|
318
426
|
event.target.style.opacity = '1';
|
|
319
|
-
this.
|
|
320
|
-
this.
|
|
427
|
+
this.DraggedNode = null;
|
|
428
|
+
this.DragOverNodeId = null;
|
|
321
429
|
}
|
|
322
|
-
|
|
430
|
+
/** @deprecated Use {@link OnDragEnd}. */
|
|
431
|
+
onDragEnd(event) {
|
|
432
|
+
return this.OnDragEnd(event);
|
|
433
|
+
}
|
|
434
|
+
OnDragOver(event, targetNode) {
|
|
323
435
|
event.preventDefault(); // Required to allow drop
|
|
324
|
-
if (!this.
|
|
436
|
+
if (!this.DraggedNode || UUIDsEqual(this.DraggedNode.collection.ID, targetNode.collection.ID)) {
|
|
325
437
|
event.dataTransfer.dropEffect = 'none';
|
|
326
438
|
return;
|
|
327
439
|
}
|
|
328
440
|
// Check if trying to drop into a descendant
|
|
329
|
-
if (this.isDescendant(targetNode, this.
|
|
441
|
+
if (this.isDescendant(targetNode, this.DraggedNode)) {
|
|
330
442
|
event.dataTransfer.dropEffect = 'none';
|
|
331
443
|
return;
|
|
332
444
|
}
|
|
333
445
|
event.dataTransfer.dropEffect = 'move';
|
|
334
|
-
this.
|
|
446
|
+
this.DragOverNodeId = targetNode.collection.ID;
|
|
335
447
|
}
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
448
|
+
/** @deprecated Use {@link OnDragOver}. */
|
|
449
|
+
onDragOver(event, targetNode) {
|
|
450
|
+
return this.OnDragOver(event, targetNode);
|
|
451
|
+
}
|
|
452
|
+
OnDragLeave(event, targetNode) {
|
|
453
|
+
if (this.DragOverNodeId === targetNode.collection.ID) {
|
|
454
|
+
this.DragOverNodeId = null;
|
|
339
455
|
}
|
|
340
456
|
}
|
|
341
|
-
|
|
457
|
+
/** @deprecated Use {@link OnDragLeave}. */
|
|
458
|
+
onDragLeave(event, targetNode) {
|
|
459
|
+
return this.OnDragLeave(event, targetNode);
|
|
460
|
+
}
|
|
461
|
+
async OnDrop(event, targetNode) {
|
|
342
462
|
event.preventDefault();
|
|
343
463
|
event.stopPropagation();
|
|
344
|
-
if (!this.
|
|
464
|
+
if (!this.DraggedNode) {
|
|
345
465
|
return;
|
|
346
466
|
}
|
|
347
467
|
// Don't allow dropping on itself
|
|
348
|
-
if (UUIDsEqual(this.
|
|
349
|
-
this.
|
|
468
|
+
if (UUIDsEqual(this.DraggedNode.collection.ID, targetNode.collection.ID)) {
|
|
469
|
+
this.DragOverNodeId = null;
|
|
350
470
|
return;
|
|
351
471
|
}
|
|
352
472
|
// Check if trying to drop into a descendant
|
|
353
|
-
if (this.isDescendant(targetNode, this.
|
|
473
|
+
if (this.isDescendant(targetNode, this.DraggedNode)) {
|
|
354
474
|
alert('Cannot move a collection into its own descendant');
|
|
355
|
-
this.
|
|
475
|
+
this.DragOverNodeId = null;
|
|
356
476
|
return;
|
|
357
477
|
}
|
|
358
478
|
try {
|
|
359
|
-
const collection = this.
|
|
479
|
+
const collection = this.DraggedNode.collection;
|
|
360
480
|
const newParentId = targetNode.collection.ID;
|
|
361
481
|
// Update the collection's parent
|
|
362
482
|
collection.ParentID = newParentId;
|
|
@@ -374,26 +494,34 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
374
494
|
alert('Error moving collection');
|
|
375
495
|
}
|
|
376
496
|
finally {
|
|
377
|
-
this.
|
|
497
|
+
this.DragOverNodeId = null;
|
|
378
498
|
}
|
|
379
499
|
}
|
|
380
|
-
|
|
500
|
+
/** @deprecated Use {@link OnDrop}. */
|
|
501
|
+
async onDrop(event, targetNode) {
|
|
502
|
+
return this.OnDrop(event, targetNode);
|
|
503
|
+
}
|
|
504
|
+
OnDragOverRoot(event) {
|
|
381
505
|
event.preventDefault();
|
|
382
|
-
if (!this.
|
|
506
|
+
if (!this.DraggedNode) {
|
|
383
507
|
event.dataTransfer.dropEffect = 'none';
|
|
384
508
|
return;
|
|
385
509
|
}
|
|
386
510
|
event.dataTransfer.dropEffect = 'move';
|
|
387
|
-
this.
|
|
511
|
+
this.DragOverNodeId = 'root';
|
|
388
512
|
}
|
|
389
|
-
|
|
513
|
+
/** @deprecated Use {@link OnDragOverRoot}. */
|
|
514
|
+
onDragOverRoot(event) {
|
|
515
|
+
return this.OnDragOverRoot(event);
|
|
516
|
+
}
|
|
517
|
+
async OnDropRoot(event) {
|
|
390
518
|
event.preventDefault();
|
|
391
519
|
event.stopPropagation();
|
|
392
|
-
if (!this.
|
|
520
|
+
if (!this.DraggedNode) {
|
|
393
521
|
return;
|
|
394
522
|
}
|
|
395
523
|
try {
|
|
396
|
-
const collection = this.
|
|
524
|
+
const collection = this.DraggedNode.collection;
|
|
397
525
|
// Move to root level
|
|
398
526
|
collection.ParentID = null;
|
|
399
527
|
const saved = await collection.Save();
|
|
@@ -409,9 +537,13 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
409
537
|
alert('Error moving collection to root');
|
|
410
538
|
}
|
|
411
539
|
finally {
|
|
412
|
-
this.
|
|
540
|
+
this.DragOverNodeId = null;
|
|
413
541
|
}
|
|
414
542
|
}
|
|
543
|
+
/** @deprecated Use {@link OnDropRoot}. */
|
|
544
|
+
async onDropRoot(event) {
|
|
545
|
+
return this.OnDropRoot(event);
|
|
546
|
+
}
|
|
415
547
|
isDescendant(potentialDescendant, ancestor) {
|
|
416
548
|
if (UUIDsEqual(potentialDescendant.collection.ParentID, ancestor.collection.ID)) {
|
|
417
549
|
return true;
|
|
@@ -426,28 +558,32 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
426
558
|
// Permission checking methods
|
|
427
559
|
canEdit(collection) {
|
|
428
560
|
// Backwards compatibility: treat null OwnerID as owned by current user
|
|
429
|
-
if (!collection.OwnerID || UUIDsEqual(collection.OwnerID, this.
|
|
561
|
+
if (!collection.OwnerID || UUIDsEqual(collection.OwnerID, this.CurrentUser.ID)) {
|
|
430
562
|
return true;
|
|
431
563
|
}
|
|
432
564
|
// Check permission record
|
|
433
|
-
const permission = this.
|
|
565
|
+
const permission = this.UserPermissions.get(collection.ID);
|
|
434
566
|
return permission?.canEdit || false;
|
|
435
567
|
}
|
|
436
568
|
canDelete(collection) {
|
|
437
569
|
// Backwards compatibility: treat null OwnerID as owned by current user
|
|
438
|
-
if (!collection.OwnerID || UUIDsEqual(collection.OwnerID, this.
|
|
570
|
+
if (!collection.OwnerID || UUIDsEqual(collection.OwnerID, this.CurrentUser.ID)) {
|
|
439
571
|
return true;
|
|
440
572
|
}
|
|
441
573
|
// Check permission record
|
|
442
|
-
const permission = this.
|
|
574
|
+
const permission = this.UserPermissions.get(collection.ID);
|
|
443
575
|
return permission?.canDelete || false;
|
|
444
576
|
}
|
|
445
|
-
|
|
577
|
+
CanCreateAtRoot() {
|
|
446
578
|
// Anyone can create at root level
|
|
447
579
|
return true;
|
|
448
580
|
}
|
|
581
|
+
/** @deprecated Use {@link CanCreateAtRoot}. */
|
|
582
|
+
canCreateAtRoot() {
|
|
583
|
+
return this.CanCreateAtRoot();
|
|
584
|
+
}
|
|
449
585
|
static ɵfac = function CollectionTreeComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CollectionTreeComponent)(i0.ɵɵdirectiveInject(i1.CollectionPermissionService), i0.ɵɵdirectiveInject(i2.MJConfirmService)); };
|
|
450
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CollectionTreeComponent, selectors: [["mj-collection-tree"]], inputs: { environmentId: "environmentId", currentUser: "currentUser", selectedCollectionId: "selectedCollectionId", userPermissions: "userPermissions" }, outputs: { collectionSelected: "collectionSelected", collectionCreated: "collectionCreated", collectionDeleted: "collectionDeleted" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 10, vars: 3, consts: [["recursiveTree", ""], [1, "collection-tree"], [1, "tree-header"], ["title", "New Collection", 1, "btn-new"], [1, "tree-content", 3, "dragover", "drop"], [1, "tree-node-wrapper"], ["title", "New Collection", 1, "btn-new", 3, "click"], [1, "fas", "fa-plus"], [1, "tree-node", 3, "click", "dragstart", "dragend", "dragover", "dragleave", "drop", "draggable"], [1, "fas", "toggle-icon", 3, "ngClass"], [1, "fas", "fa-folder", "collection-icon"], [1, "collection-name"], [1, "node-actions", 3, "click"], ["title", "Add sub-collection", 1, "node-action-btn"], ["title", "Delete", 1, "node-action-btn"], [1, "fas", "toggle-icon", 3, "click", "ngClass"], ["title", "Add sub-collection", 1, "node-action-btn", 3, "click"], ["title", "Delete", 1, "node-action-btn", 3, "click"], [1, "fas", "fa-trash"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"]], template: function CollectionTreeComponent_Template(rf, ctx) { if (rf & 1) {
|
|
586
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CollectionTreeComponent, selectors: [["mj-collection-tree"]], inputs: { EnvironmentId: "EnvironmentId", environmentId: "environmentId", CurrentUser: "CurrentUser", currentUser: "currentUser", SelectedCollectionId: "SelectedCollectionId", selectedCollectionId: "selectedCollectionId", UserPermissions: "UserPermissions", userPermissions: "userPermissions" }, outputs: { CollectionSelected: "CollectionSelected", collectionSelected: "collectionSelected", CollectionCreated: "CollectionCreated", collectionCreated: "collectionCreated", CollectionDeleted: "CollectionDeleted", collectionDeleted: "collectionDeleted" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 10, vars: 3, consts: [["recursiveTree", ""], [1, "collection-tree"], [1, "tree-header"], ["title", "New Collection", 1, "btn-new"], [1, "tree-content", 3, "dragover", "drop"], [1, "tree-node-wrapper"], ["title", "New Collection", 1, "btn-new", 3, "click"], [1, "fas", "fa-plus"], [1, "tree-node", 3, "click", "dragstart", "dragend", "dragover", "dragleave", "drop", "draggable"], [1, "fas", "toggle-icon", 3, "ngClass"], [1, "fas", "fa-folder", "collection-icon"], [1, "collection-name"], [1, "node-actions", 3, "click"], ["title", "Add sub-collection", 1, "node-action-btn"], ["title", "Delete", 1, "node-action-btn"], [1, "fas", "toggle-icon", 3, "click", "ngClass"], ["title", "Add sub-collection", 1, "node-action-btn", 3, "click"], ["title", "Delete", 1, "node-action-btn", 3, "click"], [1, "fas", "fa-trash"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"]], template: function CollectionTreeComponent_Template(rf, ctx) { if (rf & 1) {
|
|
451
587
|
i0.ɵɵelementStart(0, "div", 1)(1, "div", 2)(2, "h3");
|
|
452
588
|
i0.ɵɵtext(3, "Collections");
|
|
453
589
|
i0.ɵɵelementEnd();
|
|
@@ -579,18 +715,32 @@ export class CollectionTreeComponent extends BaseAngularComponent {
|
|
|
579
715
|
</div>
|
|
580
716
|
</ng-template>
|
|
581
717
|
`, styles: ["\n .collection-tree { display: flex; flex-direction: column; height: 100%; }\n .tree-header { padding: 16px; border-bottom: 1px solid var(--mj-border-default); display: flex; justify-content: space-between; align-items: center; }\n .tree-header h3 { margin: 0; font-size: 16px; }\n .btn-new { padding: 6px 10px; background: var(--mj-brand-primary); color: var(--mj-text-inverse); border: none; border-radius: 4px; cursor: pointer; }\n .btn-new:hover { background: var(--mj-brand-primary-hover); }\n .tree-content { flex: 1; overflow-y: auto; position: relative; }\n .tree-content.drag-over-root { background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface)); }\n .tree-node {\n padding: 8px 12px;\n cursor: move;\n display: flex;\n align-items: center;\n gap: 8px;\n position: relative;\n transition: all 0.2s ease;\n border: 2px solid transparent;\n }\n .tree-node:hover { background: var(--mj-bg-surface-sunken); }\n .tree-node.selected { background: var(--mj-brand-accent); }\n .tree-node.dragging {\n opacity: 0.4;\n cursor: grabbing;\n }\n .tree-node.drag-over {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n border: 2px dashed var(--mj-brand-primary);\n border-radius: 4px;\n }\n .toggle-icon { font-size: 10px; color: var(--mj-text-disabled); cursor: pointer; width: 12px; }\n .collection-icon { font-size: 14px; }\n .collection-name { flex: 1; font-size: 14px; user-select: none; }\n .node-actions { display: none; gap: 4px; }\n .tree-node:hover .node-actions { display: flex; }\n .node-action-btn { padding: 4px 6px; background: transparent; border: none; cursor: pointer; border-radius: 3px; color: var(--mj-text-muted); }\n .node-action-btn:hover { background: var(--mj-bg-surface-sunken); }\n "] }]
|
|
582
|
-
}], () => [{ type: i1.CollectionPermissionService }, { type: i2.MJConfirmService }], {
|
|
718
|
+
}], () => [{ type: i1.CollectionPermissionService }, { type: i2.MJConfirmService }], { EnvironmentId: [{
|
|
719
|
+
type: Input
|
|
720
|
+
}], environmentId: [{
|
|
721
|
+
type: Input
|
|
722
|
+
}], CurrentUser: [{
|
|
583
723
|
type: Input
|
|
584
724
|
}], currentUser: [{
|
|
585
725
|
type: Input
|
|
726
|
+
}], SelectedCollectionId: [{
|
|
727
|
+
type: Input
|
|
586
728
|
}], selectedCollectionId: [{
|
|
587
729
|
type: Input
|
|
730
|
+
}], UserPermissions: [{
|
|
731
|
+
type: Input
|
|
588
732
|
}], userPermissions: [{
|
|
589
733
|
type: Input
|
|
734
|
+
}], CollectionSelected: [{
|
|
735
|
+
type: Output
|
|
590
736
|
}], collectionSelected: [{
|
|
591
737
|
type: Output
|
|
738
|
+
}], CollectionCreated: [{
|
|
739
|
+
type: Output
|
|
592
740
|
}], collectionCreated: [{
|
|
593
741
|
type: Output
|
|
742
|
+
}], CollectionDeleted: [{
|
|
743
|
+
type: Output
|
|
594
744
|
}], collectionDeleted: [{
|
|
595
745
|
type: Output
|
|
596
746
|
}] }); })();
|