
    zj                       U d Z ddlmZ ddlmZ ddlmZ  G d de      Z ed       G d	 d
             Z ed       G d d             Z	 edddd      Z
 edddd      Zej                   e	dde
edddddddddd      ej                   e	dde
edddd d!d"d#d$d%d&      ej                   e	d'd(e
edddd d!d"d#d$d)d&      iZd*ed+<   d.d,Zy-)/u  Ofis bazlı DOCX biçim kuralları — TR / EP / US.

Drafting zaten jurisdiction-aware (ayrı sistem promptları, şekli inceleme
kuralları, değişiklik evrakı şablonları). Export değildi: EP/US seçen
kullanıcı doğru dilde taslak alıp TürkPatent formatında, Türkçe adlı ve
dosyalanamaz bir DOCX ile kalıyordu.

Burası o boşluğu kapatan tek kaynak. `amendment.py`'deki `_TEMPLATES`
desenini izler: biçim helper'ları ortak, ofise özel değerler sözlükte.

Kaynaklar:
  TR — TÜRKPATENT Patent Başvuru Kılavuzu (A4, 20/25/20/20 mm, her 5
       satırda satır numarası, resim sayfaları 25/25/15/10 mm)
  EP — Rule 49 EPC: (5) kenar boşlukları asgari üst 2 cm / sol 2,5 cm /
       sağ 2 cm / alt 2 cm; (7) tarifnamenin her beşinci satırı numaralanır.
       Çizimler Rule 46(1): üst 2,5 / sol 2,5 / sağ 1,5 / alt 1 cm.
  US — 37 CFR 1.52(a): kâğıt A4 (21,0 × 29,7 cm) VEYA letter
       (21,6 × 27,9 cm); kenar boşlukları asgari sol 2,5 / üst 2,0 /
       sağ 2,0 / alt 2,0 cm; 1,5 satır aralığı; 12 punto önerilir.
       Satır numarası ZORUNLU DEĞİL ama 1.52(b)(6) ile açıkça serbest —
       inceleme uzmanının atıf vermesini kolaylaştırdığı için korunur.
       Çizimler 37 CFR 1.84(g): üst 2,5 / sol 2,5 / sağ 1,5 / alt 1 cm.

US için varsayılan kâğıt letter'dır: A4 de kabul edilir ama ABD pratiğinde
letter beklenir ve iki seçenek arasında ofis tercihi budur.
    )annotations)	dataclass)StrEnumc                      e Zd ZdZdZdZdZy)Jurisdictionu  Hedef patent ofisi.

    `app.services.formality.models.Jurisdiction` ile aynı değerleri taşır;
    docx katmanının formality'ye bağımlı olmaması için burada ayrıca
    tanımlıdır (StrEnum olduğu için değerler karşılıklı kabul edilir).
    TREPUSN)__name__
__module____qualname____doc__r   r	   r
        ./tmp/py-stage/app/services/docx/office_spec.pyr   r   "   s     
B	B	Br   r   T)frozenc                  :    e Zd ZU dZded<   ded<   ded<   ded<   y)Marginsu   Kenar boşlukları, mm.floattopleftrightbottomNr   r   r   r   __annotations__r   r   r   r   r   /   s    !	J
KLMr   r   c                      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
ed<   d
ed<   d
ed<   d
ed<   d
ed<   d
ed<   d
ed<   d
ed<   y)
OfficeSpecu-   Bir patent ofisinin DOCX çıktı kuralları.r   page_width_mmpage_height_mmr   text_marginsfigure_marginsboolline_numberingstrheading_descriptionheading_claimsheading_abstractfilename_descriptionfilename_claimsfilename_abstractfilename_figurespackage_labelfigure_caption_prefixNr   r   r   r   r   r   9   s[    7 r   r         )r   r   r   r      
      i)  u
   TARİFNAMEu	   İSTEMLERu   ÖZET	TarifnameIstemlerOzetResimler
TurkPatentu   Şekil)r   r   r    r!   r#   r%   r&   r'   r(   r)   r*   r+   r,   r-   DESCRIPTIONCLAIMSABSTRACTDescriptionClaimsAbstractDrawingsEPOFiguregj@gfffffvq@USPTOzdict[Jurisdiction, OfficeSpec]_SPECSc                    | t         t        j                     S 	 t        t        |       j	                               }t         |   S # t
        $ r t         t        j                     cY S w xY w)u  Ofis biçim kurallarını döner; bilinmeyen/boş değer TR'ye düşer.

    TR'ye düşmek bilinçli: ürünün varsayılan ofisi TÜRKPATENT ve eksik bir
    alan yüzünden export'un tamamen patlaması, yanlış marjla çıkmasından
    daha kötüdür.
    )rB   r   r   r$   upper
ValueError)jurisdictionkeys     r   get_office_specrH      sb     loo&&'3|,2245 #;  'loo&&'s   "A  A)(A)N)rF   zJurisdiction | str | Nonereturnr   )r   
__future__r   dataclassesr   enumr   r   r   r   _TEXT_MARGINS_FIGURE_MARGINSr   r	   r
   rB   r   rH   r   r   r   <module>rO      sE  6 # ! 
7 
 $   $  : BRr"= brB? OOZ"&(" (" #"&  OOZ"&)#* $#&  OOZ"&)#* $#&C2*& 2jr   