@thibezer/ui-components-kit 2.6.1 → 2.8.0

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 (161) hide show
  1. package/CHANGELOG.md +265 -204
  2. package/README.md +815 -791
  3. package/dist/acessibilidade-CSzX-DkG.cjs +1 -0
  4. package/dist/acessibilidade-CUlSXc2X.js +38 -0
  5. package/dist/altura-controle-ukMRPckR.cjs +1 -0
  6. package/dist/altura-controle-vxQiXG4q.js +62 -0
  7. package/dist/botao.cjs +1 -1
  8. package/dist/botao.js +1 -1
  9. package/dist/camadas.cjs +94 -94
  10. package/dist/camadas.js +1218 -1124
  11. package/dist/campo-texto.cjs +1 -1
  12. package/dist/campo-texto.js +1 -1
  13. package/dist/canvas.cjs +66 -65
  14. package/dist/canvas.js +3769 -3389
  15. package/dist/card.cjs +1 -1
  16. package/dist/card.js +1 -1
  17. package/dist/components/ui-alerta/ui-toast.d.ts +4 -15
  18. package/dist/components/ui-avatar/ui-avatar.d.ts +11 -0
  19. package/dist/components/ui-badge/ui-badge.d.ts +2 -0
  20. package/dist/components/ui-barra-ferramentas/paleta-atalhos.d.ts +16 -0
  21. package/dist/components/ui-barra-ferramentas/paleta-pressao-longa.d.ts +24 -0
  22. package/dist/components/ui-barra-ferramentas/ribbon-render.d.ts +14 -0
  23. package/dist/components/ui-barra-ferramentas/ribbon-teclado.d.ts +17 -0
  24. package/dist/components/ui-barra-ferramentas/ui-paleta-ferramentas.d.ts +1 -7
  25. package/dist/components/ui-barra-ferramentas/ui-ribbon.d.ts +0 -1
  26. package/dist/components/ui-camadas/camadas-arraste-controles.d.ts +2 -0
  27. package/dist/components/ui-camadas/camadas-arvore-renderer.d.ts +4 -11
  28. package/dist/components/ui-camadas/camadas-colecao.d.ts +27 -0
  29. package/dist/components/ui-camadas/camadas-drag-drop.d.ts +13 -1
  30. package/dist/components/ui-camadas/camadas-drop-ops.d.ts +31 -0
  31. package/dist/components/ui-camadas/camadas-hierarquia.d.ts +10 -0
  32. package/dist/components/ui-camadas/camadas-lembranca.d.ts +34 -0
  33. package/dist/components/ui-camadas/camadas-render.d.ts +14 -0
  34. package/dist/components/ui-camadas/camadas-renomear.d.ts +12 -0
  35. package/dist/components/ui-camadas/camadas-selecao-api.d.ts +17 -0
  36. package/dist/components/ui-camadas/camadas-thumb.d.ts +1 -0
  37. package/dist/components/ui-camadas/ui-camadas.d.ts +3 -5
  38. package/dist/components/ui-canvas-cad/cad-acessibilidade.d.ts +15 -0
  39. package/dist/components/ui-canvas-cad/cad-atributos-sync.d.ts +2 -1
  40. package/dist/components/ui-canvas-cad/cad-broadcast.d.ts +1 -1
  41. package/dist/components/ui-canvas-cad/cad-evento-coordenadas.d.ts +22 -0
  42. package/dist/components/ui-canvas-cad/cad-eventos-canvas.d.ts +3 -8
  43. package/dist/components/ui-canvas-cad/cad-feicoes-camera.d.ts +26 -0
  44. package/dist/components/ui-canvas-cad/cad-feicoes-consulta.d.ts +21 -0
  45. package/dist/components/ui-canvas-cad/cad-feicoes-dados.d.ts +39 -0
  46. package/dist/components/ui-canvas-cad/cad-feicoes-desenho.d.ts +68 -0
  47. package/dist/components/ui-canvas-cad/cad-feicoes-edicao.d.ts +37 -0
  48. package/dist/components/ui-canvas-cad/cad-feicoes-operacoes.d.ts +48 -0
  49. package/dist/components/ui-canvas-cad/cad-feicoes-ponteiro.d.ts +24 -0
  50. package/dist/components/ui-canvas-cad/cad-feicoes-selecao-regiao.d.ts +22 -0
  51. package/dist/components/ui-canvas-cad/cad-feicoes-tipos.d.ts +53 -0
  52. package/dist/components/ui-canvas-cad/cad-feicoes-versoes.d.ts +33 -0
  53. package/dist/components/ui-canvas-cad/cad-feicoes.d.ts +26 -106
  54. package/dist/components/ui-canvas-cad/cad-inicializador.d.ts +3 -1
  55. package/dist/components/ui-canvas-cad/cad-leaflet-adaptador.d.ts +5 -0
  56. package/dist/components/ui-canvas-cad/cad-selecao-pontos.d.ts +5 -0
  57. package/dist/components/ui-canvas-cad/tipos.d.ts +37 -0
  58. package/dist/components/ui-canvas-cad/ui-canvas-cad.d.ts +4 -1
  59. package/dist/components/ui-checkbox/ui-checkbox.d.ts +4 -1
  60. package/dist/components/ui-linha/index.d.ts +1 -0
  61. package/dist/components/ui-linha/ui-linha.d.ts +48 -0
  62. package/dist/components/ui-mapa/mapa-atributos.d.ts +14 -0
  63. package/dist/components/ui-mapa/mapa-basemaps.d.ts +7 -0
  64. package/dist/components/ui-mapa/mapa-icones.d.ts +4 -0
  65. package/dist/components/ui-mapa/mapa-leaflet.d.ts +5 -0
  66. package/dist/components/ui-mapa/mapa-vinculo-pai.d.ts +22 -0
  67. package/dist/components/ui-mapa/tipos.d.ts +13 -0
  68. package/dist/components/ui-mapa/ui-mapa-linha.d.ts +12 -5
  69. package/dist/components/ui-mapa/ui-mapa-marcador.d.ts +15 -6
  70. package/dist/components/ui-mapa/ui-mapa.d.ts +14 -1
  71. package/dist/components/ui-modal/modal-acessibilidade.d.ts +5 -5
  72. package/dist/components/ui-modal/modal-foco.d.ts +28 -0
  73. package/dist/components/ui-modal/ui-modal.d.ts +1 -11
  74. package/dist/components/ui-radio/radio-grupo-registry.d.ts +10 -0
  75. package/dist/components/ui-radio/ui-radio.d.ts +9 -2
  76. package/dist/components/ui-skeleton/ui-skeleton.d.ts +9 -0
  77. package/dist/components/ui-switch/ui-switch.d.ts +3 -1
  78. package/dist/components/ui-tabela/tabela-estados.d.ts +16 -0
  79. package/dist/components/ui-tabela/tabela-rolagem.d.ts +44 -0
  80. package/dist/components/ui-tabela/tabela-teclado.d.ts +16 -0
  81. package/dist/components/ui-tabela/ui-tabela.d.ts +1 -19
  82. package/dist/components/ui-tooltip/tooltip-popover.d.ts +7 -0
  83. package/dist/components/ui-tooltip/tooltip-posicionamento.d.ts +29 -0
  84. package/dist/components/ui-tooltip/ui-tooltip.d.ts +24 -1
  85. package/dist/core/altura-controle.d.ts +34 -0
  86. package/dist/core/index.d.ts +1 -0
  87. package/dist/core/opcoes.d.ts +9 -0
  88. package/dist/core/rotulo-controle.d.ts +13 -0
  89. package/dist/core/tipos-toast.d.ts +16 -0
  90. package/dist/core/ui-bus.d.ts +9 -1
  91. package/dist/core.cjs +1 -1
  92. package/dist/core.js +29 -19
  93. package/dist/custom-elements.json +20984 -15700
  94. package/dist/data.cjs +1 -1
  95. package/dist/data.js +2 -2
  96. package/dist/feedback.cjs +1 -1
  97. package/dist/feedback.js +21 -21
  98. package/dist/form-validacao-BlQFxUVj.js +104 -0
  99. package/dist/form-validacao-DIeyQVH5.cjs +1 -0
  100. package/dist/forms.cjs +1 -1
  101. package/dist/forms.js +2 -2
  102. package/dist/index.cjs +1 -1
  103. package/dist/index.d.ts +3 -0
  104. package/dist/index.js +178 -177
  105. package/dist/mapa.cjs +11 -16
  106. package/dist/mapa.js +242 -170
  107. package/dist/modal.cjs +1 -1
  108. package/dist/modal.js +1 -1
  109. package/dist/opcoes-CJYLi6kd.js +12 -0
  110. package/dist/opcoes-CkyDxBuQ.cjs +1 -0
  111. package/dist/register.cjs +1 -1
  112. package/dist/register.js +13 -14
  113. package/dist/tabela.cjs +1 -1
  114. package/dist/tabela.js +1 -1
  115. package/dist/tipos-elementos.d.ts +33 -3
  116. package/dist/tipos-react.d.ts +2 -0
  117. package/dist/tipos-vue.d.ts +32 -3
  118. package/dist/tools.cjs +1 -1
  119. package/dist/tools.js +1 -1
  120. package/dist/ui-badge-BWhoGgo9.js +197 -0
  121. package/dist/ui-badge-SIR81R9l.cjs +28 -0
  122. package/dist/ui-botao-D24oXySA.cjs +12 -0
  123. package/dist/ui-botao-Dsj08jjw.js +165 -0
  124. package/dist/{zero-js-triggers-C_KrvFOQ.js → ui-bus-CUd99VJi.js} +36 -103
  125. package/dist/ui-bus-XqBLlTYQ.cjs +1 -0
  126. package/dist/{ui-campo-texto-Uu2dJE_0.js → ui-campo-texto-B_OHVGiN.js} +51 -51
  127. package/dist/ui-campo-texto-DauJCde3.cjs +16 -0
  128. package/dist/{ui-card-C_o5_0cB.js → ui-card-BNYCQ7g-.js} +50 -42
  129. package/dist/ui-card-BrjBL-yo.cjs +20 -0
  130. package/dist/ui-kit.css +1 -1
  131. package/dist/ui-linha-C6HBnsaw.cjs +19 -0
  132. package/dist/{ui-segmented-wUraId2e.js → ui-linha-nCDh2wPm.js} +200 -105
  133. package/dist/{ui-modal-DBOtSTbR.js → ui-modal-BkYvNP0G.js} +116 -140
  134. package/dist/ui-modal-CUNbpbZ1.cjs +18 -0
  135. package/dist/{ui-paleta-ferramentas-DNN5i6nL.js → ui-paleta-ferramentas-Ksh6gMW3.js} +359 -329
  136. package/dist/{ui-paleta-ferramentas-Ccmo-rB5.cjs → ui-paleta-ferramentas-bDLPbiGA.cjs} +7 -7
  137. package/dist/ui-skeleton-B2Rgrv8o.js +648 -0
  138. package/dist/ui-skeleton-DiOxTBZK.cjs +52 -0
  139. package/dist/ui-switch-D9a8XlVX.cjs +53 -0
  140. package/dist/{ui-switch-BcOqOkiV.js → ui-switch-DO1R0Ce7.js} +187 -128
  141. package/dist/{ui-tabela-propriedades-BokvDD3b.js → ui-tabela-propriedades-D9Echt2X.js} +845 -826
  142. package/dist/{ui-tabela-propriedades-BecPqC-e.cjs → ui-tabela-propriedades-DzZlyNZ_.cjs} +10 -10
  143. package/dist/zero-js-triggers-CJT988bR.js +83 -0
  144. package/dist/zero-js-triggers-CgM9IIQB.cjs +1 -0
  145. package/package.json +9 -2
  146. package/dist/form-validacao-BIOXxt-1.js +0 -140
  147. package/dist/form-validacao-ytRYSF3E.cjs +0 -1
  148. package/dist/ui-badge-BxT-sDmV.cjs +0 -28
  149. package/dist/ui-badge-C0eKBI8E.js +0 -183
  150. package/dist/ui-botao-BOOnP8ds.cjs +0 -12
  151. package/dist/ui-botao-DfqSivHl.js +0 -165
  152. package/dist/ui-campo-texto-Cnn2UAkS.cjs +0 -16
  153. package/dist/ui-card-B86lJXTP.cjs +0 -20
  154. package/dist/ui-modal-CvGFGh1h.cjs +0 -18
  155. package/dist/ui-segmented-D6b6zxVs.cjs +0 -19
  156. package/dist/ui-skeleton-DI4_9WOX.js +0 -428
  157. package/dist/ui-skeleton-elhKIh2B.cjs +0 -33
  158. package/dist/ui-switch-D7iPKDj-.cjs +0 -53
  159. package/dist/ui-toast-Bp_NlM5G.js +0 -156
  160. package/dist/ui-toast-DGTZKne5.cjs +0 -20
  161. package/dist/zero-js-triggers-C_gtaojZ.cjs +0 -1
