Skip to content

Commit ace73bf

Browse files
committed
moved ontology widget to top of page for better UX
1 parent 297b289 commit ace73bf

1 file changed

Lines changed: 36 additions & 30 deletions

File tree

packages/prez-ui/app/components/ItemPage.vue

Lines changed: 36 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,39 @@ function toggleOpen(value:string) {
9999
<div class="mt-4 mb-12 overflow-auto">
100100
<slot name="item-section" :data="data" :is-concept-scheme="isConceptScheme" :top-concepts-url="topConceptsUrl" :is-ontology="isOntology">
101101
<slot name="item-top" :data="data" :is-concept-scheme="isConceptScheme" :top-concepts-url="topConceptsUrl" :is-ontology="isOntology"></slot>
102+
103+
<div class="ontology-widget" v-if="isOntology">
104+
<slot name="item-ontology-classes" :data="data" :is-concept-scheme="isConceptScheme" :is-ontology="isOntology">
105+
<div class="mt-6" v-if="isOntology && (data.data as PrezOntologyNode).ontologyClasses.length > 0">
106+
<div class="pz-concept-node h-9">
107+
<b>Classes</b>
108+
<Button variant="ghost" size="icon" @click="toggleOpen('classes')">
109+
<ChevronRight v-if="!open.includes('classes')" class="size-4" />
110+
<ChevronDown v-else class="size-4" />
111+
</Button>
112+
</div>
113+
<div v-if="open.includes('classes')" class="mt-4 flex flex-col gap-2 pz-concept-children">
114+
<Node v-for="ontologyClass in (data.data as PrezOntologyNode).ontologyClasses" :term="ontologyClass" />
115+
</div>
116+
</div>
117+
</slot>
118+
119+
<slot name="item-ontology-properties" :data="data" :is-concept-scheme="isConceptScheme" :is-ontology="isOntology">
120+
<div class="mt-6" v-if="isOntology && (data.data as PrezOntologyNode).ontologyProperties.length > 0">
121+
<div class="pz-concept-node h-9">
122+
<b>Properties</b>
123+
<Button variant="ghost" size="icon" @click="toggleOpen('properties')">
124+
<ChevronRight v-if="!open.includes('properties')" class="size-4" />
125+
<ChevronDown v-else class="size-4" />
126+
</Button>
127+
</div>
128+
<div v-if="open.includes('properties')" class="mt-4 flex flex-col gap-2 pz-concept-children">
129+
<Node v-for="ontologyProperty in (data.data as PrezOntologyNode).ontologyProperties" :term="ontologyProperty" />
130+
</div>
131+
</div>
132+
</slot>
133+
</div>
134+
102135
<slot name="item-table" :data="data" :is-concept-scheme="isConceptScheme" :top-concepts-url="topConceptsUrl" :is-ontology="isOntology">
103136

104137
<ItemTable
@@ -141,36 +174,6 @@ function toggleOpen(value:string) {
141174
</div>
142175
</slot>
143176

144-
<slot name="item-ontology-classes" :data="data" :is-concept-scheme="isConceptScheme" :is-ontology="isOntology">
145-
<div class="mt-6" v-if="isOntology && (data.data as PrezOntologyNode).ontologyClasses.length > 0">
146-
<div class="pz-concept-node h-9">
147-
<b>Classes</b>
148-
<Button variant="ghost" size="icon" @click="toggleOpen('classes')">
149-
<ChevronRight v-if="!open.includes('classes')" class="size-4" />
150-
<ChevronDown v-else class="size-4" />
151-
</Button>
152-
</div>
153-
<div v-if="open.includes('classes')" class="mt-4 flex flex-col gap-2 pz-concept-children">
154-
<Node v-for="ontologyClass in (data.data as PrezOntologyNode).ontologyClasses" :term="ontologyClass" />
155-
</div>
156-
</div>
157-
</slot>
158-
159-
<slot name="item-ontology-properties" :data="data" :is-concept-scheme="isConceptScheme" :is-ontology="isOntology">
160-
<div class="mt-6" v-if="isOntology && (data.data as PrezOntologyNode).ontologyProperties.length > 0">
161-
<div class="pz-concept-node h-9">
162-
<b>Properties</b>
163-
<Button variant="ghost" size="icon" @click="toggleOpen('properties')">
164-
<ChevronRight v-if="!open.includes('properties')" class="size-4" />
165-
<ChevronDown v-else class="size-4" />
166-
</Button>
167-
</div>
168-
<div v-if="open.includes('properties')" class="mt-4 flex flex-col gap-2 pz-concept-children">
169-
<Node v-for="ontologyProperty in (data.data as PrezOntologyNode).ontologyProperties" :term="ontologyProperty" />
170-
</div>
171-
</div>
172-
</slot>
173-
174177
<slot name="item-bottom" :data="data" :is-concept-scheme="isConceptScheme" :top-concepts-url="topConceptsUrl" :is-ontology="isOntology"></slot>
175178
</slot>
176179
</div>
@@ -200,4 +203,7 @@ function toggleOpen(value:string) {
200203
.pz-concept .pz-concept {
201204
padding-left:20px;
202205
}
206+
.ontology-widget {
207+
margin-bottom: 1em;
208+
}
203209
</style>

0 commit comments

Comments
 (0)