Skip to content

Commit 7681ccb

Browse files
authored
Relation viewlets settings (#9971)
Signed-off-by: Denis Bykhov <[email protected]>
1 parent a4dbcb3 commit 7681ccb

File tree

1 file changed

+4
-36
lines changed

1 file changed

+4
-36
lines changed

plugins/view-resources/src/components/RelationEditor.svelte

Lines changed: 4 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,11 @@
44
import { createQuery, getClient, ObjectCreate } from '@hcengineering/presentation'
55
import { Button, IconAdd, Label, Scroller, Section, showPopup } from '@hcengineering/ui'
66
import { showMenu } from '../actions'
7-
import { Viewlet, ViewletPreference } from '@hcengineering/view'
7+
import { Viewlet, ViewletPreference, ViewOptions } from '@hcengineering/view'
88
import DocTable from './DocTable.svelte'
99
import ObjectBoxPopup from './ObjectBoxPopup.svelte'
1010
import view from '../plugin'
11+
import ViewletsSettingButton from './ViewletsSettingButton.svelte'
1112
1213
export let object: Doc
1314
export let docs: Doc[]
@@ -62,41 +63,7 @@
6263
let viewlet: WithLookup<Viewlet> | undefined
6364
let preference: ViewletPreference | undefined = undefined
6465
65-
const query = createQuery()
66-
67-
$: query.query(
68-
view.class.Viewlet,
69-
{
70-
attachTo: client.getHierarchy().getBaseClass(_class)
71-
},
72-
(res) => {
73-
viewlet = res[0]
74-
},
75-
{
76-
lookup: {
77-
descriptor: view.class.ViewletDescriptor
78-
}
79-
}
80-
)
81-
82-
const preferenceQuery = createQuery()
83-
84-
$: if (viewlet != null) {
85-
preferenceQuery.query(
86-
view.class.ViewletPreference,
87-
{
88-
space: core.space.Workspace,
89-
attachedTo: viewlet._id
90-
},
91-
(res) => {
92-
preference = res[0]
93-
},
94-
{ limit: 1 }
95-
)
96-
} else {
97-
preferenceQuery.unsubscribe()
98-
preference = undefined
99-
}
66+
$: baseClass = client.getHierarchy().getBaseClass(_class)
10067
10168
$: selectedConfig = preference?.config ?? viewlet?.config
10269
$: config = selectedConfig?.filter((p) =>
@@ -133,6 +100,7 @@
133100
{#if classLabel}
134101
<Label label={classLabel} />
135102
{/if}
103+
<ViewletsSettingButton viewletQuery={{ attachTo: baseClass }} kind={'tertiary'} bind:viewlet bind:preference />
136104
{#if !readonly && allowToCreate}
137105
<Button id={core.string.AddRelation} icon={IconAdd} kind={'ghost'} on:click={add} />
138106
{/if}

0 commit comments

Comments
 (0)