@uuki/svg2font
Version:
Webfont generater based on jaywcjlove/svgtofont
77 lines • 2.48 kB
JavaScript
#!/usr/bin/env node
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const fs_extra_1 = __importDefault(require("fs-extra"));
const path_1 = __importDefault(require("path"));
const yargs_1 = __importDefault(require("yargs"));
const _1 = __importDefault(require("./"));
const utils_1 = require("./utils");
const config_1 = require("./config");
const OPTS = yargs_1.default
.option('sources', {
type: 'string',
alias: 's',
description: 'The root from which all sources are relative.',
})
.option('output', {
type: 'string',
alias: 'o',
description: 'Output directory.',
})
.option('fontName', {
type: 'string',
alias: 'f',
description: 'Font Name.',
})
.option('config', {
type: 'string',
alias: 'c',
default: './svg2font.config.js',
description: 'Provide path to a svg2font configuration file e.g.\n./svg2font.config.json',
})
.option('help', {
alias: 'h',
type: 'boolean',
description: 'Print help message',
}).argv;
const PATH_SOURCE = OPTS.sources ? path_1.default.join(process.cwd(), OPTS.sources) : '';
const PATH_OUTPUT = OPTS.output ? path_1.default.join(process.cwd(), OPTS.output) : '';
const PATH_CONFIG = path_1.default.join(process.cwd(), OPTS.config);
async function main() {
var _a;
let config = config_1.defaultConfig;
if (OPTS.config) {
try {
const extConfig = require(PATH_CONFIG);
config = Object.assign(Object.assign({}, config), extConfig);
}
catch (err) {
utils_1.logger.error(err);
}
}
config.src = PATH_SOURCE || config.src;
config.dist = PATH_OUTPUT || config.dist;
config.fontName =
(_a = OPTS.fontName) !== null && _a !== void 0 ? _a : (config.fontName || 'iconfont');
if (!fs_extra_1.default.pathExistsSync(config.src)) {
utils_1.logger.error(`The directory does not exist! ${config.src}`);
process.exit();
}
if (!fs_extra_1.default.pathExistsSync(config.dist)) {
fs_extra_1.default.mkdirpSync(config.dist);
}
await _1.default(config);
}
main()
.then(() => {
utils_1.logger.success('done!');
process.exitCode = 0;
})
.catch((err) => {
utils_1.logger.log(`Svg2Font:ERR:${err}`);
process.exitCode = 1;
});
//# sourceMappingURL=cli.js.map