@@ -199,14 +199,42 @@ <h2 class="heading-2 tableHeader__heading">Members <span *ngIf="currentPlan ===
199199 </ td >
200200 </ ng-container >
201201
202- <!-- Active Column -->
202+ <!-- Access Column -->
203203 < ng-container matColumnDef ="access ">
204204 < th mat-header-cell *matHeaderCellDef matTooltip ="Access to connection "> Access</ th >
205205 < td mat-cell *matCellDef ="let element; let i = index "
206206 data-label ="Access "
207207 class ="company-member-cell company-member-cell_content-center ">
208- < mat-icon *ngIf ="element.has_groups " class ="company-member-cell_accessed " fontSet ="material-symbols-outlined "> check_circle</ mat-icon >
209- < mat-icon *ngIf ="!element.has_groups " class ="company-member-cell_not-accessed " fontSet ="material-symbols-outlined "> cancel</ mat-icon >
208+ @if (element.has_groups) {
209+ < mat-icon class ="company-member-cell_accessed " fontSet ="material-symbols-outlined "
210+ #overlayOrigin ="cdkOverlayOrigin "
211+ cdkOverlayOrigin
212+ (mouseenter) ="element._popupOpen = true "
213+ (mouseleave) ="element._popupOpen = false "> check_circle</ mat-icon >
214+ < ng-template
215+ cdkConnectedOverlay
216+ [cdkConnectedOverlayOrigin] ="overlayOrigin "
217+ [cdkConnectedOverlayOpen] ="element._popupOpen "
218+ [cdkConnectedOverlayPositions] ="[
219+ { originX: 'center', originY: 'top', overlayX: 'center', overlayY: 'bottom', offsetY: -4 },
220+ { originX: 'center', originY: 'bottom', overlayX: 'center', overlayY: 'top', offsetY: 4 }
221+ ] "
222+ [cdkConnectedOverlayHasBackdrop] ="false ">
223+ < div class ="access-popup " (mouseleave) ="element._popupOpen = false ">
224+ @for (conn of element.user_membership; track conn.id) {
225+ < div class ="access-popup__connection ">
226+ < span class ="access-popup__connection-title "> {{ conn.title }}</ span >
227+ < span class ="access-popup__connection-db "> {{ conn.database }}</ span >
228+ @for (group of conn.groups; track group.id) {
229+ < span class ="access-popup__group "> {{ group.title }}</ span >
230+ }
231+ </ div >
232+ }
233+ </ div >
234+ </ ng-template >
235+ } @else {
236+ < mat-icon class ="company-member-cell_not-accessed " fontSet ="material-symbols-outlined "> cancel</ mat-icon >
237+ }
210238 </ td >
211239 </ ng-container >
212240
0 commit comments