ec8b4a626483430e2ee5f1b83bfec62a743b285c
[yaffs-website] / web / modules / contrib / permissions_by_term / js / src / async-function / create-permission.js
1 import _ from 'lodash';
2 import Backend from '../model/backend.prototype';
3
4 /**
5  * @returns Access
6  */
7 const createPermission = async (fetchFromBackend) => {
8   let data = await fetchFromBackend(),
9       fieldCssClasses = [];
10
11   if (!_.isEmpty(data.taxonomyRelationFieldNames)) {
12     data.taxonomyRelationFieldNames.forEach((fieldName) => {
13       const fieldWrapperClass = '.field--name-' + fieldName.replace(/_/g, '-');
14
15       fieldCssClasses.push(fieldWrapperClass);
16     });
17   }
18
19   return new Backend(
20       data.taxonomyRelationFieldNames,
21       data.permissions.userDisplayNames,
22       data.permissions.roleLabels,
23       fieldCssClasses
24   );
25 }
26
27 export default createPermission;