validation.ts ×2

Frontier kind: Code frontier

unlabeled · c_f388e3e68cb8

11 tests · 2360 LOC · 18 files · introduces 0 tests · 6 LOC · 1 file

Introduces — evidence that enters the hierarchy at this concept

Code
2 ranges6 lines · 1 files
Tests
0 tests

Contains — complete concept membership

All code (extent)
445 ranges2360 lines · 18 files · Browse complete extent
All tests (intent)
11 testsBrowse complete intent

Neighbourhood graph

The orange circle is the focus. Violet and green circles are every ancestor and descendant, broader and narrower, at any distance; blue squares and pink diamonds are the introduced files and exact introduced tests of every visible concept, not only the focus's. Arrows point from broader to narrower concepts and bridge only concepts omitted from this view. Undirected links show source or test introduction. Concept and file size follows LOC; exact test nodes use test-count units.

Introduced files, introduced tests, and structurally relevant concept specialization

In the embedded map, ordinary wheel input scrolls the page; use the visible controls to zoom and drag to pan. Open the full-screen map for canvas navigation: wheel pans, Ctrl/Command plus wheel zooms, and arrow keys pan when this region is focused. On touch screens, open the full-screen map to pan or pinch. If JavaScript or WebGL is unavailable, use the native relationship evidence on this page.

