bandersnatch
Advanced tools
Comparing version 1.9.0 to 1.9.1
@@ -7,11 +7,28 @@ import type { InferredOptionType, Options, PositionalOptions } from 'yargs'; | ||
} | ||
export declare type InferArgType<O extends Options | PositionalOptions, F = unknown> = | ||
/** | ||
* Add support for numeric variadic arguments | ||
*/ | ||
O extends { | ||
export declare type InferArgType<O extends Options | PositionalOptions, F = unknown> = O extends { | ||
default: number; | ||
} ? number : O extends { | ||
type: 'number'; | ||
optional: true; | ||
} ? number | undefined : O extends { | ||
type: 'number'; | ||
variadic: true; | ||
} ? Array<number> : O extends { | ||
type: 'number'; | ||
} ? Array<number> : O extends { | ||
} ? number : O extends { | ||
default: boolean; | ||
} ? boolean : O extends { | ||
type: 'boolean'; | ||
optional: true; | ||
} ? boolean | undefined : O extends { | ||
type: 'boolean'; | ||
variadic: true; | ||
} ? Array<boolean> : O extends { | ||
type: 'boolean'; | ||
} ? boolean : O extends { | ||
default: string; | ||
} ? string : O extends { | ||
optional: true; | ||
} ? string | undefined : O extends { | ||
variadic: true; | ||
} ? Array<string> : O extends { | ||
@@ -48,2 +65,3 @@ choices: ReadonlyArray<infer C>; | ||
* Get possible values, is specified. | ||
* @todo See if we can add this to autocompleter | ||
*/ | ||
@@ -50,0 +68,0 @@ getChoices(): import("yargs").Choices | undefined; |
@@ -40,2 +40,3 @@ "use strict"; | ||
* Get possible values, is specified. | ||
* @todo See if we can add this to autocompleter | ||
*/ | ||
@@ -42,0 +43,0 @@ getChoices() { |
@@ -207,2 +207,3 @@ "use strict"; | ||
promise = promise.then((args) => { | ||
// @todo coerce all types and remove coerce option from baseArg | ||
if (this.handler) { | ||
@@ -219,2 +220,3 @@ return this.handler(args, commandRunner); | ||
// callback. | ||
// @todo Upgrade to native async handlers in yarn 17 | ||
argv.__promise = promise; | ||
@@ -221,0 +223,0 @@ return promise; |
"use strict"; | ||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); | ||
var desc = Object.getOwnPropertyDescriptor(m, k); | ||
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { | ||
desc = { enumerable: true, get: function() { return m[k]; } }; | ||
} | ||
Object.defineProperty(o, k2, desc); | ||
}) : (function(o, m, k, k2) { | ||
@@ -6,0 +10,0 @@ if (k2 === undefined) k2 = k; |
@@ -1,4 +0,4 @@ | ||
import { Options as BaseOptions, Argv } from 'yargs'; | ||
import { BaseArgOptions, BaseArg } from './baseArg'; | ||
declare type IgnoreOptions = 'array' | 'boolean' | 'conflicts' | 'config' | 'configParser' | 'count' | 'defaultDescription' | 'demand' | 'demandOption' | 'desc' | 'describe' | 'global' | 'group' | 'hidden' | 'implies' | 'nargs' | 'normalize' | 'number' | 'require' | 'required' | 'requiresArg' | 'skipValidation' | 'string'; | ||
import { Argv, Options as BaseOptions } from 'yargs'; | ||
import { BaseArg, BaseArgOptions } from './baseArg'; | ||
declare type IgnoreOptions = 'array' | 'boolean' | 'conflicts' | 'config' | 'configParser' | 'count' | 'defaultDescription' | 'demand' | 'demandOption' | 'deprecate' | 'desc' | 'describe' | 'global' | 'group' | 'hidden' | 'implies' | 'nargs' | 'normalize' | 'number' | 'require' | 'required' | 'requiresArg' | 'skipValidation' | 'string' | 'implies'; | ||
export interface OptionOptions extends Omit<BaseOptions, IgnoreOptions>, BaseArgOptions { | ||
@@ -5,0 +5,0 @@ } |
{ | ||
"name": "bandersnatch", | ||
"description": "Simple TypeScript CLI / REPL framework", | ||
"version": "1.9.0", | ||
"version": "1.9.1", | ||
"repository": { | ||
@@ -25,11 +25,12 @@ "type": "git", | ||
], | ||
"types": "lib/index.d.ts", | ||
"scripts": { | ||
"prepublishOnly": "yarn build", | ||
"build": "tsc", | ||
"build": "tsc --project tsconfig.build.json", | ||
"watch": "tsc --watch", | ||
"lint": "prettier --write \"src/**/*\"", | ||
"test": "jest", | ||
"test": "tsd && jest", | ||
"start": "ts-node", | ||
"doc:toc": "doctoc README.md", | ||
"doc:todos": "leasot --exit-nicely --reporter markdown \"src/**/*.ts\" > TODO.md" | ||
"doc:todos": "leasot --exit-nicely --reporter markdown \"{src,test-d,tests}/**/*.ts\" > TODO.md" | ||
}, | ||
@@ -49,16 +50,17 @@ "author": "", | ||
"devDependencies": { | ||
"@semantic-release/changelog": "6.0.0", | ||
"@semantic-release/git": "10.0.0", | ||
"@types/jest": "27.0.2", | ||
"@types/node": "16.7.13", | ||
"@semantic-release/changelog": "6.0.1", | ||
"@semantic-release/git": "10.0.1", | ||
"@types/jest": "27.4.1", | ||
"@types/node": "16.11.26", | ||
"doctoc": "2.1.0", | ||
"husky": "7.0.4", | ||
"jest": "27.3.1", | ||
"leasot": "12.0.0", | ||
"mock-argv": "2.0.6", | ||
"prettier": "2.4.1", | ||
"ts-jest": "27.0.7", | ||
"ts-node": "10.4.0", | ||
"typescript": "4.4.4" | ||
"jest": "27.5.1", | ||
"leasot": "12.2.0", | ||
"mock-argv": "2.0.8", | ||
"prettier": "2.6.0", | ||
"ts-jest": "27.1.3", | ||
"ts-node": "10.7.0", | ||
"tsd": "^0.19.1", | ||
"typescript": "4.6.2" | ||
} | ||
} |
@@ -740,5 +740,3 @@ # bandersnatch | ||
- [ ] Better code coverage | ||
- [ ] Consider resolving ambiguity in _prompt_ param/method | ||
- [ ] Async autocomplete method for arg values | ||
See [TODO.md](TODO.md) | ||
@@ -765,3 +763,3 @@ ## Contributing | ||
Copyright (c) 2021 Joram van den Boezem. Licensed under the MIT license. | ||
Copyright (c) 2022 Joram van den Boezem. Licensed under the MIT license. | ||
@@ -768,0 +766,0 @@ --- |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1373
70218
14
25
767