unix-permissions
Version:
Swiss Army knife for Unix permissions
19 lines (11 loc) • 424 B
JavaScript
import{excludeKeys}from"filter-obj";
import{SPECIAL_PERMISSIONS}from"../constants.js";
import{unaryMap}from"../helpers.js";
import{notMap}from"./not.js";
const invertMap=(nodesMap)=>{
const nodesMapA=notMap(nodesMap);
const nodesMapB=excludeKeys(nodesMapA,isSpecial);
return nodesMapB
};
const isSpecial=(key,{permission})=>SPECIAL_PERMISSIONS.has(permission);
export const invert=unaryMap.bind(undefined,invertMap);