Introduced files, introduced tests, and structurally relevant concept specializationyargs.mjs|title=yargs dsl tests positional allows a conflicting argument to be specified|occurrence=1 · 0 introduced LOCyargs.mjs|title=yargs ds…validation.mjs|title=validation tests conflicts should not fail if argument with conflict is provided, but not the argument it conflicts with|occurrence=1 · 0 introduced LOCvalidation.mjs|title=val…command.mjs|title=Command global parsing hints validation applies conflicts logic for command by default|occurrence=1 · 0 introduced LOCcommand.mjs|title=Comman…validation.mjs|title=validation tests conflicts allows key to be specified with option shorthand|occurrence=1 · 0 introduced LOCvalidation.mjs|title=val…yargs-factory.ts ×1 · 2 introduced LOCyargs-factory.ts ×1validation.mjs|title=validation tests conflicts takes into account aliases when applying conflicts logic|occurrence=1 · 0 introduced LOCvalidation.mjs|title=val…validation.mjs|title=validation tests conflicts fails if argument is supplied along with either conflicting argument|occurrence=1 · 0 introduced LOCvalidation.mjs|title=val…validation.mjs|title=validation tests conflicts should fail if alias of conflicting argument is provided|occurrence=1, validation.mjs|title=validation tests conflicts should fail if alias of argument with conflict is provided|occurrence=1 · 0 introduced LOCvalidation.mjs|title=val…validation.mjs|title=validation tests conflicts allows an object to be provided defining conflicting option pairs|occurrence=1 · 0 introduced LOCvalidation.mjs|title=val…validation.mjs|title=validation tests conflicts should use appropriate translation|occurrence=1, validation.mjs|title=validation tests conflicts fails if both arguments are supplied|occurrence=1 · 0 introduced LOCvalidation.mjs|title=val…validation.ts ×1 · 4 introduced LOCvalidation.ts ×1validation.ts ×4 · 13 introduced LOCvalidation.ts ×4yargs-factory.ts ×2 · 8 introduced LOCyargs-factory.ts ×2validation.ts ×4 · 24 introduced LOCvalidation.ts ×4yargs-factory.ts ×2 · 9 introduced LOCyargs-factory.ts ×2maybe-async-result.ts ×4 · 14 introduced LOCmaybe-async-result.ts ×4yargs-factory.ts ×1 · 6 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×2 · 53 introduced LOCyargs-factory.ts ×2yargs-factory.ts ×3 · 3 introduced LOCyargs-factory.ts ×3usage.ts ×2 · 8 introduced LOCusage.ts ×2yargs-factory.ts ×1 · 2 introduced LOCyargs-factory.ts ×1middleware.ts ×3 · 13 introduced LOCmiddleware.ts ×3yargs-factory.ts ×3 · 10 introduced LOCyargs-factory.ts ×3yargs-factory.ts ×2 · 9 introduced LOCyargs-factory.ts ×2yargs-factory.ts ×2 · 3 introduced LOCyargs-factory.ts ×2yargs-factory.ts ×1 · 2 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×5 · 66 introduced LOCyargs-factory.ts ×5yargs-factory.ts ×5 · 11 introduced LOCyargs-factory.ts ×5yargs-factory.ts ×5 · 20 introduced LOCyargs-factory.ts ×5yargs-factory.ts ×1 · 1 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×1 · 2 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×2 · 8 introduced LOCyargs-factory.ts ×2usage.ts ×1 · 10 introduced LOCusage.ts ×1validation.ts ×3 · 20 introduced LOCvalidation.ts ×3yargs-factory.ts ×9 · 72 introduced LOCyargs-factory.ts ×9yargs-factory.ts ×1 · 3 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×1 · 2 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×1 · 4 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×1 · 3 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×3 · 6 introduced LOCyargs-factory.ts ×3yargs-factory.ts ×1 · 2 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×1 · 3 introduced LOCyargs-factory.ts ×1yargs.mjs|title=yargs dsl tests showHidden should have a default show-hidden private option pre-configured|occurrence=1, yargs.mjs|title=yargs dsl tests showHidden should not have show-hidden as an actual option described by default|occurrence=1 · 0 introduced LOCyargs.mjs|title=yargs ds…yargs-factory.ts ×1 · 1 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×2 · 7 introduced LOCyargs-factory.ts ×2command.ts ×1 · 2 introduced LOCcommand.ts ×1yargs-factory.ts ×1 · 20 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×1 · 2 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×1 · 2 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×1 · 2 introduced LOCyargs-factory.ts ×1yargs-factory.ts ×35 · 577 introduced LOCyargs-factory.ts ×35yargs-factory.ts ×124 · 1015 introduced LOCyargs-factory.ts ×124argsert.ts ×1 · 1 introduced LOCargsert.ts ×1argsert.mjs|title=Argsert allows for any type if * is provided|occurrence=1, argsert.mjs|title=Argsert should ignore trailing undefined values|occurrence=1 · 0 introduced LOCargsert.mjs|title=Argser…argsert.ts ×1 · 7 introduced LOCargsert.ts ×1argsert.ts ×1 · 1 introduced LOCargsert.ts ×1argsert.ts ×1 · 7 introduced LOCargsert.ts ×1argsert.ts ×1 · 2 introduced LOCargsert.ts ×1argsert.ts ×1 · 1 introduced LOCargsert.ts ×1argsert.ts ×2 · 3 introduced LOCargsert.ts ×2argsert.ts ×3 · 6 introduced LOCargsert.ts ×3parse-command.ts ×1 · 4 introduced LOCparse-command.ts ×1parse-command.ts ×1 · 5 introduced LOCparse-command.ts ×1parse-command.ts ×3 · 19 introduced LOCparse-command.ts ×3process-argv.ts ×1 · 5 introduced LOCprocess-argv.ts ×1process-argv.ts ×3 · 14 introduced LOCprocess-argv.ts ×3argsert.ts ×1 · 3 introduced LOCargsert.ts ×1apply-extends.ts ×4 · 9 introduced LOCapply-extends.ts ×4argsert.ts ×4 · 27 introduced LOCargsert.ts ×4obj-filter.ts ×2 · 10 introduced LOCobj-filter.ts ×2argsert.ts ×3 · 13 introduced LOCargsert.ts ×3common-types.ts ×4 · 134 introduced LOCcommon-types.ts ×4process-argv.ts ×5 · 13 introduced LOCprocess-argv.ts ×5is-promise.ts ×2 · 7 introduced LOCis-promise.ts ×2parse-command.ts ×1 · 6 introduced LOCparse-command.ts ×1parse-command.ts ×2 · 14 introduced LOCparse-command.ts ×2yerror.ts ×2 · 4 introduced LOCyerror.ts ×2is-promise.ts ×1 · 1 introduced LOCis-promise.ts ×1lib/argsert.ts · 101 LOClib/argsert.tslib/command.ts · 876 LOClib/command.tslib/completion-templates.ts · 58 LOClib/completion-templates…lib/completion.ts · 414 LOClib/completion.tslib/middleware.ts · 134 LOClib/middleware.tslib/parse-command.ts · 44 LOClib/parse-command.tslib/typings/common-types.ts · 145 LOCtypings/common-types.tslib/usage.ts · 835 LOClib/usage.tslib/utils/apply-extends.ts · 79 LOCutils/apply-extends.tslib/utils/is-promise.ts · 9 LOCutils/is-promise.tslib/utils/levenshtein.ts · 72 LOCutils/levenshtein.tslib/utils/maybe-async-result.ts · 28 LOCutils/maybe-async-result…lib/utils/obj-filter.ts · 14 LOCutils/obj-filter.tslib/utils/process-argv.ts · 36 LOCutils/process-argv.tslib/utils/set-blocking.ts · 21 LOCutils/set-blocking.tslib/validation.ts · 520 LOClib/validation.tslib/yargs-factory.ts · 2437 LOClib/yargs-factory.tslib/yerror.ts · 9 LOClib/yerror.tshelpers.mjs|title=helpers Parser exposes functional argument parser|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:esm|file=test/esm/helpers.mjs|title=helpers Parser exposes functional argument parser|occurrence=1helpers.mjs|title=helper…platform-shim-test.mjs|title=platform-shim y18n __ behaves like sprintf|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:esm|file=test/esm/platform-shim-test.mjs|title=platform-shim y18n __ behaves like sprintf|occurrence=1platform-shim-test.mjs|t…platform-shim-test.mjs|title=platform-shim y18n __n uses first string if singular|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:esm|file=test/esm/platform-shim-test.mjs|title=platform-shim y18n __n uses first string if singular|occurrence=1platform-shim-test.mjs|t…platform-shim-test.mjs|title=platform-shim y18n __n uses second string if plural|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:esm|file=test/esm/platform-shim-test.mjs|title=platform-shim y18n __n uses second string if plural|occurrence=1platform-shim-test.mjs|t…argsert.mjs|title=Argsert allows for any type if * is provided|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/argsert.mjs|title=Argsert allows for any type if * is provided|occurrence=1argsert.mjs|title=Argser…argsert.mjs|title=Argsert does not warn if optional argument is not provided|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/argsert.mjs|title=Argsert does not warn if optional argument is not provided|occurrence=1argsert.mjs|title=Argser…argsert.mjs|title=Argsert does not warn if optional argument is valid|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/argsert.mjs|title=Argsert does not warn if optional argument is valid|occurrence=1argsert.mjs|title=Argser…argsert.mjs|title=Argsert should ignore trailing undefined values|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/argsert.mjs|title=Argsert should ignore trailing undefined values|occurrence=1argsert.mjs|title=Argser…command.mjs|title=Command global parsing hints validation applies conflicts logic for command by default|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/command.mjs|title=Command global parsing hints validation applies conflicts logic for command by default|occurrence=1command.mjs|title=Comman…is-promise.mjs|title=isPromise returns `false` if passed object has no `then` property|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/is-promise.mjs|title=isPromise returns `false` if passed object has no `then` property|occurrence=1is-promise.mjs|title=isP…is-promise.mjs|title=isPromise returns `false` if some falsy value is passed|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/is-promise.mjs|title=isPromise returns `false` if some falsy value is passed|occurrence=1is-promise.mjs|title=isP…is-promise.mjs|title=isPromise returns `false` on non promise value|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/is-promise.mjs|title=isPromise returns `false` on non promise value|occurrence=1is-promise.mjs|title=isP…parse-command.mjs|title=parseCommand should throw if no command is specified|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/parse-command.mjs|title=parseCommand should throw if no command is specified|occurrence=1parse-command.mjs|title=…parser.mjs|title=should expose yargs-parser as Parser|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/parser.mjs|title=should expose yargs-parser as Parser|occurrence=1parser.mjs|title=should …usage.mjs|title=usage tests $0 is detected correctly when argv contains "iojs"|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/usage.mjs|title=usage tests $0 is detected correctly when argv contains "iojs"|occurrence=1usage.mjs|title=usage te…usage.mjs|title=usage tests $0 is detected correctly when argv contains "iojs.exe"|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/usage.mjs|title=usage tests $0 is detected correctly when argv contains "iojs.exe"|occurrence=1usage.mjs|title=usage te…usage.mjs|title=usage tests $0 is detected correctly when argv contains "node"|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/usage.mjs|title=usage tests $0 is detected correctly when argv contains "node"|occurrence=1usage.mjs|title=usage te…usage.mjs|title=usage tests $0 is detected correctly when argv contains "node.exe"|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/usage.mjs|title=usage tests $0 is detected correctly when argv contains "node.exe"|occurrence=1usage.mjs|title=usage te…usage.mjs|title=usage tests $0 is detected correctly when dirname and argv contain "iojs"|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/usage.mjs|title=usage tests $0 is detected correctly when dirname and argv contain "iojs"|occurrence=1usage.mjs|title=usage te…usage.mjs|title=usage tests $0 is detected correctly when dirname and argv contain "node"|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/usage.mjs|title=usage tests $0 is detected correctly when dirname and argv contain "node"|occurrence=1usage.mjs|title=usage te…usage.mjs|title=usage tests $0 is not resolved to the relative path if it is larger|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/usage.mjs|title=usage tests $0 is not resolved to the relative path if it is larger|occurrence=1usage.mjs|title=usage te…usage.mjs|title=usage tests $0 is resolved to the relative path if it is shorter|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/usage.mjs|title=usage tests $0 is resolved to the relative path if it is shorter|occurrence=1usage.mjs|title=usage te…usage.mjs|title=usage tests version option when an option or alias "version" is set does not emit warning if version is disabled|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/usage.mjs|title=usage tests version option when an option or alias "version" is set does not emit warning if version is disabled|occurrence=1usage.mjs|title=usage te…validation.mjs|title=validation tests conflicts allows an object to be provided defining conflicting option pairs|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/validation.mjs|title=validation tests conflicts allows an object to be provided defining conflicting option pairs|occurrence=1validation.mjs|title=val…validation.mjs|title=validation tests conflicts allows key to be specified with option shorthand|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/validation.mjs|title=validation tests conflicts allows key to be specified with option shorthand|occurrence=1validation.mjs|title=val…validation.mjs|title=validation tests conflicts fails if argument is supplied along with either conflicting argument|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/validation.mjs|title=validation tests conflicts fails if argument is supplied along with either conflicting argument|occurrence=1validation.mjs|title=val…validation.mjs|title=validation tests conflicts fails if both arguments are supplied|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/validation.mjs|title=validation tests conflicts fails if both arguments are supplied|occurrence=1validation.mjs|title=val…validation.mjs|title=validation tests conflicts should fail if alias of argument with conflict is provided|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/validation.mjs|title=validation tests conflicts should fail if alias of argument with conflict is provided|occurrence=1validation.mjs|title=val…validation.mjs|title=validation tests conflicts should fail if alias of conflicting argument is provided|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/validation.mjs|title=validation tests conflicts should fail if alias of conflicting argument is provided|occurrence=1validation.mjs|title=val…validation.mjs|title=validation tests conflicts should not fail if argument with conflict is provided, but not the argument it conflicts with|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/validation.mjs|title=validation tests conflicts should not fail if argument with conflict is provided, but not the argument it conflicts with|occurrence=1validation.mjs|title=val…validation.mjs|title=validation tests conflicts should use appropriate translation|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/validation.mjs|title=validation tests conflicts should use appropriate translation|occurrence=1validation.mjs|title=val…validation.mjs|title=validation tests conflicts takes into account aliases when applying conflicts logic|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/validation.mjs|title=validation tests conflicts takes into account aliases when applying conflicts logic|occurrence=1validation.mjs|title=val…yargs.mjs|title=yargs dsl tests parsed should be false before parsing|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/yargs.mjs|title=yargs dsl tests parsed should be false before parsing|occurrence=1yargs.mjs|title=yargs ds…yargs.mjs|title=yargs dsl tests positional allows a conflicting argument to be specified|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/yargs.mjs|title=yargs dsl tests positional allows a conflicting argument to be specified|occurrence=1yargs.mjs|title=yargs ds…yargs.mjs|title=yargs dsl tests showHidden should have a default show-hidden private option pre-configured|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/yargs.mjs|title=yargs dsl tests showHidden should have a default show-hidden private option pre-configured|occurrence=1yargs.mjs|title=yargs ds…yargs.mjs|title=yargs dsl tests showHidden should not have show-hidden as an actual option described by default|occurrence=1 · introduced test · mocha:v1|namespace=yargs@4153e0f097aeaf43a71a2530db6dda51dff2c544:main|file=test/yargs.mjs|title=yargs dsl tests showHidden should not have show-hidden as an actual option described by default|occurrence=1yargs.mjs|title=yargs ds…Focused concept · validation.ts ×2 · 6 introduced LOCvalidation.ts ×2

Graph controls are ready.

Interactive rendering requires JavaScript and WebGL. Use the native relationship evidence on this page while the interactive map is unavailable.

Native relationship evidence

Every exact file and test below is linked only from the concept that introduces it.

Introduced tests

Every collected test enters the hierarchy at exactly one concept.

No tests are introduced at this concept. Its intent tests are introduced by other concepts.

Introduced code

Every collected source range enters the hierarchy at exactly one concept.

1 file ranked by introduced lines: 6 introduced LOC across 2 ranges. Expand a file to inspect source; the > gutter marks introduced lines.

lib/validation.ts 6 introduced LOC · 2 ranges

Open complete file

401 Object.keys(argv).forEach(key => {
402 if (conflicting[key]) {
403 > conflicting[key].forEach(value => { validation.ts
404 > // we default keys to 'undefined' that have been configured, we should not
405 > // apply conflicting check unless they are a value other than 'undefined'.
406 > if (value && argv[key] !== undefined && argv[value] !== undefined) {
407 usage.fail(
408 __('Arguments %s and %s are mutually exclusive', key, value)
409 );
410 }
411 > }); validation.ts
412 > }
413 });
414