Ë
    sPêjª$  ã                   ó¨   — d dl mZ d dlmZ d dlmZ d dlZd dlmZ ddl	m
Z ddlmZmZmZ dd	lmZ  ej$                  d
¬«       G d„ d«      «       Zy)é    )ÚIterable)Údatetime)ÚOptionalN)Ú	SortedSeté   )ÚComparableTuple)ÚNoteÚPropertyÚXsUri)Ú	IssueTypeT)Ú%ignore_unknown_during_deserializationc                   óê  — e Zd ZdZdddddddddddœ
dedee   dee   dee   dee   d	ee   d
eee      deee      deee	      deee
      deee      ddfd„Ze ej                  d«       ej                   ej"                  j$                  «      defd„«       «       «       Zej(                  deddfd„«       Ze ej                  d«      dee   fd„«       «       Zej(                  dee   ddfd„«       Ze ej                  d«      dee   fd„«       «       Zej(                  dee   ddfd„«       Ze ej                  d«      dee   fd„«       «       Zej(                  dee   ddfd„«       Ze ej                  d«      dee   fd„«       «       Zej(                  dee   ddfd„«       Ze ej2                  ej4                  j6                  «       ej                  d «      dee   fd!„«       «       «       Zej(                  d	ee   ddfd"„«       Ze ej:                  ej<                  j>                  d#«       ej                   ej"                  j$                  «       ej                  d$«      d=d%„«       «       «       «       Z e j(                  d
ee   ddfd&„«       Z e ej:                  ej<                  j>                  d'«       ej                   ej"                  j$                  «       ej                  d(«      d=d)„«       «       «       «       Z!e!j(                  dee   ddfd*„«       Z!e ej:                  ej<                  j>                  d+«       ej                  d,«      d>d-„«       «       «       Z"e"j(                  dee	   ddfd.„«       Z"e ej:                  ej<                  j>                  d/«       ej                  d0«      d?d1„«       «       «       Z#e#j(                  dee
   ddfd2„«       Z#e ej:                  ej<                  j>                  d3«       ej                  d4«      d@d5„«       «       «       Z$e$j(                  dee   ddfd6„«       Z$de%fd7„Z&d8e'de(fd9„Z)d8e'de(fd:„Z*de+fd;„Z,defd<„Z-y)AÚReleaseNoteszÕ
    This is our internal representation of a `releaseNotesType` for a Component in a BOM.

    .. note::
        See the CycloneDX Schema definition: https://cyclonedx.org/docs/1.7/xml/#type_releaseNotesType
    N)
ÚtitleÚfeatured_imageÚsocial_imageÚdescriptionÚ	timestampÚaliasesÚtagsÚresolvesÚnotesÚ
propertiesÚtyper   r   r   r   r   r   r   r   r   r   Úreturnc                óÆ   — || _         || _        || _        || _        || _        || _        |xs g | _        |xs g | _        |	xs g | _        |
xs g | _	        |xs g | _
        y ©N)r   r   r   r   r   r   r   r   r   r   r   )Úselfr   r   r   r   r   r   r   r   r   r   r   s               úa/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/cyclonedx/model/release_note.pyÚ__init__zReleaseNotes.__init__'   si   € ð ˆŒ	ØˆŒ
Ø,ˆÔØ(ˆÔØ&ˆÔØ"ˆŒØ’} "ˆŒØ’J˜BˆŒ	Ø š BˆŒØ’[˜bˆŒ
Ø$Ò*¨ˆ�ó    é   c                 ó   — | j                   S )aB  
        The software versioning type.

        It is **RECOMMENDED** that the release type use one of 'major', 'minor', 'patch', 'pre-release', or 'internal'.

        Representing all possible software release types is not practical, so standardizing on the recommended values,
        whenever possible, is strongly encouraged.

        * **major** = A major release may contain significant changes or may introduce breaking changes.
        * **minor** = A minor release, also known as an update, may contain a smaller number of changes than major
            releases.
        * **patch** = Patch releases are typically unplanned and may resolve defects or important security issues.
        * **pre-release** = A pre-release may include alpha, beta, or release candidates and typically have limited
            support. They provide the ability to preview a release prior to its general availability.
        * **internal** = Internal releases are not for public consumption and are intended to be used exclusively by the
            project or manufacturer that produced it.
        ©Ú_type©r   s    r   r   zReleaseNotes.type@   s   € ð* �z‰zÐr!   c                 ó   — || _         y r   r$   )r   r   s     r   r   zReleaseNotes.typeW   s	   € àˆ�
