CoolFace
Apppublic

fmatituy/selectospromanager

sourceHugging Faceupdated 6mo agoView on Hugging Face
0likes
scan_designer.cpython-313.pyc148 linesDownload Raw Back to __pycache__
1�

2���i�f����SSKJrJr SSKrSSKrSSKrSSKJr SSKJrJ	r	 SSK3Jr SSKJ
r
 SSKJr \R "S	S4S9 \R""SS	5 \R$"S
5\S55rg)�)�ui�appN)�datetime)�require_auth�get_current_user)�SelectosLayout)�DocumentEngine�)�save_plantilla�static/temp_scansT��exist_okz
/static_scansz/sst/scan-designerc�^^^^^^^^^	^5^^^
^^^^^^^�[5m"SS5nU"5m[S5 [R"S5 [R"5RS5 [R"5RS5 [R"5RS5 [R"S5RS	5 [R"S6SSS
9 SSS5 [R"5RS5 [R"S5RS5 [R"S5RS5 SSS5 SSS5 [R"5RS5 [R"S5RTS5RS5 [R"SSS9RS5 [R"SSS9RS5 SSS5 SSS5 [R"5RS5 [R"5RS5 [R"5RS 5 [R"5RS!5RS"U4S#j5mT [R "S$S%9RS&5RS'5R#S(5m[R"5RS)5mT [R"5RS*5 [R"5RS5 [R"S+5RS5 [R"S,5RS-5 SSS5 [R"S.S/U4S0jS19RS25RS35 SSS5 [R"5RS45mSSS5 [R"5RS55mT [R"S6S7S8S99RS:5 [R"S;5RS<5 [R"S=5RS>5 SSS5 [R"S5RS?5R#S@5m
[R"5RSA5m	T	 [R$"SBSCSBSDS7SESF9RSG5RSH5m[R"SI5RSJ5mSSS5 SSS5 SSS5 [R&"U4SKjSDSL9RSM5mSSS5 [R"5RSN5 [R"5RSO5 [R"5RSP5 [R"SQSRSSS
9 [R"ST5RSU5 SSS5 [R("SV5RTSW5RSX5RSY5 [R"5RSZ5 [R*"/S[QS\S]9RTS^5RSX5RS_5 SSS5 [R"5RS`5 [R"Sa5RSU5 [R,"SbSRSc9R/TSdSe5 SSS5 [R"5RSf5mT [R"5RSg5 [R"ShSiSjS99 [R"Sk5RSl5 SSS5 SSS5 [R"SmSnU4SojS19RSp5RSq5 [R"5RSr5 [R"SsStU4SujS19RSv5RSw5 [R"SxU4SyjS9RSz5RS{5 SSS5 SSS5 SSS5 SSS5 SSS5 S|[04UUUUU4S}jjmSSS5 UUUUU	UU
UUU47S~jmUU8UU4SjmUUU4S�jmUU4S�jmUU4S�jm9UU4S�jmg!,(df   GN�=f!,(df   GNP=f!,(df   GNZ=f!,(df   GN�=f!,(df   GN�=f!,(df   GN.=f!,(df   GN=f!,(df   GN�=f!,(df   GNZ=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN=f!,(df   GN_=f!,(df   GN�=f!,(df   GN{=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f)�Nc��\rSrSrSrSrg)�%scan_designer_page.<locals>.ScanState�c�X�SUl/UlSUlSUlSUlSUlg)NF��ARO)�	image_b64�extracted_fields�10processing�
template_name�
template_type�engineering_mode)�selfs �_C:\Users\faust\.gemini\antigravity\scratch\selectos_promanager\src\modules\sst\scan_designer.py�__init__�.scan_designer_page.<locals>.ScanState.__init__s0��!�D�N�$&�D�!�#�D�O�!#�D��!&�D��$)�D�!�)rrrrrrN)�__name__�11__module__�__qualname__�__firstlineno__r�__static_attributes__�r r�	ScanStaters��	*r r'z&CamScanner Pro - Extractor de FormatosaN12            <style>13                .glass-card {14                    background: rgba(255, 255, 255, 0.7);15                    backdrop-filter: blur(15px);16                    border: 1px solid rgba(255, 255, 255, 0.4);17                    border-radius: 2.5rem;18                }19                .scanner-line {20                    position: absolute;21                    width: 100%;22                    height: 6px;23                    background: linear-gradient(90deg, transparent, #3b82f6, transparent);24                    box-shadow: 0 0 25px #3b82f6;25                    top: 0;26                    left: 0;27                    animation: scan 4s infinite linear;28                    z-index: 100;29                    display: none;30                }31                @keyframes scan {32                    0% { top: 0; }33                    100% { top: 100%; }34                }35                .btn-premium {36                    background: linear-gradient(135deg, #1e3a8a 0%, #3b82f6 100%);37                    color: white;38                    border-radius: 1.5rem;39                    font-weight: 900;40                    letter-spacing: 0.15em;41                    text-transform: uppercase;42                    box-shadow: 0 15px 30px -10px rgba(59, 130, 246, 0.5);43                    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);44                }45                .btn-premium:hover {46                    transform: translateY(-4px) scale(1.02);47                    box-shadow: 0 20px 40px -10px rgba(59, 130, 246, 0.7);48                }49                .field-card {50                    transition: all 0.3s ease;51                }52                .field-card:hover {53                    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);54                    transform: translateX(4px);55                }56            </style>57        z6w-full items-center p-8 gap-8 bg-slate-50 min-h-screenzhw-full max-w-7xl justify-between items-center bg-white p-6 rounded-3xl shadow-sm border border-slate-100zitems-center gap-6�divz5p-4 bg-blue-600 rounded-2xl shadow-lg shadow-blue-200�document_scanner�white�2rem)�color�sizezgap-0zSST ARTIFICIAL INTELLIGENCEz5text-blue-600 font-black tracking-[0.3em] text-[10px]zScanner 3.6 RELOADEDz3text-4xl font-black text-slate-800 tracking-tighterzgap-3 items-centeruModo Ingenieríarz%mr-4 font-bold text-xs text-slate-600zHUB SSTc�@�[RRS5$)Nz/sst/operacion�r�navigate�tor&r r�<lambda>�$scan_designer_page.<locals>.<lambda>^s��"�+�+�.�.�IY�:Zr )�on_clickzflat color=slate-400 font-bold�CONSTRUCTORc�@�[RRS5$)N�/sst/constructorr/r&r rr2r3_s��b�k�k�n�n�M_�>`r z'outline color=blue rounded-xl font-boldz(w-full max-w-7xl gap-10 items-start mt-4zflex-1 gap-8zEw-full p-0 overflow-hidden glass-card shadow-2xl relative border-nonezZw-full h-[75vh] min-h-[600px] items-center justify-center bg-white cursor-pointer relative�clickc�&>�TRS5$)N�	pickFiles)�58run_method)�uploads�rr2r3gs����1B�1B�;�1Or F)�visiblez'w-full h-full absolute inset-0 z-40 p-4zfit=contain no-spinnerzbackground: transparent;zhw-full h-full absolute inset-0 z-50 bg-white/95 p-8 overflow-y-auto custom-scrollbar hidden items-centerzQw-full max-w-3xl items-center justify-between mb-8 pb-4 border-b border-slate-200uVERSIÓN INTERACTIVAuAsí quedó tu formatoz"text-2xl font-black text-slate-800zVOLVER A LA IMAGEN�imagec�>�T"S5$)NFr&��toggle_preview_layers�rr2r3us���cw�x}�c~r ��iconr4z%unelevated color=slate-900 rounded-xlzfont-bold shadow-lgzYw-full max-w-3xl gap-5 bg-white p-10 rounded-3xl shadow-2xl border border-slate-100 mb-20z'items-center z-10 w-full justify-center�cloud_upload�160pxzblue-300�r-r,zmb-6 opacity-40uCARGA TU FORMATO ANÁLOGOz2text-slate-500 font-black text-xs tracking-[0.4em]u.Soportamos PDF, PNG de alta resolución y JPEGz)text-slate-400 text-[10px] font-bold mt-2zscanner-linez
z-index: 100;zeabsolute inset-0 z-[150] bg-slate-900/90 backdrop-blur-md items-center justify-center flex-col hiddenr�dTzblue-500)�min�max�value�59show_valuer-r,z
thickness=0.1z"text-3xl font-black text-white m-4z"INICIALIZANDO MOTOR ESTRUCTURAL...z[text-blue-400 font-bold tracking-widest text-[10px] mt-4 uppercase text-center w-full blockc�>�T"U5$�Nr&)�e�
handle_uploads �rr2r3�s60���=��;Kr )�	on_upload�auto_upload�hiddenzw-[450px] gap-8z9w-full p-10 glass-card bg-white/80 shadow-2xl border-nonezitems-center gap-3 mb-8�settings_suggest�blue-600�smuMOTOR DE DIGITALIZACIÓNz@text-[10px] font-black text-slate-400 tracking-[0.3em] uppercasezNombre de la Plantillarz*outlined rounded-2xl bg-white shadow-innerzw-full mb-6 font-boldzw-full grid grid-cols-1 mb-10)r�JSAuInspección�PermisouCategoría Documental)�labelr�w-fullzGw-full justify-between items-center mb-6 pt-4 border-t border-slate-100uCAMPOS DINÁMICOS DETECTADOS�0�r,rc�*�[[U55$rM)�str�len)�xs rr2r3�s��ps�tw�xy�tz�p{r z@w-full gap-4 max-h-[450px] overflow-y-auto pr-3 custom-scrollbar�kw-full items-center justify-center py-20 bg-slate-50/50 rounded-3xl border-2 border-dashed border-slate-200�precision_manufacturing�4rem�blue-100zEsperando arquitectura...z5text-slate-300 font-bold mt-4 text-xs tracking-widestzAGREGAR CAMPO MANUAL�addc�>�T"5$rMr&)�add_manual_fields�rr2r3�s	���Wg�Wir zflat color=blue-600zw-full mt-4 font-bold text-xszw-full gap-3 mt-6zVER FORMATO DIGITAL�previewc�>�T"S5$�NTr&r@s�rr2r3�s���^r�sw�^xr zoutline color=slate-600z!flex-1 font-bold rounded-2xl h-14zPUBLICAR PLANTILLA MAESTRAc�>�T"5$rMr&)�	save_scans�rr2r3�s	���U^�U`r z#flex-1 h-14 btn-premium rounded-2xlzicon=rocket_launch�showc�	>�U(GaTR(d[R"SSS9 gTR(a"TR	S5 T
RSSS9 O!TR	S5 T
RSS	S9 TR
5 TRS61SS9 T [TR5GHQupUSnUS
=(d SnURSS5URSS5peURSS5URSS5p�SUSUSUSUS3	n	TR(GaX[R"S5R	U	5RS5 [R"5RS5 [R"5RS5 [R"SUS U35RS!5 [R"US"S#US"S$35RS%5 SSS5 [R"5RS&5 [R"XA4U4S'jjS(9RS)5RS*5 SSS5 SSS5 SSS5 GM�US+:XaS,O	US-:XaS.OS/n62[R"S5R	U	5RS0U63S135 US+:Xai[R"5RS25 [R"S3S4S5S69 [R"U5RS75 SSS5 O�US8:Xax[R"5RS95 [R"S5RS:5 [R"U5RS;5 SSS5 O9[R"XA4U4S<jjS(9RS)5RS=5 SSS5 GMT SSS5 gT
RS>S?S@9 TR	SA5 g!,(df   GN1=f!,(df   GN�=f!,(df   GN�=f!,(df   GM�=f!,(df   N�=f!,(df   N�=f!,(df   GM�=f!,(df   g=f)BNu Aún no hay coordenadas mapeadas�warning��typezcfilter: grayscale(1) invert(0.1) sepia(1) hue-rotate(180deg) opacity(0.8); transition: filter 0.5s;z.hidden bg-white/95 bg-slate-900/50 mb-20 gap-5zbg-slate-900/80��removerdz&filter: none; transition: filter 0.5s;zbg-transparentz@bg-white p-10 shadow-2xl rounded-3xl border border-slate-100 p-8z+relative w-full h-[80vh] p-4 bg-transparent�tiporXz	Campo OCRr_r�y�w��h�zposition: absolute; left: z%; top: z64%; width: z%; height: z%; transform: translateY(-50%);r(zz-50 group hover:z-[60]ztw-full h-full border border-cyan-500/50 backdrop-blur-sm bg-slate-900/60 p-0 hover:border-cyan-400 transition-colorsz;w-full bg-cyan-500/20 items-center justify-between px-1 h-3zID:z | zCtext-[7px] text-cyan-400 font-mono font-bold leading-none uppercase�.1fz% x �%z<text-[6px] text-slate-500 font-mono hidden group-hover:blockz3w-full flex-1 px-1 pb-1 -mt-1 items-center relativec�,>�T"USUR5$�NrX�rJ�rN�idx�update_fields  �rr2�Bscan_designer_page.<locals>.toggle_preview_layer.<locals>.<lambda>�s���Ye�fi�kr�tu�t{�t{�Y|r �rJ�	on_changezborderless densezKw-full text-[10px] text-white bg-transparent h-full font-mono font-semibold�Firma�emerald�Titulo�blue�slatez4z-50 shadow-sm rounded-md bg-white/95 border border-z.-500/50 hover:shadow-md transition-all p-[2px]zEw-full h-full items-center justify-center bg-emerald-50/50 rounded-sm�draw�1remzemerald-300rFz=text-[8px] text-emerald-600 font-bold uppercase truncate px-1�	Checklistz%w-full h-full items-center px-2 gap-2z3w-3 h-3 border border-slate-300 rounded-sm bg-whitez,text-[9px] text-slate-600 font-bold truncatec�,>�T"USUR5$r|r}r~s  �rr2r��s���Ua�be�gn�pq�pw�pw�Uxr z7w-full h-full text-[11px] text-slate-800 font-bold px-1zhidden bg-white/95zbg-slate-900/80 bg-transparent�rrz
filter: none;)rr�notifyr�style�classes�clear�	enumerate�get�element�column�rowrX�input�propsrC)rl�i�fieldrsrXr_rtrurw�	pos_style�border_color�interactive_container�preview_img�
preview_layer�stater�s           �����rrA�0scan_designer_page.<locals>.toggle_preview_layer�s'�����-�-��I�I�@�y�Q��65�)�)��%�%�'L�M�!�)�)�1a�gx�)�y��%�%�&N�O�!�)�)�1a�gw�)�x�%�+�+�-�%�-�-�5w�~k�-�l�*�$-�e�.D�.D�$E���$�V�}�� %�g�� =�+��$�y�y��a�0�%�)�)�C��2C�1�$�y�y��b�1�5�9�9�S�!�3D�1�'A���8�A�3�j�YZ�X[�[f�gh�fi�jI�%J�	� �1�1�1�!#���E�!2�!8�!8��!C�!K�!K�Le�!f�%'�Y�Y�[�%8�%8�:p�&q�)+����)9�)9�:w�)x�(*���3�q�c��T�F�1C�(D�(L�(L�NS�)T�(*���A�c�7�$�q��g�Q�1G�(H�(P�(P�RP�)Q�*y�*,����)9�)9�:o�)p�(*���u�H|�(}�-2�U�3E�-F�w�w�P]�H^�*q�	&q�"g�!f�9=���9�W[�_g�Wg�V�mt�L�!#���E�!2�!8�!8��!C�!K�!K�OC�DP�CQ�Q�M@�"A�#'�7�?�)+����)9�)9�;B�*C�(*����V�=�(Y�(*�����(?�(?�@�)A�*C�*C�&*�[�%8�)+����)9�)9�:a�)b�(*�66�67�5�(9�(A�(A�Bw�(x�(*�����(?�(?�@n�(o�*c�)b�%'�H�H�5�Dx�$y�).��/A�)B�7�7�LE�DF�"A�"A�/%F�+�*�J�%�%�&:�Cc�%�d��!�!�/�2�1*y�)x��*q�)p��	&q�&q��"g�!f��*C�*C��*c�)b��
"A�"A��1+�*�s��'C68R<�1%Q4�%Q"	�;AP>�,Q"	�:Q�:Q"	�Q4�69AR<�+R)�70<R	�3R)�9AR	�AR)�
R<�>71Q
�Q"	�72Q�Q"	�"73Q1
�,Q4�474R�>	R<�75R
�R)�76R&
�"R)�)77R9�3	R<�<78S79c��p80>81# �[R"SSSS9 URR5IShv�NnURRnU(d[R"SSS9 gSnUR5R
S	5(aS82nO&UR5R
S5(aSnS
[R"5RS5SU3nSn[R"USS9 [RRXT5n[US5nURU5 SSS5 [ R""U5R%S5nTR'S5 TR'SS9 US:Xa[R"SSS9 OITR)SUSU35 TR+S5 TR+S5 TR'SSS9 [,R."S5IShv�N STlTR3S5 TR'SS S9 S!TlTR7S"5 UUU4S#jn	[,R8"U	"55n83[,R:"5nUR=S[>R@U5IShv�NnU84RC5 S$TlTR7S%5 [,R."S&5IShv�N TR'S SS9 URES'5(Ga7URES(/5Tl#T"5 US:Xa�URES)5(a�[RRIUS)5(a�[US)S*5n
[ R""U
R55R%S5nTR)S+U35 TR+S5 TR+S5 SSS5 [R"S,S-S.SS/9 TRJ(d,S0[R"5RS153Tl%O)[R"S2URES353SSSS49 TR3S55 STlgGN\!,(df   GNa=fGN�GNGN�!,(df   N�=f![LafnS!SK'nURQ5n[SS6U35 [R"S7[UU53SSS89 TR3S55 STlSnAgSnAff=f7f)9Nz Procesando archivo en memoria...�info�top)rp�positionu Archivo vacío o lectura fallida�negativeroz	image/png)z.jpgz.jpegz85image/jpegz.pdfzapplication/pdf�scan_z
%Y%m%d_%H%M%S�_rTr
�wbzutf-8rRr�z"PDF recibido. Extrayendo imagen...zdata:z;base64,Fzbg-whitezbg-slate-900 shadow-innerrqg�?zdisplay: block;�flexru'GEOMETRIC ENGINE: EXTRAYENDO TOPOLOGÍAc��h># �[SS5H�nTR(d gUTlUS:XaTRS5 US:XaTRS5 US:XaTRS5 [R86"S	5IShv�N M� gN	![Ra gf=f7f)87Nr88�_�z$STRUCTURAL ENGINE: EJECUTANDO DBSCAN�2z"STRUCTURAL ENGINE: MAPEO DE TABLAS�Ku#SEMANTIC ENGINE: CLASIFICACIÓN NLPg���Q��?)�rangerrJ�set_text�asyncio�sleep�CancelledError)r��progress_circle�progress_labelr�s ���r�update_progress�Bscan_designer_page.<locals>.handle_upload.<locals>.update_progress s�����	�"�1�b�\��$�/�/��01��-���7�N�$;�$;�<b�$c���7�N�$;�$;�<`�$a���7�N�$;�$;�<a�$b�%�m�m�D�1�1�1�
*�2���-�-����sE�B2�!B�B2�A%B�B�
B�B2�B�B/�,B2�.B/�/B2rGuENSAMBLANDO ÁRBOL JERÁRQUICOg333333�?�success�	structure�processed_image�rbzdata:image/png;base64,u ¡Estructura mapeada con éxito!�positive�89fact_check�rprCr��Formato_Digital_z%H%M%SuError Técnico: �error)rpr��90multi_linezdisplay: none;uERROR CRÍTICO EN UPLOAD: zFallo grave procesando imagen: )rpr�)+rr��file�read�name�lower�endswithr�now�strftime�os�makedirs�path�join�open�write�base64�	b64encode�decoder��91set_source�set_visibilityr�r�rr�rJr��create_task�get_event_loop�run_in_executorr	�process_document�cancelr�r�existsr�	Exception�	traceback�92format_exc�printr])rN�content�
filename_orig�mime�filename�temp_dir�	temp_path�f�b64r��	prog_task�loop�result�fp�b64_p�excr��err_msgr�r�r�r��progress_layer�scanner_container�scanner_liner��update_field_list�upload_placeholders                  ����������rrO�)scan_designer_page.<locals>.handle_upload�sg����j	%��I�I�8�v�PU�V��F�F�K�K�M�)�G��F�F�K�K�M���	�	�<�:�N���D��"�"�$�-�-�.?�@�@��$��$�$�&�/�/��7�7�@Q���x�|�|�~�6�6��G�H��-��Y�H�*�H��K�K��4�0������X�8�I��i��&�!����� �'��"�"�7�+�2�2�7�;�C�
�!�!�(�+����x��0��(�(��	�	�>�V�L��&�&��t�f�H�S�E�'B�C��*�*�4�0�"�1�1�%�8�!�)�)��A\�)�]��-�-��$�$�$� $�E�����0�1�
�"�"�(��"�?�$%�O�!��#�#�$M�N�93
� �+�+�O�,=�>�I��)�)�+�D��/�/��n�6U�6U�W`�a�a�F�
����$'�O�!��#�#�$D�E��-�-��$�$�$��"�"�&�h�"�?��z�z�)�$�$�)/���K��)D��&�!�#��,�,����<M�1N�1N�SU�SZ�SZ�Sa�Sa�bh�iz�b{�S|�S|��f�%6�7��>�"� &� 0� 0����� ;� B� B�7� K��#�.�.�1G��w�/O�P�#�2�2�4�8�*�9�9�%�@�	?��	�	�<�:�T`�kp�q��*�*�,<�X�\�\�^�=T�=T�U]�=^�<_�*`�E�'���	�	�,�V�Z�Z��-@�,A�B��^c�pt�u����/�0�$�E��*�$'�&��(
%�8b�
%�?�>���	%���*�*�,�G��.�w�i�8�9��I�I�7��C��z�B��`d�e����/�0�$�E����
	%�s��T6�3S�R�6S�/T6�0B;S�+R�=CS�R)�	B S�)R,�*AS�/R/�0BS�A*R2�5BS�T6�S�94R&�!	S�,S�/S�295S�<S�96T3�
AT.�)T6�.T3�3T6c
�>�TR5 TR(dtT [R"5R	S5 [R97"SSSS9 [R"S5R	S5 SSS5 SSS5 gT SS	SS98S.SS
SSS.SSSSS./n[R"5R	S5 [TR5GH�up[R"5R	S5 SSSSSSS.n[R99"URUSS5SS9R	S5 [R"5R	S5 [R"USU4U4SjjS 9RS!5R	S"5 [R"5R	S#5 [R"S$US%S&S'US(S&S)35R	S*5 [R"USS+S9R	S,5 SSS5 SSS5 [R"S-U4U4S.jjS/9RS05 SSS5 GM� SSS5 SSS5 g!,(df   GN=f!,(df   g=f!,(df   N�=f!,(df   N�=f!,(df   GM�=f!,(df   No=f!,(df   g=f)1Nr`�grid_onrbz	slate-200rFzESPERANDO ESCANEO INDUSTRIAL...z9text-slate-400 font-bold mt-4 text-[10px] tracking-widestrXzNOMBRE DEL CAMPO�left)r�rXr��alignrs�TIPO�center�actionsr�rightzw-full gap-2zww-full items-center bg-white p-3 rounded-2xl border border-slate-100 shadow-sm hover:translate-x-2 transition-transform�title�100short_text�eventr�r��notes)r��Texto�Fechar�r��ArearTr[zbg-blue-50 p-2 rounded-lgzflex-1 gap-0c�,>�T"USUR5$r|r}r~s  �rr2�?scan_designer_page.<locals>.update_field_list.<locals>.<lambda>os���Vb�cf�ho�qr�qx�qx�Vyr r�zQborderless dense input-style="font-weight: 700; color: #1e293b; font-size: 11px;"rYzitems-center gap-2zCOORD: r_ryz% , rtrzz-text-[8px] text-slate-400 font-mono uppercaserczDtext-blue-700 text-[8px] font-black rounded-md shadow-none px-2 py-0�deletec�>�T"U5$rMr&)r�remove_fields �rr2rvs����UX�HYr rBz!flat round size=sm color=rose-300)r�rrr�r�rCrXr�r�r�r�r��badge�button)�columnsr�r��icon_map�101field_listrr�r�s    ����rr��-scan_designer_page.<locals>.update_field_listVs���������%�%���Y�Y�[�(�(�*W�X��G�G�I�F�+�F��H�H�>�?�G�G�ID�E�X��
�
�!�+=��Z`�a��&�6�H�U�"�R�'�G�T��G�����$�$�^�4� )�%�*@�*@� A�H�A�����)�)�+d�e�.5��W^�io�K�U\�$]��������U�6�]�G� D�J�W�_�_�`{�|��Y�Y�[�0�0��@��H�H�5��>�ST�Ey�z�!&��'z�!{�}D�}D�EM�}N�!#����!1�!1�2F�!G� "���7�5��:�c�2B�$�u�S�z�RU�FV�VW�)X� Y� a� a�cR�!S� "����v��j� I� Q� Q�SY�!Z�"H�	A��	�	�x�Q�:Y�Z�`�`�bE�F�e�e�!B�5��Z�X�X����
��*"H�!G��	A�@��e�e��5�4���Z�s��%J �102<J�J �9K7�AK&�A%K	�7A"K�AJ1
�5K�=3K	�0
K&�=K7�103J	�J � 104J.�1105J?�;K�106K�K	�107K#
�	K&�&108K4	�0K7�7109Lc�^>�UTRUU'TR(a	T"S5 ggri)rr=)r�keyrJr�r�rAs   ���rr��(scan_designer_page.<locals>.update_fieldxs.���+0����s�#�C�(�� � � ��&�!r c�\>�SSSSSSS.nTRRU5 T"5 g)NrzNUEVO CAMPOrr�F)rsrXr_rtru�obligatorio)r�append)�new_fr�r�s ��rrf�,scan_designer_page.<locals>.add_manual_field~s0��� �=�q�q�r�bg�h��
���%�%�e�,��r c�J>�TRRU5 T"5 grM)r�pop)rr�r�s ��rr�(scan_designer_page.<locals>.remove_field�s���
���"�"�3�'��r c	�n>�TR(d[R"SSSSS9 gTR(d[R"SSSSS9 gSn/nTRHfnUR	5n[USS	-U-5US'[US110S	-U-5US111'USS:XaS
U;aSUS
'UR
U5 Mh [TRTRUTRSS55 [R"SSSSS9 [RRS5 g)Nu(Asigna un nombre técnico a la plantillarnr�r�z(No se han detectado campos para exportarr�ixrtrGrwrsr��opcioneszSI, NO, N/A�nombre�Adminz.PLANTILLA PUBLICADA EXITOSAMENTE EN GOBERNANZAr��verifiedr7)rrr�r�copy�roundrrrr�r0r1)�	A4_HEIGHT�compatible_fieldsr��f_copyr��users    ��rrk�%scan_designer_page.<locals>.save_scan�s%����"�"��I�I�@�y�W`�kp�q���%�%��I�I�@�y�W^�in�o��112�	����+�+�E��Z�Z�\�F���s��c�!1�Y� >�?�F�3�K���s��c�!1�Y� >�?�F�3�K��f�~��,��6�1I�%2��z�"��$�$�V�,�,�	�u�*�*�E�,?�,?�AR�TX�T\�T\�]e�gn�To�p�113�	�	�B��Zd�ot�u�	�����)�*r )rrr�
add_head_htmlr�r�r�r�rCrX�switch�114bind_valuer	r��card�onr>r��circular_progressr<r��selectr�bind_text_from�bool)r'rfrrOr�r�r�r�r�r�rrkr�r�r�rAr�r�r<r�r#s @@@@@@@@@@@@@@@@@@@@r�scan_designer_pager.s��������D�*�*�
�K�E�	�@�	A�115���.�.	
�`�Y�Y�[�
 �
 �!Y�
Z�����!�!�#M�N��V�V�X�%�%�&:�;����E�*�2�2�3j�k���� 2�'��O�l�����,�,�W�5����!>�?�G�G�H�A����!7�8�@�@�Av�w�6�<��V�V�X�%�%�&:�;��I�I�0�1�<�<�U�DV�W�_�_�aH�I��I�I�i�2Z�[�a�a�cC�D��I�I�m�6`�a�g�g�iR�S�<�N�����!�!�"L�M��Y�Y�[�(�(��8�����*�*�+r�s�,.�I�I�K�,?�,?�A]�-^��R��)O�P�*�/�+-�(�(�5�*A�*I�*I�Js�*t�*z�*z�|T�+U�+[�+[�\v�+w�K�-/�I�I�K�,?�,?�Ak�-l�M�!.�%'�V�V�X�%5�%5�7J�&K�)+����)<�)<�W�)E�(*���1G�(H�(P�(P�RI�)J�(*���1I�(J�(R�(R�Sw�(x�*F�%'�I�I�.B��[~�$�).��/V�)W�X_�X_�`u�Xv�&K�9;�	�	��8K�8K�Mh�9i� 5�"/�24����1D�1D�En�1o�.�!3� "����W�J� W� _� _�`q� r� "���)D� E� M� M�OC�!D� "���)Y� Z� b� b�dO�!P�"4�,.�:�:�e�+<�+D�+D�^�+T�+Z�+Z�[j�+k�L�.0�Y�Y�[�-@�-@�Bi�.j�N�!/�24�2F�2F�1�RU�]^�ko�v}�FP�3Q�3W�3W�Xg�3h�3p�3p�qU�3V��13���:^�1_�1g�1g�iF�2G��"0�=/�t�N �Y�Y�1K�Y]�^�f�f�go�p�F�Q9�V�Y�Y�[�(�(�):�;�����*�*�+f�g��V�V�X�-�-�.G�H��G�G�$6�j�t�T��H�H�%?�@�H�H�JL�M�I����!9�:�E�E�e�_�]�c�c�eQ�R�Z�Z�[r�s��V�V�X�-�-�.M�N��Y�Y�'O�Wn�o�z�z�|A�CR�S�Y�Y�ZF�G�O�O�PX�Y�O� �V�V�X�-�-�.w�x��H�H�%C�D�L�L�NP�Q��H�H�S�116�;�J�J�5�Rd�f{�|�y�&(�Y�Y�[�%8�%8�9{�%|�117�'�!#����!4�!4�6c�"d� "���(A��V`� a� "���)D� E� M� M�OF�!G�"d�(�118�	�	�"8�u�Oi�j�"�U�#8�9�'�'�Ba�:b��V�V�X�-�-�.A�B��I�I�&;�)�Vx�y�!&��'@�!A�'�'�Jm�Bn��I�I�&B�M`�a�!(��)N�!O�!&��';�!<�
C�1h�<�[N�[�z9	3�t�9	3�9	3�_119B�Tk%�k%�X F� F�D'��120�+�c	l�k��5�5��<�;��<�;��N�N��<*F�)E��&K�&K��"/���"4�!3��"0���=/�.��t�s��9�8��ZI�H��O�N��y�x��"d�"d��(�Z��C�B��1h�g��<�;��[N�M��[�
Z��e121B�	A�s@�;m	�6%l7�%g3�&g	�&f+�=,g	�)Af=�4g	�<,g3�(Bg!	�(g3�0,l7�%l%�%j	�&;i1�!A(i
�	%h)�.%h�Ah�Ah�,h)�122.i
�8A0h;�(A"i
�123Ai
�'i
�/i1�70j	�',l%�%l	�8%l�<j
�A0l�	Aj'
�,l�;A
j9
�.l�6%k
�<k�k
�A$l�A0k/
�3l�;l	�l%�l7�m	�+124f:�5g	�=125g�g	�126g
�g3�!127g0
�+g3�3128h�=l7�129h�h�130h&�!h)�)131h8�3i
�;132i133�i
�
134i�i
�135i.�)i1�1136j�;j	�137j
�
l%�138j$�l�'139j6�1l�9140k�l�141k�k
�142k,�'l�/143k>�9l�144l�l	�145l"
�l%�%146l4�/l7�7147m	�m	�	148m)�niceguirrr�r�r�r�
services.authrr�modules.layoutr�services.document_enginer	�services_sstrr��add_static_files�pager.r&r r�<module>r6sh���	��
��8�)�3�(�����$�/����_�&9�:����	��
�R+���R+r