@thibezer/ui-components-kit 2.11.1 → 2.12.2

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 (47) hide show
  1. package/CHANGELOG.md +96 -21
  2. package/dist/alvo-digitavel-CzCvNVQ3.js +23 -0
  3. package/dist/alvo-digitavel-DbH0hYFf.cjs +1 -0
  4. package/dist/camadas.cjs +89 -106
  5. package/dist/camadas.js +1030 -935
  6. package/dist/canvas.cjs +27 -27
  7. package/dist/canvas.js +801 -819
  8. package/dist/components/ui-camadas/camadas-arvore-renderer.d.ts +3 -0
  9. package/dist/components/ui-camadas/camadas-colecao.d.ts +1 -1
  10. package/dist/components/ui-camadas/camadas-drop-ops.d.ts +3 -0
  11. package/dist/components/ui-camadas/camadas-eventos-camadas.d.ts +2 -0
  12. package/dist/components/ui-camadas/camadas-hierarquia.d.ts +12 -2
  13. package/dist/components/ui-camadas/camadas-host.d.ts +6 -0
  14. package/dist/components/ui-camadas/camadas-metricas.d.ts +2 -1
  15. package/dist/components/ui-camadas/camadas-rodape.d.ts +5 -0
  16. package/dist/components/ui-camadas/camadas-selecao.d.ts +2 -2
  17. package/dist/components/ui-camadas/tipos.d.ts +1 -0
  18. package/dist/components/ui-camadas/ui-camadas.d.ts +3 -0
  19. package/dist/components/ui-tabela-propriedades/editores-basicos.d.ts +4 -1
  20. package/dist/components/ui-tabela-propriedades/propriedades-dom-utils.d.ts +2 -0
  21. package/dist/components/ui-tabela-propriedades/propriedades-gerenciador-valores.d.ts +3 -0
  22. package/dist/components/ui-tabela-propriedades/propriedades-painel-controles.d.ts +1 -0
  23. package/dist/components/ui-tabela-propriedades/tipos.d.ts +14 -0
  24. package/dist/components/ui-tabela-propriedades/ui-tabela-propriedades.d.ts +20 -0
  25. package/dist/components/ui-texto-editavel/index.d.ts +2 -0
  26. package/dist/components/ui-texto-editavel/texto-editavel-teclado.d.ts +12 -0
  27. package/dist/components/ui-texto-editavel/texto-editavel-template.d.ts +2 -0
  28. package/dist/components/ui-texto-editavel/tipos.d.ts +14 -0
  29. package/dist/components/ui-texto-editavel/ui-texto-editavel.d.ts +82 -0
  30. package/dist/custom-elements.json +25342 -21856
  31. package/dist/data.cjs +1 -1
  32. package/dist/data.js +79 -72
  33. package/dist/index.cjs +1 -1
  34. package/dist/index.d.ts +4 -3
  35. package/dist/index.js +198 -189
  36. package/dist/register.cjs +1 -1
  37. package/dist/register.js +2 -2
  38. package/dist/tabela.cjs +1 -1
  39. package/dist/tabela.js +71 -64
  40. package/dist/tipos-elementos.d.ts +137 -6
  41. package/dist/tipos-react.d.ts +6 -0
  42. package/dist/tipos-vue.d.ts +125 -6
  43. package/dist/ui-linha-BxhEBn27.js +749 -0
  44. package/dist/ui-linha-CcalUBDw.cjs +38 -0
  45. package/dist/ui-tabela-propriedades-CyPyKXtB.js +3013 -0
  46. package/dist/ui-tabela-propriedades-DqvPilK_.cjs +142 -0
  47. package/package.json +1 -1
@@ -12,6 +12,9 @@ export interface ParametrosRenderArvore {
12
12
  editingLayerId: string | null;
13
13
  editingFeatureId: string | null;
14
14
  searchQuery: string;
15
+ titulo?: string;
16
+ mostrarBusca?: boolean;
17
+ limitesPorCamada?: ReadonlyMap<string, number>;
15
18
  limiteFeicoesPorCamada?: number;
16
19
  mostrarBotaoColapsar?: boolean;
17
20
  }