r!   r   c                 ó   — | j                   S )z+
        The title of the release.
        ©Ú_titler&   s    r   r   zReleaseNotes.title[   s   € ð �{‰{Ðr!   c                 ó   — || _         y r   r)   )r   r   s     r   r   zReleaseNotes.titlec   s	   € àˆ�r!   é   c                 ó   — | j                   S )z^
        The URL to an image that may be prominently displayed with the release note.
        ©Ú_featured_imager&   s    r   r   zReleaseNotes.featured_imageg   s   € ð ×#Ñ#Ð#r!   c                 ó   — || _         y r   r.   )r   r   s     r   r   zReleaseNotes.featured_imageo   s
   € à-ˆÕr!   é   c                 ó   — | j                   S )z^
        The URL to an image that may be used in messaging on social media platforms.
        ©Ú_social_imager&   s    r   r   zReleaseNotes.social_images   s   € ð ×!Ñ!Ð!r!   c                 ó   — || _         y r   r3   )r   r   s     r   r   zReleaseNotes.social_image{   s
   € à)ˆÕr!   é   c                 ó   — | j                   S )z5
        A short description of the release.
        ©Ú_descriptionr&   s    r   r   zReleaseNotes.description   s   € ð × Ñ Ð r!   c                 ó   — || _         y r   r8   )r   r   s     r   r   zReleaseNotes.description‡   s
   € à'ˆÕr!   é   c                 ó   — | j                   S )zR
        The date and time (timestamp) when the release note was created.
        ©Ú
_timestampr&   s    r   r   zReleaseNotes.timestamp‹   s   € ð �‰Ðr!   c                 ó   — || _         y r   r=   )r   r   s     r   r   zReleaseNotes.timestamp”   s	   € à#ˆ�r!   Úaliasé   c                 ó   — | j                   S )zÝ
        One or more alternate names the release may be referred to. This may include unofficial terms used by
        development and marketing teams (e.g. code names).

        Returns:
            Set of `str`
        )Ú_aliasesr&   s    r   r   zReleaseNotes.aliases˜   s   € ð �}‰}Ðr!   c                 ó$   — t        |«      | _        y r   )r   rC   )r   r   s     r   r   zReleaseNotes.aliases¦   s   € ä! 'Ó*ˆ�r!   Útagé   c                 ó   — | j                   S )z†
        One or more tags that may aid in search or retrieval of the release note.

        Returns:
            Set of `str`
        )Ú_tagsr&   s    r   r   zReleaseNotes.tagsª   s   € ð �z‰zÐr!   c                 ó$   — t        |«      | _        y r   )r   rH   )r   r   s     r   r   zReleaseNotes.tags·   s   € ä˜t“_ˆ�
r!   Úissueé	   c                 ó   — | j                   S )zr
        A collection of issues that have been resolved.

        Returns:
            Set of `IssueType`
        )Ú	_resolvesr&   s    r   r   zReleaseNotes.resolves»   s   € ð �~‰~Ðr!   c                 ó$   — t        |«      | _        y r   )r   rM   )r   r   s     r   r   zReleaseNotes.resolvesÇ   s   € ä" 8Ó,ˆ�r!   Únoteé
   c                 ó   — | j                   S )zä
        Zero or more release notes containing the locale and content. Multiple note elements may be specified to support
        release notes in a wide variety of languages.

        Returns:
            Set of `Note`
        )Ú_notesr&   s    r   r   zReleaseNotes.notesË   s   € ð �{‰{Ðr!   c                 ó$   — t        |«      | _        y r   )r   rR   )r   r   s     r   r   zReleaseNotes.notesØ   s   € ä Ó&ˆ�r!   Úpropertyé   c                 ó   — | j                   S )a�  
        Provides the ability to document properties in a name-value store. This provides flexibility to include data not
        officially supported in the standard without having to use additional namespaces or create extensions. Unlike
        key-value stores, properties support duplicate names, each potentially having different values.

        Returns:
            Set of `Property`
        )Ú_propertiesr&   s    r   r   zReleaseNotes.propertiesÜ   s   € ð ×ÑÐr!   c                 ó$   — t        |«      | _        y r   )r   rW   )r   r   s     r   r   zReleaseNotes.propertiesê   s   € ä$ ZÓ0ˆÕr!   c                 ód  — t        | j                  | j                  | j                  | j                  | j
                  | j                  t        | j                  «      t        | j                  «      t        | j                  «      t        | j                  «      t        | j                  «      f«      S r   )Ú_ComparableTupler   r   r   r   r   r   r   r   r   r   r   r&   s    r   Ú__comparable_tuplezReleaseNotes.__comparable_tupleî   s~   € ÜØ�I‰I�t—z‘z 4×#6Ñ#6¸×8IÑ8IÈ4×K[ÑK[Ð]a×]kÑ]kÜ˜TŸ\™\Ó*Ü˜TŸY™YÓ'Ü˜TŸ]™]Ó+Ü˜TŸZ™ZÓ(Ü˜TŸ_™_Ó-ð!
