o
    5׾g?                  
   @   s   d dl Z d dlmZmZ d dlZd dlmZ e dZdd Z	ej
dddd	Zej
ddd
Zdd Z	ddededeeeej f fddZdS )    N)OptionalTuple)fieldsclic                   C   s   t t jddd d S )NzgWARNING: passphrase is empty. If you intended to use an unencrypted private key, use --no-pass instead.T)bold)clickechostyle r
   r
   [/var/www/html/backend_erp/backend_erp_env/lib/python3.10/site-packages/pyhanko/cli/utils.py_warn_empty_passphrase   s   r   TF)existsreadabledir_okay)writabler   c                 C   sF   zt | }|s	t|dkr|d W S |W S  ty"   td|  w )Nr      z=Sig field parameter PAGE should be a nonzero integer, not %s.)int
ValueErrorr   ClickException)pagepage_ixr
   r
   r   _index_page   s   
r   specrequire_full_specreturnc           
      C   s   z
|  d\}}}W n ty   |rtd| d f Y S w t|}ztt| d\}}}}	W n ty=   tdw |tj||||||	fdfS )N/z;Sig field spec should be of the form PAGE/X1,Y1,X2,Y2/NAME.,z9Sig field parameters X1,Y1,X2,Y2 should be four integers.)sig_field_nameon_pagebox)	splitr   r   r   r   mapr   r   SigFieldSpec)
r   r   r   r   namer   x1y1x2y2r
   r
   r   parse_field_location_spec,   s(   	r(   )T)loggingtypingr   r   r   pyhanko.signr   	getLoggerloggerr   Pathreadable_filewritable_filer   strboolr"   r(   r
   r
   r
   r   <module>   s"    

