Coder Social home page Coder Social logo

lexml / lexml-eta Goto Github PK

View Code? Open in Web Editor NEW
12.0 10.0 7.0 18.46 MB

O Editor de Textos Articulados é um web component especializado em edição de dispositivos de normas e proposições.

License: GNU General Public License v2.0

JavaScript 1.39% TypeScript 98.09% CSS 0.53% Shell 0.01%
javascript typescript webcomponents lit-element governo legislativo legislacao direito legismatica

lexml-eta's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lexml-eta's Issues

Permitir a modificação de tipo de dispositivo não identificado

Quando é carregado um texto articulado, o parser pode não identificar determinado dispositivo, o que faz com que seja classificado como "dispositivo genérico".
O editor deve oferecer ao usuário a ação de conversão do dispositivo para um tipo admitido aquele contexto.
Assim, por exemplo, se o texto apresentar uma alínea abaixo de um artigo, deve-se oferecer a possibilidade de sua transformação em inciso de caput ou parágrafo, dependendo de sua posição.

Retornar mensagens de alerta

Atualmente, as mensagens de validação de dispositivo. Há situações em que se torna necessário apresentar mensagens gerais, como erro e avisos.

Reordenar dispositivos

Permitir que seja alterada a posição de um dispositivo dentro de uma mesma hierarquia.
Ex: mover um Item 1 para a última posição dentre os itens da mesma alínea, renumerando automaticamente os dispositivos afetados pela mudança.
Deve-se permitir o uso de teclas de atalho.

Restringir formatação do texto de dispositivos ao colar

Ao colar um texto em um dispositivo do tipo artigo ou dispositivo de artigo deve-se aceitar apenas a formatação que pode ser aplicada pelo próprio lexml-eta: negrito, itálico, subscrito, sobrescrito e link para remissão externa. Demais formatações html devem ser desconsideradas.

No caso de agrupadores de artigo, colar sempre apenas texto.

Como exemplo de comportamento comportamento indesejável, experimente copiar o texto de um dispositivo original para dentro de um dispositivo adicionado no modo emenda. O texto colado ficará na cor cinza em vez de verde, como inciso I-A da imagem abaixo:

image

Permitir transformar o tipo do dispositivo a partir de teclas de atalho

Atualmente, é permitida a transformação do tipo de dispositivo, apenas através de ações no menu contextual. A ideia é que se permita efetuar essas modificações através do uso de combinações de teclas.
Assim, por exemplo, um inciso poderia ser transformado em alínea com uma combinação de teclas.

Solicitar informar situação na norma vigente para dispositivos adicionados a blocos de alteração.

Para elaboração do comando de emendas, nos casos de inclusão de dispositivos em blocos de alteração, é necessário que o usuário informe se aquele dispositivo adicionado já existe ou não na norma que está sendo alterada.

Esta informação está registrada no atributo Dispositivo.existeNaNormaAlterada: boolean.

No popup de numeração do dispositivo adicionar a seguinte questão abaixo do input:

O dispositivo já existe na norma a ser alterada?
O Sim
O Não

Sem valor default.

Tratar dispositivos de alteração na operação de abrir emenda.

Considerar o tipo de dispositivo "Alteracao" (tipo salvo) em vez de "Articulacao" (tipo no modelo do editor) na hora de abrir uma emenda.

Tratar os atributos relacionados a blocos de alteração na operação de abrir emenda. Ao abrir uma emenda, recuperar a situação indicada pelos atributos urnNormaAlterada, textoOmitido, abreAspas, fechaAspas, notaAlteracao e existeNaNormaAlterada.

Ao salvar, são removidas as aspas de abertura (no rótulo) e de fechamento com a nota de alteração (no final do texto do último dispositivo do artigo). Esta operação deve ser desfeita na emenda aberta a partir dos atributos abreAspas, fechaAspas e notaAlteracao.

O atributo urnNormaAlterada deve ser recuperado no bloco de alteração e o atributo existeNaNormaAlterada em dispositivos de alteração, quando o atributo existir no arquivo.

export class DispositivoEmendaModificado extends DispositivoEmenda {
  ...
  textoOmitido?: boolean;
  abreAspas?: boolean;
  fechaAspas?: boolean;
  notaAlteracao?: '(NR)' | '(AC)';
}

export class DispositivoEmendaAdicionado extends DispositivoEmendaModificado {
  ...
  urnNormaAlterada?: string;
  existeNaNormaAlterada?: boolean;
}

Exemplo de emenda com bloco de alteração:

Arquivo json - emenda-com-disp-alteracao.json.txt

image

Destacar dispositivo genérico

Atualmente um dispositivo não reconhecido pela norma vigente é classificado como dispositivo genérico. O editor distingue esse tipo mas não apresenta essa informação de maneira mais destacada

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.