1
1
<template >
2
2
<div
3
- class =" list-group-item align-items-center"
3
+ class =" list-group-item align-items-center duty-list-group "
4
4
:class =" {
5
5
'list-group-item-action':
6
6
this.$store.getters.hasCharacter && isHovering && (duty.cleared == -1 || duty.cleared == 2),
7
7
'cursor-pointer': this.$store.getters.hasCharacter && (duty.cleared == -1 || duty.cleared == 2),
8
8
}"
9
- @click =" check"
10
- @mouseover =" isHovering = true"
11
- @mouseout =" isHovering = false"
12
9
>
13
10
<div
14
11
class =" d-flex justify-content-between align-items-center"
23
20
'duty-list-item-blur': duty.blur,
24
21
}"
25
22
:title =" title"
23
+ @click =" check"
24
+ @mouseover =" onDutyItemMouseOver"
25
+ @mouseout =" onDutyItemMouseOut"
26
26
>
27
27
<i
28
28
class =" me-2 fa-fw fal"
46
46
'user-select-none': duty.blur,
47
47
}"
48
48
>
49
- {{ duty["Name" + $i18n.locale.toUpperCase()] || duty["NameEN"] }}
49
+ {{ dutyName }}
50
50
</a >
51
51
<span
52
52
v-else
58
58
'text-bold': duty.Bold,
59
59
}"
60
60
>
61
- {{ duty["Name" + $i18n.locale.toUpperCase()] || duty["NameEN"] }}
61
+ {{ dutyName }}
62
62
</span >
63
63
</span >
64
- <span
65
- v-if =" duty.IsMSQ"
66
- class =" icon-marker-msq"
67
- data-bs-toggle =" tooltip"
68
- data-bs-placement =" top"
69
- :title =" $t('encounters.msqContent')"
70
- ></span >
71
- <span
72
- v-if =" duty.Expansion && showPatchNums"
73
- :class =" 'icon-exp-' + duty.Expansion"
74
- data-bs-toggle =" tooltip"
75
- data-bs-placement =" top"
76
- :title =" $t('encounters.unlockedInExp')"
77
- ></span >
64
+ <div class =" d-inline-flex align-items-center duty-icons" >
65
+ <span
66
+ v-if =" duty.IsMSQ"
67
+ class =" icon-marker-msq"
68
+ data-bs-toggle =" tooltip"
69
+ data-bs-placement =" top"
70
+ :title =" $t('encounters.msqContent')"
71
+ @click =" check"
72
+ @mouseover =" onDutyItemMouseOver"
73
+ @mouseout =" onDutyItemMouseOut"
74
+ ></span >
75
+ <span
76
+ v-if =" duty.Expansion && showPatchNums"
77
+ :class =" 'icon-exp-' + duty.Expansion"
78
+ data-bs-toggle =" tooltip"
79
+ data-bs-placement =" top"
80
+ :title =" $t('encounters.unlockedInExp')"
81
+ @click =" check"
82
+ @mouseover =" onDutyItemMouseOver"
83
+ @mouseout =" onDutyItemMouseOut"
84
+ ></span >
85
+ <a v-if =" showWikiLink" href =" {{duty.WikiUrl}}" class =" text-success tt duty-wiki-link" @hover.stop =" " >
86
+ <i class =" fa-fw fad fa-external-link" ></i >
87
+ <span class =" tt-text" >Wiki resource</span >
88
+ </a >
89
+ </div >
78
90
</div >
79
91
<div id =" rewards" v-if =" filters.rewards && !duty.blur && ('Mounts' in duty || 'Minions' in duty)" >
80
92
<div v-if =" 'Mounts' in duty" >
143
155
text-overflow : unset ;
144
156
}
145
157
158
+ .duty-list-group {
159
+ padding : 0 ;
160
+ }
161
+
146
162
.duty-list-item {
147
163
overflow : hidden ;
148
164
white-space : nowrap ;
149
165
text-overflow : " … " ;
166
+ width : 100% ;
167
+ }
168
+
169
+ .duty-wiki-link ,
170
+ .duty-list-item {
171
+ padding : var (--bs-list-group-item-padding-y ) var (--bs-list-group-item-padding-x );
172
+ }
173
+
174
+ .duty-icons > :not (.duty-wiki-link ):last-child {
175
+ padding-right : var (--bs-list-group-item-padding-x );
150
176
}
151
177
152
178
.duty-list-item-blur {
@@ -206,6 +232,9 @@ export default {
206
232
title () {
207
233
return this .duty .LodestoneID || this .duty .blur ? " " : this .duty .Name ;
208
234
},
235
+ dutyName () {
236
+ return this .duty [" Name" + this .$i18n .locale .toUpperCase ()] || this .duty [" NameEN" ];
237
+ },
209
238
showPatchNums () {
210
239
let patchNumsSetting = this .$store .getters .settings .patchNumsOption || 0 ;
211
240
@@ -215,6 +244,9 @@ export default {
215
244
patchNumsSetting == 2
216
245
);
217
246
},
247
+ showWikiLink () {
248
+ return ! this .duty .blur && this .duty .WikiUrl ? true : false ;
249
+ },
218
250
},
219
251
methods: {
220
252
getLodestoneURL: getLodestoneURL,
@@ -243,6 +275,12 @@ export default {
243
275
let characterID = this .$store .getters .lodestoneData .Character .ID ;
244
276
updateEncounterIDs (characterID, encounterIDsAsArray);
245
277
},
278
+ onDutyItemMouseOver () {
279
+ this .isHovering = true
280
+ },
281
+ onDutyItemMouseOut () {
282
+ this .isHovering = false
283
+ }
246
284
},
247
285
};
248
286
</script >
0 commit comments