JSFiddle - React, Tailwind, and code Playground

JavaScript

var nextKeysMap = {
    1: [2, 5],    
    2: [3, 4],
    5: [6, 7],
    7: [8],
    8: [9]
};

var fullPaths = [];
generateFullPaths([1], 1);

function generateFullPaths(partialPath, currentKey) {
    if(currentKey in nextKeysMap) {
        var nextKeys = nextKeysMap[currentKey];
        for (var i = 0; i < nextKeys.length; i++) {
            var nextKey = nextKeys[i];
            generateFullPaths(partialPath.concat(nextKey), nextKey);
         }
    } else {
        fullPaths.push(partialPath);
    }
}

for(var i = 0; i < fullPaths.length; i++) {
    console.log(fullPaths[i].join(","));
}