Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Criar esquema para registrar dispositivos read only #900

Closed
fragomeni opened this issue May 28, 2024 · 2 comments
Closed

Criar esquema para registrar dispositivos read only #900

fragomeni opened this issue May 28, 2024 · 2 comments
Assignees

Comments

@fragomeni
Copy link
Collaborator

fragomeni commented May 28, 2024

Deve ser possível bloquear o emendamento de artigos (com seus dispositivos subordinados) ao editar uma emenda.

Adicionar o parâmetro dispositivosBloqueados na inicialização da edição (ou ao abrir uma emenda). Esse parâmetro é uma lista de lexml-ids dos artigos a serem bloqueados, podendo endereçar artigos da proposição (MP) ou de normas alteradas pela proposição.

Ver commit 95730e6

Artigos bloqueados devem apresentar diferenciação visual que remeta à ideia de desabilitação da edição além de uma mensagem informativa (abaixo do caput do artigo) com o texto abaixo:

"Artigo com estrutura não suportada pelo editor de emendas. Para alterações neste artigo, utilize o modo de emenda de texto livre."

Utilizar o mesmo modelo de mensagem padrão de erro contextual:

Image

Para esses artigos não devem ser apresentados os seguintes menus de contexto:

  • Adicionar parágrafo
  • Adicionar inciso
  • Suprimir
  • Linha pontilhada (usado em alteração de norma)

O usuário poderá navegar com o cursor dentro do texto do dispositivo, mas não poderá alterar o texto.

A tecla "Enter" dentro do dispositivo bloqueado não deverá funcionar.

Novas orientações

  • O atributo dispositivosBloqueados, da classe LexmlEmendaParametrosEdicao, deve aceitar um array que pode conter elementos do tipo string ou do tipo DispositivoBloqueado.
export interface DispositivoBloqueado {
  lexmlId: string;
  bloquearFilhos?: boolean;
  motivoBloqueio?: string;
}

export class LexmlEmendaParametrosEdicao {
...
   dispositivosBloqueados?: Array<string | DispositivoBloqueado>;
...
}
  • Qualquer dispositivo poderá ser bloqueado
  • Por padrão, os filhos do dispositivo bloqueado também ficam bloqueados. No exemplo abaixo, apenas o 'art39' não terá os dispositivos filhos bloqueados.
const dispositivosBloqueados: Array<string | DispositivoBloqueado> = [
  'art34',
  'art35',
  {
    lexmlId: 'art36',
  },
  {
    lexmlId: 'art37',
    motivoBloqueio: 'Artigo possui estrutura fora da padrão da LC 95/98',
  },
  {
    lexmlId: 'art38',
    bloquearFilhos: true,
  },
  {
    lexmlId: 'art39',
    bloquearFilhos: false,
  },
  'art70',
  'art72_par1',
  {
    lexmlId: 'art80_par2',
    bloquearFilhos: true,
  },
];
  • Menus e/ou ações que não devem estar disponíveis para qualquer dispositivo bloqueado:
    • Adicionar filhos
    • Suprimir (o artigo bloqueado)
    • Linha pontilhada (usado em alteração de norma)
  • Os dispositivos que possuírem pai bloqueado não devem apresentar o menu de ações, bem como as ações não devem ser realizadas via teclas de atalho.
@arthurcordeiro
Copy link
Collaborator

arthurcordeiro commented Jul 4, 2024

feat: Cria leiaute para registrar dispositivos read only #900
22553ba
2271c79

Image

@arthurcordeiro
Copy link
Collaborator

manter a borda verde nos dispositivos selecionados

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants