Ë
    sPêj  ã                   ól  — U d dl mZ d dlmZmZ d dlmZm	Z	m
Z
mZmZ ddlmZmZ ddlmZ ddlmZmZ ddlmZmZmZmZmZmZmZmZmZmZ d	d
l m!Z! erddl"m#Z#  G d„ de!e«      Z$ G d„ de$e«      Z% G d„ de$e«      Z& G d„ de$e«      Z' G d„ de$e«      Z( G d„ de$e«      Z) G d„ de$e«      Z* G d„ de$e«      Z+ G d„ de$e«      Z,ejZ                  e,ej\                  e+ej^                  e*ej`                  e)ejb                  e(ejd                  e'ejf                  e&ejh                  e%iZ5e6ee7e$   f   e8d<   y) é    )Úabstractmethod)ÚdumpsÚloads)ÚTYPE_CHECKINGÚAnyÚLiteralÚOptionalÚUnioné   )ÚBomDependencyGraphFlatMergerÚBomRefDiscriminator)ÚFormatNotSupportedException)ÚOutputFormatÚSchemaVersion)
ÚSCHEMA_VERSIONSÚBaseSchemaVersionÚSchemaVersion1Dot0ÚSchemaVersion1Dot1ÚSchemaVersion1Dot2ÚSchemaVersion1Dot3ÚSchemaVersion1Dot4ÚSchemaVersion1Dot5ÚSchemaVersion1Dot6ÚSchemaVersion1Dot7é   )Ú
BaseOutput)ÚBomc                   ó¾   ‡ — e Zd Zdˆ fd„Zedefd„«       Zedeej                     fd„«       Z
ddeddfd„Zddœd	eeeef      d
edefd„Zedee   fd„«       Zˆ xZS )ÚJsonÚreturnNc                 óD   •— t         ‰| �  |¬«       t        «       | _        y )N)Úbom)ÚsuperÚ__init__ÚdictÚ	_bom_json)Úselfr"   Ú	__class__s     €úZ/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/cyclonedx/output/json.pyr$   zJson.__init__-   s   ø€ Ü‰Ñ˜SÐÔ!Ü)-«ˆ�ó    c                 ó   — | j                   S ©N)Úschema_version_enum©r'   s    r)   Úschema_versionzJson.schema_version1   s   € à×'Ñ'Ð'r*   c                 ó"   — t         j                  S r,   )r   ÚJSONr.   s    r)   Úoutput_formatzJson.output_format5   s   € ä× Ñ Ð r*   Úforce_regenerationc                 óT  — | j                   r|sy | j                  «       }|s&t        d| j                  j	                  «       › �«      ‚|d| j                  j	                  «       dœ}t        j                  | j                  «      }| j                  «       }|j                  «        t        j                  |«      5  t        |«      5  t        |j                  |¬«      «      }d d d «       d d d «       j                  |«       || _        d| _         y # 1 sw Y   Œ1xY w# 1 sw Y   Œ5xY w)Nz5JSON is not supported by CycloneDX in schema version Ú	CycloneDX)z$schemaÚ	bomFormatÚspecVersion)Úview_T)Ú	generatedÚ_get_schema_urir   r/   Ú
to_versionr   Úgetr-   Úget_bomÚvalidater   Úfrom_bomr   Ú
json_loadsÚas_jsonÚupdater&   )r'   r3   Ú
schema_uriÚ
_json_coreÚ_viewr"   Úbom_jsons          r)   ÚgeneratezJson.generate9   s  € Ø�>Š>Ñ"4Øà$(×$8Ñ$8Ó$:ˆ
ÙÜ-ØGÈ×H[ÑH[×HfÑHfÓHhÐGiÐjólð lð "Ø$Ø×.Ñ.×9Ñ9Ó;ñ
ˆ
ô
  ×#Ñ# D×$<Ñ$<Ó=ˆØ�l‰l‹nˆØ�‰ŒÜ ×)Ñ)¨#Ó.ñ 	&Ü-¨cÓ2ñ &Ü+5Ø—K‘KØ#ð  ó %ó,&�÷&÷	&ð
 	�‰˜
Ô#Ø!ˆŒØˆ�÷&ð &ú÷	&ð 	&ús$   Â:DÃDÃ"DÄD	ÄDÄD'©ÚindentrI   Úkwargsc                óP   — | j                  «        t        | j                  |¬«      S )NrH   )rG   Ú
json_dumpsr&   )r'   rI   rJ   s      r)   Úoutput_as_stringzJson.output_as_stringS   s#   € ð 	�‰ŒÜ˜$Ÿ.™.Ø!'ô)ð 	)r*   c                  ó   — y r,   © r.   s    r)   r:   zJson._get_schema_uriZ   s   € àr*   )r"   r   r    N)F)Ú__name__Ú
__module__Ú__qualname__r$   Úpropertyr   r/   r   r   r1   r2   ÚboolrG   r	   r
   ÚintÚstrr   rM   r   r:   Ú__classcell__)r(   s   @r)   r   r   +   s«   ø„ õ0ð ð( ò (ó ð(ð ð!˜w |×'8Ñ'8Ñ9ò !ó ð!ñ¨4ð ¸Dó ð6 >Bò)Ø!)¨%°°S°©/Ñ!:ð)à#&ð)à+.ó)ð ð ¨#¡ò ó ôr*   r   c                   ó   — e Zd Zdd„Zy)Ú
