JSFiddle - React, Tailwind, and code Playground

JavaScript

var x = {R1: {A: false, B: true}, R2: {A: true, B: false}, R3: {A: true, B: false, C: true}};
var result = [];

var pick = function (origin, parent) {
    var current = [];
    for (var k in origin) {
        if (origin[k] === true) current.push(k);
        if (typeof origin[k] === 'object') pick(origin[k], k);
    }
    if (current.length > 0) result[parent] = current;
}           
            
pick(x, null) || console.log(result);