Files

19 lines
664 B
TypeScript
Raw Permalink Normal View History

2023-01-17 08:04:34 +01:00
import path from 'path';
import { readSvgDirectory } from '@lucide/helpers';
import { type IconMetadata } from '../types.ts';
2023-01-17 08:04:34 +01:00
async function getIconMetaData(iconDirectory: string): Promise<Record<string, IconMetadata>> {
2025-02-10 14:13:52 +01:00
const iconJsons = await readSvgDirectory(iconDirectory, '.json');
2023-01-17 08:04:34 +01:00
const aliasesEntries = await Promise.all(
iconJsons.map(async (jsonFile: string) => {
/** eslint-disable */
const file = await import(path.join(iconDirectory, jsonFile), { with: { type: 'json' } });
2024-02-01 22:38:21 +09:00
return [path.basename(jsonFile, '.json'), file.default];
}),
);
2023-01-17 08:04:34 +01:00
return Object.fromEntries(aliasesEntries);
}
2024-02-01 22:38:21 +09:00
export default getIconMetaData;