a
    $ñ»jC1  ã                   @  sØ  d dl mZ d dlZd dlZd dlmZ ddlmZmZ ddl	m
Z
 G dd„ deƒZeG d	d
„ d
ƒƒZG dd„ dejƒZG dd„ dejƒZeG dd„ dƒƒZeG dd„ dƒƒZdddddœdd„Zddœdd„Zddddddœdd„Zdddddœd d!„Zddœd"d#„Zddd$œd%d&„Zddd'œd(d)„Zddd*œd+d,„Zddd*œd-d.„Zddœd/d0„Zddd$œd1d2„Zddd*œd3d4„Zddd*œd5d6„Zed7ƒeG d8d9„ d9ƒƒƒZ ed:ƒeG d;d<„ d<ƒƒƒZ!ed=ƒeG d>d?„ d?ƒƒƒZ"dS )@é    )ÚannotationsN)Ú	dataclassé   )Úevent_classÚT_JSON_DICT)Útargetc                      s>   e Zd Zddœdd„Zedd dœdd„ƒZ‡ fdd	„Z‡  ZS )
ÚRegistrationIDÚstr©Úreturnc                 C  s   | S ©N© ©Úselfr   r   ú:E:\soccer\ml_env\Lib\site-packages\mycdp/service_worker.pyÚto_json   s    zRegistrationID.to_json©Újsonr   c                 C  s   | |ƒS r   r   ©Úclsr   r   r   r   Ú	from_json   s    zRegistrationID.from_jsonc                   s   d  tƒ  ¡ ¡S )NzRegistrationID({}))ÚformatÚsuperÚ__repr__r   ©Ú	__class__r   r   r      s    zRegistrationID.__repr__)Ú__name__Ú
__module__Ú__qualname__r   Úclassmethodr   r   Ú__classcell__r   r   r   r   r      s   r   c                   @  sL   e Zd ZU dZded< ded< ded< dd	œd
d„Zedd dœdd„ƒZdS )ÚServiceWorkerRegistrationzServiceWorker registration.r   Úregistration_idr	   Ú	scope_urlÚboolÚ
is_deletedr   r
   c                 C  s,   t ƒ }| j ¡ |d< | j|d< | j|d< |S )NÚregistrationIdÚscopeURLÚ	isDeleted)Údictr"   r   r#   r%   ©r   r   r   r   r   r   #   s
    

z!ServiceWorkerRegistration.to_jsonr   c                 C  s(   | t  |d ¡t|d ƒt|d ƒd�S )Nr&   r'   r(   )r"   r#   r%   )r   r   r	   r$   r   r   r   r   r   *   s
    

ýz#ServiceWorkerRegistration.from_jsonN©r   r   r   Ú__doc__Ú__annotations__r   r   r   r   r   r   r   r!      s   
r!   c                   @  s>   e Zd ZdZdZdZdZddœdd„Zedd d	œd
d„ƒZ	dS )Ú!ServiceWorkerVersionRunningStatusÚstoppedÚstartingÚrunningZstoppingr	   r
   c                 C  s   | j S r   ©Úvaluer   r   r   r   r   9   s    z)ServiceWorkerVersionRunningStatus.to_jsonr   c                 C  s   | |ƒS r   r   r   r   r   r   r   <   s    z+ServiceWorkerVersionRunningStatus.from_jsonN)
r   r   r   ZSTOPPEDZSTARTINGZRUNNINGZSTOPPINGr   r   r   r   r   r   r   r.   3   s   r.   c                   @  sF   e Zd ZdZdZdZdZdZdZddœd	d
„Z	e
dd dœdd„ƒZdS )ÚServiceWorkerVersionStatusÚnewZ
installingÚ	installedZ
activatingZ	activatedZ	redundantr	   r
   c                 C  s   | j S r   r2   r   r   r   r   r   I   s    z"ServiceWorkerVersionStatus.to_jsonr   c                 C  s   | |ƒS r   r   r   r   r   r   r   L   s    z$ServiceWorkerVersionStatus.from_jsonN)r   r   r   ZNEWZ
INSTALLINGZ	INSTALLEDZ
ACTIVATINGZ	ACTIVATEDZ	REDUNDANTr   r   r   r   r   r   r   r4   A   s   r4   c                   @  s˜   e Zd ZU dZded< ded< ded< ded< d	ed
< dZded< dZded< dZded< dZded< dZ	ded< ddœdd„Z
edd dœdd„ƒZdS )ÚServiceWorkerVersionzServiceWorker version.r	   Ú
version_idr   r"   Ú
script_urlr.   Úrunning_statusr4   ÚstatusNztyping.Optional[float]Úscript_last_modifiedÚscript_response_timez-typing.Optional[typing.List[target.TargetID]]Úcontrolled_clientsz typing.Optional[target.TargetID]Ú	target_idztyping.Optional[str]Úrouter_rulesr   r
   c                 C  sº   t ƒ }| j|d< | j ¡ |d< | j|d< | j ¡ |d< | j ¡ |d< | jd urX| j|d< | jd url| j|d< | j	d urŠdd	„ | j	D ƒ|d
