def _collect_components(self, node, visited):
        rv = []
        for child in node.nodes:
            if child.resolve()._id not in visited and not child.is_deleted and node.can_view(self.auth):
                visited.append(child.resolve()._id)
                rv.append(self._serialize_node(child, visited=visited))
        return rv
dataset/ETHPy150Open CenterForOpenScience/osf.io/website/util/rubeus.py/NodeFileCollector._collect_components/original