While I was waiting for your repsonse, I knocked this up to generate a single file of hyperlinks.
While it may not be what you want, it may give you some clues...
[{"id":"f6e764337c455bef","type":"fs-ops-dir","z":"ccdc4f1f78201a08","name":"List PDFs in c:\\temp","path":"path","pathType":"msg","filter":"filter","filterType":"msg","dir":"payload","dirType":"msg","x":1620,"y":140,"wires":[["5bb5ae22a5d81a5c"]]},{"id":"3c7cb4afe87b57ec","type":"inject","z":"ccdc4f1f78201a08","name":"","props":[],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","x":1250,"y":140,"wires":[["34ce3cdda5961df8"]]},{"id":"ef8535503bf95ce8","type":"debug","z":"ccdc4f1f78201a08","name":"debug 97","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1640,"y":200,"wires":[]},{"id":"5bb5ae22a5d81a5c","type":"function","z":"ccdc4f1f78201a08","name":"make document","func":"const links = []\nconst files = msg.payload\nconst html = []\n\nhtml.push(\"<html>\")\nhtml.push(\" <head>\")\nhtml.push(\" <title>File List</title>\")\nhtml.push(\" </head>\")\nhtml.push(\" <body>\")\nhtml.push(\" <p>\")\nfor (let index = 0; index < files.length; index++) {\n const fullpath = path.join(msg.path, files[index])\n const text = files[index]\n const anchor = ` <a href=\"${fullpath}\">${text}</a>`\n links.push(anchor)\n}\nhtml.push(...links)\nhtml.push(\" </p>\")\nhtml.push(\" </body>\")\nhtml.push(\"</html>\")\n\n//make final HTML\nmsg.payload = html.join('\\n')\n\n//generate the save as filename for the \"write file\" node\nmsg.filename = path.join(msg.path, msg.outputFilename)\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[{"var":"path","module":"path"}],"x":1440,"y":200,"wires":[["ef8535503bf95ce8"]]},{"id":"34ce3cdda5961df8","type":"change","z":"ccdc4f1f78201a08","name":"Set Variables","rules":[{"t":"set","p":"path","pt":"msg","to":"c:/temp","tot":"str"},{"t":"set","p":"filter","pt":"msg","to":"*.pdf","tot":"str"},{"t":"set","p":"outputFilename","pt":"msg","to":"result.html","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":1410,"y":140,"wires":[["f6e764337c455bef"]]},{"id":"7b56130a0c6bab9b","type":"comment","z":"ccdc4f1f78201a08","name":"Make single file full of hyperlinks","info":"","x":1330,"y":100,"wires":[]}]
NOTE: uses the most excellent node-red-contrib-fs-ops
for listing files in a directory (and much ore)