< | j
d ur¢| j
 ¡ |d< | jd ur¶| j|d< |S )NÚ	versionIdr&   Ú	scriptURLÚrunningStatusr;   ÚscriptLastModifiedÚscriptResponseTimec                 S  s   g | ]}|  ¡ ‘qS r   )r   ©Ú.0Úir   r   r   Ú
<listcomp>o   s   z0ServiceWorkerVersion.to_json.<locals>.<listcomp>ÚcontrolledClientsÚtargetIdÚrouterRules)r)   r8   r"   r   r9   r:   r;   r<   r=   r>   r?   r@   r*   r   r   r   r   c   s&    






ÿ



zServiceWorkerVersion.to_jsonr   c                 C  sà   | t |d ƒt |d ¡t |d ƒt |d ¡t |d ¡| dd ¡d urVt|d ƒnd | dd ¡d urtt|d ƒnd | dd ¡d ur˜d	d
„ |d D ƒnd | dd ¡d urºtj |d ¡nd | dd ¡d urØt |d ƒnd d�
S )NrA   r&   rB   rC   r;   rD   rE   rJ   c                 S  s   g | ]}t j |¡‘qS r   )r   ÚTargetIDr   rF   r   r   r   rI   �   s   ÿz2ServiceWorkerVersion.from_json.<locals>.<listcomp>rK   rL   )
r8   r"   r9   r:   r;   r<   r=   r>   r?   r@   )	r	   r   r   r.   r4   ÚgetÚfloatr   rM   r   r   r   r   r   x   s4    

ÿÿÿüþÿÿÞzServiceWorkerVersion.from_json)r   r   r   r,   r-   r<   r=   r>   r?   r@   r   r   r   r   r   r   r   r7   Q   s   
r7   c                   @  sd   e Zd ZU dZded< ded< ded< ded< ded	< ded
< ddœdd„Zedd dœdd„ƒZdS )ÚServiceWorkerErrorMessagezServiceWorker error message.r	   Úerror_messager   r"   r8   Ú
source_urlÚintÚline_numberÚcolumn_numberr   r
   c                 C  sJ   t ƒ }| j|d< | j ¡ |d< | j|d< | j|d< | j|d< | j|d< |S )NÚerrorMessager&   rA   Ú	sourceURLÚ
lineNumberÚcolumnNumber)r)   rQ   r"   r   r8   rR   rT   rU   r*   r   r   r   r   «   s    




z!ServiceWorkerErrorMessage.to_jsonr   c              	   C  sF   | t |d ƒt |d ¡t |d ƒt |d ƒt|d ƒt|d ƒd�S )NrV   r&   rA   rW   rX   rY   )rQ   r"   r8   rR   rT   rU   )r	   r   r   rS   r   r   r   r   r   µ   s    




úz#ServiceWorkerErrorMessage.from_jsonNr+   r   r   r   r   rP   ¡   s   

