File tree Expand file tree Collapse file tree 3 files changed +62
-8
lines changed Expand file tree Collapse file tree 3 files changed +62
-8
lines changed Original file line number Diff line number Diff line change 11<template >
22 <article class =" event-content" >
33 <main >
4- <fieldset >
4+ <fieldset class = " header " >
55 <legend >Name</legend >
66 <header >{{ event.name }}</header >
77 </fieldset >
@@ -98,6 +98,19 @@ export default {
9898 flex-direction : column ;
9999 transition : 0.5s ;
100100}
101+ .event-content :not (.selected ) aside {
102+ display : none ;
103+ }
104+ .event-content :not (.selected ) main > fieldset :not (.header ){
105+ display : none ;
106+ }
107+ .event-content :not (.selected ) fieldset .header {
108+ font-size :.7em ;
109+ letter-spacing : 0px ;
110+ font-weight :100 ;
111+ line-height : 1em ;
112+ }
113+
101114.event-content.selected {
102115 overflow : auto ;
103116}
@@ -143,7 +156,6 @@ export default {
143156.event-content > aside {
144157 font-size : 0.95em ;
145158 flex-shrink : 0 ;
146- overflow :auto ;
147159 display : flex ;
148160 flex-wrap : wrap ;
149161 flex-direction : row ;
Original file line number Diff line number Diff line change 66 :users =" users"
77 :selected =" subjectIds"
88 :view-only =" viewOnly"
9+ :roles =" roles"
910 @changed =" selectionChanged"
1011 ></tree-item >
1112 </div >
@@ -39,6 +40,13 @@ export default {
3940 root () {
4041 return this .groups .find ((x ) => ! x .parentId );
4142 },
43+ roles () {
44+ return this .relations .map ((x ) => ({
45+ subjectId: x .subjectId ,
46+ access: { read: x .canRead , update: x .canUpdate , delete: x .canDelete },
47+ other: x .characteristics ,
48+ }));
49+ },
4250 },
4351 methods: {
4452 children (id ) {
@@ -67,6 +75,7 @@ export default {
6775div [role = " tree" ] {
6876 font-size : 12pt ;
6977 overflow : auto ;
78+ max-width : 100% ;
7079}
7180div [role = " tree" ] ul .group :hover {
7281 box-shadow : inset 1px 0 0 0 black ;
@@ -90,13 +99,23 @@ div[role="tree"].view .collapsed.group > * {
9099}
91100div [role = " tree" ].view .collapsed.group > .indeterminate {
92101 max-width : 25% ;
93- white-space : nowrap ;
102+ display : -webkit-box ;
103+ -webkit-line-clamp : 1 ;
94104 overflow : hidden ;
95- text-overflow : ellipsis ;
105+ -webkit-box-orient : vertical ;
106+ position : relative ;
107+ padding-right :.5em ;
108+ }
109+ div [role = " tree" ].view .collapsed.group > .indeterminate [role = badge ]{
110+ visibility : hidden ;
96111}
97- div [role = " tree" ].view .collapsed.group > .indeterminate ::after {
98- content :' > ' ;
99- font-weight : 700 ;
112+ div [role = " tree" ].view .collapsed.group > .indeterminate ::after {
113+ position : absolute ;
114+ content : " > " ;
115+ z-index : 1 ;
116+ font-weight : 700 ;
117+ right : 0 ;
118+ top : 0 ;
100119}
101120div [role = " tree" ] .collapsed.group > ul {
102121 flex-grow : 1 ;
Original file line number Diff line number Diff line change 11<template >
22 <ul
33 v-if =" showCase"
4- :class =" [{ collapsed: selectedUsers== 1 }, subject.$type]"
4+ :class =" [{ collapsed: selectedUsers == 1 }, subject.$type]"
55 >
66 <label :class =" [{ indeterminate: containsSelected }]" >
77 <input
1212 />
1313 <span >{{ subject.name }}</span >
1414 <badge v-if =" subject.$type == 'group'" >{{ selectedUsers }}</badge >
15+ <span v-if =" viewOnly && currentRoles" >
16+ <span
17+ v-for =" (role, i) in currentRoles.other"
18+ :key =" i"
19+ class =" role"
20+ :title =" role"
21+ >
22+ {{ getRoleView(role) }}
23+ </span >
24+ </span >
1525 </label >
1626 <ul v-if =" this.children.length" class =" inner" >
1727 <li v-for =" child in children" :key =" child.id" >
2131 :groups =" groups"
2232 :selected =" selected"
2333 :view-only =" viewOnly"
34+ :roles =" roles"
2435 @changed =" emitChanged"
2536 ></tree-item >
2637 </li >
3041
3142<script >
3243import badge from " ../ui/badge.vue" ;
44+ const roles = {
45+ acceptor: " 👌" ,
46+ perfomer: " ✍️" ,
47+ owner: " 🔑" ,
48+ };
3349export default {
3450 components: { badge },
3551 name: " tree-item" ,
@@ -39,6 +55,7 @@ export default {
3955 groups: Array ,
4056 selected: Array ,
4157 viewOnly: Boolean ,
58+ roles: Array ,
4259 },
4360 data () {
4461 return {};
@@ -93,6 +110,9 @@ export default {
93110 );
94111 return allUsersIds .some ((x ) => this .selected .includes (x));
95112 },
113+ currentRoles () {
114+ return this .roles .find ((x ) => x .subjectId == this .subject .id );
115+ },
96116 },
97117
98118 methods: {
@@ -116,6 +136,9 @@ export default {
116136 };
117137 return compute (subj);
118138 },
139+ getRoleView (role ) {
140+ return roles[role] || role;
141+ },
119142 },
120143};
121144 </script >
You can’t perform that action at this time.
0 commit comments