@@ -17,7 +17,7 @@ export interface HostColecao {
17
17
  solicitarRenderizacao(): void;
18
18
  }
19
19
  /** Transforma a árvore (`children`) em lista plana, herdando `parentId` do pai quando não informado. */
20
- export declare function achatarCamadas(camadas: CamadaItem[], parentId?: string | null): CamadaItem[];
20
+ export declare function achatarCamadas(camadas: CamadaItem[], parentId?: string | null, visitados?: Set<string>): CamadaItem[];
21
21
  export declare function definirCamadasNoHost(host: HostColecao, camadas: CamadaItem[], feicoes?: FeicaoItem[]): void;
22
22
  export declare function definirFeicoesNoHost(host: HostColecao, feicoes: FeicaoItem[]): void;
23
23
  export declare function adicionarCamadaNoHost(host: HostColecao, camada: CamadaItem): void;
@@ -8,9 +8,12 @@ export type ResultadoMoverCamada = {
8
8
  tipo: 'hierarquia';
9
9
  camada: CamadaItem;
10
10
  novoParentId: string;
11
+ parentAnteriorId: string | null;
11
12
  } | {
12
13
  tipo: 'ordem';
13
14
  camada: CamadaItem;
15
+ parentAnteriorId: string | null;
16
+ novoParentId: string | null;
14
17
  };
15
18
  /**
16
19
  * Move `movidaId` em relação a `alvoId`. `dentro` torna-a subcamada (recusa ciclos); `acima`/`abaixo`
@@ -1,2 +1,4 @@
1
1
  import { CamadasHostCompleto } from './camadas-host';
2
2
  export declare function conectarEventosCamadas(host: CamadasHostCompleto, shadow: ShadowRoot): void;
3
+ /** Mantém o ícone do botão "expandir/recolher todas" coerente com o estado individual das camadas */
4
+ export declare function atualizarIconeExpansaoGlobal(host: CamadasHostCompleto, shadow: ShadowRoot): void;
@@ -1,10 +1,20 @@
1
- import { CamadaItem } from './tipos';
1
+ import { CamadaItem, FeicaoItem } from './tipos';
2
2
  export interface CamadaNodoHierarquico {
3
3
  camada: CamadaItem;
4
4
  depth: number;
5
5
  subcamadas: CamadaNodoHierarquico[];
6
6
  }
7
7
  /**
8
- * Organiza a lista de camadas em uma árvore hierárquica de nós baseada em parentId ou children
8
+ * Organiza a lista de camadas em uma árvore hierárquica de nós baseada em parentId ou children.
9
+ * Quebra ciclos de `parentId` promovendo o primeiro elo do ciclo a raiz, para que nenhuma camada suma
10
+ * nem cause estouro de pilha.
9
11
  */
10
12
  export declare function construirHierarquiaCamadas(camadas: CamadaItem[]): CamadaNodoHierarquico[];
13
+ /**
14
+ * Retorna o conjunto de IDs da camada informada e de todas as suas subcamadas descendentes.
15
+ */
16
+ export declare function obterIdsSubarvoreCamada(camadas: CamadaItem[], camadaId: string): Set<string>;
17
+ /**
18
+ * Retorna todas as feições pertencentes à camada e às suas subcamadas descendentes.
19
+ */
20
+ export declare function obterFeicoesDoEscopoCamada(camadas: CamadaItem[], feicoes: FeicaoItem[], camadaId: string): FeicaoItem[];
@@ -1,10 +1,13 @@
1
1
  import { UICamadasHost } from './camadas-drag-drop';