@@ -0,0 +1,68 @@
1
+ import { default as L } from 'leaflet';
2
+ import { CanvasLayerManager } from '../../gerencigeo-canvas/layer_manager';
3
+ import { Feicao, EstiloFeicao, LatLonPar } from '../../gerencigeo-canvas/feature_types';
4
+ import { ControleDesenho } from '../../gerencigeo-canvas/feature_desenho_controle';
5
+ import { Ferramenta } from '../../gerencigeo-canvas/feature_desenho';
6
+ import { buscarSnap } from '../../gerencigeo-canvas/feature_snap';
7
+ import { ResultadoFerramenta } from './cad-feicoes-tipos';
8
+ export interface PortasDesenho {
9
+ obterMapa: () => L.Map | null;
10
+ obterLayerManager: () => CanvasLayerManager;
11
+ emitir: (evento: string, detalhe: unknown, cancelavel?: boolean) => unknown;
12
+ /** A ferramenta ativa mudou (`null` = nenhuma). */
13
+ aoFerramenta?: (ferramenta: Ferramenta | null) => void;
14
+ lista: (camadaId: string) => Feicao[];
15
+ adicionarFeicao: (camadaId: string, bruta: unknown) => Feicao | null;
16
+ buscarSnapEm: (coord: [number, number]) => ReturnType<typeof buscarSnap>;
17
+ snapAtivo: () => boolean;
18
+ /** Antes de ativar uma ferramenta: encerra a edição de vértices, fecha o popup e ajusta as margens do HUD. */
19
+ prepararDesenho: () => void;
20
+ normalizarCoordenada: (bruta: unknown) => LatLonPar | null;
21
+ dividirComLinha: (linha: LatLonPar[]) => boolean;
22
+ selecionarNoLaco: (laco: LatLonPar[]) => void;
23
+ candidatasEm: (coord: LatLonPar, tolPx: number) => Feicao[];
24
+ }
25
+ export declare class FerramentasDesenho {
26
+ private p;
27
+ private desenho;
28
+ private camadaDesenho;
29
+ private estiloDesenho;
30
+ private sequenciaId;
31
+ constructor(p: PortasDesenho);
32
+ /** Controle de desenho da camada L2 (nasce na primeira ativação; `null` antes ou após `destruir`). */
33
+ get controle(): ControleDesenho | null;
34
+ /** Há uma ferramenta ativa? (o clique e o botão direito são dela) */
35
+ get ativo(): boolean;
36
+ /** Botão direito com ferramenta ativa: conclui, desfaz o último vértice ou sai. */
37
+ botaoDireito(): void;
38
+ /** Encerra a ferramenta e solta o controle (que guarda o mapa; após reconectar o mapa é outro). */
39
+ destruir(): void;
40
+ get ferramentaAtiva(): Ferramenta | null;
41
+ /** Camada que recebe o que for desenhado. Não existe camada padrão: o consumidor escolhe. */
42
+ definirCamadaDesenho(camadaId: string | null): void;
43
+ get camadaDeDesenho(): string | null;
44
+ /** Estilo aplicado às feições desenhadas daqui para frente (o conta-gotas também o altera). */
45
+ definirEstiloDesenho(estilo: EstiloFeicao): void;
46
+ obterEstiloDesenho(): EstiloFeicao;
47
+ alternarFerramenta(nome: string): ResultadoFerramenta;
48
+ ativarFerramenta(nome: string, opcoes?: {
49
+ fechar?: boolean;
50
+ iniciarEm?: LatLonPar;
51
+ }): ResultadoFerramenta;
52
+ desativarFerramenta(): void;
53
+ limparMedicao(): void;
54
+ /** Vértices já colocados na figura em andamento (0 sem ferramenta ou sem figura). */
55
+ get nosDesenho(): number;
56
+ desfazerVerticeDesenho(): boolean;
57
+ private motivoCamadaDesenhoInvalida;
58
+ private novoId;
59
+ /**
60
+ * Clique da ferramenta texto: emite `cad-texto-solicitado` (cancelável). Com `preventDefault()` o consumidor assume a
61
+ * entrada do texto e depois chama `detalhe.concluir(texto)` (cria na camada de desenho, com o estilo de desenho) ou
62
+ * simplesmente não faz nada para cancelar. Sem `preventDefault()`, aparece o campo inline.
63
+ */
64
+ private solicitarTexto;
65
+ private concluirFerramenta;
66
+ /** Conta-gotas: copia o estilo da feição sob o clique para o estilo de desenho. */
67
+ amostrarEstilo(coord: LatLonPar): void;
68
+ }
@@ -0,0 +1,37 @@
1
+ import { default as L } from 'leaflet';
2
+ import { CanvasLayerManager } from '../../gerencigeo-canvas/layer_manager';
3
+ import { Feicao } from '../../gerencigeo-canvas/feature_types';
4
+ import { RefFeicao } from '../../gerencigeo-canvas/feature_selecao';
5
+ import { EditorVertices } from '../../gerencigeo-canvas/feature_editor_vertices';
6
+ import { ExcluirSnap } from '../../gerencigeo-canvas/feature_snap';
7
+ import { ResultadoEdicao } from './cad-feicoes-tipos';
8
+ export interface PortasEdicao {
9
+ obterMapa: () => L.Map | null;
10
+ obterLayerManager: () => CanvasLayerManager;
11
+ emitir: (evento: string, detalhe: unknown) => unknown;
12
+ buscar: (camadaId: string, id: string) => Feicao | undefined;
13
+ substituir: (camadaId: string, feicao: Feicao) => void;
14
+ desativarFerramenta: () => void;
15
+ aplicarMargensHud: () => void;
16
+ selecionarUma: (ref: RefFeicao) => void;
17
+ fecharPopup: () => void;
18
+ /** Depois da edição: o popup volta se a seleção tem exatamente uma feição. */
19
+ reabrirPopupDaSelecao: () => void;
20
+ snapAtivo: () => boolean;
21
+ alternarSnap: () => void;
22
+ buscarSnapEm: (coord: [number, number], excluir?: ExcluirSnap) => ReturnType<typeof import('../../gerencigeo-canvas/feature_snap').buscarSnap>;
23
+ }
24
+ export declare class EdicaoFeicoes {
25
+ private p;
26
+ private editor;
27
+ constructor(p: PortasEdicao);
28
+ get editando(): boolean;
29
+ /** @internal Editor de vértices da camada L2 (`null` fora da edição). */
30
+ get editorAtual(): EditorVertices | null;
31
+ /** Feição em edição (`null` fora da edição). */
32
+ get feicao(): Feicao | null;
33
+ sincronizar(feicao: Feicao): void;
34
+ atualizarSnapNoHud(): void;
35
+ iniciarEdicao(camadaId: string, id: string): ResultadoEdicao;
36
+ parar(): void;
37
+ }
@@ -0,0 +1,48 @@
1
+ import { CanvasLayerManager } from '../../gerencigeo-canvas/layer_manager';
2
+ import { Feicao, LatLonPar } from '../../gerencigeo-canvas/feature_types';
3
+ import { RefFeicao } from '../../gerencigeo-canvas/feature_selecao';
4
+ export interface PortasOperacoes {
5
+ emitir: (evento: string, detalhe: unknown) => unknown;
6
+ obterLayerManager: () => CanvasLayerManager;
7
+ buscar: (camadaId: string, id: string) => Feicao | undefined;
8
+ lista: (camadaId: string) => Feicao[];
9
+ desenhada: (f: Feicao) => boolean;
10
+ idLivre: (camadaId: string, base: string) => string;
11
+ adicionarFeicao: (camadaId: string, bruta: unknown) => Feicao | null;
12
+ removerFeicao: (camadaId: string, id: string) => boolean;
13
+ selecionadas: () => Feicao[];
14
+ estaSelecionada: (ref: RefFeicao) => boolean;
15
+ /** `true` enquanto a ferramenta "dividir" está ativa. */
16
+ divisaoAtiva: () => boolean;
17
+ encerrarDesenho: () => void;
18
+ }
19
+ export declare class OperacoesFeicoes {
20
+ private p;
21
+ constructor(p: PortasOperacoes);
22
+ /**
23
+ * Divide polígonos pela linha de corte. Alvos: os polígonos selecionados; sem seleção, o primeiro
24
+ * polígono (de camada visível, interativa e desbloqueada) que a linha corta.
25
+ */
26
+ dividirComLinha(linha: LatLonPar[]): boolean;
27
+ /** Cria um polígono de buffer ao redor da feição (na camada dela, ou em `camadaDestino`). */
28
+ gerarBuffer(camadaId: string, id: string, metros: number, opcoes?: {
29
+ camadaDestino?: string;
30
+ id?: string;
31
+ }): Feicao | null;
32
+ /** Copia a feição deslocada (em metros para leste/norte). */
33
+ duplicarFeicao(camadaId: string, id: string, deslocamento?: {
34
+ lesteM?: number;
35
+ norteM?: number;
36
+ }, opcoes?: {
37
+ id?: string;
38
+ }): Feicao | null;
39
+ /**
40
+ * Junta linhas (encadeando pontas) ou dois polígonos (por uma ponte) numa feição só; as originais saem.
41
+ * Linhas com pontas a até `toleranciaM` se ligam; polígonos precisam estar a até `toleranciaM` e
42
+ * não podem ter bordas que se cruzam.
43
+ */
44
+ juntarFeicoes(camadaId: string, ids: string[], opcoes?: {
45
+ toleranciaM?: number;
46
+ id?: string;
47
+ }): Feicao | null;
48
+ }
@@ -0,0 +1,24 @@
1
+ import { Feicao, LatLonPar } from '../../gerencigeo-canvas/feature_types';
2
+ export interface PortasPonteiro {
3
+ emitir: (evento: string, detalhe: unknown) => unknown;
4
+ feicaoSob: (clientX: number, clientY: number) => {
5
+ feicao: Feicao | null;
6
+ coordenada: LatLonPar;
7
+ } | null;
8
+ /** Mouse parado para o hover: uma ferramenta de desenho ou a edição de vértices está ativa. */
9
+ interacaoAtiva: () => boolean;
10
+ /** Se há ferramenta ativa, entrega a ela o botão direito e devolve `true` (não abre menu). */
11
+ botaoDireitoDaFerramenta: () => boolean;
12
+ }
13
+ export declare class PonteiroFeicoes {
14
+ private p;
15
+ private hoverId;
16
+ private hoverAgendado;
17
+ constructor(p: PortasPonteiro);
18
+ /** Emite `cad-feicao-hover` quando a feição sob o mouse muda (uma checagem por quadro). */
19
+ aoMoverMouse(e: MouseEvent): void;
20
+ /** Botão direito: emite `cad-feicao-menu` com a feição sob o cursor (ou `null`), para o consumidor abrir o próprio menu. */
21
+ menuContexto(e: MouseEvent): void;
22
+ /** Esquece a feição sob o cursor (ao destruir o componente). */
23
+ limpar(): void;
24
+ }
@@ -0,0 +1,22 @@
1
+ import { default as L } from 'leaflet';
2
+ import { CanvasLayerManager } from '../../gerencigeo-canvas/layer_manager';
3
+ import { Feicao, LatLonPar } from '../../gerencigeo-canvas/feature_types';
4
+ import { RefFeicao } from '../../gerencigeo-canvas/feature_selecao';
5
+ import { CaixaPx, ModoCaixa } from '../../gerencigeo-canvas/feature_caixa';
6
+ export interface PortasSelecaoRegiao {
7
+ obterMapa: () => L.Map | null;
8
+ obterLayerManager: () => CanvasLayerManager;
9
+ lista: (camadaId: string) => Feicao[];
10
+ desenhada: (f: Feicao) => boolean;
11
+ desativarFerramenta: () => void;
12
+ selecionar: (refs: RefFeicao[]) => void;
13
+ alternarVarias: (refs: RefFeicao[]) => void;
14
+ }
15
+ export declare class SelecaoPorRegiao {
16
+ private p;
17
+ constructor(p: PortasSelecaoRegiao);
18
+ /** Laço: seleciona (substituindo) as feições de camadas selecionáveis tocadas pelo polígono; a ferramenta encerra. */
19
+ selecionarNoLaco(laco: LatLonPar[]): void;
20
+ /** Caixa de seleção: só feições de camadas visíveis, interativas e desbloqueadas, com toque geométrico real. */
21
+ selecionarNaCaixa(caixa: CaixaPx, modo: ModoCaixa, aditivo: boolean): void;
22
+ }
@@ -0,0 +1,53 @@
1
+ import { LayerStyleDef } from '../../gerencigeo-canvas/types';
2
+ import { MotivoRecusaEdicao } from '../../gerencigeo-canvas/feature_edicao_ops';
3
+ export declare const TIPO_CAMADA_FEICOES = "feicoes";
4
+ export interface OpcoesCamadaFeicoes {
5
+ nome?: string;
6
+ zIndex?: number;
7
+ opacidade?: number;
8
+ interativo?: boolean;
9
+ estilo?: Partial<LayerStyleDef>;
10
+ }
11
+ /** Opções de `aplicarLote` / `atualizarFeicao`. */
12
+ export interface OpcoesLote extends OpcoesCamadaFeicoes {
13
+ /**
14
+ * Em atualizações, `propriedades` informadas SUBSTITUEM as atuais (o padrão é mesclar, e chaves apagadas
15
+ * pelo consumidor ficam para trás). Sem `propriedades` no item, nada muda.
16
+ */
17
+ substituirPropriedades?: boolean;
18
+ }
19
+ /** Itens de atualização: `id` aponta a feição; o resto é mesclado como em `atualizarFeicao`. */
20
+ export type AtualizacaoFeicao = Record<string, any> & {
21
+ id: string;
22
+ };
23
+ export interface LoteFeicoes {
24
+ adicionar?: unknown[];
25
+ atualizar?: AtualizacaoFeicao[];
26
+ remover?: string[];
27
+ }
28
+ export interface ResultadoLote {
29
+ adicionadas: number;
30
+ atualizadas: number;
31
+ removidas: number;
32
+ /** Ids (ou posições, quando não há id) recusados: geometria inválida, feição inexistente numa atualização, camada que não é de feições. */
33
+ recusadas: string[];
34
+ }
35
+ export interface ResultadoFeicoes {
36
+ /** Quantas feições entraram na camada. */
37
+ aceitas: number;
38
+ /** Ids (ou posições, quando não há id) das feições recusadas por geometria inválida. */
39
+ recusadas: string[];
40
+ }
41
+ /** Opções do popup da feição. */
42
+ export interface OpcoesPopup {
43
+ /** A ação "copiar" grava as coordenadas na área de transferência (padrão `true`); `cad-feicao-acao` sai de qualquer jeito. */
44
+ copiarParaAreaDeTransferencia?: boolean;
45
+ }
46
+ export interface ResultadoFerramenta {
47
+ ok: boolean;
48
+ motivo?: 'ferramenta-invalida' | 'sem-mapa' | 'sem-camada' | 'camada-invalida' | 'camada-bloqueada';
49
+ }
50
+ export interface ResultadoEdicao {
51
+ ok: boolean;
52
+ motivo?: MotivoRecusaEdicao | 'inexistente' | 'sem-mapa';
53
+ }
@@ -0,0 +1,33 @@
1
+ import { CanvasLayerManager } from '../../gerencigeo-canvas/layer_manager';
2
+ import { Feicao } from '../../gerencigeo-canvas/feature_types';
3
+ import { RegraVersoes } from '../../gerencigeo-canvas/feature_versoes';
4
+ export interface PortasVersoes {
5
+ obterLayerManager: () => CanvasLayerManager;
6
+ emitir: (evento: string, detalhe: unknown) => unknown;
7
+ buscar: (camadaId: string, id: string) => Feicao | undefined;
8
+ lista: (camadaId: string) => Feicao[];
9
+ /** Chamado depois que a regra muda, para reconciliar seleção, edição e popup. */
10
+ aposDados: () => void;
11
+ }
12
+ export declare class VersoesFeicoes {
13
+ private p;
14
+ readonly regra: RegraVersoes;
15
+ private cacheOficiais;
16
+ constructor(p: PortasVersoes, regra: RegraVersoes);
17
+ private oficiaisDe;
18
+ /** Aparece segundo a regra de oficial × prévia? */
19
+ visivelPorVersao(f: Feicao): boolean;
20
+ /** Vai para a tela e responde a clique, caixa, laço, snap e hover: não excluída, não oculta e visível pela regra de versões. */
21
+ desenhada(f: Feicao): boolean;
22
+ aplicarVersoes(): void;
23
+ get previasGlobais(): boolean;
24
+ /** Mostra (ou esconde) as prévias de todas as entidades. Prévias de entidades sem oficial aparecem sempre. */
25
+ definirPreviasGlobais(ligado: boolean): void;
26
+ alternarPreviasGlobais(): void;
27
+ /** Liga/desliga a prévia da entidade a que a feição pertence. Devolve o novo estado, ou `null` se a feição não existe. */
28
+ alternarPrevia(camadaId: string, id: string): boolean | null;
29
+ /** A prévia da feição está sendo mostrada por pedido (global ou individual)? */
30
+ previaSolicitada(camadaId: string, id: string): boolean;
31
+ /** Mostra o que estava escondido (camada oculta, prévia não solicitada) para a feição poder ser vista. */
32
+ garantirVisivel(f: Feicao): void;
33
+ }
@@ -1,5 +1,4 @@
1
1
  import { CanvasLayerManager } from '../../gerencigeo-canvas/layer_manager';
