assemblerpdf 1.0.9__tar.gz → 1.0.11__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. {assemblerpdf-1.0.9/src/assemblerpdf.egg-info → assemblerpdf-1.0.11}/PKG-INFO +1 -1
  2. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/pyproject.toml +1 -1
  3. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/assemblers/base.py +5 -4
  4. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/fields/checkbox.html +1 -1
  5. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/fields/radio.html +1 -1
  6. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/layout/header.html +2 -2
  7. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/layout/style.html +3 -1
  8. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11/src/assemblerpdf.egg-info}/PKG-INFO +1 -1
  9. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/MANIFEST.in +0 -0
  10. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/README.md +0 -0
  11. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/setup.cfg +0 -0
  12. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/__init__.py +0 -0
  13. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/assemblers/__init__.py +0 -0
  14. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/assemblers/form.py +0 -0
  15. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/assemblers/report.py +0 -0
  16. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/core.py +0 -0
  17. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/fonts/Inter-Bold.ttf +0 -0
  18. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/fonts/Inter-Medium.ttf +0 -0
  19. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/fonts/Inter-Regular.ttf +0 -0
  20. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/img/Logo-unp-rojo.png +0 -0
  21. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/img/logo-mininterior-rojo.jpg +0 -0
  22. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/fields/field_input.html +0 -0
  23. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/fields/field_label.html +0 -0
  24. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/fields/input.html +0 -0
  25. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/fields/textarea.html +0 -0
  26. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/layout/footer.html +0 -0
  27. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/layout/footer_fixed.html +0 -0
  28. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/layout/grid_row.html +0 -0
  29. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/layout/section.html +0 -0
  30. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/layout/table.html +0 -0
  31. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/assemblerpdf/misc/signature.html +0 -0
  32. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/anexos.html +0 -0
  33. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/anexos_limpio.html +0 -0
  34. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/archivese.html +0 -0
  35. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/autoriza_envio.html +0 -0
  36. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/checkbox.html +0 -0
  37. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/control_cambios.html +0 -0
  38. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/datos_basicosinf.html +0 -0
  39. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/datos_ot.html +0 -0
  40. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/encaso_de.html +0 -0
  41. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fiila_dos_check.html +0 -0
  42. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_cinco_zona.html +0 -0
  43. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_cuatro.html +0 -0
  44. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_cuatro_si_no.html +0 -0
  45. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_cuatro_zona.html +0 -0
  46. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_dos.html +0 -0
  47. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_dos_zona.html +0 -0
  48. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_instructivo.html +0 -0
  49. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_tres.html +0 -0
  50. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_tres_checkbox.html +0 -0
  51. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_tres_zona.html +0 -0
  52. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/fila_uno.html +0 -0
  53. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/firma.html +0 -0
  54. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/firma_doble.html +0 -0
  55. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/firmaop2.html +0 -0
  56. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/firmas_oficializacion.html +0 -0
  57. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/hechos_sobrevinientes.html +0 -0
  58. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/hechos_sobrevinientes_vacio.html +0 -0
  59. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/iformfilacuatro.html +0 -0
  60. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/informacion_doble.html +0 -0
  61. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/input_2checks.html +0 -0
  62. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/input_check.html +0 -0
  63. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/input_checkbox.html +0 -0
  64. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/input_solitario.html +0 -0
  65. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/label_input_dos.html +0 -0
  66. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/leyenda_autoriza_correo.html +0 -0
  67. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/leyenda_superiol.html +0 -0
  68. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/logos.html +0 -0
  69. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/manifiesto.html +0 -0
  70. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/notificacion_correo.html +0 -0
  71. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/oficializacion.html +0 -0
  72. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/pregunta_si_no.html +0 -0
  73. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/pregunta_tresopciones.html +0 -0
  74. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/qr_oficializacion.html +0 -0
  75. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/situacion_amenaza.html +0 -0
  76. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/style.html +0 -0
  77. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/subtitulo_icono.html +0 -0
  78. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/subtitulo_icono_largo.html +0 -0
  79. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/tabla_doble.html +0 -0
  80. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/tabla_instructivo.html +0 -0
  81. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/tabla_matriz_riesgo.html +0 -0
  82. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/tabla_proyeccion.html +0 -0
  83. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/tabla_simple.html +0 -0
  84. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/texarea.html +0 -0
  85. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/tipo_identificacion.html +0 -0
  86. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/tipos_checkbox.html +0 -0
  87. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/titulo.html +0 -0
  88. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/titulo_logo.html +0 -0
  89. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/templates/sistema/titulo_principal.html +0 -0
  90. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/utils/__init__.py +0 -0
  91. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf/utils/template_loader.py +0 -0
  92. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf.egg-info/SOURCES.txt +0 -0
  93. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf.egg-info/dependency_links.txt +0 -0
  94. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf.egg-info/requires.txt +0 -0
  95. {assemblerpdf-1.0.9 → assemblerpdf-1.0.11}/src/assemblerpdf.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: assemblerpdf
3
- Version: 1.0.9
3
+ Version: 1.0.11
4
4
  Summary: Generador de PDFs usando WeasyPrint, diseñado para formularios y reportes con componentes genéricos.
5
5
  Author-email: EcosistemaUNP <ecosistema@unp.gov.co>
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "assemblerpdf"
7
- version = "1.0.9"
7
+ version = "1.0.11"
8
8
  description = "Generador de PDFs usando WeasyPrint, diseñado para formularios y reportes con componentes genéricos."
9
9
  readme = "README.md"
10
10
  authors = [
@@ -2,7 +2,7 @@ import os
2
2
  from assemblerpdf.core import generate_pdf_from_string
3
3
 
4
4
  class BaseFormAssembler:
5
- def __init__(self, context=None, codigo=None, fecha=None, version=None, auto_decorations=True, custom_css_path=None, custom_css_content=None, pdf_forms=False, margin_top=None, margin_bottom=None, margin_left=None, margin_right=None, padding_top=None, padding_bottom=None, padding_left=None, padding_right=None):
5
+ def __init__(self, context=None, codigo=None, fecha=None, version=None, auto_decorations=True, custom_css_path=None, custom_css_content=None, pdf_forms=False, margin_top=None, margin_bottom=None, margin_left=None, margin_right=None, padding_top=None, padding_bottom=None, padding_left=None, padding_right=None, group_sections=False):
6
6
  self.context = context or {}
7
7
  self.components = []
8
8
  self.codigo = codigo
@@ -20,6 +20,7 @@ class BaseFormAssembler:
20
20
  self.padding_bottom = padding_bottom
21
21
  self.padding_left = padding_left
22
22
  self.padding_right = padding_right
23
+ self.group_sections = group_sections
23
24
  self._in_section_block = False
24
25
 
25
26
  def _get_img_base(self):
@@ -68,7 +69,7 @@ class BaseFormAssembler:
68
69
  extra_context (dict): Contexto adicional para el template
69
70
  wrapper_html (str): HTML envolvente opcional
70
71
  """
71
- if template_name == 'section.html':
72
+ if template_name == 'section.html' and self.group_sections:
72
73
  if self._in_section_block:
73
74
  self.components.append('</div>')
74
75
  self._in_section_block = False
@@ -146,7 +147,7 @@ class BaseFormAssembler:
146
147
 
147
148
  def add_page_break(self):
148
149
  """Inserta un salto de página."""
149
- if self._in_section_block:
150
+ if self.group_sections and self._in_section_block:
150
151
  self.components.append('</div>')
151
152
  self._in_section_block = False
152
153
  self.components.append('<div class="page-break"></div>')
@@ -154,7 +155,7 @@ class BaseFormAssembler:
154
155
 
155
156
  def build(self, pdf_forms=None):
156
157
  """Une todos los componentes renderizados y compila el PDF."""
157
- if self._in_section_block:
158
+ if self.group_sections and self._in_section_block:
158
159
  self.components.append('</div>')
159
160
  self._in_section_block = False
160
161
 
@@ -1,4 +1,4 @@
1
- {% set is_inline = inline if inline is defined else (not in_grid and opciones|length <= 3) %}
1
+ {% set is_inline = inline if inline is defined else (not in_grid and opciones|length <= 3 and (not label or label|length < 100)) %}
2
2
  <div class="choice-container {{ class_group|default('') }} {% if is_inline %}inline-choice{% endif %}" style="margin-bottom: {{ margin_bottom|default('8px') }}; {{ style_group|default('') }}">
3
3
  {% if label %}
4
4
  <label class="form-label {{ class_label|default('') }}" style="{{ style_label|default('') }}">{{ label }}</label>
@@ -1,4 +1,4 @@
1
- {% set is_inline = inline if inline is defined else (not in_grid and opciones|length <= 3) %}
1
+ {% set is_inline = inline if inline is defined else (not in_grid and opciones|length <= 3 and (not label or label|length < 100)) %}
2
2
  <div class="choice-container {{ class_group|default('') }} {% if is_inline %}inline-choice{% endif %}" style="margin-bottom: {{ margin_bottom|default('8px') }}; {{ style_group|default('') }}">
3
3
  {% if label %}
4
4
  <label class="form-label {{ class_label|default('') }}" style="{{ style_label|default('') }}">{{ label }}</label>
@@ -1,6 +1,6 @@
1
1
  <div class="header-container {{ class_group|default('') }}" style="{{ style_group|default('') }}">
2
2
  <div class="header-logos">
3
- <img src="{{ logo_der|default('img/Logo-unp-rojo.png') }}" class="header-logo-right {{ class_logo_right|default('') }}" style="{{ style_logo_right|default('') }}" alt="Logo Derecha">
3
+ <img src="{{ logo_izq|default('img/Logo-unp-rojo.png') }}" class="header-logo-left {{ class_logo_left|default('') }}" style="{{ style_logo_left|default('') }}" alt="Logo Izquierda">
4
4
  </div>
5
5
 
6
6
  <div class="header-text">
@@ -14,6 +14,6 @@
14
14
  </div>
15
15
 
16
16
  <div>
17
- <img src="{{ logo_izq|default('img/logo-mininterior-rojo.jpg') }}" class="header-logo-left {{ class_logo_left|default('') }}" style="{{ style_logo_left|default('') }}" alt="Logo Izquierda">
17
+ <img src="{{ logo_der|default('img/logo-mininterior-rojo.jpg') }}" class="header-logo-right {{ class_logo_right|default('') }}" style="{{ style_logo_right|default('') }}" alt="Logo Derecha">
18
18
  </div>
19
19
  </div>
@@ -50,7 +50,7 @@
50
50
  /* Pie de página fijo de oficialización */
51
51
  .oficializacion-fija {
52
52
  position: fixed;
53
- bottom: calc(-{{ margin_bottom|default('2.2cm') }} + 0.5cm); /* Posicionado dentro del margen inferior */
53
+ bottom: calc(-{{ margin_bottom|default('2.2cm') }} + 0.25cm); /* Posicionado dentro del margen inferior */
54
54
  left: 0;
55
55
  width: 100%;
56
56
  z-index: 9999;
@@ -299,6 +299,8 @@
299
299
  padding-bottom: 4px;
300
300
  margin-top: 15px;
301
301
  margin-bottom: 10px;
302
+ page-break-after: avoid !important;
303
+ break-after: avoid !important;
302
304
  }
303
305
 
304
306
  .section-icon {
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: assemblerpdf
3
- Version: 1.0.9
3
+ Version: 1.0.11
4
4
  Summary: Generador de PDFs usando WeasyPrint, diseñado para formularios y reportes con componentes genéricos.
5
5
  Author-email: EcosistemaUNP <ecosistema@unp.gov.co>
6
6
  License: MIT
File without changes
File without changes
File without changes