Some checks failed
No response / noResponse (push) Has been cancelled
CI / Continuous releases (push) Has been cancelled
CI / test-dev (macos-latest) (push) Has been cancelled
CI / test-dev (ubuntu-latest) (push) Has been cancelled
CI / test-dev (windows-latest) (push) Has been cancelled
Maintenance / main (push) Has been cancelled
Scorecards supply-chain security / Scorecards analysis (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
24 lines
508 B
TypeScript
24 lines
508 B
TypeScript
import fs from 'fs';
|
|
import path from 'path';
|
|
|
|
const indexFileRegex = /^index.(js|ts)$/;
|
|
|
|
/**
|
|
* Returns index.js/ts in any directory or null
|
|
* @param {string} directory
|
|
*/
|
|
export default function getIndexFile(directory: string) {
|
|
const items = fs.readdirSync(directory);
|
|
|
|
const indexFile = items.reduce((prev, curr) => {
|
|
if (!indexFileRegex.test(curr)) {
|
|
return prev;
|
|
}
|
|
return curr;
|
|
}, '');
|
|
|
|
return {
|
|
indexFilename: indexFile ? path.join(directory, indexFile) : null,
|
|
};
|
|
}
|