| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- 'use strict';
- const loader_fs = require('./fs.cjs');
- const loader_modern = require('./modern.cjs');
- const loader_warn = require('./warn.cjs');
- const loader_utils = require('./utils.cjs');
- require('fs');
- require('local-pkg');
- require('./install-pkg.cjs');
- require('@antfu/install-pkg');
- require('@antfu/utils');
- require('kolorist');
- require('mlly');
- require('../svg/build.cjs');
- require('../icon/defaults.cjs');
- require('../customisations/defaults.cjs');
- require('../svg/size.cjs');
- require('../svg/defs.cjs');
- require('../icon-set/get-icon.cjs');
- require('../icon/merge.cjs');
- require('../icon/transformations.cjs');
- require('../icon-set/tree.cjs');
- require('debug');
- function createExternalPackageIconLoader(packageName, autoInstall = false, cwd) {
- let scope;
- let collection;
- const collections = {};
- if (typeof packageName === "string") {
- if (packageName.length === 0) {
- loader_warn.warnOnce(`invalid package name, it is empty`);
- return collections;
- }
- if (packageName[0] === "@") {
- if (packageName.indexOf("/") === -1) {
- loader_warn.warnOnce(`invalid scoped package name "${packageName}"`);
- return collections;
- }
- [scope, collection] = packageName.split("/");
- } else {
- scope = "";
- collection = packageName;
- }
- } else {
- [scope, collection] = packageName;
- }
- collections[collection] = createCustomIconLoader(
- scope,
- collection,
- autoInstall,
- cwd
- );
- return collections;
- }
- function createCustomIconLoader(scope, collection, autoInstall, cwd) {
- const iconSetPromise = loader_fs.loadCollectionFromFS(
- collection,
- autoInstall,
- scope,
- cwd
- );
- return async (icon) => {
- const iconSet = await iconSetPromise;
- let result;
- if (iconSet) {
- result = await loader_modern.searchForIcon(
- iconSet,
- collection,
- loader_utils.getPossibleIconNames(icon)
- );
- }
- return result;
- };
- }
- exports.createExternalPackageIconLoader = createExternalPackageIconLoader;
|