2
0
mirror of https://github.com/iconify/iconify.git synced 2024-11-09 23:00:56 +00:00

chore: move isLoader to loader.ts and change the logic

This commit is contained in:
Joaquín Sánchez Jiménez 2022-02-26 17:49:13 +01:00
parent 6efa9af556
commit 3fb00b30c8

View File

@ -1,9 +1,10 @@
import { getCustomIcon } from './custom'; import { getCustomIcon } from './custom';
import { isNode } from './utils';
import { searchForIcon } from './modern'; import { searchForIcon } from './modern';
import { warnOnce } from './install-pkg'; import { warnOnce } from './install-pkg';
import type { IconifyLoaderOptions } from './types'; import type { IconifyLoaderOptions } from './types';
export const isNode = typeof process < 'u' && typeof process.stdout < 'u'
export async function loadIcon( export async function loadIcon(
collection: string, collection: string,
icon: string, icon: string,
@ -18,6 +19,10 @@ export async function loadIcon(
} }
} }
if (!isNode) {
return undefined;
}
let svg = await loadNodeBuiltinIcon(collection, icon, options); let svg = await loadNodeBuiltinIcon(collection, icon, options);
if (svg && options) { if (svg && options) {
@ -54,8 +59,6 @@ async function loadNodeBuiltinIcon(
options?: IconifyLoaderOptions, options?: IconifyLoaderOptions,
warn = true, warn = true,
): Promise<string | undefined> { ): Promise<string | undefined> {
if (isNode) {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment // eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore // @ts-ignore
const { loadCollectionFromFS } = await importFsModule(); const { loadCollectionFromFS } = await importFsModule();
@ -73,6 +76,5 @@ async function loadNodeBuiltinIcon(
if (warn) { if (warn) {
warnOnce(`failed to load \`@iconify-json/${collection}\`, have you installed it?`); warnOnce(`failed to load \`@iconify-json/${collection}\`, have you installed it?`);
} }
}
} }