2
2
  export interface CamadasHostCompleto extends UICamadasHost {
3
3
  expandedLayers: Set<string>;
4
+ expandedFeatureLimits: Map<string, number>;
4
5
  selectedFeatureIds: Set<string>;
5
6
  lastClickedFeatureId: string | null;
6
7
  activeSettingsLayerId: string | null;
7
8
  searchQuery: string;
9
+ readonly titulo: string;
10
+ readonly mostrarBusca: boolean;
8
11
  salvarLembrancaEstado(): void;
9
12
  agendarSalvarLembranca(): void;
10
13
  colapsar(emitirEvento?: boolean): void;
@@ -14,9 +17,12 @@ export interface CamadasHostCompleto extends UICamadasHost {
14
17
  selecionarMapaBase(id: string, emitirEvento?: boolean): void;
15
18
  alternarMapasBaseRecolhido(emitirEvento?: boolean): void;
16
19
  selecionarFeicao(feicaoId: string, acumular?: boolean, intervalo?: boolean, emitirEvento?: boolean): void;
20
+ selecionarFeicoes(ids: string[], emitirEvento?: boolean): void;
17
21
  limparSelecao(emitirEvento?: boolean): void;
18
22
  notificarMudancaSelecao(): void;
19
23
  alternarVisibilidadeTodas(emitirEvento?: boolean): void;
24
+ alternarExpansao(camadaId: string): void;
25
+ incrementarLimiteFeicoes(camadaId: string): void;
20
26
  expandirTodas(): void;
21
27
  colapsarTodas(): void;
22
28
  removerCamada(camadaId: string): void;
@@ -8,7 +8,8 @@ export declare function calcularDistanciaPontos(p1: [number, number], p2: [numbe
8
8
  */
9
9
  export declare function calcularComprimentoLinha(coords: unknown): number;
10
10
  /**
11
- * Calcula a área de um único anel fechado de coordenadas em m² usando fórmula esférica
11
+ * Calcula a área de um único anel fechado de coordenadas em m² usando a Fórmula de Gauss (Shoelace)
12
+ * com projeção geodésica local na esfera WGS84.
12
13
  */
13
14
  export declare function calcularAreaAnelSimples(coords: unknown): number;
14
15
  /**
@@ -4,4 +4,9 @@ import { CamadaItem, FeicaoItem } from './tipos';
4
4
  * a hierarquia visual com recuo e ícones de pasta
5
5
  */
6
6
  export declare function formatarOpcoesCamadasHierarquicas(camadas: CamadaItem[]): string;
7
+ /** Ícone + texto acessível do contador do rodapé (camadas ou feições selecionadas). */
8
+ export declare function rotuloRodape(totalCamadas: number, totalSelecionadas: number): {
9
+ icone: string;
10
+ texto: string;
11
+ };
7
12
  export declare function renderizarRodapeAcoes(camadas: CamadaItem[], feicoes: FeicaoItem[], selecionadasIds: Set<string>): string;
@@ -22,9 +22,9 @@ export interface ResultadoBuscaCamadas {
22
22
  export declare function filtrarCamadasPorBusca(camadas: CamadaItem[], feicoes: FeicaoItem[], termo: string): ResultadoBuscaCamadas | null;
23
23
  /**
24
24
  * IDs de feições efetivamente exibidas na árvore, na ordem da tela:
25
- * respeita camadas expandidas (todas, durante uma busca), o filtro de busca e o limite de linhas.
25
+ * respeita hierarquia da árvore, camadas expandidas (e seus ancestrais), o filtro de busca e o limite de linhas.
26
26
  */
27
- export declare function obterIdsVisiveisFeicoes(camadas: CamadaItem[], feicoes: FeicaoItem[], camadasExpandidas: Set<string>, termoBusca?: string, limitePorCamada?: number): string[];
27
+ export declare function obterIdsVisiveisFeicoes(camadas: CamadaItem[], feicoes: FeicaoItem[], camadasExpandidas: Set<string>, termoBusca?: string, limitePorCamada?: number, limitesCustomizados?: ReadonlyMap<string, number>): string[];
28
28
  /**
29
29
  * Calcula a nova seleção após clique (simples, Ctrl/Cmd acumulado ou Shift em intervalo).
30
30
  * Retorna null se a feição clicada não estiver visível.
@@ -92,6 +92,7 @@ export interface DetalheEventoRenomearCamada {
92
92
  export interface DetalheEventoMoverHierarquiaCamada {
93
93
  camadaId: string;
94
94
  novoParentId: string | null;
95
+ parentAnteriorId?: string | null;
95
96
  camada?: CamadaItem;
96
97
  }
97
98
  export interface DetalheEventoFeicao {
@@ -20,6 +20,7 @@ export declare class UICamadas extends SafeHTMLElement implements CamadasHostCom
20
20
  feicoes: FeicaoItem[];
21
21
  mapasBase: MapaBaseItem[];
22
22
  expandedLayers: Set<string>;
23
+ expandedFeatureLimits: Map<string, number>;
23
24
  selectedFeatureIds: Set<string>;
24
25
  lastClickedFeatureId: string | null;
25
26
  activeSettingsLayerId: string | null;
@@ -102,6 +103,8 @@ export declare class UICamadas extends SafeHTMLElement implements CamadasHostCom
102
103
  limparSelecao(emitirEvento?: boolean): void;
103
104
  expandirTodas(): void;
104
105
  colapsarTodas(): void;
106
+ alternarExpansao(camadaId: string): void;
107
+ incrementarLimiteFeicoes(camadaId: string): void;
105
108
  alternarVisibilidadeTodas(emitirEvento?: boolean): void;
106
109
  colapsar(emitirEvento?: boolean): void;
107
110
  expandir(emitirEvento?: boolean): void;
@@ -1,5 +1,8 @@
1
1
  import { ItemPropriedade, ContextoEditorPropriedade } from './tipos';
2
- export declare function criarEditorReadonly(valorAtual: any, obterTextoMisto?: () => string): HTMLElement;
2
+ export declare function obterCasasDecimais(prop: ItemPropriedade): number | undefined;
3
+ export declare function obterPassoNumerico(prop: ItemPropriedade, casas?: number): number;
4
+ export declare function aplicarLimitesNumericos(valor: number, prop: ItemPropriedade): number;
5
+ export declare function criarEditorReadonly(valorAtual: any, obterTextoMisto?: () => string, prop?: ItemPropriedade): HTMLElement;
3
6
  export declare function criarEditorBooleano(categoriaId: string, prop: ItemPropriedade, valorAtual: any, ctx: ContextoEditorPropriedade): HTMLElement;
4
7
  export declare function criarEditorSelecao(categoriaId: string, prop: ItemPropriedade, valorAtual: any, ctx: ContextoEditorPropriedade): HTMLElement;
5
8
  export declare function criarEditorAcao(categoriaId: string, prop: ItemPropriedade, ctx: ContextoEditorPropriedade): HTMLElement;
@@ -22,6 +22,8 @@ export declare function sincronizarSelect(select: HTMLSelectElement, valor: any,
22
22
  */
23
23
  export declare function marcarSelectMisto(select: HTMLSelectElement, texto: string): void;
24
24
  export declare function focarProximoEditor(shadow: ShadowRoot, atual: HTMLElement): void;
25
+ export declare function focarEditorAnterior(shadow: ShadowRoot, atual: HTMLElement): void;
26
+ export declare function focarPrimeiroEditor(shadow: ShadowRoot): void;
25
27
  export declare function expandirTodasCategorias(shadow: ShadowRoot, categorias: CategoriaPropriedades[]): void;
26
28
  export declare function colapsarTodasCategorias(shadow: ShadowRoot, categorias: CategoriaPropriedades[]): void;
27
29
  export declare function alternarCategoria(shadow: ShadowRoot, host: HTMLElement, categorias: CategoriaPropriedades[], idCategoria: string): void;
@@ -22,8 +22,11 @@ export declare class GerenciadorValoresPropriedades {
22
22
  getValoresOriginais(): Record<string, any>;
23
23
  setValores(novosValores: Record<string, any>): void;
24
24
  obterValor(propId: string): any;
25
+ obterValorOriginal(propId: string): any;
25
26
  /** Alteração programática: atualiza o editor na tela; não emite se o valor não mudou. */
26
27
  definirValor(propId: string, novoValor: any, emitirEvento?: boolean): void;
28
+ /** Restaura uma propriedade individual ao seu valor original (antes da edição). */
29
+ redefinirValor(propId: string, emitirEvento?: boolean): void;
27
30
  /** Alteração feita pelo usuário num editor. Em modo manual só emite no Aplicar. */
28
31
  registrarAlteracao(categoriaId: string, propId: string, novoValor: any): void;
29
32
  aplicar(): void;
@@ -10,6 +10,7 @@ export interface ContextoPainelControles {
10
10
  onAlternarDensidade?: () => void;
11
11
  onAlternarFlutuante?: () => void;
12
12
  onAlternarColapsoHorizontal?: () => void;
13
+ onFocarPrimeiroEditor?: () => void;
13
14
  }
14
15
  export declare function conectarPainelControles(ctx: ContextoPainelControles): void;
15
16
  export declare function sincronizarPainelControles(shadow: ShadowRoot, host: HTMLElement): void;
@@ -16,6 +16,16 @@ export interface ItemPropriedade {
16
16
  misto?: boolean;
17
17
  unidade?: string;
18
18
  casasDecimais?: number;
19
+ /** Alias para `casasDecimais`. */
20
+ precisao?: number;
21
+ /** Passo de incremento para teclado (ArrowUp/ArrowDown) e scrubber. */
22
+ passo?: number;
23
+ /** Alias para `passo`. */
24
+ step?: number;
25
+ /** Limite numérico mínimo permitido. */
26
+ min?: number;
27
+ /** Limite numérico máximo permitido. */
28
+ max?: number;
19
29
  opcoes?: OpcaoPropriedade[];
20
30
  placeholder?: string;
21
31
  somenteLeitura?: boolean;
@@ -28,6 +38,9 @@ export interface CategoriaPropriedades {
28
38
  id: string;
29
39
  titulo: string;
30
40
  aberto?: boolean;
41
+ /** Alias para `aberto`. */
42
+ aberta?: boolean;
43
+ icone?: string;
31
44
  propriedades: ItemPropriedade[];
32
45
  }
33
46
  export interface SeletorTipoItem {
@@ -47,6 +60,7 @@ export interface ContextoEditorPropriedade {
47
60
  obterValorAtual: (propId: string) => any;
48
61
  registrarAlteracao: (categoriaId: string, propId: string, novoValor: any) => void;
49
62
  focarProximoEditor: (elementoAtual: HTMLElement) => void;
63
+ focarEditorAnterior?: (elementoAtual: HTMLElement) => void;
50
64
  despacharEventoAcao: (prop: ItemPropriedade, categoriaId: string) => void;
51
65
  /** Texto exibido para valores mistos (atributo `texto-misto`); padrão "Varia". */
52
66
  obterTextoMisto?: () => string;
@@ -24,6 +24,7 @@ export declare class UITabelaPropriedades extends SafeHTMLElement {
24
24
  private _tipoSelecionadoId;
25
25
  private _termoBusca;
26
26
  private _larguraRotuloPorcentagem;
27
+ private _sincronizandoFlutuante;
27
28
  get larguraRotuloPorcentagem(): number;
28
29
  private tipoContainerElement;
29
30
  private corpoElement;
@@ -38,6 +39,20 @@ export declare class UITabelaPropriedades extends SafeHTMLElement {
38
39
  * `titulo`) tiraria o foco de um campo em edição.
39
40
  */
40
41
  attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
42
+ get titulo(): string;
43
+ set titulo(val: string);
44
+ get estiloVisual(): 'autocad' | 'revit';
45
+ set estiloVisual(val: 'autocad' | 'revit');
46
+ get modoAplicar(): 'imediato' | 'manual';
47
+ set modoAplicar(val: 'imediato' | 'manual');
48
+ get filtro(): boolean;
49
+ set filtro(val: boolean);
50
+ get termoBusca(): string;
51
+ set termoBusca(val: string);
52
+ get larguraRotulo(): number;
53
+ set larguraRotulo(pct: number);
54
+ get fechavel(): boolean;
55
+ set fechavel(val: boolean);
41
56
  get categorias(): CategoriaPropriedades[];
42
57
  set categorias(novasCategorias: CategoriaPropriedades[]);
43
58
  /**
@@ -56,6 +71,7 @@ export declare class UITabelaPropriedades extends SafeHTMLElement {
56
71
  get dirty(): boolean;
57
72
  obterValor(propId: string): any;
58
73
  definirValor(propId: string, novoValor: any, emitirEvento?: boolean): void;
74
+ redefinirValor(propId: string, emitirEvento?: boolean): void;
59
75
  aplicar(): void;
60
76
  desfazer(): void;
61
77
  expandirTudo(): void;
@@ -75,3 +91,7 @@ export declare class UITabelaPropriedades extends SafeHTMLElement {
75
91
  private renderSeletorTipos;
76
92
  private renderCategorias;
77
93
  }
94
+ export declare class UIPainelPropriedades extends UITabelaPropriedades {
95
+ }
96
+ export declare class UIPropriedades extends UITabelaPropriedades {
97
+ }
@@ -0,0 +1,2 @@
1
+ export * from './ui-texto-editavel';
2
+ export * from './tipos';
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Trata atalhos de teclado no modo leitura (foco no botão do componente).
3
+ * Enter ou F2 ativam o modo de edição inline.
4
+ */
5
+ export declare function tratarTecladoLeitura(evento: KeyboardEvent, iniciarEdicao: () => void): void;
6
+ /**
7
+ * Trata atalhos de teclado no modo de edição (foco no input interno).
8
+ * - Enter: confirma e salva a edição.
9
+ * - Escape: cancela e restaura o valor original.
10
+ * - Tab: confirma e salva antes de permitir a mudança de foco natural.
11
+ */
12
+ export declare function tratarTecladoEdicao(evento: KeyboardEvent, salvar: () => void, cancelar: () => void): void;
@@ -0,0 +1,2 @@
1
+ export declare const ATRIBUTOS_OBSERVADOS_TEXTO_EDITAVEL: readonly ["valor", "value", "placeholder", "variante", "tamanho", "disabled", "desabilitado", "readonly", "somente-leitura", "ao-perder-foco", "obrigatorio", "maxlength", "limite-caracteres", "name", "nome"];
2
+ export declare function criarTemplateTextoEditavel(estilos: string): string;
@@ -0,0 +1,14 @@
1
+ export type VarianteTextoEditavel = 'secundario' | 'secondary' | 'primario' | 'primary' | 'ghost' | 'terciario' | 'outline' | 'borda' | 'texto' | 'plano' | 'destaque' | 'destrutivo';
2
+ export type TamanhoTextoEditavel = 'sm' | 'md' | 'lg';
3
+ export type ModoTextoEditavel = 'leitura' | 'edicao';
4
+ export type ComportamentoAoPerderFoco = 'salvar' | 'cancelar' | 'ignorar';
5
+ export interface DetalheEventoSalvar {
6
+ valor: string;
7
+ valorAnterior: string;
8
+ }
9
+ export interface DetalheEventoCancelar {
10
+ valor: string;
11
+ }
12
+ export interface DetalheEventoModoAlterado {
13
+ modo: ModoTextoEditavel;
14
+ }
@@ -0,0 +1,82 @@
1
+ import { FormAssociatedElement } from '../../core/form-associated-element';
2
+ import { VarianteTextoEditavel, TamanhoTextoEditavel, ComportamentoAoPerderFoco } from './tipos';
3
+ /**
4
+ * Componente de texto ou botão que se transforma em campo de edição com duplo clique (ou atalhos de teclado).
5
+ *
6
+ * @element ui-texto-editavel
7
+ *
8
+ * @attr {string} valor - Valor textual atual.
9
+ * @attr {string} placeholder - Texto exibido quando o valor está vazio.
10
+ * @attr {string} variante - Estilo visual ('secundario', 'primario', 'ghost', 'outline', 'texto', etc.).
11
+ * @attr {string} tamanho - Tamanho do controle ('sm', 'md', 'lg').
12
+ * @attr {boolean} disabled - Desabilita o componente e impede edição.
13
+ * @attr {boolean} readonly - Permite focar e ler, mas impede entrar em edição.
14
+ * @attr {string} ao-perder-foco - Ação ao sair do campo ('salvar', 'cancelar', 'ignorar'). Padrão: 'salvar'.
15
+ * @attr {boolean} obrigatorio - Impede salvar com valor em branco.
16
+ * @attr {number} maxlength - Quantidade máxima de caracteres permitida.
17
+ *
18
+ * @fires ui-salvar - Disparado ao confirmar a edição com `{ valor, valorAnterior }`. Cancelável via preventDefault().
19
+ * @fires ui-cancelar - Disparado ao cancelar a edição com `{ valor }`.
20
+ * @fires ui-modo-alterado - Disparado quando alterna entre leitura e edição com `{ modo }`.
21
+ * @fires change - Disparado nativamente quando o valor é alterado e confirmado.
22
+ *
23
+ * @csspart base - O contêiner envolvente.
24
+ * @csspart botao - O botão do modo leitura.
25
+ * @csspart texto - O elemento de texto interno no modo leitura.
26
+ * @csspart input - O campo de entrada de texto nativo no modo edição.
27
+ */
28
+ export declare class UITextoEditavel extends FormAssociatedElement {
29
+ static formAssociated: boolean;
30
+ static get observedAttributes(): readonly ["valor", "value", "placeholder", "variante", "tamanho", "disabled", "desabilitado", "readonly", "somente-leitura", "ao-perder-foco", "obrigatorio", "maxlength", "limite-caracteres", "name", "nome"];
31
+ private container;
32
+ private botaoElement;
33
+ private textoElement;
34
+ private inputElement;
35
+ private _modo;
36
+ private _concluindo;
37
+ private _valorInterno;
38
+ private _valorOriginalAoEditar;
39
+ private listeners;
40
+ constructor();
41
+ connectedCallback(): void;
42
+ disconnectedCallback(): void;
43
+ attributeChangedCallback(nome: string, _antigo: string | null, novo: string | null): void;
44
+ private handleDuploClique;
45
+ private handleKeyDownBotao;
46
+ private handleKeyDownInput;
47
+ private handleBlurInput;
48
+ /** Entra no modo de edição se o componente não estiver desabilitado ou em somente leitura. */
49
+ editar(): void;
50
+ /**
51
+ * Salva as alterações feitas no modo de edição e retorna ao modo leitura.
52
+ * Dispara `ui-salvar` (cancelável com preventDefault()).
53
+ */
54
+ salvar(): boolean;
55
+ /** Cancela as alterações e restaura o valor prévio à edição. */
56
+ cancelar(): void;
57
+ /** Informa se o componente está atualmente no modo de edição. */
58
+ estaEditando(): boolean;
59
+ private dispararEventoModo;
60
+ protected syncState(): void;
61
+ atualizarValidade(): void;
62
+ get valor(): string;
63
+ set valor(val: string);
64
+ get value(): string;
65
+ set value(val: string);
66
+ get placeholder(): string;
67
+ set placeholder(val: string);
68
+ get variante(): VarianteTextoEditavel;
69
+ set variante(val: VarianteTextoEditavel);
70
+ get tamanho(): TamanhoTextoEditavel;
71
+ set tamanho(val: TamanhoTextoEditavel);
72
+ get disabled(): boolean;
73
+ set disabled(val: boolean);
74
+ get readOnly(): boolean;
75
+ set readOnly(val: boolean);
76
+ get obrigatorio(): boolean;
77
+ set obrigatorio(val: boolean);
78
+ get aoPerderFoco(): ComportamentoAoPerderFoco;
79
+ set aoPerderFoco(val: ComportamentoAoPerderFoco);
80
+ get maxlength(): number | null;
81
+ set maxlength(val: number | null);
82
+ }