
    Mh                       U d Z ddlmZ ddlZddlZddlmZ ddlZddlmZm	Z	 ddl
mZ ddlmZ dd	lmZ dd
lmZ  eed          rej        nej        Z ej        e          j                            d          Ze                    d          Z ej        e          Ze                    d          Z ej        e          Ze                    d          Z ej        e          Z ed         ee d         e ed         eiZ!d ee efD             Z"e" e            z  Z#de$d<    eee#e          Z% eee#e          Z&ddZ'dS )zEvent validators.    )annotationsN)Any)Draft7ValidatorValidationError)Registry)DRAFT7   )yaml)JupyterEventsVersionWarningFORMAT_CHECKERschemaszevent-metaschema.ymlzevent-core-schema.ymlzproperty-metaschema.yml$idc                6    g | ]}t          j        |          S  )r   create_resource).0eachs     Y/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/jupyter_events/validators.py
<listcomp>r   (   s3        4        zRegistry[Any]METASCHEMA_REGISTRY)schemaregistryformat_checkerr   dict[str, Any]returnNonec                   	 d| v rat          | d         t                    rFt          | d                   | d<   d| d          }t          j        t          |          d           t                              |            dS # t          $ rz}d}|t          |          v r`t          |          	                    |          }t          |          d|         
                                }| d}t          |          ||d}~ww xY w)	zValidate a schema dict.versionzThe `version` property of an event schema must be a string. It has been type coerced, but in a future version of this library, it will fail to validate. Please update schema: r      )
stacklevelz does not match '^(?!__.*)'Nz is an invalid property name because it starts with `__`. Properties starting with 'dunder' are reserved as special meta-fields for Jupyter Events to use.)
isinstanceintstrwarningswarnr   JUPYTER_EVENTS_SCHEMA_VALIDATORvalidater   findstrip)r   msgerrreserved_property_msgidxbad_propertys         r   validate_schemar0   ;   s4    :fY.?#E#E #F9$5 6 6F9# %=# #  M5c::qIIII'0088888    = CHH,,c((-- 566Cs88DSD>//11L Q Q Q 
 "#&&C/	s   A?B 
DA5DD)r   r   r   r   )(__doc__
__future__r   pathlibr%   typingr   
jsonschemar   r   referencingr   referencing.jsonschemar    r
   utilsr   hasattrr   draft7_format_checkerPath__file__parentjoinpathMETASCHEMA_PATHEVENT_METASCHEMA_FILEPATHloadEVENT_METASCHEMAEVENT_CORE_SCHEMA_FILEPATHEVENT_CORE_SCHEMAPROPERTY_METASCHEMA_FILEPATHPROPERTY_METASCHEMASCHEMA_STORE	resourcesr   __annotations__r'   JUPYTER_EVENTS_CORE_VALIDATORr0   r   r   r   <module>rL      sF      " " " " " "             7 7 7 7 7 7 7 7             ) ) ) ) ) )       . . . . . . w 011*O""		)  ',x((/88CC+445KLL 49677 ,556MNN DI899 .778QRR di <==  U- 3e/ !#68IJ  	 &/%;  ; ; ; ;"1/ (# # #  !0 (! ! !      r   