New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

clerc

Package Overview
Dependencies
Maintainers
1
Versions
88
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

clerc - npm Package Compare versions

Comparing version 0.6.1 to 0.7.0

53

dist/index.d.ts
import * as _clerc_utils from '@clerc/utils';
import { MaybeArray, Dict, LiteralUnion } from '@clerc/utils';
import { MaybeArray, Dict, CamelCase, LiteralUnion } from '@clerc/utils';

@@ -79,4 +79,5 @@ declare const DOUBLE_DASH = "--";

};
interface CommandOptions<A extends MaybeArray<string> = MaybeArray<string>, F extends Dict<FlagOptions> = Dict<FlagOptions>> {
interface CommandOptions<P extends string[] = string[], A extends MaybeArray<string> = MaybeArray<string>, F extends Dict<FlagOptions> = Dict<FlagOptions>> {
alias?: A;
parameters?: P;
flags?: F;

@@ -86,6 +87,11 @@ examples?: [string, string][];

}
type Command<N extends string | SingleCommandType = string, D extends string = string, Options extends CommandOptions = CommandOptions> = Options & {
type Command<N extends string | SingleCommandType = string, D extends string = string, O extends CommandOptions = CommandOptions> = O & {
name: N;
description: D;
};
type CommandWithHandler<N extends string | SingleCommandType = string, D extends string = string, O extends CommandOptions = CommandOptions> = Command<N, D, O> & {
handler?: HandlerInCommand<Record<N, Command<N, D, O>>, N>;
};
type StripBrackets<Parameter extends string> = (Parameter extends `<${infer ParameterName}>` | `[${infer ParameterName}]` ? (ParameterName extends `${infer SpreadName}...` ? SpreadName : ParameterName) : never);
type ParameterType<Parameter extends string> = (Parameter extends `<${infer _ParameterName}...>` | `[${infer _ParameterName}...]` ? string[] : Parameter extends `<${infer _ParameterName}>` ? string : Parameter extends `[${infer _ParameterName}]` ? string | undefined : never);
type CommandRecord = Dict<Command> & {

@@ -99,2 +105,3 @@ [SingleCommand]?: Command;

type NonNullableFlag<T extends Dict<FlagOptions> | undefined> = T extends undefined ? {} : NonNullable<T>;
type NonNullableParameters<T extends string[] | undefined> = T extends undefined ? [] : NonNullable<T>;
interface HandlerContext<C extends CommandRecord = CommandRecord, N extends keyof C = keyof C> {

@@ -105,3 +112,5 @@ name?: N;

raw: ParsedFlags;
parameters: PossibleInputKind[];
parameters: {
[Parameter in [...NonNullableParameters<C[N]["parameters"]>][number] as CamelCase<StripBrackets<Parameter>>]: ParameterType<Parameter>;
};
unknownFlags: ParsedFlags["unknownFlags"];

@@ -112,2 +121,5 @@ flags: TypeFlag<NonNullableFlag<C[N]["flags"]>>["flags"];

type Handler<C extends CommandRecord = CommandRecord, K extends keyof C = keyof C> = (ctx: HandlerContext<C, K>) => void;
type HandlerInCommand<C extends CommandRecord = CommandRecord, K extends keyof C = keyof C> = (ctx: HandlerContext<C, K> & {
name: K;
}) => void;
type FallbackType<T, U> = {} extends T ? U : T;

@@ -204,3 +216,4 @@ type InspectorContext<C extends CommandRecord = CommandRecord> = HandlerContext<C> & {

*/
command<N extends string | SingleCommandType, D extends string, O extends CommandOptions>(name: N, description: D, options?: O): this & Clerc<C & Record<N, Command<N, D, O>>>;
command<N extends string | SingleCommandType, D extends string, O extends CommandOptions<[...P], A, F>, P extends string[] = string[], A extends MaybeArray<string> = MaybeArray<string>, F extends Dict<FlagOptions> = Dict<FlagOptions>>(c: CommandWithHandler<N, D, O & CommandOptions<[...P], A, F>>): this & Clerc<C & Record<N, Command<N, D, O>>>;
command<N extends string | SingleCommandType, D extends string, P extends string[], O extends CommandOptions<[...P]>>(name: N, description: D, options: O & CommandOptions<[...P]>): this & Clerc<C & Record<N, Command<N, D, O>>>;
/**

@@ -262,2 +275,4 @@ * Register a handler

declare const defineInspector: <C extends Clerc<{}>>(_cli: C, inspector: Inspector<C["_commands"]>) => Inspector<C["_commands"]>;
declare const defineCommand: <N extends string | typeof SingleCommand, D extends string, P extends string[], O extends CommandOptions<[...P], MaybeArray<string>, Dict<FlagOptions>>>(c: Command<N, D, O>) => Command<N, D, O>;
declare const defineCommandWithHandler: <N extends string | typeof SingleCommand, D extends string, O extends CommandOptions<[...P], A, F>, P extends string[] = string[], A extends MaybeArray<string> = MaybeArray<string>, F extends Dict<FlagOptions> = Dict<FlagOptions>>(c: CommandWithHandler<N, D, O & CommandOptions<[...P], A, F>>) => CommandWithHandler<N, D, O & CommandOptions<[...P], A, F>>;

@@ -267,3 +282,7 @@ declare class SingleCommandError extends Error {

}
declare class SingleCommandAliasError extends Error {
constructor();
}
declare class CommandExistsError extends Error {
constructor(name: string);
}

@@ -282,12 +301,24 @@ declare class CommonCommandExistsError extends Error {

}
declare class MultipleCommandsMatchedError extends Error {
constructor(name: string);
}
declare class CommandNameConflictError extends Error {
constructor(n1: string, n2: string);
}
declare const resolveFlagAlias: (_command: Command) => Dict<string[]>;
declare const resolveFlagDefault: (_command: Command) => Dict<any>;
declare function resolveCommand(commands: CommandRecord, name: string | string[] | SingleCommandType): Command | undefined;
declare function resolveSubcommandsByParent(commands: CommandRecord, parent: string | string[], depth?: number): Command<string, string, CommandOptions<_clerc_utils.MaybeArray<string>, Dict<FlagOptions>>>[];
declare const resolveRootCommands: (commands: CommandRecord) => Command<string, string, CommandOptions<_clerc_utils.MaybeArray<string>, Dict<FlagOptions>>>[];
declare function resolveParametersBeforeFlag(argv: string[]): string[];
declare function resolveSubcommandsByParent(commands: CommandRecord, parent: string | string[], depth?: number): Command<string, string, CommandOptions<string[], _clerc_utils.MaybeArray<string>, _clerc_utils.Dict<FlagOptions>>>[];
declare const resolveRootCommands: (commands: CommandRecord) => Command<string, string, CommandOptions<string[], _clerc_utils.MaybeArray<string>, _clerc_utils.Dict<FlagOptions>>>[];
declare function resolveParametersBeforeFlag(argv: string[], isSingleCommand: boolean): string[];
declare const resolveArgv: () => string[];
declare function compose(inspectors: Inspector[]): (getCtx: () => InspectorContext) => void;
export { Clerc, Command, CommandExistsError, CommandOptions, CommandRecord, CommonCommandExistsError, FallbackType, Flag, FlagOptions, Handler, HandlerContext, Inspector, InspectorContext, MakeEventMap, NoSuchCommandError, ParentCommandExistsError, Plugin, PossibleInputKind, SingleCommand, SingleCommandError, SingleCommandType, SubcommandExistsError, compose, defineHandler, defineInspector, definePlugin, resolveArgv, resolveCommand, resolveFlagAlias, resolveFlagDefault, resolveParametersBeforeFlag, resolveRootCommands, resolveSubcommandsByParent };
interface ParsedParameter {
name: string;
required: boolean;
spread: boolean;
}
declare function parseParameters(parameters: string[]): ParsedParameter[];
declare function mapParametersToArguments(mapping: Record<string, string | string[]>, parameters: ParsedParameter[], cliArguments: string[]): undefined;
export { Clerc, Command, CommandExistsError, CommandNameConflictError, CommandOptions, CommandRecord, CommandWithHandler, CommonCommandExistsError, FallbackType, Flag, FlagOptions, Handler, HandlerContext, HandlerInCommand, Inspector, InspectorContext, MakeEventMap, MultipleCommandsMatchedError, NoSuchCommandError, ParentCommandExistsError, Plugin, PossibleInputKind, SingleCommand, SingleCommandAliasError, SingleCommandError, SingleCommandType, SubcommandExistsError, compose, defineCommand, defineCommandWithHandler, defineHandler, defineInspector, definePlugin, mapParametersToArguments, parseParameters, resolveArgv, resolveCommand, resolveParametersBeforeFlag, resolveRootCommands, resolveSubcommandsByParent };
{
"name": "clerc",
"version": "0.6.1",
"version": "0.7.0",
"author": "Ray <nn_201312@163.com> (https://github.com/so1ve)",

@@ -42,3 +42,3 @@ "description": "Clerc is a simple and easy-to-use cli framework.",

"dependencies": {
"@clerc/utils": "0.6.1",
"@clerc/utils": "0.7.0",
"is-platform": "^0.2.0",

@@ -45,0 +45,0 @@ "lite-emit": "^1.4.0",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc