wagtail-enap-designsystem 1.2.1.144__py3-none-any.whl → 1.2.1.146__py3-none-any.whl

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.

Potentially problematic release.


This version of wagtail-enap-designsystem might be problematic. Click here for more details.

Files changed (41) hide show
  1. enap_designsystem/blocks/__init__.py +2 -0
  2. enap_designsystem/blocks/content_blocks.py +2 -1
  3. enap_designsystem/blocks/html_blocks.py +154 -77
  4. enap_designsystem/blocks/semana_blocks.py +1 -1
  5. enap_designsystem/migrations/0415_showcasecomponentesdireto_debug_mode_and_more.py +77346 -0
  6. enap_designsystem/migrations/0416_alter_showcasecomponentesdireto_debug_mode_and_more.py +33 -0
  7. enap_designsystem/migrations/0417_alter_showcasecomponentesdireto_options_and_more.py +53 -0
  8. enap_designsystem/models.py +798 -147
  9. enap_designsystem/static/enap_designsystem/blocks/accordions.css +1 -0
  10. enap_designsystem/static/enap_designsystem/blocks/apresentacao_block.css +174 -0
  11. enap_designsystem/static/enap_designsystem/blocks/cards_section.css +112 -0
  12. enap_designsystem/static/enap_designsystem/blocks/cards_titles.css +229 -0
  13. enap_designsystem/static/enap_designsystem/blocks/carousel_images.css +323 -0
  14. enap_designsystem/static/enap_designsystem/blocks/carousel_responsive.css +522 -0
  15. enap_designsystem/static/enap_designsystem/blocks/carousel_responsivo_snippet.css +294 -0
  16. enap_designsystem/static/enap_designsystem/blocks/clientes_block.css +146 -0
  17. enap_designsystem/static/enap_designsystem/blocks/semana.css +6 -5
  18. enap_designsystem/templates/enap_designsystem/base.html +8 -1
  19. enap_designsystem/templates/enap_designsystem/blocks/apresentacao_block.html +25 -29
  20. enap_designsystem/templates/enap_designsystem/blocks/apresentacao_simple_block.html +14 -15
  21. enap_designsystem/templates/enap_designsystem/blocks/banner.html +14 -1
  22. enap_designsystem/templates/enap_designsystem/blocks/banner_logo.html +15 -1
  23. enap_designsystem/templates/enap_designsystem/blocks/card_block.html +2 -2
  24. enap_designsystem/templates/enap_designsystem/blocks/cards_section.html +2 -109
  25. enap_designsystem/templates/enap_designsystem/blocks/cards_titles.html +31 -30
  26. enap_designsystem/templates/enap_designsystem/blocks/carousel.html +1 -187
  27. enap_designsystem/templates/enap_designsystem/blocks/carousel_images.html +17 -314
  28. enap_designsystem/templates/enap_designsystem/blocks/carousel_responsive.html +0 -328
  29. enap_designsystem/templates/enap_designsystem/blocks/carousel_responsivo_snippet.html +3 -197
  30. enap_designsystem/templates/enap_designsystem/blocks/clientes_block.html +9 -152
  31. enap_designsystem/templates/enap_designsystem/blocks/footer_block.html +122 -0
  32. enap_designsystem/templates/enap_designsystem/blocks/logos_simple_block.html +1 -22
  33. enap_designsystem/templates/enap_designsystem/blocks/section_block.html +1 -1
  34. enap_designsystem/templates/enap_designsystem/blocks/video_hero_banner.html +4 -10
  35. enap_designsystem/templates/enap_designsystem/pages/showcase_components.html +1168 -444
  36. enap_designsystem/templates/enap_designsystem/semana_inovacao/blocks_menu_navigation.html +2 -2
  37. {wagtail_enap_designsystem-1.2.1.144.dist-info → wagtail_enap_designsystem-1.2.1.146.dist-info}/METADATA +1 -1
  38. {wagtail_enap_designsystem-1.2.1.144.dist-info → wagtail_enap_designsystem-1.2.1.146.dist-info}/RECORD +41 -30
  39. {wagtail_enap_designsystem-1.2.1.144.dist-info → wagtail_enap_designsystem-1.2.1.146.dist-info}/WHEEL +0 -0
  40. {wagtail_enap_designsystem-1.2.1.144.dist-info → wagtail_enap_designsystem-1.2.1.146.dist-info}/licenses/LICENSE +0 -0
  41. {wagtail_enap_designsystem-1.2.1.144.dist-info → wagtail_enap_designsystem-1.2.1.146.dist-info}/top_level.txt +0 -0
@@ -29,6 +29,7 @@ from .html_blocks import (
29
29
  ApresentacaoBlock,
30
30
  ApresentacaoSimpleBlock,
31
31
  RecaptchaBlock,
32
+ FooterGenericoBlock,
32
33
  SecaoApresentacaoCardsBlock,
33
34
  LogosSimpleBlock,
34
35
  NumerosBlock
@@ -484,6 +485,7 @@ LAYOUT_STREAMBLOCKS = [
484
485
 
485
486
  # ===== SEÇÃO COMPLEXA (MANTIDA PARA COMPATIBILIDADE) =====
486
487
  ('recaptcha', RecaptchaBlock()),
488
+ ('footer_generico', FooterGenericoBlock()),
487
489
  ("enap_section", EnapSectionBlock([
488
490
  ("button", ButtonBlock()),
489
491
  ("image", ImageBlock()),
@@ -211,7 +211,8 @@ class EnapBannerBlock(blocks.StructBlock):
211
211
  )
212
212
  title = blocks.CharBlock(
213
213
  required=True,
214
- max_length=200,
214
+ default="Título do Banner",
215
+ max_length=400,
215
216
  label=_("Title"),
216
217
  help_text=_("Título do banner"),
217
218
  )
@@ -6788,27 +6788,36 @@ class CardBlock(blocks.StructBlock):
6788
6788
  help_text="Imagem que será exibida no card"
6789
6789
  )
6790
6790
 
6791
- title = blocks.CharBlock(
6791
+ title = blocks.RawHTMLBlock(
6792
6792
  label="Título",
6793
- max_length=100,
6794
6793
  required=False,
6795
6794
  help_text="Título principal do card"
6796
6795
  )
6797
6796
 
6798
6797
  subtitle = blocks.CharBlock(
6799
6798
  label="Subtítulo/Cargo",
6800
- max_length=150,
6801
6799
  required=False,
6802
6800
  help_text="Subtítulo ou cargo da pessoa (opcional)"
6803
6801
  )
6804
6802
 
6805
- description = blocks.RichTextBlock(
6803
+ description = blocks.RawHTMLBlock(
6806
6804
  label="Descrição",
6807
6805
  required=False,
6808
- help_text="Descrição adicional do card",
6809
- features=['bold', 'italic', 'link']
6806
+ help_text="Descrição adicional do card"
6810
6807
  )
6811
6808
 
6809
+ cor_titulo_cards = blocks.CharBlock(
6810
+ required=False,
6811
+ default='#FFFFFF',
6812
+ help_text="Cor do título dos cards"
6813
+ )
6814
+
6815
+ cor_texto_cards = blocks.CharBlock(
6816
+ required=False,
6817
+ default='#FFFFFF',
6818
+ help_text="Cor do subtitulo dos cards"
6819
+ )
6820
+
6812
6821
  link_url = blocks.URLBlock(
6813
6822
  label="URL do Link",
6814
6823
  required=False,
@@ -6817,12 +6826,17 @@ class CardBlock(blocks.StructBlock):
6817
6826
 
6818
6827
  link_text = blocks.CharBlock(
6819
6828
  label="Texto do Link",
6820
- max_length=50,
6821
6829
  required=False,
6822
6830
  default="Saiba mais",
6823
6831
  help_text="Texto que aparecerá no botão/link"
6824
6832
  )
6825
6833
 
6834
+ cor_link_text = blocks.CharBlock(
6835
+ required=False,
6836
+ default='#FFFFFF',
6837
+ help_text="Cor do texto do link"
6838
+ )
6839
+
6826
6840
  link_target = blocks.ChoiceBlock(
6827
6841
  label="Abrir link em",
6828
6842
  choices=[
@@ -7392,7 +7406,7 @@ class FormularioDinamicoBlock(blocks.StructBlock):
7392
7406
  )
7393
7407
 
7394
7408
  cor_botao = blocks.ChoiceBlock(
7395
- label="Cor do Título",
7409
+ label="Cor do Botão",
7396
7410
  choices=BRAND_BUTTON_CHOICES,
7397
7411
  default='#024248',
7398
7412
  required=False,
@@ -7431,8 +7445,7 @@ class ApresentacaoBlock(blocks.StructBlock):
7431
7445
  """
7432
7446
 
7433
7447
  # Cor de fundo da seção
7434
- cor_fundo = blocks.ChoiceBlock(
7435
- choices=BACKGROUND_COLOR_CHOICES,
7448
+ cor_fundo = blocks.CharBlock(
7436
7449
  required=False,
7437
7450
  default='#F8F9FA',
7438
7451
  help_text="Cor de fundo do componente"
@@ -7445,16 +7458,20 @@ class ApresentacaoBlock(blocks.StructBlock):
7445
7458
  help_text="Título principal"
7446
7459
  )
7447
7460
 
7448
- cor_titulo = blocks.ChoiceBlock(
7449
- choices=ENAP_GREEN_COLORS,
7461
+ cor_titulo = blocks.CharBlock(
7450
7462
  required=False,
7451
7463
  default='#024248',
7452
7464
  help_text="Cor do título"
7453
7465
  )
7466
+
7467
+ cor_texto = blocks.CharBlock(
7468
+ required=False,
7469
+ default='#000000',
7470
+ help_text="Cor do texto"
7471
+ )
7454
7472
 
7455
7473
  # Quadrado de conteúdo
7456
- cor_quadrado = blocks.ChoiceBlock(
7457
- choices=BACKGROUND_COLOR_CHOICES,
7474
+ cor_quadrado = blocks.CharBlock(
7458
7475
  required=False,
7459
7476
  default='#FFFFFF',
7460
7477
  help_text="Cor de fundo do quadrado de conteúdo"
@@ -7484,20 +7501,24 @@ class ApresentacaoBlock(blocks.StructBlock):
7484
7501
  help_text="Ícone do botão"
7485
7502
  )
7486
7503
 
7487
- cor_botao = blocks.ChoiceBlock(
7488
- choices=ACCENT_COLOR_CHOICES,
7504
+ cor_botao = blocks.CharBlock(
7489
7505
  required=False,
7490
7506
  default='#AD6BFC',
7491
7507
  help_text="Cor do botão"
7492
7508
  )
7493
7509
 
7494
- cor_botao_hover = blocks.ChoiceBlock(
7495
- choices=ACCENT_COLOR_CHOICES,
7510
+ cor_botao_hover = blocks.CharBlock(
7496
7511
  required=False,
7497
7512
  default='#B396FC',
7498
7513
  help_text="Cor do botão no hover"
7499
7514
  )
7500
7515
 
7516
+ cor_botao_active = blocks.CharBlock(
7517
+ required=False,
7518
+ default='#B396FC',
7519
+ help_text="Cor do botão ao apertar"
7520
+ )
7521
+
7501
7522
  class Meta:
7502
7523
  template = 'enap_designsystem/blocks/apresentacao_block.html'
7503
7524
  icon = 'doc-full'
@@ -7522,6 +7543,18 @@ class ApresentacaoCardBlock(blocks.StructBlock):
7522
7543
  help_text="Ícone do card"
7523
7544
  )
7524
7545
 
7546
+ cor_icone = blocks.CharBlock(
7547
+ required=False,
7548
+ default='#024248',
7549
+ help_text="Cor do icone"
7550
+ )
7551
+
7552
+ logo = ImageChooserBlock(
7553
+ required=False,
7554
+ help_text="Imagem do Icone (Tem prioridade sobre o Icone)"
7555
+ )
7556
+
7557
+
7525
7558
  # Título do card
7526
7559
  titulo = blocks.CharBlock(
7527
7560
  required=True,
@@ -7560,16 +7593,14 @@ class ApresentacaoSimpleBlock(blocks.StructBlock):
7560
7593
  help_text="Título principal"
7561
7594
  )
7562
7595
 
7563
- cor_titulo = blocks.ChoiceBlock(
7564
- choices=ENAP_GREEN_COLORS + [('#FFFFFF', 'Branco (#FFFFFF)')],
7596
+ cor_titulo = blocks.CharBlock(
7565
7597
  required=False,
7566
7598
  default='#FFFFFF',
7567
7599
  help_text="Cor do título"
7568
7600
  )
7569
7601
 
7570
7602
  # Quadrado de conteúdo
7571
- cor_quadrado = blocks.ChoiceBlock(
7572
- choices=BACKGROUND_COLOR_CHOICES,
7603
+ cor_quadrado = blocks.CharBlock(
7573
7604
  required=False,
7574
7605
  default='#FFFFFF',
7575
7606
  help_text="Cor de fundo do quadrado de conteúdo"
@@ -7581,8 +7612,7 @@ class ApresentacaoSimpleBlock(blocks.StructBlock):
7581
7612
  help_text="Conteúdo descritivo (rich text)"
7582
7613
  )
7583
7614
 
7584
- cor_texto = blocks.ChoiceBlock(
7585
- choices=ENAP_GREEN_COLORS,
7615
+ cor_texto = blocks.CharBlock(
7586
7616
  required=False,
7587
7617
  default='#024248',
7588
7618
  help_text="Cor do texto do conteúdo"
@@ -7626,29 +7656,18 @@ class SecaoApresentacaoCardsBlock(blocks.StructBlock):
7626
7656
  Seção de apresentação com título, conteúdo e grid de cards
7627
7657
  Componente do Design System ENAP
7628
7658
  """
7629
-
7630
- background_image_fundo_bg = StreamField(
7631
- [('background_image_stream', ImageChooserBlock(
7632
- label="Imagem de Fundo",
7633
- help_text="Selecione uma imagem de fundo para o formulário"
7634
- ))],
7635
- verbose_name="Imagem de Fundo",
7636
- use_json_field=True,
7637
- max_num=1,
7638
- blank=True,
7639
- help_text="Adicione uma imagem de fundo para o formulário"
7659
+ imagem_fundo = ImageChooserBlock(
7660
+ required=False,
7661
+ help_text="Imagem de fundo"
7640
7662
  )
7641
-
7642
- # Título
7643
- cor_fundo = blocks.ChoiceBlock(
7644
- choices=BACKGROUND_COLOR_CHOICES,
7663
+
7664
+ cor_fundo = blocks.CharBlock(
7645
7665
  required=False,
7646
7666
  default='#6A1B9A',
7647
7667
  help_text="Cor de fundo do componente"
7648
7668
  )
7649
7669
 
7650
- cor_fundo_cards = blocks.ChoiceBlock(
7651
- choices=BACKGROUND_COLOR_CHOICES,
7670
+ cor_fundo_cards = blocks.CharBlock(
7652
7671
  required=False,
7653
7672
  default='#6A1B9A',
7654
7673
  help_text="Cor de fundo dos cards"
@@ -7665,26 +7684,11 @@ class SecaoApresentacaoCardsBlock(blocks.StructBlock):
7665
7684
  help_text="Subtítulo da seção"
7666
7685
  )
7667
7686
 
7668
- cor_titulo = blocks.ChoiceBlock(
7669
- choices=ENAP_GREEN_COLORS,
7687
+ cor_titulo = blocks.CharBlock(
7670
7688
  required=False,
7671
7689
  default='#FFFFFF',
7672
7690
  help_text="Cor do título"
7673
7691
  )
7674
-
7675
- cor_titulo_cards = blocks.ChoiceBlock(
7676
- choices=ENAP_GREEN_COLORS,
7677
- required=False,
7678
- default='#FFFFFF',
7679
- help_text="Cor do título dos cards"
7680
- )
7681
-
7682
- cor_texto_cards = blocks.ChoiceBlock(
7683
- choices=ENAP_GREEN_COLORS,
7684
- required=False,
7685
- default='#FFFFFF',
7686
- help_text="Cor do texto dos cards"
7687
- )
7688
7692
 
7689
7693
  link_url = blocks.URLBlock(
7690
7694
  label="URL do Link",
@@ -7700,15 +7704,25 @@ class SecaoApresentacaoCardsBlock(blocks.StructBlock):
7700
7704
  help_text="Texto que aparecerá no botão/link"
7701
7705
  )
7702
7706
 
7703
- cor_botao = blocks.ChoiceBlock(
7704
- choices=ENAP_GREEN_COLORS,
7707
+ cor_botao = blocks.CharBlock(
7705
7708
  required=False,
7706
7709
  default='#FFFFFF',
7707
7710
  help_text="Cor do botão"
7708
7711
  )
7712
+
7713
+ cor_botao_hover = blocks.CharBlock(
7714
+ required=False,
7715
+ default='#FFFFFF',
7716
+ help_text="Cor do botão no hover"
7717
+ )
7718
+
7719
+ cor_botao_active = blocks.CharBlock(
7720
+ required=False,
7721
+ default='#FFFFFF',
7722
+ help_text="Cor do botão ao apertar"
7723
+ )
7709
7724
 
7710
- cor_botao_texto = blocks.ChoiceBlock(
7711
- choices=ENAP_GREEN_COLORS,
7725
+ cor_botao_texto = blocks.CharBlock(
7712
7726
  required=False,
7713
7727
  default='#FFFFFF',
7714
7728
  help_text="Cor do texto do botão"
@@ -7809,9 +7823,79 @@ class RecaptchaBlock(StructBlock):
7809
7823
  label = 'reCAPTCHA'
7810
7824
  help_text = 'Componente de verificação reCAPTCHA'
7811
7825
 
7826
+ class LinkBlock(blocks.StructBlock):
7827
+ """
7828
+ Bloco de titulo e links
7829
+ """
7830
+
7831
+ title = blocks.RawHTMLBlock(
7832
+ label="Título",
7833
+ required=False,
7834
+ help_text="Texto do link",
7835
+ default="Título"
7836
+ )
7837
+
7838
+ link_url = blocks.URLBlock(
7839
+ label="URL do Link",
7840
+ required=False,
7841
+ help_text="Link para página",
7842
+ default="https://enap.gov.br/"
7843
+ )
7812
7844
 
7845
+ class Meta:
7846
+ icon = 'user'
7847
+ label = 'Links'
7813
7848
 
7849
+ class FooterGenericoBlock(StructBlock):
7850
+ """Block para footer generico"""
7851
+ cor_fundo = CharBlock(required=False, label="Cor do fundo", default="#525258")
7852
+ cor_texto = CharBlock(required=False, label="Cor dos textos", default="#ffffff")
7853
+ logo = ImageChooserBlock(label="Logo", required=False)
7854
+ texto_logo = blocks.RawHTMLBlock(label="Texto do Evento", help_text="Texto que fica abaixo da logo.", required=False)
7855
+
7856
+ titulo_1 = blocks.CharBlock(
7857
+ required=False,
7858
+ max_length=200,
7859
+ help_text="Título da primeira seção"
7860
+ )
7861
+
7862
+ links_1 = blocks.StreamBlock([
7863
+ ('texto_secao1', LinkBlock()),
7864
+ ],
7865
+ required=False,
7866
+ help_text="Links da primeira seção"
7867
+ )
7868
+
7869
+ titulo_2 = blocks.CharBlock(
7870
+ required=False,
7871
+ max_length=200,
7872
+ help_text="Título da segunda seção"
7873
+ )
7874
+
7875
+ links_2 = blocks.StreamBlock([
7876
+ ('texto_secao2', LinkBlock()),
7877
+ ],
7878
+ required=False,
7879
+ help_text="Links da segunda seção"
7880
+ )
7881
+
7882
+ titulo_3 = blocks.CharBlock(
7883
+ required=False,
7884
+ max_length=200,
7885
+ help_text="Título da terceira seção"
7886
+ )
7887
+
7888
+ links_3 = blocks.StreamBlock([
7889
+ ('texto_secao3', LinkBlock()),
7890
+ ],
7891
+ required=False,
7892
+ help_text="Links da terceira seção"
7893
+ )
7814
7894
 
7895
+ class Meta:
7896
+ template = 'enap_designsystem/blocks/footer_block.html'
7897
+ icon = 'list-ul'
7898
+ label = 'Footer'
7815
7899
 
7816
7900
 
7817
7901
 
@@ -7836,8 +7920,7 @@ class LogosSimpleBlock(blocks.StructBlock):
7836
7920
  """
7837
7921
 
7838
7922
  # Background
7839
- cor_fundo = blocks.ChoiceBlock(
7840
- choices=BACKGROUND_COLOR_CHOICES,
7923
+ cor_fundo = blocks.CharBlock(
7841
7924
  required=False,
7842
7925
  default='#6A1B9A', # Roxo como na imagem
7843
7926
  help_text="Cor de fundo do componente"
@@ -7850,19 +7933,17 @@ class LogosSimpleBlock(blocks.StructBlock):
7850
7933
  help_text="Título principal da seção"
7851
7934
  )
7852
7935
 
7853
- cor_titulo = blocks.ChoiceBlock(
7854
- choices=ENAP_GREEN_COLORS + [('#FFFFFF', 'Branco (#FFFFFF)')],
7936
+ cor_titulo = blocks.CharBlock(
7855
7937
  required=False,
7856
7938
  default='#FFFFFF',
7857
7939
  help_text="Cor do título"
7858
7940
  )
7859
7941
 
7860
7942
  # Quadrado de conteúdo
7861
- cor_fundo_conteudo = blocks.ChoiceBlock(
7862
- choices=BACKGROUND_COLOR_CHOICES,
7943
+ cor_fundo_conteudo = blocks.CharBlock(
7863
7944
  required=False,
7864
7945
  default='#FFFFFF',
7865
- help_text="Cor de fundo do quadrado de conteúdo"
7946
+ help_text="Cor de fundo do quadrado"
7866
7947
  )
7867
7948
 
7868
7949
  # Grid de logos/cards
@@ -7974,8 +8055,7 @@ class NumerosBlock(blocks.StructBlock):
7974
8055
  """
7975
8056
 
7976
8057
  # Background
7977
- cor_fundo = blocks.ChoiceBlock(
7978
- choices=BACKGROUND_COLOR_CHOICES,
8058
+ cor_fundo = blocks.CharBlock(
7979
8059
  required=False,
7980
8060
  default='#F8F9FA', # Cinza claro ENAP
7981
8061
  help_text="Cor de fundo do componente"
@@ -7988,23 +8068,20 @@ class NumerosBlock(blocks.StructBlock):
7988
8068
  help_text="Título principal da seção (ex: Nossos números)"
7989
8069
  )
7990
8070
 
7991
- cor_titulo = blocks.ChoiceBlock(
7992
- choices=ENAP_GREEN_COLORS,
8071
+ cor_titulo = blocks.CharBlock(
7993
8072
  required=False,
7994
8073
  default='#024248',
7995
8074
  help_text="Cor do título"
7996
8075
  )
7997
8076
 
7998
8077
  # Quadrado de conteúdo
7999
- cor_fundo_conteudo = blocks.ChoiceBlock(
8000
- choices=BACKGROUND_COLOR_CHOICES,
8078
+ cor_fundo_conteudo = blocks.CharBlock(
8001
8079
  required=False,
8002
8080
  default='#FFFFFF',
8003
8081
  help_text="Cor de fundo do quadrado de conteúdo"
8004
8082
  )
8005
8083
 
8006
- cor_line = blocks.ChoiceBlock(
8007
- choices=BACKGROUND_COLOR_CHOICES,
8084
+ cor_line = blocks.CharBlock(
8008
8085
  default='#FFF0D9',
8009
8086
  help_text="Cor do da linha debaixo",
8010
8087
  required=False
@@ -8070,7 +8147,7 @@ class VideoHeroBannerBlock(blocks.StructBlock):
8070
8147
  help_text="Upload direto do arquivo de vídeo (MP4, WebM, etc.)"
8071
8148
  )
8072
8149
 
8073
- titulo = blocks.CharBlock(required=False, help_text="Título principal.")
8150
+ titulo = blocks.RawHTMLBlock(required=False, help_text="Título principal.")
8074
8151
 
8075
8152
  subtitulo = blocks.RichTextBlock(required=False, help_text="Subtítulo com suporte a formatação.")
8076
8153
 
@@ -1298,7 +1298,7 @@ class MenuNavigationBlock(blocks.StructBlock):
1298
1298
  help_text="Imagem de logo da esquerda"
1299
1299
  )
1300
1300
 
1301
- cor_fundo = blocks.ChoiceBlock(
1301
+ cor_fundo = blocks.CharBlock(
1302
1302
  choices=BRAND_BG_CHOICES,
1303
1303
  default='#132929',
1304
1304
  help_text="Cor de fundo do menu"