JSFiddle - React, Tailwind, and code Playground

HTML

<section id="users">
  <h3>
    Users
  </h3>
  <label>View</label>
  <input type="checkbox" value="view" data-group="users" />
  <label>Edit</label>
  <input type="checkbox" value="edit" data-group="users" />
  <label>Manage</label>
  <input type="checkbox" value="manage" data-group="users" />
</section>
<section id="library">
  <h3>
    Library
  </h3>
  <label>View</label>
  <input type="checkbox" value="view" data-group="library" />
  <label>Edit</label>
  <input type="checkbox" value="edit" data-group="library" />
  <label>Lend</label>
  <input type="checkbox" value="lend" data-group="library" />
  <label>Manage</label>
  <input type="checkbox" value="manage" data-group="library" />
</section>
<section id="textBooks">
  <h3>
    Text Books
  </h3>
  <label>View</label>
  <input type="checkbox" value="view" data-group="textBooks" />
  <label>Edit</label>
  <input type="checkbox" value="edit" data-group="textBooks" />
  <label>Lend</label>
  <input type="checkbox" value="lend" data-group="textBooks" />
  <label>Manage</label>
  <input type="checkbox" value="manage" data-group="textBooks" />
</section>
<section id="teacherBooks">
  <h3>
    Teacher Books
  </h3>
  <label>View</label>
  <input type="checkbox" value="view" data-group="teacherBooks" />
  <label>Edit</label>
  <input type="checkbox" value="edit" data-group="teacherBooks" />
  <label>Lend</label>
  <input type="checkbox" value="lend" data-group="teacherBooks" />
  <label>Manage</label>
  <input type="checkbox" value="manage" data-group="teacherBooks" />
</section>

CSS

section {
  display: block;
}

label,
input {
  display: inline-block;
}

JavaScript

$(function() {
  const ruleSet = [{
      checked: "manage",
      checkAndDisable: ["view", "edit", "lend"]
    },
    {
      checked: "view",
      checkAndDisable: []
    },
    {
      checked: "edit",
      checkAndDisable: ["view"]
    },
    {
      checked: "lend",
      checkAndDisable: ["view", "edit"]
    }
  ];

  const toggleElementsCheck = (elements, toggle) => {
    elements.each(function() {
      $(this).prop("checked", toggle);
    })
  };

  const toggleElementsDisable = (elements, toggle) => {
    elements.each(function() {
      $(this).prop("disabled", toggle);
    })
  };

  $("input[type=checkbox]").on("click", function() {
    const group = $(this).data("group");
    const checkboxes = $("input[data-group=" + group + "]").not($(this));
    const value = $(this).val();
    const rule = ruleSet.find(x => x.checked === value);
    const checkAndDisable = rule.checkAndDisable;
    const isChecked = $(this).is(":checked");

    $(checkboxes).each(function() {
      let value = $(this).val();
      let toggle = checkAndDisable.includes(value);

      toggleElementsCheck($(this), isChecked ? toggle : false);
      toggleElementsDisable($(this), isChecked ? toggle : false);
    });
  });
});