Skip to content

Commit be7df4a

Browse files
authored
EQMS-1642 Show training title in tables (#9793)
Signed-off-by: Alexander Onnikov <[email protected]>
1 parent 8381d2c commit be7df4a

File tree

4 files changed

+37
-3
lines changed

4 files changed

+37
-3
lines changed

models/training/src/index.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,10 @@ function defineTraining (builder: Builder): void {
189189
component: training.component.TrainingPanel
190190
})
191191

192+
builder.mixin(training.class.Training, core.class.Class, view.mixin.ObjectPresenter, {
193+
presenter: training.component.TrainingPresenter
194+
})
195+
192196
builder.createDoc(view.class.Viewlet, core.space.Model, {
193197
attachTo: training.class.Training,
194198
descriptor: view.viewlet.Table,
@@ -201,7 +205,8 @@ function defineTraining (builder: Builder): void {
201205
},
202206
{
203207
...columns.trainingTitle,
204-
key: 'title'
208+
key: '',
209+
presenter: training.component.TrainingTitlePresenter
205210
},
206211
{
207212
...columns.trainingRevision,
@@ -890,8 +895,7 @@ const columns = {
890895
trainingTitle: {
891896
key: 'title',
892897
label: training.string.TrainingTitle,
893-
props: { accent: true },
894-
displayProps: { grow: true, align: 'left' }
898+
displayProps: { align: 'left' }
895899
},
896900
trainingRevision: {
897901
key: 'revision',
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<!--
2+
Copyright © 2023 Hardcore Engineering Inc.
3+
-->
4+
5+
<script lang="ts">
6+
import { type Training } from '@hcengineering/training'
7+
import { DocNavLink } from '@hcengineering/view-resources'
8+
9+
export let value: Training
10+
export let disabled: boolean = false
11+
export let accent: boolean = false
12+
</script>
13+
14+
{#if value}
15+
<div class="content-halfcontent-color">
16+
<DocNavLink object={value} {disabled} noOverflow accent>
17+
<span class="whitespace-nowrap" class:fs-bold={accent}>
18+
{value.title}
19+
</span>
20+
</DocNavLink>
21+
</div>
22+
{/if}

plugins/training-resources/src/index.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import TrainingCodePresenter from './components/TrainingCodePresenter.svelte'
2828
import TrainingCreator from './components/TrainingCreator.svelte'
2929
import TrainingPanel from './components/TrainingPanel.svelte'
3030
import TrainingPassingScorePresenter from './components/TrainingPassingScorePresenter.svelte'
31+
import TrainingPresenter from './components/TrainingPresenter.svelte'
3132
import TrainingRequestDueDateEditor from './components/TrainingRequestDueDateEditor.svelte'
3233
import TrainingRequestMaxAttemptsEditor from './components/TrainingRequestMaxAttemptsEditor.svelte'
3334
import TrainingRequestMaxAttemptsPresenter from './components/TrainingRequestMaxAttemptsPresenter.svelte'
@@ -36,6 +37,7 @@ import TrainingRequestPanel from './components/TrainingRequestPanel.svelte'
3637
import TrainingRequestTraineesEditor from './components/TrainingRequestTraineesEditor.svelte'
3738
import TrainingStateFilterPresenter from './components/TrainingStateFilterPresenter.svelte'
3839
import TrainingStatePresenter from './components/TrainingStatePresenter.svelte'
40+
import TrainingTitlePresenter from './components/TrainingTitlePresenter.svelte'
3941
import ViewAllTrainings from './components/ViewAllTrainings.svelte'
4042
import ViewIncomingRequests from './components/ViewIncomingRequests.svelte'
4143
import ViewMyResults from './components/ViewMyResults.svelte'
@@ -76,6 +78,7 @@ export default async (): Promise<Resources> => ({
7678
TrainingCreator,
7779
TrainingPanel,
7880
TrainingPassingScorePresenter,
81+
TrainingPresenter,
7982
TrainingRequestDueDateEditor,
8083
TrainingRequestMaxAttemptsEditor,
8184
TrainingRequestMaxAttemptsPresenter,
@@ -84,6 +87,7 @@ export default async (): Promise<Resources> => ({
8487
TrainingRequestTraineesEditor,
8588
TrainingStateFilterPresenter,
8689
TrainingStatePresenter,
90+
TrainingTitlePresenter,
8791
ViewAllTrainings,
8892
ViewIncomingRequests,
8993
ViewMyTrainings,

plugins/training-resources/src/plugin.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import type IncomingRequestStatePresenter from './components/IncomingRequestStat
2121
import type SentRequestCompletionPresenter from './components/SentRequestCompletionPresenter.svelte'
2222
import type SentRequestPresenter from './components/SentRequestPresenter.svelte'
2323
import type SentRequestStatePresenter from './components/SentRequestStatePresenter.svelte'
24+
import type TrainingPresenter from './components/TrainingPresenter.svelte'
2425
import type TrainingAttemptNumberPresenter from './components/TrainingAttemptNumberPresenter.svelte'
2526
import type TrainingAttemptPanel from './components/TrainingAttemptPanel.svelte'
2627
import type TrainingAttemptPresenter from './components/TrainingAttemptPresenter.svelte'
@@ -40,6 +41,7 @@ import type TrainingRequestPanel from './components/TrainingRequestPanel.svelte'
4041
import type TrainingRequestTraineesEditor from './components/TrainingRequestTraineesEditor.svelte'
4142
import type TrainingStateFilterPresenter from './components/TrainingStateFilterPresenter.svelte'
4243
import type TrainingStatePresenter from './components/TrainingStatePresenter.svelte'
44+
import type TrainingTitlePresenter from './components/TrainingTitlePresenter.svelte'
4345
import type ViewAllTrainings from './components/ViewAllTrainings.svelte'
4446
import type ViewIncomingRequests from './components/ViewIncomingRequests.svelte'
4547
import type ViewMyResults from './components/ViewMyResults.svelte'
@@ -56,6 +58,7 @@ export default mergeIds(trainingId, training, {
5658
SentRequestCompletionPresenter: '' as Resource<ComponentType<SentRequestCompletionPresenter>>,
5759
SentRequestPresenter: '' as Resource<ComponentType<SentRequestPresenter>>,
5860
SentRequestStatePresenter: '' as Resource<ComponentType<SentRequestStatePresenter>>,
61+
TrainingPresenter: '' as Resource<ComponentType<TrainingPresenter>>,
5962
TrainingAttemptNumberPresenter: '' as Resource<ComponentType<TrainingAttemptNumberPresenter>>,
6063
TrainingAttemptPanel: '' as Resource<ComponentType<TrainingAttemptPanel>>,
6164
TrainingAttemptPresenter: '' as Resource<ComponentType<TrainingAttemptPresenter>>,
@@ -74,6 +77,7 @@ export default mergeIds(trainingId, training, {
7477
TrainingRequestTraineesEditor: '' as Resource<ComponentType<TrainingRequestTraineesEditor>>,
7578
TrainingStateFilterPresenter: '' as Resource<ComponentType<TrainingStateFilterPresenter>>,
7679
TrainingStatePresenter: '' as Resource<ComponentType<TrainingStatePresenter>>,
80+
TrainingTitlePresenter: '' as Resource<ComponentType<TrainingTitlePresenter>>,
7781
ViewAllTrainings: '' as Resource<ComponentType<ViewAllTrainings>>,
7882
ViewIncomingRequests: '' as Resource<ComponentType<ViewIncomingRequests>>,
7983
ViewMyTrainings: '' as Resource<ComponentType<ViewMyTrainings>>,

0 commit comments

Comments
 (0)