Skip to content

Commit eb17bd7

Browse files
committed
Migrate CollectiveMembersModal to NcModal to fix Team overview link
Signed-off-by: Peymaneh <peymaneh@posteo.net>
1 parent 2a493cd commit eb17bd7

File tree

1 file changed

+54
-28
lines changed

1 file changed

+54
-28
lines changed

src/components/Nav/CollectiveMembersModal.vue

Lines changed: 54 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,34 +4,40 @@
44
-->
55

66
<template>
7-
<NcDialog
8-
:name="t('collectives', 'Members of collective {name}', { name: collective.name }, { escape: false })"
7+
<NcModal
98
size="normal"
10-
@closing="onClose">
9+
class="collective-members-modal"
10+
@close="onClose">
1111
<div class="modal-collective-members">
12-
<a
13-
v-if="showTeamLink"
14-
class="team-link"
15-
:href="teamUrl"
16-
:title="t('collectives', 'Team overview')"
17-
target="_blank">
18-
<OpenInNewIcon :size="20" />
19-
</a>
12+
<h2 class="modal-collective-members__name">
13+
<a
14+
v-if="showTeamLink"
15+
class="team-link"
16+
:href="teamUrl"
17+
:title="t('collectives', 'Go to team overview')"
18+
target="_blank">
19+
{{ t('collectives', 'Members of collective {name}', { name: collective.name }, { escape: false }) }}
20+
<OpenInNewIcon :size="20" />
21+
</a>
22+
<template v-else>
23+
{{ t('collectives', 'Members of collective {name}', { name: collective.name }, { escape: false }) }}
24+
</template>
25+
</h2>
2026
<MemberPicker
2127
:show-current="true"
2228
:circle-id="collective.circleId"
2329
:current-user-is-admin="currentUserIsAdmin"
2430
:current-members="circleMembersSorted(collective.circleId)"
2531
:on-click-searched="onClickSearched" />
2632
</div>
27-
</NcDialog>
33+
</NcModal>
2834
</template>
2935

3036
<script>
3137
import { t } from '@nextcloud/l10n'
3238
import { generateUrl } from '@nextcloud/router'
3339
import { mapActions, mapState } from 'pinia'
34-
import NcDialog from '@nextcloud/vue/components/NcDialog'
40+
import NcModal from '@nextcloud/vue/components/NcModal'
3541
import OpenInNewIcon from 'vue-material-design-icons/OpenInNew.vue'
3642
import MemberPicker from '../Member/MemberPicker.vue'
3743
import { autocompleteSourcesToCircleMemberTypes, circlesMemberTypes } from '../../constants.js'
@@ -44,7 +50,7 @@ export default {
4450
4551
components: {
4652
MemberPicker,
47-
NcDialog,
53+
NcModal,
4854
OpenInNewIcon,
4955
},
5056
@@ -107,30 +113,50 @@ export default {
107113
</script>
108114

109115
<style lang="scss" scoped>
110-
:deep(.modal-container__content) {
111-
position: relative;
116+
.collective-members-modal {
117+
:deep(.modal-wrapper .modal-container) {
118+
display: flex !important;
119+
padding-block: 4px 0;
120+
padding-inline: 12px;
121+
}
122+
123+
:deep(.modal-wrapper .modal-container__content) {
124+
display: flex;
125+
flex-direction: column;
126+
overflow: hidden;
127+
}
112128
}
113129
114130
.modal-collective-members {
115131
height: 550px;
116132
max-height: 80vh;
117-
padding-bottom: 12px;
133+
134+
&__name {
135+
font-size: 21px;
136+
text-align: center;
137+
line-height: var(--default-clickable-area);
138+
min-height: var(--default-clickable-area);
139+
overflow-wrap: break-word;
140+
margin-block: 0 12px;
141+
margin-inline: 0;
142+
143+
&:hover .team-link,
144+
&:hover .material-design-icon {
145+
color: var(--color-primary-element);
146+
transition: color var(--animation-quick) ease;
147+
}
148+
}
118149
}
119150
120151
.team-link {
121-
position: absolute;
122-
top: 0;
123-
right: 12px;
124-
display: flex;
125-
align-items: center;
126-
height: var(--default-clickable-area);
127-
color: var(--color-text-maxcontrast);
152+
color: var(--color-main-text);
128153
text-decoration: none;
129154
130-
&:hover,
131-
&:focus-visible {
132-
color: var(--color-primary-element);
133-
transition: color var(--animation-quick) ease;
155+
.material-design-icon {
156+
display: inline;
157+
vertical-align: middle;
158+
color: var(--color-text-maxcontrast);
159+
white-space: nowrap;
134160
}
135161
136162
&:focus-visible {

0 commit comments

Comments
 (0)