'use strict'; const rfr = require("rfr"); const inExtensions = rfr("lib/path/in-extensions"); const subtractExtension = rfr("lib/path/subtract-extension"); module.exports = function(filename, extension, candidateFilenames, candidateExtensions) { let basename = subtractExtension(filename, extension); return candidateFilenames.map((candidate) => { return { filename: candidate, extensionMatch: inExtensions(candidate, candidateExtensions) } }).filter((candidate) => { return candidate.extensionMatch !== false; }).filter((candidate) => { return (subtractExtension(candidate.filename, candidate.extensionMatch) === basename); }).map((candidate) => { return candidate.filename; }); }