Skip to content

Commit bce9d43

Browse files
committed
feat: switch team position in controls
1 parent 88f02bb commit bce9d43

File tree

3 files changed

+24
-43
lines changed

3 files changed

+24
-43
lines changed

src/modules/controls/controls.store.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@ export const useControlsStore = defineStore('controls', {
88
lockOverlay: !import.meta.env.PROD,
99
impros: [] as Impro[],
1010
useImproList: true,
11+
inverseTeamPosition: true,
1112
}),
1213
});

src/modules/controls/controls.vue

Lines changed: 21 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ function loadImpro(impro: Impro) {
3232
<div class="content-wrapper">
3333
<n-space align="center" justify="space-between">
3434
<n-h1>Controls</n-h1>
35-
<div>
35+
<div>
3636
<n-popconfirm
3737
positive-text="Reset"
3838
negative-text="Annuler"
@@ -74,18 +74,10 @@ function loadImpro(impro: Impro) {
7474
<n-collapse-item title="Événement" name="1">
7575
<n-form label-width="200" label-placement="left">
7676
<n-form-item label="Type d'évenement">
77-
<n-input
78-
v-model:value="eventStore.type"
79-
type="text"
80-
placeholder="ex: Match d'improvisation"
81-
/>
77+
<n-input v-model:value="eventStore.type" type="text" placeholder="ex: Match d'improvisation" />
8278
</n-form-item>
8379
<n-form-item label="Nom de l'evenement">
84-
<n-input
85-
v-model:value="eventStore.name"
86-
type="text"
87-
placeholder="ex: Le match des petits"
88-
/>
80+
<n-input v-model:value="eventStore.name" type="text" placeholder="ex: Le match des petits" />
8981
</n-form-item>
9082
<n-form-item label="Durée totale de l'evenement">
9183
<n-time-picker
@@ -96,10 +88,7 @@ function loadImpro(impro: Impro) {
9688
:minutes="Array.from(Array(12), (_, i) => i * 5)"
9789
:disabled="!dashboardStore.displayGlobalTimer"
9890
/>
99-
<span
100-
v-show="!dashboardStore.displayGlobalTimer"
101-
class="muted"
102-
>&nbsp;&nbsp; Le timer global est desactivé</span>
91+
<span v-show="!dashboardStore.displayGlobalTimer" class="muted">&nbsp;&nbsp; Le timer global est desactivé</span>
10392
</n-form-item>
10493
<n-form-item label="Utiliser une liste d'impros">
10594
<n-switch v-model:value="controlsStore.useImproList" />
@@ -156,16 +145,15 @@ function loadImpro(impro: Impro) {
156145
</n-form>
157146
</n-collapse-item>
158147
<n-collapse-item title="Equipes" name="3">
148+
<n-form-item label="Inverser la position des équipes dans les controls par rapport au dashboard" label-placement="left">
149+
<n-switch v-model:value="controlsStore.inverseTeamPosition" />
150+
</n-form-item>
159151
<n-form label-width="200" label-placement="left">
160152
<n-grid :cols="2" x-gap="24">
161153
<n-gi>
162154
<strong>Equipe 1</strong>
163155
<n-form-item label="Nom de l'équipe">
164-
<n-input
165-
v-model:value="dashboardStore.teamLeft.name"
166-
type="text"
167-
placeholder="ex: TTI"
168-
/>
156+
<n-input v-model:value="dashboardStore.teamLeft.name" type="text" placeholder="ex: TTI" />
169157
</n-form-item>
170158
<n-form-item label="Nombre de pénalités max">
171159
<n-input-number
@@ -183,11 +171,7 @@ function loadImpro(impro: Impro) {
183171
<n-gi>
184172
<strong>Equipe 2</strong>
185173
<n-form-item label="Nom de l'équipe">
186-
<n-input
187-
v-model:value="dashboardStore.teamRight.name"
188-
type="text"
189-
placeholder="ex: TTI"
190-
/>
174+
<n-input v-model:value="dashboardStore.teamRight.name" type="text" placeholder="ex: TTI" />
191175
</n-form-item>
192176
<n-form-item label="Nombre de pénalités max">
193177
<n-input-number
@@ -211,11 +195,7 @@ function loadImpro(impro: Impro) {
211195
</n-card>
212196
<br>
213197

214-
<n-card
215-
title="Overlay"
216-
class="raised content-no-padding"
217-
:segmented="!controlsStore.lockOverlay"
218-
>
198+
<n-card title="Overlay" class="raised content-no-padding" :segmented="!controlsStore.lockOverlay">
219199
<template #header-extra>
220200
<n-switch v-model:value="controlsStore.lockOverlay">
221201
<template #checked>
@@ -235,19 +215,11 @@ function loadImpro(impro: Impro) {
235215

236216

237217
<n-form-item label="Contenu">
238-
<n-input
239-
v-model:value="dashboardStore.overlay.content"
240-
type="textarea"
241-
placeholder="Contenu"
242-
/>
218+
<n-input v-model:value="dashboardStore.overlay.content" type="textarea" placeholder="Contenu" />
243219
</n-form-item>
244220
</n-form>
245221
<n-space justify="center">
246-
<n-alert
247-
v-if="dashboardStore.overlay.displayed"
248-
title="Attention"
249-
type="warning"
250-
>
222+
<n-alert v-if="dashboardStore.overlay.displayed" title="Attention" type="warning">
251223
L'overlay est affiché, les modifications seront visibles par tout le monde
252224
</n-alert>
253225
</n-space>
@@ -260,7 +232,7 @@ function loadImpro(impro: Impro) {
260232
<n-gi span="2">
261233
<n-space vertical justify="center" style="height: 100%">
262234
<TeamControl
263-
:team="dashboardStore.teamLeft"
235+
:team="controlsStore.inverseTeamPosition ? dashboardStore.teamRight : dashboardStore.teamLeft"
264236
class="raised"
265237
@apply-penality="dashboardStore.teamRight.increaseScore"
266238
/>
@@ -310,7 +282,7 @@ function loadImpro(impro: Impro) {
310282
<n-gi span="2">
311283
<n-space vertical justify="center" style="height: 100%">
312284
<TeamControl
313-
:team="dashboardStore.teamRight"
285+
:team="controlsStore.inverseTeamPosition ? dashboardStore.teamLeft : dashboardStore.teamRight"
314286
icons-left
315287
class="raised"
316288
@apply-penality="dashboardStore.teamLeft.increaseScore"
@@ -358,15 +330,18 @@ function loadImpro(impro: Impro) {
358330
.n-h1 {
359331
margin: 0;
360332
}
333+
361334
.raised {
362335
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
363336
border: none;
364337
}
338+
365339
.muted {
366340
color: #a2a2a2cc;
367341
}
342+
368343
.content-no-padding {
369-
& > ::v-deep(.n-card__content) {
344+
&> ::v-deep(.n-card__content) {
370345
padding: 0;
371346
}
372347
}
@@ -376,11 +351,14 @@ function loadImpro(impro: Impro) {
376351
text-align: center;
377352
}
378353
}
354+
379355
.section-card {
380356
border-radius: 0;
357+
381358
&:not(:first-child) {
382359
border-top: 1px solid #eee;
383360
}
361+
384362
::v-deep(.n-card__content) {
385363
padding: 30px;
386364
}

src/plugins/naive.plugin.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,11 @@ import {
3434
NH2,
3535
NDropdown,
3636
NEllipsis,
37+
NDivider,
3738
} from 'naive-ui';
3839

3940
const components = [
41+
NDivider,
4042
NEllipsis,
4143
NDropdown,
4244
NH2,

0 commit comments

Comments
 (0)