mirror of
https://github.com/hcengineering/platform.git
synced 2025-04-13 19:58:09 +00:00
Fix kanban is slow on updates (#2991)
Signed-off-by: Andrey Sobolev <haiodo@gmail.com>
This commit is contained in:
parent
fecff25fd6
commit
549353468a
@ -305,7 +305,7 @@
|
|||||||
<div class="kanban-container top-divider">
|
<div class="kanban-container top-divider">
|
||||||
<ScrollBox>
|
<ScrollBox>
|
||||||
<div class="kanban-content">
|
<div class="kanban-content">
|
||||||
{#each categories as state, si (state)}
|
{#each categories as state, si (typeof state === 'object' ? state.name : state)}
|
||||||
{@const stateObjects = getGroupByValues(groupByDocs, state)}
|
{@const stateObjects = getGroupByValues(groupByDocs, state)}
|
||||||
|
|
||||||
<div
|
<div
|
||||||
@ -325,6 +325,7 @@
|
|||||||
<KanbanRow
|
<KanbanRow
|
||||||
bind:this={stateRows[si]}
|
bind:this={stateRows[si]}
|
||||||
on:obj-focus
|
on:obj-focus
|
||||||
|
{groupByDocs}
|
||||||
{stateObjects}
|
{stateObjects}
|
||||||
{isDragging}
|
{isDragging}
|
||||||
{dragCard}
|
{dragCard}
|
||||||
|
@ -23,6 +23,7 @@
|
|||||||
export let isDragging: boolean
|
export let isDragging: boolean
|
||||||
export let dragCard: Item | undefined
|
export let dragCard: Item | undefined
|
||||||
export let objects: Item[]
|
export let objects: Item[]
|
||||||
|
export let groupByDocs: Record<string | number, Item[]>
|
||||||
export let selection: number | undefined = undefined
|
export let selection: number | undefined = undefined
|
||||||
export let checkedSet: Set<Ref<Doc>>
|
export let checkedSet: Set<Ref<Doc>>
|
||||||
export let state: CategoryType
|
export let state: CategoryType
|
||||||
|
@ -70,7 +70,9 @@
|
|||||||
let viewlets: WithLookup<Viewlet>[] = []
|
let viewlets: WithLookup<Viewlet>[] = []
|
||||||
|
|
||||||
const viewletQuery = createQuery()
|
const viewletQuery = createQuery()
|
||||||
|
let vl = false
|
||||||
$: {
|
$: {
|
||||||
|
vl = true
|
||||||
viewletQuery.query(
|
viewletQuery.query(
|
||||||
view.class.Viewlet,
|
view.class.Viewlet,
|
||||||
{
|
{
|
||||||
@ -79,6 +81,7 @@
|
|||||||
descriptor: { $in: descriptors ?? [view.viewlet.Table] }
|
descriptor: { $in: descriptors ?? [view.viewlet.Table] }
|
||||||
},
|
},
|
||||||
(res) => {
|
(res) => {
|
||||||
|
vl = false
|
||||||
viewlets = res
|
viewlets = res
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -104,9 +107,11 @@
|
|||||||
active: Ref<Viewlet> | null,
|
active: Ref<Viewlet> | null,
|
||||||
viewlets: WithLookup<Viewlet>[]
|
viewlets: WithLookup<Viewlet>[]
|
||||||
): Promise<void> {
|
): Promise<void> {
|
||||||
preference = undefined
|
if (vl === false) {
|
||||||
viewlet = viewlets.find((viewlet) => viewlet._id === active) ?? viewlets[0]
|
preference = undefined
|
||||||
setActiveViewletId(viewlet._id)
|
viewlet = viewlets.find((viewlet) => viewlet?._id === active) ?? viewlets[0]
|
||||||
|
setActiveViewletId(viewlet?._id)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$: if (viewlet !== undefined) {
|
$: if (viewlet !== undefined) {
|
||||||
|
Loading…
Reference in New Issue
Block a user