CLI Libs

The project of CLI tools for mornya libraries.
This project has been created by Vessel CLI.
For a simple and quick reference about it, click here.
About
CLI ๊ฐ๋ฐ์ ์ฌ์ฉ๋๋ ๋ชจ๋๋ค์ ๋ํด ์งํฉ์ ์ธ ํํ๋ก ์ ๊ณต๋๋ ํจํค์ง.
Installation
ํด๋น ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉ ํ ํ๋ก์ ํธ์์๋ ์๋์ ๊ฐ์ด ์์กด์ฑ ๋ชจ๋๋ก ์ค์นํ๋ค.
$ npm install --save @mornya/cli-libs
or
$ yarn add @mornya/cli-libs
Modules in the package
๋ณธ ํจํค์ง์๋ ์๋์ ๊ฐ์ ๋ชจ๋๋ค์ ํฌํจํ๋ค.
์ ๊ณต๋๋ ๋ชจ๋๊ณผ ๋ฉ์๋ ์ฌ์ฉ๋ฒ ๋ฑ์ ์ฝ๋ ์ค๋ํ์ ์ฐธ๊ณ ํ๋ค.
Args module
ํ๋ก์ธ์ค ์คํ์ ๋ช
๋ น์ค๋ผ์ธ์ ํ๋ผ๋ฏธํฐ ๊ฐ์ ์ ์ ํ์ฌ ์ ๊ณตํ๋ค.
function parse(): string[] {}
function has(name: HasName): boolean {}
function hasAll<Keys extends string, T = KeyValueFlag<Keys>>(names: HasName[]): T {}
function getArguments<Keys extends string>(actionMap: ActionMap<Keys>): IArguments {}
Command module
ํ๋ก์ธ์ค ์คํ ๊ด๋ จ ๋ฉ์๋๋ค์ ์ ๊ณตํ๋ค.
function run(
cmd: string,
args: IArgs,
executor?: (message: string, error?: Error) => void,
hasOutput: boolean = true,
): boolean {}
function get(cmd: string, args: IArgs): string {}
function getPackageManagerInfo(rootPath: string): IPackageManagerInfo {}
Files module
ํ์ผ์ฒ๋ฆฌ ๊ด๋ จ ๋ฉ์๋๋ค์ ์ ๊ณตํ๋ค.
function dir(...names: string[]): string {}
function getGlob(
globPath: GlobPath,
callback: ((item: string, index: number) => boolean | void) = () => {},
): string[] {}
function getRealPath(): string {}
function resolvePath(...args: string[]): string {}
function rimraf(globPath: GlobPath): string[] {}
function emptyDir(globPath: GlobPath): string[] {}
function mkdirs(dirName: string): void {}
function move(srcGlobPath: GlobPath, destPath: string): string[] {}
function copy(
srcGlobPath: GlobPath,
destPath: string,
isSymlink: boolean = false,
): string[] {}
function copyDir(
srcGlobPath: GlobPath,
destPath: string,
exceptFiles: string[] = [],
): string[] {}
function isExist(dirName: string): boolean {}
function isEmptyDir(dirName: string): boolean {}
function list(dirName: string): string[] {}
function read(fileName: string): string {}
function readJSON<T = {}>(fileName: string): T {}
function write(fileName: string, value: string): void {}
function writePrettyJSON(
fileName: string,
value: {},
maxLineLength: number = 1,
): void {}
function getDirectoryFiles(
dirName: string,
executor: (isDir: boolean, relPath: string, currDir: string, file: string) => boolean | void,
): void {}
function getFilteredExistPaths(
rootPath: string,
targetPathList: string[] = [],
isOnly: boolean = false,
): string[] {}
function getConfig<T>(
rootPath: string,
name: string,
filename?: string,
): GetConfig<T> {}
Icons module
OS์ ๋ง๊ฒ ๋ณํ๋ ์ถ๋ ฅ์ฉ ์ด๋ชจํฐ์ฝ์ ์ ๊ณตํ๋ค.
import { Icons } from '@mornya/cli-libs';
console.log(Icons.icon.okay);
Key module
์ฝ์์์ ๊ฐ๋จํ ํค๋ณด๋ ์
๋ ฅ ๊ด๋ จ ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ค.
function pressed(callback: Callback): void {}
Log module
์ฝ์ ๋ก๊ทธ ๊ด๋ จ ๋ฉ์๋๋ค์ ์ ๊ณตํ๋ค.
function setLogger(logger: (...args: any[]) => any): void {}
function showCursor(): void {}
function hideCursor(): void {}
function linefeed(): void {}
function out(message?: any, ...optionalParams: any[]): void {}
function info(message?: any, ...optionalParams: any[]): void {}
function progress(message: string, ...optionalParams: any[]): void {}
function devOnly(message?: string, ...optionalParams: any[]): void {}
function watch(message?: any, ...optionalParams: any[]): void {}
function debug(message?: any, ...optionalParams: any[]): void {}
function warn(message?: any, ...optionalParams: any[]): void {}
function error(message?: any, ...optionalParams: any[]): void {}
function okay(message?: string, ...optionalParams: any[]): void {}
function bad(message?: string, ...optionalParams: any[]): void {}
function success(message?: string, ...optionalParams: any[]): void {}
function failure(message?: string, ...optionalParams: any[]): void {}
Minify module
uglify-es ๋ํ๋์๋ฅผ ์ด์ฉํ์ฌ *.js, *.mjs ํ์ผ๋ค์ ๋ํ minification์ ์ํํ๋ ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ค.
function run(buildPath: string, options?: Options): Result {}
Upgrade module
์ ํ๋ฆฌ์ผ์ด์
์ํ ์ค์ ์
๋ฐ์ดํธ๊ฐ ํ์ํ ๋ํ๋์๋ฅผ ์ฒดํฌํ์ฌ ์ข
๋ฃ ์ ์ ์ค์นํ ์ ์๋๋ก ํ๋ ๊ธฐ๋ฅ ๋ฑ์ ์ ๊ณตํ๋ค.
function checkLazyNpm(dep: string): Promise<string> {}
function checkLazyYarn(dep: string): Promise<string> {}
function checkLazyEmitBeforeExit(
dep: string,
currentVersion: string,
option?: CheckLazyEmitBeforeExitOption,
): void {}
Utils module
๊ธฐํ ์ ํธ์ฑ ์ฒ๋ฆฌ ๋ฉ์๋๋ค์ ์ ๊ณตํ๋ค.
function removeArrayDups(
baseArray: string[] | undefined,
dataArray: string[] = [],
): string[] | undefined {}
function hasProps<OT = any, TT = OT, FT = OT>(
obj: OT,
truthyValue?: TT,
falsyValue?: FT,
): OT | TT | FT | undefined {}
function uri2binary(data: string | undefined = ''): Uint8Array {}
Version module
๋ฒ์ ์ฒดํฌ ๋ฑ ๋ฉ์๋๋ค์ ์ ๊ณตํ๋ค.
function check(baseVersion: string, currVersion: string): -1 | 0 | 1 {}
Chalk library
ํฐ๋ฏธ๋ ์คํ์ผ๋ง์ ์ํ chalk ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํ๋ค.
Change Log
ํด๋น ํ๋ก์ ํธ์ CHANGELOG.md ํ์ผ ์ฐธ์กฐ.
License
ํด๋น ํ๋ก์ ํธ์ LICENSE ํ์ผ ์ฐธ์กฐ.