rP   r	   z0typing.Generator[T_JSON_DICT, T_JSON_DICT, None])Úoriginr"   Údatar   c                 c  s6   t ƒ }| |d< | ¡ |d< ||d< d|dœ}|V }dS )zE
    :param origin:
    :param registration_id:
    :param data:
    rZ   r&   r[   z ServiceWorker.deliverPushMessage©ÚmethodÚparamsN©r)   r   )rZ   r"   r[   r^   Úcmd_dictr   r   r   r   Údeliver_push_messageÁ   s    þra   r
   c                  c  s   ddi} | V }d S )Nr]   zServiceWorker.disabler   ©r`   r   r   r   r   ÚdisableÔ   s    ÿrc   r$   )rZ   r"   ÚtagÚlast_chancer   c                 c  s>   t ƒ }| |d< | ¡ |d< ||d< ||d< d|dœ}|V }dS )z\
    :param origin:
    :param registration_id:
    :param tag:
    :param last_chance:
    rZ   r&   rd   Z
lastChancezServiceWorker.dispatchSyncEventr\   Nr_   )rZ   r"   rd   re   r^   r`   r   r   r   r   Údispatch_sync_eventÛ   s    	þrf   )rZ   r"   rd   r   c                 c  s6   t ƒ }| |d< | ¡ |d< ||d< d|dœ}|V }dS )zD
    :param origin:
    :param registration_id:
    :param tag:
    rZ   r&   rd   z'ServiceWorker.dispatchPeriodicSyncEventr\   Nr_   )rZ   r"   rd   r^   r`   r   r   r   r   Údispatch_periodic_sync_eventð   s    þrg   c                  c  s   ddi} | V }d S )Nr]   zServiceWorker.enabler   rb   r   r   r   Úenable  s    ÿrh   )r8   r   c                 c  s"   t ƒ }| |d< d|dœ}|V }dS )ú
    :param version_id:
    rA   zServiceWorker.inspectWorkerr\   N©r)   ©r8   r^   r`   r   r   r   r   Úinspect_worker
  s    þrl   )Úforce_update_on_page_loadr   c                 c  s"   t ƒ }| |d< d|dœ}|V }dS )z+
    :param force_update_on_page_load:
    ZforceUpdateOnPageLoadz&ServiceWorker.setForceUpdateOnPageLoadr\   Nrj   )rm   r^   r`   r   r   r   r   Úset_force_update_on_page_load  s    þrn   )r#   r   c                 c  s"   t ƒ }| |d< d|dœ}|V }dS )ú
    :param scope_url:
    r'   zServiceWorker.skipWaitingr\   Nrj   ©r#   r^   r`   r   r   r   r   Úskip_waiting(  s    þrq   c                 c  s"   t ƒ }| |d< d|dœ}|V }dS )ro   r'   zServiceWorker.startWorkerr\   Nrj   rp   r   r   r   Ústart_worker7  s    þrr   c                  c  s   ddi} | V }d S )Nr]   zServiceWorker.stopAllWorkersr   rb   r   r   r   Ústop_all_workersF  s    ÿrs   c                 c  s"   t ƒ }| |d< d|dœ}|V }dS )ri   rA   zServiceWorker.stopWorkerr\   Nrj   rk   r   r   r   Ústop_workerM  s    þrt   c                 c  s"   t ƒ }| |d< d|dœ}|V }dS )ro   r'   zServiceWorker.unregisterr\   Nrj   rp   r   r   r   Ú
unregister\  s    þru   c                 c  s"   t ƒ }| |d< d|dœ}|V }dS )ro   r'   z ServiceWorker.updateRegistrationr\   Nrj   rp   r   r   r   Úupdate_registrationk  s    þrv   z!ServiceWorker.workerErrorReportedc                   @  s*   e Zd ZU ded< edd dœdd„ƒZdS )ÚWorkerErrorReportedrP   rQ   r   r   c                 C  s   | t  |d ¡d�S )NrV   )rQ   )rP   r   r   r   r   r   r     s
    ÿÿzWorkerErrorReported.from_jsonN©r   r   r   r-   r   r   r   r   r   r   rw   z  s   
rw   z'ServiceWorker.workerRegistrationUpdatedc                   @  s*   e Zd ZU ded< edd dœdd„ƒZdS )ÚWorkerRegistrationUpdatedz&typing.List[ServiceWorkerRegistration]Úregistrationsr   r   c                 C  s   | dd„ |d D ƒd�S )Nc                 S  s   g | ]}t  |¡‘qS r   )r!   r   rF   r   r   r   rI   �  s   ÿz7WorkerRegistrationUpdated.from_json.<locals>.<listcomp>rz   )rz   r   r   r   r   r   r   �  s
    þÿz#WorkerRegistrationUpdated.from_jsonNrx   r   r   r   r   ry   ˆ  s   
ry   z"ServiceWorker.workerVersionUpdatedc                   @  s*   e Zd ZU ded< edd dœdd„ƒZdS )ÚWorkerVersionUpdatedz!typing.List[ServiceWorkerVersion]Úversionsr   r   c                 C  s   | dd„ |d D ƒd�S )Nc                 S  s   g | ]}t  |¡‘qS r   )r7   r   rF   r   r   r   rI   Ÿ  s   z2WorkerVersionUpdated.from_json.<locals>.<listcomp>r|   )r|   r   r   r   r   r   r   œ  s
    ÿÿzWorkerVersionUpdated.from_jsonNrx   r   r   r   r   r{   —  s   
r{   )#Ú
__future__r   ÚenumÚtypingÚdataclassesr   Úutilr   r   Ú r   r	   r   r!   ÚEnumr.   r4   r7   rP   ra   rc   rf   rg   rh   rl   rn   rq   rr   rs   rt   ru   rv   rw   ry   r{   r   r   r   r   Ú<module>   sH   O