a Es] @sdZddlmZddlZddlZddlZddlmZddlm Z ddl m Z ddZ d d Z ejd d Zejd ddde ddejdddddejdde ddejddedejdd e d!d"d#Zejd$dfd%d&Zejejfd'd(ZdS))z" The ``jsonschema`` command line. )absolute_importN) __version__namedAny) validator_forcCsd|vrd|}t|S)N.z jsonschema.r)namer 2/usr/lib/python3.9/site-packages/jsonschema/cli.py_namedAnyWithDefaultsr cCs6t|}t|WdS1s(0YdS)N)openjsonload)pathfiler r r _json_files rzJSON Schema Validation CLI) descriptionz-iz --instanceappend instancesz\a path to a JSON instance (i.e. filename.json) to validate (may be specified multiple times))actiondesttypehelpz-Fz--error-formatz"{error.instance}: {error.message} zthe format to use for each error output message, specified in a form suitable for passing to str.format, which will be called with 'error' for each error)defaultrz-Vz --validatorzthe fully qualified object name of a validator to use, or, for validators that are registered with jsonschema, simply the name of the class.)rrz --versionversion)rrschemaz3the JSON Schema to validate with (i.e. schema.json))rrcCs6ttj|pdgd}|ddur2t|d|d<|S)Nz--helpargs validatorr)varsparser parse_argsr)r argumentsr r r r!Ds r!cCsttt|dddS)Nr)r")sysexitrunr!rr r r mainKsr'cCsh|d}|d|dd}||dd}|dp6dD]*}||D]}||j|dd }qFq8|S) N error_formatrr)rFrr )errorT)Z check_schemaZ iter_errorswriteformat)r"stdoutstderrr(rZerroredinstancer)r r r r&Osr&)__doc__Z __future__rargparser r$Z jsonschemarZjsonschema._reflectrZjsonschema.validatorsrr rArgumentParserr add_argumentr!argvr'r,r-r&r r r r sT