diff --git a/models/tracker/src/index.ts b/models/tracker/src/index.ts
index 3cfe327205..7bbee0e2f6 100644
--- a/models/tracker/src/index.ts
+++ b/models/tracker/src/index.ts
@@ -279,8 +279,8 @@ export function createModel (builder: Builder): void {
descriptor: tracker.viewlet.List,
config: [
{ key: '', presenter: tracker.component.PriorityEditor },
- { key: '', presenter: tracker.component.IssuePresenter },
- { key: '', presenter: tracker.component.StatusEditor },
+ '@currentTeam',
+ '@statuses',
{ key: '', presenter: tracker.component.TitlePresenter, props: { shouldUseMargin: true } },
{ key: '', presenter: tracker.component.DueDatePresenter },
{
diff --git a/plugins/tracker-resources/src/components/issues/IssuesContent.svelte b/plugins/tracker-resources/src/components/issues/IssuesContent.svelte
index 3966c3cb0d..7646784f63 100644
--- a/plugins/tracker-resources/src/components/issues/IssuesContent.svelte
+++ b/plugins/tracker-resources/src/components/issues/IssuesContent.svelte
@@ -1,14 +1,56 @@
{#if viewlet?.$lookup?.descriptor?.component}
@@ -16,7 +58,7 @@
is={viewlet.$lookup?.descriptor?.component}
props={{
currentSpace,
- config: config ?? viewlet.config,
+ config: createConfig(viewlet, undefined),
options: viewlet.options,
viewlet,
query,
diff --git a/plugins/tracker-resources/src/components/issues/StatusEditor.svelte b/plugins/tracker-resources/src/components/issues/StatusEditor.svelte
index 584f3c3180..b328179c03 100644
--- a/plugins/tracker-resources/src/components/issues/StatusEditor.svelte
+++ b/plugins/tracker-resources/src/components/issues/StatusEditor.svelte
@@ -16,7 +16,7 @@
import { createEventDispatcher } from 'svelte'
import { AttachedData, Ref, SortingOrder, WithLookup } from '@anticrm/core'
import { Issue, IssueStatus } from '@anticrm/tracker'
- import { getClient } from '@anticrm/presentation'
+ import { createQuery, getClient } from '@anticrm/presentation'
import { tooltip, TooltipAlignment } from '@anticrm/ui'
import type { ButtonKind, ButtonSize } from '@anticrm/ui'
import tracker from '../../plugin'
@@ -34,6 +34,7 @@
export let width: string | undefined = '100%'
const client = getClient()
+ const statusesQuery = createQuery()
const dispatch = createEventDispatcher()
const handleStatusChanged = async (newStatus: Ref | undefined) => {
@@ -49,14 +50,17 @@
}
$: if (!statuses) {
const query = '_id' in value ? { attachedTo: value.space } : {}
- client
- .findAll(tracker.class.IssueStatus, query, {
+ statusesQuery.query(
+ tracker.class.IssueStatus,
+ query,
+ (result) => {
+ statuses = result
+ },
+ {
lookup: { category: tracker.class.IssueStatusCategory },
sort: { rank: SortingOrder.Ascending }
- })
- .then((result) => {
- statuses = result
- })
+ }
+ )
}