
    _Ogz                     L    S r SSKJr  SSKJr   " S S\5      r " S S\5      rg)	zIssue events logic.   )users)
GitHubCorec                   $    \ rS rSrSrS rS rSrg)
IssueEvent   a4  Representation of an event from a specific issue.

This object will be instantiated from calling
:meth:`~github3.issues.issue.Issue.events` which calls
https://developer.github.com/v3/issues/events/#list-events-for-an-issue

See also: http://developer.github.com/v3/issues/events

This object has the following attributes:

.. attribute:: actor

    A :class:`~github3.users.ShortUser` representing the user who
    generated this event.

.. attribute:: commit_id

    The string SHA of a commit that referenced the parent issue. If there
    was no commit referencing this issue, then this will be ``None``.

.. attribute:: commit_url

    The URL to retrieve commit information from the API for the commit
    that references the parent issue. If there was no commit, this will be
    ``None``.

.. attribute:: created_at

    A :class:`~datetime.datetime` object representing the date and time
    this event occurred.

.. attribute:: event

    The issue-specific action that generated this event. Some examples
    are:

    - closed
    - reopened
    - subscribed
    - merged
    - referenced
    - mentioned
    - assigned

    See `this list of events`_ for a full listing.

.. attribute:: id

    The unique identifier for this event.

.. _this list of events:
    https://developer.github.com/v3/issues/events/#events-1
c                    US   U l         [        R                  " US   U 5      U l        US   U l        US   U l        U R                  US   5      U l        UR                  S5      U l	        U R                  (       a&  [        R                  " U R                  U 5      U l	        UR                  S5      U l
        U R                  (       a&  [        R                  " U R                  U 5      U l
        UR                  S5      U l        U R                  (       a&  [        R                  " U R                  U 5      U l        UR                  S	5      U l        U R                  (       a6  U R                   Vs/ s H  n[        R                  " X 5      PM     snU l        US
   U l        US   U l        U R                   U l        g s  snf )Nurlactor	commit_id
commit_url
created_atassigneeassignerreview_requesterrequested_reviewerseventid)_apir   	ShortUserr
   r   r   	_strptimer   getr   r   r   r   r   r   _uniq)selfr   reviewers      Y/Users/admin/workspace/ai/Jarvis/env/lib/python3.13/site-packages/github3/issues/event.py_update_attributesIssueEvent._update_attributes=   sY   %L	__U7^T:
{+-..|)<=		*-==!OODMM4@DM		*-==!OODMM4@DM !&		*< =  $)OO%%t%D! $)99-B#C ## !% 8 8( 8H / 8(D$
 7^
+YY
(s   3 Gc                 <    SU R                    SU R                   S3$ )Nz<Issue Event [z by z]>)r   r
   r   s    r   _reprIssueEvent._repr\   s    

|4

|2>>    )r   r   r
   r   r   r   r   r   r   r   r   r   N)__name__
__module____qualname____firstlineno____doc__r   r    __static_attributes__ r"   r   r   r      s    4l>?r"   r   c                   2   ^  \ rS rSrSrU 4S jrS rSrU =r$ )RepositoryIssueEvent`   aT  Representation of an issue event on the repository level.

This object will be instantiated from calling
:meth:`~github3.repos.repo.Repository.issue_events` or
:meth:`~github3.repos.repo.ShortRepository.issue_events` which call
https://developer.github.com/v3/issues/events/#list-events-for-a-repository

See also: http://developer.github.com/v3/issues/events

This object has all of the attributes of
:class:`~github3.issues.event.IssueEvent` and the following:

.. attribute:: issue

    A :class:`~github3.issues.issue.ShortIssue` representing the issue
    where this event originated from.

c                 d   > [         TU ]  U5        SSKJn  UR	                  US   U 5      U l        g )N   issuer0   )superr    r0   
ShortIssue)r   r   r0   	__class__s      r   r   'RepositoryIssueEvent._update_attributest   s+    "5)%%eGnd;
r"   c                     SR                  U R                  R                  U R                  U R                  R
                  5      $ )Nz*<Repository Issue Event on #{} [{} by {}]>)formatr0   numberr   r
   loginr   s    r   r    RepositoryIssueEvent._reprz   s4    ;BBJJtzz4::+;+;
 	
r"   r/   )	r#   r$   r%   r&   r'   r   r    r(   __classcell__)r4   s   @r   r+   r+   `   s    &<
 
r"   r+   N)r'   r2   r   modelsr   r   r+   r)   r"   r   <module>r=      s)      W? W?t
: 
r"   