2
- import { LayerStyleDef } from '../../gerencigeo-canvas/types';
3
2
  import { Feicao, EstiloFeicao, LatLonPar } from '../../gerencigeo-canvas/feature_types';
4
3
  import { RegraVersoes } from '../../gerencigeo-canvas/feature_versoes';
5
4
  import { UsuarioRemoto } from '../../gerencigeo-canvas/feature_cursores';
@@ -7,48 +6,14 @@ import { RefFeicao } from '../../gerencigeo-canvas/feature_selecao';
7
6
  import { CaixaPx, ModoCaixa } from '../../gerencigeo-canvas/feature_caixa';
8
7
  import { MargensPopup } from '../../gerencigeo-canvas/feature_popup';
9
8
  import { default as L } from 'leaflet';
10
- import { MotivoRecusaEdicao } from '../../gerencigeo-canvas/feature_edicao_ops';
11
9
  import { ExcluirSnap } from '../../gerencigeo-canvas/feature_snap';
10
+ import { EditorVertices } from '../../gerencigeo-canvas/feature_editor_vertices';
11
+ import { ControleDesenho } from '../../gerencigeo-canvas/feature_desenho_controle';
12
12
  import { Ferramenta } from '../../gerencigeo-canvas/feature_desenho';
13
13
  import { MargensHud } from '../../gerencigeo-canvas/feature_hud';