ó ð 	r!   Úotherc                 óf   — t        |t        «      r!| j                  «       |j                  «       k(  S y)NF)Ú
isinstancer   Ú_ReleaseNotes__comparable_tuple©r   r\   s     r   Ú__eq__zReleaseNotes.__eq__ø   s,   € Ü�eœ\Ô*Ø×*Ñ*Ó,°×0HÑ0HÓ0JÑJÐJØr!   c                 óp   — t        |t        «      r!| j                  «       |j                  «       k  S t        S r   )r^   r   r_   ÚNotImplementedr`   s     r   Ú__lt__zReleaseNotes.__lt__ý   s/   € Ü�eœ\Ô*Ø×*Ñ*Ó,¨u×/GÑ/GÓ/IÑIÐIÜÐr!   c                 ó4   — t        | j                  «       «      S r   )Úhashr_   r&   s    r   Ú__hash__zReleaseNotes.__hash__  s   € Ü�D×+Ñ+Ó-Ó.Ð.r!   c                 ó<   — d| j                   › d| j                  › d�S )Nz<ReleaseNotes type=z, title=ú>)r   r   r&   s    r   Ú__repr__zReleaseNotes.__repr__  s   € Ø$ T§Y¡Y K¨x¸¿
¹
°|À1ÐEÐEr!   )r   zSortedSet[str])r   zSortedSet[IssueType])r   zSortedSet[Note])r   zSortedSet[Property]).Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústrr   r   r   r   r   r	   r
   r    rT   ÚserializableÚxml_sequenceÚ
xml_stringÚXmlStringSerializationTypeÚNORMALIZED_STRINGr   Úsetterr   r   r   r   Útype_mappingÚhelpersÚXsdDateTimer   Ú	xml_arrayÚXmlArraySerializationTypeÚNESTEDr   r   r   r   r   rZ   r_   ÚobjectÚboolra   rd   Úintrg   rj   © r!   r   r   r      sF  „ ñð +/Ø*.Ø(,Ø%)Ø(,Ø+/Ø(,Ø26Ø*.Ø37ò+àð+à" 3™-ð+ð ! ™ð+ð ˜u‘oð	+ð
 ˜c‘]ð+ð ˜HÑ%ð+ð ˜( 3™-Ñ(ð+ð �x ‘}Ñ%ð+ð ˜8 IÑ.Ñ/ð+ð ˜ ™Ñ'ð+ð ˜X hÑ/Ñ0ð+ð 
ó+ð2 Ø€\×Ñ˜qÓ!Ø€\×Ñ˜\×DÑD×VÑVÓWð�cò ó Xó "ó ðð( 
‡[�[ð˜ð  ò ó ðð Ø€\×Ñ˜qÓ!ð�x ‘}ò ó "ó ðð ‡\�\ð˜8 C™=ð ¨Tò ó ðð Ø€\×Ñ˜qÓ!ð$ ¨¡ò $ó "ó ð$ð ×Ñð.¨X°e©_ð .Àò .ó ð.ð Ø€\×Ñ˜qÓ!ð"˜h u™oò "ó "ó ð"ð ×Ñð*¨°%©ð *¸Tò *ó ð*ð Ø€\×Ñ˜qÓ!ð!˜X c™]ò !ó "ó ð!ð ×Ñð( x°¡}ð (¸ò (ó ð(ð Ø€\×Ñ˜|×3Ñ3×?Ñ?Ó@Ø€\×Ñ˜qÓ!ð˜8 HÑ-ò ó "ó Aó ðð ×Ñð$ 8¨HÑ#5ð $¸$ò $ó ð$ð Ø€\×Ñ˜L×BÑB×IÑIÈ7ÓSØ€\×Ñ˜\×DÑD×VÑVÓWØ€\×Ñ˜qÓ!òó "ó Xó Tó ðð ‡^�^ð+˜x¨™}ð +°ò +ó ð+ð Ø€\×Ñ˜L×BÑB×IÑIÈ5ÓQØ€\×Ñ˜\×DÑD×VÑVÓWØ€\×Ñ˜qÓ!òó "ó Xó Ró ðð 
‡[�[ð%˜ #™ð %¨4ò %ó ð%ð Ø€\×Ñ˜L×BÑB×IÑIÈ7ÓSØ€\×Ñ˜qÓ!òó "ó Tó ðð ‡_�_ð- ¨)Ñ!4ð -¸ò -ó ð-ð Ø€\×Ñ˜L×BÑB×IÑIÈ6ÓRØ€\×Ñ˜rÓ"òó #ó Só ðð ‡\�\ð'˜8 D™>ð '¨dò 'ó ð'ð Ø€\×Ñ˜L×BÑB×IÑIÈ:ÓVØ€\×Ñ˜rÓ"ò	 ó #ó Wó ð	 ð ×Ñð1 X¨hÑ%7ð 1¸Dò 1ó ð1ðÐ$4ó ð˜Fð  tó ð
˜Fð  tó ð
/˜#ó /ðF˜#ô Fr!   r   )Úcollections.abcr   r   Útypingr   Úpy_serializablerp   Úsortedcontainersr   Ú_internal.comparer   rZ   Úmodelr	   r
   r   Úmodel.issuer   Úserializable_classr   r   r!   r   ú<module>rˆ      sO   ðõ$ %Ý Ý ã &Ý &å Cß )Ñ )Ý #ð !€× Ñ ÀtÔL÷gFð gFó MñgFr!   