@shopify/polaris-icons-audit
Version:
[](https://www.npmjs.com/package/@shopify/polaris-icons-audit)
27 lines (23 loc) • 794 B
JavaScript
function audit({filenames}) {
const folderNames = filenames.reduce((memo, filename) => {
const foldername = filename.split('/').slice(-2)[0];
// eslint-disable-next-line no-prototype-builtins
memo[foldername] = memo.hasOwnProperty(foldername)
? memo[foldername] + 1
: 1;
return memo;
}, {});
const filenamesCount = filenames.length;
const distinctFolderCount = Object.keys(folderNames).length;
return {
summary: `Found ${filenamesCount} svgs, placed into ${distinctFolderCount} folders`,
status: 'info',
info: Object.entries(folderNames)
.map(([folderName, count]) => {
return ` ${count} svgs found within a "${folderName}" folder`;
})
.join('\n'),
};
}
audit.auditName = 'folder-names';
module.exports = audit;