14
- export declare const TIPO_CAMADA_FEICOES = "feicoes";
15
- export interface OpcoesCamadaFeicoes {
16
- nome?: string;
17
- zIndex?: number;
18
- opacidade?: number;
19
- interativo?: boolean;
20
- estilo?: Partial<LayerStyleDef>;
21
- }
22
- /** Opções de `aplicarLote` / `atualizarFeicao`. */
23
- export interface OpcoesLote extends OpcoesCamadaFeicoes {
24
- /**
25
- * Em atualizações, `propriedades` informadas SUBSTITUEM as atuais (o padrão é mesclar, e chaves apagadas
26
- * pelo consumidor ficam para trás). Sem `propriedades` no item, nada muda.
27
- */
28
- substituirPropriedades?: boolean;
29
- }
30
- /** Itens de atualização: `id` aponta a feição; o resto é mesclado como em `atualizarFeicao`. */
31
- export type AtualizacaoFeicao = Record<string, any> & {
32
- id: string;
33
- };
34
- export interface LoteFeicoes {
35
- adicionar?: unknown[];
36
- atualizar?: AtualizacaoFeicao[];
37
- remover?: string[];
38
- }
39
- export interface ResultadoLote {
40
- adicionadas: number;
41
- atualizadas: number;
42
- removidas: number;
43
- /** Ids (ou posições, quando não há id) recusados: geometria inválida, feição inexistente numa atualização, camada que não é de feições. */
44
- recusadas: string[];
45
- }
46
- export interface ResultadoFeicoes {
47
- /** Quantas feições entraram na camada. */
48
- aceitas: number;
49
- /** Ids (ou posições, quando não há id) das feições recusadas por geometria inválida. */
50
- recusadas: string[];
51
- }
14
+ import { TIPO_CAMADA_FEICOES, OpcoesCamadaFeicoes, OpcoesLote, AtualizacaoFeicao, LoteFeicoes, ResultadoLote, ResultadoFeicoes, OpcoesPopup, ResultadoFerramenta, ResultadoEdicao } from './cad-feicoes-tipos';
15
+ export { TIPO_CAMADA_FEICOES };
16
+ export type { OpcoesCamadaFeicoes, OpcoesLote, AtualizacaoFeicao, LoteFeicoes, ResultadoLote, ResultadoFeicoes, OpcoesPopup, ResultadoFerramenta, ResultadoEdicao };
52
17
  interface Contexto {
53
18
  obterLayerManager: () => CanvasLayerManager;
54
19
  obterMapa: () => L.Map | null;
@@ -61,36 +26,21 @@ interface Contexto {
61
26
  /** Regra de oficial × prévia compartilhada com o renderizador (o componente a põe no contexto de renderização). */
62
27
  regra?: RegraVersoes;
63
28
  }
64
- /** Opções do popup da feição. */
65
- export interface OpcoesPopup {
66
- /** A ação "copiar" grava as coordenadas na área de transferência (padrão `true`); `cad-feicao-acao` sai de qualquer jeito. */
67
- copiarParaAreaDeTransferencia?: boolean;
68
- }
69
- export interface ResultadoFerramenta {
70
- ok: boolean;
71
- motivo?: 'ferramenta-invalida' | 'sem-mapa' | 'sem-camada' | 'camada-invalida' | 'camada-bloqueada';
72
- }
73
- export interface ResultadoEdicao {
74
- ok: boolean;
75
- motivo?: MotivoRecusaEdicao | 'inexistente' | 'sem-mapa';
76
- }
77
29
  export declare class GerenciadorFeicoes {
78
30
  private contexto;
31
+ private operacoes;
79
32
  private selecao;
80
33
  private popup;
81
- private editor;
34
+ private edicao;
35
+ private consulta;
36
+ private ponteiro;
37
+ private regiao;
82
38
  private snap;
83
- private desenho;
84
- private camadaDesenho;
85
- private estiloDesenho;
86
- private sequenciaId;
87
- private regra;
88
- private cacheOficiais;
89
- /** id -> posição na lista da camada (válido enquanto `lista` for a lista atual); evita varrer a camada a cada consulta. */
90
- private posicoes;
39
+ private ferramentas;
40
+ private versoes;
41
+ private camera;
42
+ private repositorio;
91
43
  private cursores;
92
- private hoverId;
93
- private hoverAgendado;
94
44
  private margensHud;
95
45
  /** Aceita a coordenada (0, 0) exata nas feições de entrada (atributo `aceitar-origem`). */
96
46
  aceitarOrigem: boolean;
@@ -99,28 +49,18 @@ export declare class GerenciadorFeicoes {
99
49
  /** Depois de qualquer mudança nos dados: descarta seleção órfã e atualiza/fecha o popup aberto. */
100
50
  private aposDados;
101
51
  private lista;
102
- private posicaoDe;
103
52
  /** Feição da camada pelo id (O(1)); `undefined` se não existe. */
104
53
  buscar(camadaId: string, id: string): Feicao | undefined;
105
- private garantirCamada;
106
54
  private opcoesNormalizacao;
107
55
  definirFeicoes(camadaId: string, brutas: unknown[], opcoes?: OpcoesCamadaFeicoes): ResultadoFeicoes;
108
56
  adicionarFeicao(camadaId: string, bruta: unknown, opcoes?: OpcoesCamadaFeicoes): Feicao | null;
109
- /**
110
- * Mescla campos de primeiro nível; `estilo` e `propriedades` também são mesclados. Com `substituirPropriedades`,
111
- * `propriedades` informadas trocam as atuais por inteiro (atributos ausentes somem).
112
- */
57
+ /** Mescla campos de primeiro nível; `estilo` e `propriedades` também são mesclados. Ver `RepositorioFeicoes`. */
113
58
  atualizarFeicao(camadaId: string, id: string, parcial: Record<string, any>, opcoes?: Pick<OpcoesLote, 'substituirPropriedades'>): Feicao | null;
114
59
  /** Grava uma feição já normalizada (usado quando o próprio mapa a altera, como ao arrastar um texto). */
115
60
  substituir(camadaId: string, feicao: Feicao): void;
116
61
  removerFeicao(camadaId: string, id: string): boolean;
117
- /**
118
- * Várias mudanças numa só regravação e num só `aposDados`: remove, depois atualiza, depois adiciona.
119
- * Adicionar um id que já existe substitui a feição mantendo a posição (a ordem de empilhamento não muda).
120
- */
62
+ /** Várias mudanças numa só regravação e num só `aposDados`: remove, depois atualiza, depois adiciona. */
121
63
  aplicarLote(camadaId: string, lote: LoteFeicoes, opcoes?: OpcoesLote): ResultadoLote;
122
- private mesclar;
123
- private aplicar;
124
64
  obterFeicoes(camadaId: string): Feicao[];
125
65
  /** Traduz as ações vindas do renderizador no evento a disparar pelo componente. */
126
66
  tratarAcaoCamada(acao: string, detalhe: {
@@ -134,7 +74,7 @@ export declare class GerenciadorFeicoes {
134
74
  /** Esc ou clique no vazio: durante a edição só encerra a edição; fora dela, limpa a seleção. */
135
75
  aoPedirLimpeza(): void;
136
76
  obterFeicoesSelecionadas(): Feicao[];
137
- /** Laço: seleciona (substituindo) as feições de camadas selecionáveis tocadas pelo polígono; a ferramenta encerra. */
77
+ /** Laço: seleciona (substituindo) as feições tocadas pelo polígono; a ferramenta encerra. */
138
78
  private selecionarNoLaco;
139
79
  /** Caixa de seleção: só feições de camadas visíveis, interativas e desbloqueadas, com toque geométrico real. */
140
80
  selecionarNaCaixa(caixa: CaixaPx, modo: ModoCaixa, aditivo: boolean): void;
@@ -150,14 +90,12 @@ export declare class GerenciadorFeicoes {
150
90
  definirMargensHud(m: Partial<MargensHud>): void;
151
91
  private aplicarMargensHud;
152
92
  get regraVersoes(): RegraVersoes;
153
- private oficiaisDe;
154
93
  /** Aparece segundo a regra de oficial × prévia? */
155
94
  visivelPorVersao(f: Feicao): boolean;
156
95
  /** Vai para a tela e responde a clique, caixa, laço, snap e hover: não excluída, não oculta e visível pela regra de versões. */
157
96
  desenhada(f: Feicao): boolean;
158
97
  /** Regra da seleção: a feição em edição continua selecionada mesmo se for ocultada no meio da edição. */
159
98
  private selecionavelAgora;
160
- private aplicarVersoes;
161
99
  get previasGlobais(): boolean;
162
100
  /** Mostra (ou esconde) as prévias de todas as entidades. Prévias de entidades sem oficial aparecem sempre. */
163
101
  definirPreviasGlobais(ligado: boolean): void;
@@ -170,10 +108,6 @@ export declare class GerenciadorFeicoes {
170
108
  removerCursorRemoto(id: string): boolean;
171
109
  limparCursoresRemotos(): void;
172
110
  get cursoresRemotos(): number;
173
- /** Mostra o que estava escondido (camada oculta, prévia não solicitada) para a feição poder ser vista. */
174
- private garantirVisivel;
175
- private limitesDe;
176
- private enquadrar;
177
111
  /** Aproxima da feição; liga a camada e a prévia, se estiverem escondidas. Ponto: voa até z ≥ 17. */
178
112
  zoomParaFeicao(camadaId: string, id: string): boolean;
179
113
  zoomParaFeicoes(refs: RefFeicao[]): boolean;
@@ -181,7 +115,6 @@ export declare class GerenciadorFeicoes {
181
115
  ajustarTudo(): boolean;
182
116
  /** Enquadra a camada inteira; se estava oculta, torna-a visível. */
183
117
  ajustarCamada(camadaId: string): boolean;
184
- private feicaoSob;
185
118
  /** Emite `cad-feicao-hover` quando a feição sob o mouse muda (uma checagem por quadro). */
186
119
  aoMoverMouse(e: MouseEvent): void;
187
120
  /** Botão direito: emite `cad-feicao-menu` com a feição sob o cursor (ou `null`), para o consumidor abrir o próprio menu. */
@@ -194,13 +127,19 @@ export declare class GerenciadorFeicoes {
194
127
  alternarSnap(): void;
195
128
  conectarTeclado(): void;
196
129
  desconectarTeclado(): void;
197
- /** Feições visíveis das camadas de feições cujo envelope toca um quadrado de `tolPx` px em volta de `coord`. */
130
+ /** Feições visíveis cujo envelope toca um quadrado de `tolPx` px em volta de `coord`. */
198
131
  private candidatasEm;
199
132
  /** Snap de uma coordenada contra as feições visíveis de todas as camadas de feições (via índice espacial). */
200
133
  buscarSnapEm(coord: [number, number], excluir?: ExcluirSnap): import('../../gerencigeo-canvas').ResultadoSnap | null;
134
+ /** @internal Editor de vértices (usado pelos testes de caracterização). */
135
+ get editor(): EditorVertices | null;
201
136
  get editando(): boolean;
202
137
  iniciarEdicao(camadaId: string, id: string): ResultadoEdicao;
203
138
  pararEdicao(): void;
139
+ /** @internal Controle de desenho (usado pelos testes de caracterização). */
140
+ get desenho(): ControleDesenho | null;
141
+ /** @internal Conta-gotas (usado pelos testes de caracterização). */
142
+ amostrarEstilo(coord: LatLonPar): void;
204
143
  get ferramentaAtiva(): Ferramenta | null;
205
144
  /** Camada que recebe o que for desenhado. Não existe camada padrão: o consumidor escolhe. */
206
145
  definirCamadaDesenho(camadaId: string | null): void;
@@ -220,22 +159,8 @@ export declare class GerenciadorFeicoes {
220
159
  desfazerVerticeDesenho(): boolean;
221
160
  /** Liga/desliga a tecla S do snap (o botão e `definirSnap` continuam valendo). */
222
161
  definirAtalhoSnap(ligado: boolean): void;
223
- private motivoCamadaDesenhoInvalida;
224
- private novoId;
225
162
  private idLivre;
226
- /**
227
- * Clique da ferramenta texto: emite `cad-texto-solicitado` (cancelável). Com `preventDefault()` o consumidor assume a
228
- * entrada do texto e depois chama `detalhe.concluir(texto)` (cria na camada de desenho, com o estilo de desenho) ou
229
- * simplesmente não faz nada para cancelar. Sem `preventDefault()`, aparece o campo inline.
230
- */
231
- private solicitarTexto;
232
- private concluirFerramenta;
233
- /** Conta-gotas: copia o estilo da feição sob o clique para o estilo de desenho. */
234
- private amostrarEstilo;
235
- /**
236
- * Divide polígonos pela linha de corte. Alvos: os polígonos selecionados; sem seleção, o primeiro
237
- * polígono (de camada visível, interativa e desbloqueada) que a linha corta.
238
- */
163
+ /** Divide polígonos pela linha de corte (selecionados; sem seleção, o primeiro cortado). Ver `OperacoesFeicoes`. */
239
164
  dividirComLinha(linha: LatLonPar[]): boolean;
240
165
  /** Cria um polígono de buffer ao redor da feição (na camada dela, ou em `camadaDestino`). */
241
166
  gerarBuffer(camadaId: string, id: string, metros: number, opcoes?: {
@@ -249,14 +174,9 @@ export declare class GerenciadorFeicoes {
249
174
  }, opcoes?: {
250
175
  id?: string;
251
176
  }): Feicao | null;
252
- /**
253
- * Junta linhas (encadeando pontas) ou dois polígonos (por uma ponte) numa feição só; as originais saem.
254
- * Linhas com pontas a até `toleranciaM` se ligam; polígonos precisam estar a até `toleranciaM` e
255
- * não podem ter bordas que se cruzam.
256
- */
177
+ /** Junta linhas (encadeando pontas) ou dois polígonos numa feição só; as originais saem. Ver `OperacoesFeicoes`. */
257
178
  juntarFeicoes(camadaId: string, ids: string[], opcoes?: {
258
179
  toleranciaM?: number;
259
180
  id?: string;
260
181
  }): Feicao | null;
261
182
  }
262
- export {};
@@ -3,6 +3,8 @@ import { GerenciGeoMapaController } from '../../gerencigeo-canvas/mapa_controlle
3
3
  import { GerenciadorToolbarPainel } from './cad-toolbar-painel';
4
4
  import { GerenciadorColecoesDados } from './cad-colecoes-dados';
5
5
  import { ContextoEventosCanvas } from './cad-eventos-canvas';
6
+ import { EventoMapaCad, LatLngEvento } from './tipos';
7
+ import { PontoPixel } from './cad-evento-coordenadas';
6
8
  export interface ContextoInicializadorCAD {
7
9
  host: UICanvasCAD;
8
10
  shadow: ShadowRoot;
@@ -13,7 +15,7 @@ export interface ContextoInicializadorCAD {
13
15
  obterContextoEventos: () => ContextoEventosCanvas;
14
16
  renderLayersUI: () => void;
15
17
  invalidateSizeSafely: () => void;
16
- tratarCliqueLivreCanvas: (e: any, latlng?: any, containerPoint?: any) => void;
18
+ tratarCliqueLivreCanvas: (e: MouseEvent | EventoMapaCad, latlng?: LatLngEvento, containerPoint?: PontoPixel) => void;
17
19
  dispararAcaoPopup: (acaoId: string, elementoId: string | number, elemento?: any) => void;
18
20
  }
19
21
  export declare function inicializarCAD(ctx: ContextoInicializadorCAD): void;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * O Leaflet recusa inicializar um contêiner já marcado com `_leaflet_id` ("Map container is already initialized").
3
+ * Limpa a marca; devolve `true` se havia uma.
4
+ */
5
+ export declare function liberarContainerLeaflet(container: HTMLElement | null | undefined): boolean;
@@ -0,0 +1,5 @@
1
+ import { GerenciGeoMapaController } from '../../gerencigeo-canvas/mapa_controller';
2
+ type IdPonto = string | number;
3
+ export declare function lerPontosSelecionados(controller: GerenciGeoMapaController): IdPonto[];
4
+ export declare function gravarPontosSelecionados(controller: GerenciGeoMapaController, ids: IdPonto[]): void;
5
+ export {};
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Tipos "emprestados" do Leaflet e do contexto do mapa usados pelo <ui-canvas-cad>.
3
+ * Responsabilidade única: descrever, em um só lugar, as formas dinâmicas que o código antes acessava com `as any`.
4
+ */
5
+ /** Contêiner de mapa do Leaflet: o Leaflet marca o elemento com `_leaflet_id` ao inicializar. */
6
+ export type ContainerLeaflet = HTMLElement & {
7
+ _leaflet_id?: number;
8
+ };
9
+ export interface PontoPixelEvento {
10
+ x?: number;
11
+ y?: number;
12
+ }
13
+ export interface LatLngEvento {
14
+ lat?: number;
15
+ lng?: number;
16
+ /** Alguns emissores usam `lon`. */
17
+ lon?: number;
18
+ }
19
+ /** Evento de mapa/DOM como chega ao canvas: pode ser do Leaflet (com `originalEvent`) ou um MouseEvent cru. */
20
+ export interface EventoMapaCad {
21
+ originalEvent?: EventoMapaCad;
22
+ target?: EventTarget | null;
23
+ composedPath?: () => EventTarget[];
24
+ clientX?: number;
25
+ clientY?: number;
26
+ containerPoint?: PontoPixelEvento;
27
+ layerPoint?: PontoPixelEvento;
28
+ latlng?: LatLngEvento;
29
+ }
30
+ /** Elemento com coordenadas em qualquer das grafias aceitas na entrada. */
31
+ export interface ElementoComCoordenadas {
32
+ lat?: number | string;
33
+ lon?: number | string;
34
+ lng?: number | string;
35
+ latitude?: number | string;
36
+ longitude?: number | string;
37
+ }
@@ -3,6 +3,8 @@ import { Ponto, Segmento, BancoPonto, Confrontante, CanvasLayerState, CanvasGrap
3
3
  import { GerenciGeoMapaController } from '../../gerencigeo-canvas/mapa_controller';
4
4
  import { CanvasLayerManager } from '../../gerencigeo-canvas/layer_manager';
5
5
  import { UsuarioRemoto } from '../../gerencigeo-canvas/feature_cursores';
6
+ import { EventoMapaCad, LatLngEvento } from './tipos';
7
+ import { PontoPixel } from './cad-evento-coordenadas';
6
8
  import { OpcoesCamadaFeicoes, OpcoesLote, LoteFeicoes, ResultadoLote, ResultadoFeicoes, ResultadoEdicao, ResultadoFerramenta } from './cad-feicoes';
7
9
  import { EstiloFeicao, Feicao } from '../../gerencigeo-canvas/feature_types';
8
10
  import { SafeHTMLElement } from '../../core/ssr-safe';
@@ -20,6 +22,7 @@ export declare class UICanvasCAD extends SafeHTMLElement {
20
22
  private feicoes;
21
23
  private barraFerramentas;
22
24
  private hoverListeners;
25
+ private desligarAnuncios;
23
26
  private layerItemListeners;
24
27
  private initTimeout?;
25
28
  private estilosExternos;
@@ -46,7 +49,7 @@ export declare class UICanvasCAD extends SafeHTMLElement {
46
49
  definirEstilosExternos(css: EstilosExternos): void;
47
50
  private initCAD;
48
51
  private obterContextoEventos;
49
- tratarCliqueLivreCanvas(e: MouseEvent | any, latLng?: any, pt?: any): void;
52
+ tratarCliqueLivreCanvas(e: MouseEvent | EventoMapaCad, latLng?: LatLngEvento, pt?: PontoPixel): void;
50
53
  dispararAcaoPopup(acaoId: string, elementoId: string | number, elemento?: any): void;
51
54
  toggleLayersPanel(): void;
52
55
  closeLayersPanel(): void;
@@ -25,11 +25,14 @@ export declare class UICheckbox extends FormAssociatedElement {
25
25
  set disabled(val: boolean);
26
26
  get type(): string;
27
27
  atualizarValidade(): void;
28
+ /** `focus()` no host leva o foco ao controle interno (necessário para o foco de validação do formulário). */
29
+ focus(options?: FocusOptions): void;
28
30
  alternar(): void;
29
31
  protected syncState(): void;
30
32
  formResetCallback(): void;
31
- formStateRestoreCallback(state: any, _mode: 'restore' | 'autocomplete'): void;
33
+ formStateRestoreCallback(state: unknown, _mode: 'restore' | 'autocomplete'): void;
32
34
  private handleClick;
35
+ private handleHostClick;
33
36
  private handleKeyDown;
34
37
  private handleFocus;
35
38
  private handleBlur;
@@ -0,0 +1 @@
1
+ export * from './ui-linha';