@@ -72,43 +72,48 @@ const Permissions = class Permissions extends Component {
72
72
groupPermissions = permissions =>
73
73
Object . entries (
74
74
permissions . reduce ( ( acc , cur ) => {
75
- acc [ cur . provider ] = acc [ cur . provider ] || [ ] ;
76
- acc [ cur . provider ] . push ( cur ) ;
75
+ acc [ cur . provider ] = acc [ cur . provider ] || {
76
+ providerLabel : cur . provider_label ,
77
+ permissions : [ ] ,
78
+ } ;
79
+ acc [ cur . provider ] . permissions . push ( cur ) ;
77
80
return acc ;
78
81
} , { } ) ,
79
82
) ;
80
83
createTableRows = ( groupedPermissions , roles ) =>
81
84
[ ] . concat (
82
- ...groupedPermissions . map ( ( [ permissionGroupName , permissions ] ) => [
83
- {
84
- key : `permissionGroup-${ permissionGroupName } ` ,
85
- colspan : roles . length + 1 ,
86
- tds : [ [ `td-${ permissionGroupName } ` , < b > { permissionGroupName } </ b > ] ] ,
87
- } ,
88
- ...permissions . map ( permission => ( {
89
- key : `permissionGroup-${ permissionGroupName } -${ permission . title } ` ,
90
- tds : [
91
- [
92
- `td-${ permissionGroupName } -${ permission . title } ` ,
93
- < Markup content = { permission . title } /> ,
85
+ ...groupedPermissions . map (
86
+ ( [ providerMachineName , { providerLabel, permissions } ] ) => [
87
+ {
88
+ key : `permissionGroup-${ providerMachineName } ` ,
89
+ colspan : roles . length + 1 ,
90
+ tds : [ [ `td-${ providerMachineName } ` , < b > { providerLabel } </ b > ] ] ,
91
+ } ,
92
+ ...permissions . map ( permission => ( {
93
+ key : `permissionGroup-${ providerMachineName } -${ permission . title } ` ,
94
+ tds : [
95
+ [
96
+ `td-${ providerMachineName } -${ permission . title } ` ,
97
+ < Markup content = { permission . title } /> ,
98
+ ] ,
99
+ ...roles . map ( ( { attributes } , index ) => [
100
+ `td-${ providerMachineName } -${ permission . title } -${ index } -cb` ,
101
+ attributes . is_admin && attributes . id === 'administrator' ? (
102
+ < input type = "checkbox" checked />
103
+ ) : (
104
+ < input
105
+ type = "checkbox"
106
+ onChange = { ( ) =>
107
+ this . onPermissionCheck ( attributes . id , permission . id )
108
+ }
109
+ checked = { attributes . permissions . includes ( permission . id ) }
110
+ />
111
+ ) ,
112
+ ] ) ,
94
113
] ,
95
- ...roles . map ( ( { attributes } , index ) => [
96
- `td-${ permissionGroupName } -${ permission . title } -${ index } -cb` ,
97
- attributes . is_admin && attributes . id === 'administrator' ? (
98
- < input type = "checkbox" checked />
99
- ) : (
100
- < input
101
- type = "checkbox"
102
- onChange = { ( ) =>
103
- this . onPermissionCheck ( attributes . id , permission . id )
104
- }
105
- checked = { attributes . permissions . includes ( permission . id ) }
106
- />
107
- ) ,
108
- ] ) ,
109
- ] ,
110
- } ) ) ,
111
- ] ) ,
114
+ } ) ) ,
115
+ ] ,
116
+ ) ,
112
117
) ;
113
118
handleKeyPress = event => {
114
119
const input = event . target . value . toLowerCase ( ) ;
0 commit comments