Fixed scroll to new messages on chat open (#5369)

Signed-off-by: Kristina Fefelova <kristin.fefelova@gmail.com>
This commit is contained in:
Kristina
2024-04-16 17:26:39 +07:00
committed by GitHub
parent d81f91fc3b
commit 84de2c1931
11 changed files with 98 additions and 51 deletions
+9 -2
View File
@@ -34,7 +34,8 @@ import {
type IgnoreActivity,
type Reaction,
type SavedMessage,
type TxViewlet
type TxViewlet,
type ReplyProvider
} from '@hcengineering/activity'
import contact, { type Person } from '@hcengineering/contact'
import core, {
@@ -264,6 +265,11 @@ export class TActivityMessagePreview extends TClass implements ActivityMessagePr
presenter!: AnyComponent
}
@Model(activity.class.ReplyProvider, core.class.Doc, DOMAIN_MODEL)
export class TReplyProvider extends TDoc implements ReplyProvider {
function!: Resource<(message: ActivityMessage) => Promise<void>>
}
export function createModel (builder: Builder): void {
builder.createModel(
TTxViewlet,
@@ -281,7 +287,8 @@ export function createModel (builder: Builder): void {
TSavedMessage,
TIgnoreActivity,
TActivityReference,
TActivityMessagePreview
TActivityMessagePreview,
TReplyProvider
)
builder.mixin(activity.class.DocUpdateMessage, core.class.Class, view.mixin.ObjectPresenter, {
+4
View File
@@ -733,6 +733,10 @@ export function createModel (builder: Builder, options = { addApplication: true
domain: DOMAIN_CHUNTER,
disabled: [{ _class: 1 }, { space: 1 }, { modifiedBy: 1 }, { createdBy: 1 }, { createdOn: -1 }]
})
builder.createDoc(activity.class.ReplyProvider, core.space.Model, {
function: chunter.function.ReplyToThread
})
}
export default chunter
+2 -1
View File
@@ -99,7 +99,8 @@ export default mergeIds(chunterId, chunter, {
CanDeleteMessage: '' as Resource<(doc?: Doc | Doc[]) => Promise<boolean>>,
CanCopyMessageLink: '' as Resource<(doc?: Doc | Doc[]) => Promise<boolean>>,
GetChunterSpaceLinkFragment: '' as Resource<(doc: Doc, props: Record<string, any>) => Promise<Location>>,
GetThreadLink: '' as Resource<(doc: Doc, props: Record<string, any>) => Promise<Location>>
GetThreadLink: '' as Resource<(doc: Doc, props: Record<string, any>) => Promise<Location>>,
ReplyToThread: '' as Resource<(doc: ActivityMessage) => Promise<void>>
},
filter: {
ChatMessagesFilter: '' as Resource<(message: ActivityMessage, _class?: Ref<Doc>) => boolean>