JsonV1Dot0Nc                  ó   — y r,   rO   r.   s    r)   r:   zJsonV1Dot0._get_schema_uria   ó   € Ør*   ©r    N©rP   rQ   rR   r:   rO   r*   r)   rY   rY   _   ó   „ ôr*   rY   c                   ó   — e Zd Zdd„Zy)Ú
JsonV1Dot1Nc                  ó   — y r,   rO   r.   s    r)   r:   zJsonV1Dot1._get_schema_urig   r[   r*   r\   r]   rO   r*   r)   r`   r`   e   r^   r*   r`   c                   ó   — e Zd Zdefd„Zy)Ú
JsonV1Dot2r    c                  ó   — y)Nz0http://cyclonedx.org/schema/bom-1.2b.schema.jsonrO   r.   s    r)   r:   zJsonV1Dot2._get_schema_urim   ó   € ØAr*   N©rP   rQ   rR   rV   r:   rO   r*   r)   rc   rc   k   ó   „ ðB ô Br*   rc   c                   ó   — e Zd Zdefd„Zy)Ú
JsonV1Dot3r    c                  ó   — y)Nz0http://cyclonedx.org/schema/bom-1.3a.schema.jsonrO   r.   s    r)   r:   zJsonV1Dot3._get_schema_uris   re   r*   Nrf   rO   r*   r)   ri   ri   q   rg   r*   ri   c                   ó   — e Zd Zdefd„Zy)Ú
JsonV1Dot4r    c                  ó   — y)Nz/http://cyclonedx.org/schema/bom-1.4.schema.jsonrO   r.   s    r)   r:   zJsonV1Dot4._get_schema_uriy   ó   € Ø@r*   Nrf   rO   r*   r)   rl   rl   w   ó   „ ðA ô Ar*   rl   c                   ó   — e Zd Zdefd„Zy)Ú
JsonV1Dot5r    c                  ó   — y)Nz/http://cyclonedx.org/schema/bom-1.5.schema.jsonrO   r.   s    r)   r:   zJsonV1Dot5._get_schema_uri   rn   r*   Nrf   rO   r*   r)   rq   rq   }   ro   r*   rq   c                   ó   — e Zd Zdefd„Zy)Ú
JsonV1Dot6r    c                  ó   — y)Nz/http://cyclonedx.org/schema/bom-1.6.schema.jsonrO   r.   s    r)   r:   zJsonV1Dot6._get_schema_uri…   rn   r*   Nrf   rO   r*   r)   rt   rt   ƒ   ro   r*   rt   c                   ó   — e Zd Zdefd„Zy)Ú
JsonV1Dot7r    c                  ó   — y)Nz/http://cyclonedx.org/schema/bom-1.7.schema.jsonrO   r.   s    r)   r:   zJsonV1Dot7._get_schema_uri‹   rn   r*   Nrf   rO   r*   r)   rw   rw   ‰   ro   r*   rw   ÚBY_SCHEMA_VERSIONN)9Úabcr   Újsonr   rL   r   r@   Útypingr   r   r   r	   r
   Úcontrib.bom.utilsr   r   Úexception.outputr   Úschemar   r   Úschema.schemar   r   r   r   r   r   r   r   r   r   Ú r   Ú	model.bomr   r   rY   r`   rc   ri   rl   rq   rt   rw   ÚV1_7ÚV1_6ÚV1_5ÚV1_4ÚV1_3ÚV1_2ÚV1_1ÚV1_0ry   r%   ÚtypeÚ__annotations__rO   r*   r)   ú<module>r�      sA  ðö$ ß 9ß ?Õ ?ç QÝ :ß 0÷÷ ÷ õ áÝô1ˆ:Ð(ô 1ôh�Ð)ô ô�Ð)ô ôB�Ð)ô BôB�Ð)ô BôA�Ð)ô AôA�Ð)ô AôA�Ð)ô AôA�Ð)ô Að ×Ñ˜
Ø×Ñ˜
Ø×Ñ˜
Ø×Ñ˜
Ø×Ñ˜
Ø×Ñ˜
Ø×Ñ˜
Ø×Ñ˜
ð	6Ð �4˜ t¨D¡zÐ1Ñ2ô 	r*   