mirror of
https://github.com/hcengineering/platform.git
synced 2026-09-27 20:14:57 +02:00
UBERF-8288: Fix archiving a channel (#6750)
Signed-off-by: Kristina Fefelova <kristin.fefelova@gmail.com>
This commit is contained in:
@@ -3,15 +3,31 @@
|
||||
import ThreadParentMessage from './ThreadParentPresenter.svelte'
|
||||
import { Label } from '@hcengineering/ui'
|
||||
import ChannelScrollView from '../ChannelScrollView.svelte'
|
||||
import { Ref } from '@hcengineering/core'
|
||||
import core, { Doc, Ref, Space } from '@hcengineering/core'
|
||||
import { createQuery, getClient } from '@hcengineering/presentation'
|
||||
|
||||
import { ChannelDataProvider } from '../../channelDataProvider'
|
||||
import chunter from '../../plugin'
|
||||
|
||||
export let selectedMessageId: Ref<ActivityMessage> | undefined = undefined
|
||||
export let message: ActivityMessage
|
||||
|
||||
const query = createQuery()
|
||||
const client = getClient()
|
||||
const hierarchy = client.getHierarchy()
|
||||
|
||||
let channel: Doc | undefined = undefined
|
||||
let dataProvider: ChannelDataProvider | undefined = undefined
|
||||
|
||||
$: query.query(
|
||||
message.attachedToClass,
|
||||
{ _id: message.attachedTo },
|
||||
(res) => {
|
||||
channel = res[0]
|
||||
},
|
||||
{ limit: 1 }
|
||||
)
|
||||
|
||||
$: if (message !== undefined && dataProvider === undefined) {
|
||||
dataProvider = new ChannelDataProvider(
|
||||
undefined,
|
||||
@@ -24,22 +40,26 @@
|
||||
}
|
||||
|
||||
$: messagesStore = dataProvider?.messagesStore
|
||||
$: readonly = hierarchy.isDerived(message.attachedToClass, core.class.Space)
|
||||
? (channel as Space)?.archived ?? false
|
||||
: false
|
||||
</script>
|
||||
|
||||
<div class="hulyComponent-content hulyComponent-content__container noShrink">
|
||||
{#if dataProvider !== undefined}
|
||||
{#if dataProvider !== undefined && channel !== undefined}
|
||||
<ChannelScrollView
|
||||
bind:selectedMessageId
|
||||
embedded
|
||||
skipLabels
|
||||
object={message}
|
||||
{channel}
|
||||
provider={dataProvider}
|
||||
fullHeight={false}
|
||||
fixedInput={false}
|
||||
>
|
||||
<svelte:fragment slot="header">
|
||||
<div class="mt-3">
|
||||
<ThreadParentMessage {message} />
|
||||
<ThreadParentMessage {message} {readonly} />
|
||||
</div>
|
||||
|
||||
{#if (message.replies ?? $messagesStore?.length ?? 0) > 0}
|
||||
|
||||
@@ -39,6 +39,7 @@
|
||||
export let hoverStyles: 'borderedHover' | 'filledHover' = 'borderedHover'
|
||||
export let attachmentImageSize: AttachmentImageSize = 'x-large'
|
||||
export let videoPreload = true
|
||||
export let readonly = false
|
||||
export let onClick: (() => void) | undefined = undefined
|
||||
|
||||
const client = getClient()
|
||||
@@ -74,5 +75,6 @@
|
||||
{attachmentImageSize}
|
||||
{videoPreload}
|
||||
{onClick}
|
||||
{readonly}
|
||||
/>
|
||||
{/if}
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
import { ActivityMessage } from '@hcengineering/activity'
|
||||
|
||||
export let message: ActivityMessage
|
||||
export let readonly = false
|
||||
</script>
|
||||
|
||||
<ActivityMessagePresenter
|
||||
@@ -26,4 +27,5 @@
|
||||
withShowMore={false}
|
||||
attachmentImageSize="x-large"
|
||||
skipLabel
|
||||
{readonly}
|
||||
/>
|
||||
|
||||
Reference in New Issue
Block a user