@thibezer/ui-components-kit 2.8.0 → 2.8.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.
- package/CHANGELOG.md +203 -265
- package/README.md +791 -815
- package/dist/botao.cjs +1 -1
- package/dist/botao.js +1 -1
- package/dist/camadas.cjs +94 -94
- package/dist/camadas.js +1124 -1218
- package/dist/campo-texto.cjs +1 -1
- package/dist/campo-texto.js +1 -1
- package/dist/canvas.cjs +65 -66
- package/dist/canvas.js +3444 -3795
- package/dist/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/components/ui-avatar/ui-avatar.d.ts +0 -11
- package/dist/components/ui-badge/ui-badge.d.ts +0 -2
- package/dist/components/ui-barra-ferramentas/ferramentas-comum.d.ts +22 -1
- package/dist/components/ui-barra-ferramentas/tipos.d.ts +31 -0
- package/dist/components/ui-barra-ferramentas/ui-paleta-ferramentas.d.ts +17 -1
- package/dist/components/ui-barra-ferramentas/ui-ribbon.d.ts +17 -0
- package/dist/components/ui-camadas/camadas-arraste-controles.d.ts +0 -2
- package/dist/components/ui-camadas/camadas-arvore-renderer.d.ts +11 -4
- package/dist/components/ui-camadas/camadas-drag-drop.d.ts +1 -13
- package/dist/components/ui-camadas/ui-camadas.d.ts +5 -3
- package/dist/components/ui-canvas-cad/cad-atributos-sync.d.ts +1 -2
- package/dist/components/ui-canvas-cad/cad-broadcast.d.ts +1 -1
- package/dist/components/ui-canvas-cad/cad-eventos-canvas.d.ts +8 -3
- package/dist/components/ui-canvas-cad/cad-feicoes.d.ts +106 -26
- package/dist/components/ui-canvas-cad/cad-inicializador.d.ts +1 -3
- package/dist/components/ui-canvas-cad/ui-canvas-cad.d.ts +1 -4
- package/dist/components/ui-checkbox/ui-checkbox.d.ts +1 -4
- package/dist/components/ui-cores/tipos.d.ts +0 -2
- package/dist/components/ui-cores/ui-controle-cores.d.ts +3 -8
- package/dist/components/ui-cores/ui-seletor-cor.d.ts +1 -3
- package/dist/components/ui-mapa/ui-mapa-linha.d.ts +5 -12
- package/dist/components/ui-mapa/ui-mapa-marcador.d.ts +6 -15
- package/dist/components/ui-mapa/ui-mapa.d.ts +1 -14
- package/dist/components/ui-modal/modal-acessibilidade.d.ts +5 -5
- package/dist/components/ui-modal/ui-modal.d.ts +11 -1
- package/dist/components/ui-radio/radio-grupo-registry.d.ts +0 -10
- package/dist/components/ui-radio/ui-radio.d.ts +2 -9
- package/dist/components/ui-skeleton/ui-skeleton.d.ts +0 -9
- package/dist/components/ui-switch/ui-switch.d.ts +1 -3
- package/dist/components/ui-tabela/ui-tabela.d.ts +19 -1
- package/dist/components/ui-tooltip/ui-tooltip.d.ts +1 -24
- package/dist/core/index.d.ts +0 -1
- package/dist/core.cjs +1 -1
- package/dist/core.js +18 -28
- package/dist/cores.cjs +1 -1
- package/dist/cores.js +1 -1
- package/dist/custom-elements.json +18859 -23721
- package/dist/data.cjs +1 -1
- package/dist/data.js +2 -2
- package/dist/feedback.cjs +1 -1
- package/dist/feedback.js +2 -2
- package/dist/form-validacao-BIOXxt-1.js +140 -0
- package/dist/form-validacao-ytRYSF3E.cjs +1 -0
- package/dist/forms.cjs +1 -1
- package/dist/forms.js +2 -2
- package/dist/gerencigeo-canvas/feature_metricas.d.ts +9 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.js +178 -179
- package/dist/mapa.cjs +16 -11
- package/dist/mapa.js +170 -242
- package/dist/modal.cjs +1 -1
- package/dist/modal.js +1 -1
- package/dist/register.cjs +1 -1
- package/dist/register.js +11 -11
- package/dist/svg-seguro-ChVJ2L2z.js +74 -0
- package/dist/svg-seguro-J2RM1Ssf.cjs +1 -0
- package/dist/tabela.cjs +1 -1
- package/dist/tabela.js +1 -1
- package/dist/tipos-elementos.d.ts +17 -35
- package/dist/tipos-react.d.ts +0 -2
- package/dist/tipos-vue.d.ts +12 -34
- package/dist/tools.cjs +1 -1
- package/dist/tools.js +1 -1
- package/dist/ui-badge-BxT-sDmV.cjs +28 -0
- package/dist/ui-badge-C0eKBI8E.js +183 -0
- package/dist/ui-botao-BOOnP8ds.cjs +12 -0
- package/dist/ui-botao-DfqSivHl.js +165 -0
- package/dist/ui-botao-OGJV6Vfk.js +165 -0
- package/dist/ui-botao-psS1juof.cjs +12 -0
- package/dist/ui-campo-texto-Cnn2UAkS.cjs +16 -0
- package/dist/{ui-campo-texto-B_OHVGiN.js → ui-campo-texto-Uu2dJE_0.js} +51 -51
- package/dist/ui-card-B86lJXTP.cjs +20 -0
- package/dist/{ui-card-BNYCQ7g-.js → ui-card-C_o5_0cB.js} +42 -50
- package/dist/ui-controle-cores-BS0WYPdi.js +572 -0
- package/dist/ui-controle-cores-Er6ZcQ7U.cjs +111 -0
- package/dist/ui-kit.css +1 -1
- package/dist/ui-modal-CvGFGh1h.cjs +18 -0
- package/dist/{ui-modal-BkYvNP0G.js → ui-modal-DBOtSTbR.js} +140 -116
- package/dist/ui-paleta-ferramentas-CEZYcN4J.js +624 -0
- package/dist/ui-paleta-ferramentas-CU4icLl0.js +1171 -0
- package/dist/{ui-paleta-ferramentas-bDLPbiGA.cjs → ui-paleta-ferramentas-Ccmo-rB5.cjs} +7 -7
- package/dist/ui-paleta-ferramentas-DLwZHIDv.cjs +21 -0
- package/dist/{ui-paleta-ferramentas-Ksh6gMW3.js → ui-paleta-ferramentas-DNN5i6nL.js} +329 -359
- package/dist/ui-paleta-ferramentas-Dbj1kBS9.cjs +18 -0
- package/dist/ui-paleta-ferramentas-DbwdWVtT.js +1173 -0
- package/dist/ui-paleta-ferramentas-bvqxj1Yd.cjs +21 -0
- package/dist/ui-segmented-D6b6zxVs.cjs +19 -0
- package/dist/ui-segmented-DyF5YLsV.js +418 -0
- package/dist/ui-segmented-rn9RxRGM.cjs +19 -0
- package/dist/{ui-linha-nCDh2wPm.js → ui-segmented-wUraId2e.js} +105 -200
- package/dist/ui-skeleton-DI4_9WOX.js +428 -0
- package/dist/{ui-skeleton-DiOxTBZK.cjs → ui-skeleton-SPYqku8P.cjs} +10 -10
- package/dist/{ui-skeleton-B2Rgrv8o.js → ui-skeleton-W9uwIceA.js} +191 -254
- package/dist/ui-skeleton-elhKIh2B.cjs +33 -0
- package/dist/{ui-switch-DO1R0Ce7.js → ui-switch-BcOqOkiV.js} +128 -187
- package/dist/ui-switch-D7iPKDj-.cjs +53 -0
- package/dist/ui-tabela-propriedades-BBr5sqki.cjs +145 -0
- package/dist/{ui-tabela-propriedades-DzZlyNZ_.cjs → ui-tabela-propriedades-BecPqC-e.cjs} +10 -10
- package/dist/{ui-tabela-propriedades-D9Echt2X.js → ui-tabela-propriedades-BokvDD3b.js} +826 -845
- package/dist/ui-tabela-propriedades-Boy7I5yW.js +2412 -0
- package/dist/ui-tabela-propriedades-C-PeuW1i.cjs +141 -0
- package/dist/ui-tabela-propriedades-Df9ajC6M.js +2648 -0
- package/dist/ui-toast-Bp_NlM5G.js +156 -0
- package/dist/ui-toast-DGTZKne5.cjs +20 -0
- package/dist/zero-js-triggers-C_KrvFOQ.js +244 -0
- package/dist/zero-js-triggers-C_gtaojZ.cjs +1 -0
- package/package.json +3 -3
- package/dist/acessibilidade-CSzX-DkG.cjs +0 -1
- package/dist/acessibilidade-CUlSXc2X.js +0 -38
- package/dist/altura-controle-ukMRPckR.cjs +0 -1
- package/dist/altura-controle-vxQiXG4q.js +0 -62
- package/dist/components/ui-barra-ferramentas/paleta-atalhos.d.ts +0 -16
- package/dist/components/ui-barra-ferramentas/paleta-pressao-longa.d.ts +0 -24
- package/dist/components/ui-barra-ferramentas/ribbon-render.d.ts +0 -14
- package/dist/components/ui-barra-ferramentas/ribbon-teclado.d.ts +0 -17
- package/dist/components/ui-camadas/camadas-colecao.d.ts +0 -27
- package/dist/components/ui-camadas/camadas-drop-ops.d.ts +0 -31
- package/dist/components/ui-camadas/camadas-hierarquia.d.ts +0 -10
- package/dist/components/ui-camadas/camadas-lembranca.d.ts +0 -34
- package/dist/components/ui-camadas/camadas-render.d.ts +0 -14
- package/dist/components/ui-camadas/camadas-renomear.d.ts +0 -12
- package/dist/components/ui-camadas/camadas-selecao-api.d.ts +0 -17
- package/dist/components/ui-camadas/camadas-thumb.d.ts +0 -1
- package/dist/components/ui-canvas-cad/cad-acessibilidade.d.ts +0 -15
- package/dist/components/ui-canvas-cad/cad-evento-coordenadas.d.ts +0 -22
- package/dist/components/ui-canvas-cad/cad-feicoes-camera.d.ts +0 -26
- package/dist/components/ui-canvas-cad/cad-feicoes-consulta.d.ts +0 -21
- package/dist/components/ui-canvas-cad/cad-feicoes-dados.d.ts +0 -39
- package/dist/components/ui-canvas-cad/cad-feicoes-desenho.d.ts +0 -68
- package/dist/components/ui-canvas-cad/cad-feicoes-edicao.d.ts +0 -37
- package/dist/components/ui-canvas-cad/cad-feicoes-operacoes.d.ts +0 -48
- package/dist/components/ui-canvas-cad/cad-feicoes-ponteiro.d.ts +0 -24
- package/dist/components/ui-canvas-cad/cad-feicoes-selecao-regiao.d.ts +0 -22
- package/dist/components/ui-canvas-cad/cad-feicoes-tipos.d.ts +0 -53
- package/dist/components/ui-canvas-cad/cad-feicoes-versoes.d.ts +0 -33
- package/dist/components/ui-canvas-cad/cad-leaflet-adaptador.d.ts +0 -5
- package/dist/components/ui-canvas-cad/cad-selecao-pontos.d.ts +0 -5
- package/dist/components/ui-canvas-cad/tipos.d.ts +0 -37
- package/dist/components/ui-linha/index.d.ts +0 -1
- package/dist/components/ui-linha/ui-linha.d.ts +0 -48
- package/dist/components/ui-mapa/mapa-atributos.d.ts +0 -14
- package/dist/components/ui-mapa/mapa-basemaps.d.ts +0 -7
- package/dist/components/ui-mapa/mapa-icones.d.ts +0 -4
- package/dist/components/ui-mapa/mapa-leaflet.d.ts +0 -5
- package/dist/components/ui-mapa/mapa-vinculo-pai.d.ts +0 -22
- package/dist/components/ui-mapa/tipos.d.ts +0 -13
- package/dist/components/ui-modal/modal-foco.d.ts +0 -28
- package/dist/components/ui-tabela/tabela-estados.d.ts +0 -16
- package/dist/components/ui-tabela/tabela-rolagem.d.ts +0 -44
- package/dist/components/ui-tabela/tabela-teclado.d.ts +0 -16
- package/dist/components/ui-tooltip/tooltip-popover.d.ts +0 -7
- package/dist/components/ui-tooltip/tooltip-posicionamento.d.ts +0 -29
- package/dist/core/altura-controle.d.ts +0 -34
- package/dist/core/opcoes.d.ts +0 -9
- package/dist/core/rotulo-controle.d.ts +0 -13
- package/dist/form-validacao-BlQFxUVj.js +0 -104
- package/dist/form-validacao-DIeyQVH5.cjs +0 -1
- package/dist/opcoes-CJYLi6kd.js +0 -12
- package/dist/opcoes-CkyDxBuQ.cjs +0 -1
- package/dist/ui-badge-BWhoGgo9.js +0 -197
- package/dist/ui-badge-SIR81R9l.cjs +0 -28
- package/dist/ui-botao-D24oXySA.cjs +0 -12
- package/dist/ui-botao-Dsj08jjw.js +0 -165
- package/dist/ui-campo-texto-DauJCde3.cjs +0 -16
- package/dist/ui-card-BrjBL-yo.cjs +0 -20
- package/dist/ui-controle-cores-DgEza3wF.js +0 -612
- package/dist/ui-controle-cores-uY__TgwW.cjs +0 -117
- package/dist/ui-linha-C6HBnsaw.cjs +0 -19
- package/dist/ui-modal-CUNbpbZ1.cjs +0 -18
- package/dist/ui-switch-D9a8XlVX.cjs +0 -53
package/dist/card.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});;/* empty css */const e=require("./ui-card-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});;/* empty css */const e=require("./ui-card-B86lJXTP.cjs");exports.UICard=e.UICard;
|
package/dist/card.js
CHANGED
|
@@ -3,21 +3,10 @@ export declare class UIAvatar extends SafeHTMLElement {
|
|
|
3
3
|
static get observedAttributes(): string[];
|
|
4
4
|
private avatarElement;
|
|
5
5
|
private statusElement;
|
|
6
|
-
/** O que este componente escreveu em aria-label / aria-hidden (para distinguir do que o consumidor definiu). */
|
|
7
|
-
private _rotuloAuto;
|
|
8
|
-
private _ocultoAuto;
|
|
9
|
-
private _sincronizando;
|
|
10
6
|
constructor();
|
|
11
7
|
connectedCallback(): void;
|
|
12
8
|
attributeChangedCallback(_name: string, _old: string | null, _value: string | null): void;
|
|
13
|
-
/** Iniciais por ponto de código (emoji e caracteres fora do BMP não são cortados ao meio). */
|
|
14
9
|
private extrairIniciais;
|
|
15
|
-
private lerNome;
|
|
16
|
-
/**
|
|
17
|
-
* Nome acessível: com nome, o host é uma imagem nomeada ("Ana, online"); sem nome, é decorativo.
|
|
18
|
-
* Um `aria-label`/`aria-hidden` definido pelo consumidor nunca é sobrescrito.
|
|
19
|
-
*/
|
|
20
|
-
private sincronizarAcessibilidade;
|
|
21
10
|
private syncState;
|
|
22
11
|
private renderFallback;
|
|
23
12
|
}
|
|
@@ -12,8 +12,6 @@ export declare class UIBadge extends SafeHTMLElement {
|
|
|
12
12
|
get removivel(): boolean;
|
|
13
13
|
set removivel(val: boolean);
|
|
14
14
|
private syncState;
|
|
15
|
-
get disabled(): boolean;
|
|
16
|
-
set disabled(val: boolean);
|
|
17
15
|
private handleRemove;
|
|
18
16
|
}
|
|
19
17
|
export declare class UIChip extends UIBadge {
|
|
@@ -8,7 +8,10 @@ export declare function avisarIdsDuplicados(ids: string[], contexto: string): vo
|
|
|
8
8
|
export declare function coletarIds(itens: FerramentaItem[], saida?: string[]): string[];
|
|
9
9
|
export declare function aplicarEstadoBotao(btn: HTMLButtonElement, item: FerramentaItem): void;
|
|
10
10
|
export declare function criarBotaoFerramenta(item: FerramentaItem, variante: VarianteBotaoFerramenta, tamanhoIcone: number): HTMLButtonElement;
|
|
11
|
+
/** Cria um botão dividido (split button) com ação principal + seta dropdown separada. */
|
|
12
|
+
export declare function criarBotaoDividido(item: FerramentaItem, variante: VarianteBotaoFerramenta, tamanhoIcone: number): HTMLElement;
|
|
11
13
|
export declare function acharItem(itens: FerramentaItem[], id: string): FerramentaItem | undefined;
|
|
14
|
+
export declare function correspondeAtalho(e: KeyboardEvent, atalho: string | undefined): boolean;
|
|
12
15
|
export declare function definirRoving(botoes: HTMLButtonElement[]): void;
|
|
13
16
|
/** Garante um único botão com tabindex 0, preservando o atual se ainda estiver habilitado. */
|
|
14
17
|
export declare function atualizarRoving(botoes: HTMLButtonElement[]): void;
|
|
@@ -16,8 +19,26 @@ export declare function atualizarRoving(botoes: HTMLButtonElement[]): void;
|
|
|
16
19
|
export declare function seguirFoco(botoes: HTMLButtonElement[], alvo: EventTarget | null): void;
|
|
17
20
|
/** Move o foco entre botões com as setas informadas. Retorna true se tratou a tecla. */
|
|
18
21
|
export declare function navegarRoving(e: KeyboardEvent, botoes: HTMLButtonElement[], teclasAnterior: string[], teclasProximo: string[]): boolean;
|
|
22
|
+
/** Navegação em grade de 2 colunas para paletas verticais com colunas=2. */
|
|
23
|
+
export declare function navegarGrade2Colunas(e: KeyboardEvent, botoes: HTMLButtonElement[], rtl?: boolean): boolean;
|
|
24
|
+
export declare class GerenciadorTooltip {
|
|
25
|
+
private raiz;
|
|
26
|
+
private el;
|
|
27
|
+
private textoEl;
|
|
28
|
+
private atalhoEl;
|
|
29
|
+
private timer;
|
|
30
|
+
private alvoAtual;
|
|
31
|
+
private readonly id;
|
|
32
|
+
private listeners;
|
|
33
|
+
constructor(raiz: ShadowRoot, container: HTMLElement);
|
|
34
|
+
private agendar;
|
|
35
|
+
mostrar(btn: HTMLElement, texto: string, atalho?: string): void;
|
|
36
|
+
esconder(): void;
|
|
37
|
+
private limparTimer;
|
|
38
|
+
destruir(): void;
|
|
39
|
+
}
|
|
19
40
|
export interface OpcoesMenu {
|
|
20
|
-
lado?: 'baixo' | 'direita';
|
|
41
|
+
lado?: 'baixo' | 'direita' | 'esquerda';
|
|
21
42
|
/** Foca o primeiro item ao abrir (abertura por teclado). */
|
|
22
43
|
focar?: boolean;
|
|
23
44
|
/** Papel dos itens sem `tipo`: ribbon = botao (menuitem), paleta = ferramenta (menuitemradio). */
|
|
@@ -32,11 +32,36 @@ export interface FerramentaItem {
|
|
|
32
32
|
somenteIcone?: boolean;
|
|
33
33
|
/** Ribbon: itens do menu suspenso. Paleta: ferramentas agrupadas (flyout). */
|
|
34
34
|
filhos?: FerramentaItem[];
|
|
35
|
+
/**
|
|
36
|
+
* Ribbon: botão dividido (split button). A ação principal dispara no clique do corpo
|
|
37
|
+
* e a seta abre o menu suspenso com os `filhos`.
|
|
38
|
+
*/
|
|
39
|
+
dividido?: boolean;
|
|
35
40
|
}
|
|
36
41
|
export interface RibbonGrupo {
|
|
37
42
|
id: string;
|
|
38
43
|
rotulo: string;
|
|
39
44
|
itens: FerramentaItem[];
|
|
45
|
+
/**
|
|
46
|
+
* Prioridade para colapso automático quando a largura é insuficiente (estilo Office).
|
|
47
|
+
* Grupos de menor prioridade viram um botão único com flyout primeiro. Padrão: 0.
|
|
48
|
+
*/
|
|
49
|
+
prioridade?: number;
|
|
50
|
+
/** Ícone exibido quando o grupo for colapsado em um botão de flyout. */
|
|
51
|
+
icone?: string;
|
|
52
|
+
/**
|
|
53
|
+
* Exibe um botão "lançador de diálogo" no canto inferior do grupo (estilo Office Dialog Box Launcher).
|
|
54
|
+
* Pode ser `true` ou o identificador/ação a disparar.
|
|
55
|
+
*/
|
|
56
|
+
lancadorDialogo?: boolean | string;
|
|
57
|
+
/** Rótulo acessível para o botão lançador de diálogo. Padrão: "Mais opções de [rotulo]". */
|
|
58
|
+
rotuloLancador?: string;
|
|
59
|
+
/**
|
|
60
|
+
* Quando `true` (padrão para grupos com ferramentas no ribbon), garante exclusividade
|
|
61
|
+
* de seleção entre itens `tipo: 'ferramenta'` dentro do mesmo grupo.
|
|
62
|
+
* Defina como `false` para desativar a exclusividade automática no grupo.
|
|
63
|
+
*/
|
|
64
|
+
exclusivo?: boolean;
|
|
40
65
|
}
|
|
41
66
|
export interface RibbonAba {
|
|
42
67
|
id: string;
|
|
@@ -73,6 +98,11 @@ export interface PaletaChangeDetail {
|
|
|
73
98
|
export interface RecolhidoChangeDetail {
|
|
74
99
|
recolhido: boolean;
|
|
75
100
|
}
|
|
101
|
+
/** `detail` de `ui-grupo-dialogo` do ribbon (lançador de diálogo do grupo). */
|
|
102
|
+
export interface GrupoDialogoDetail {
|
|
103
|
+
id: string;
|
|
104
|
+
grupo: RibbonGrupo;
|
|
105
|
+
}
|
|
76
106
|
declare global {
|
|
77
107
|
interface HTMLElementEventMap {
|
|
78
108
|
/** Cancelável: `preventDefault()` reverte o toggle / a seleção feita pelo clique. */
|
|
@@ -81,5 +111,6 @@ declare global {
|
|
|
81
111
|
'ui-recolhido-change': CustomEvent<RecolhidoChangeDetail>;
|
|
82
112
|
'ui-change': CustomEvent<PaletaChangeDetail>;
|
|
83
113
|
'ui-selecionar': CustomEvent<PaletaChangeDetail>;
|
|
114
|
+
'ui-grupo-dialogo': CustomEvent<GrupoDialogoDetail>;
|
|
84
115
|
}
|
|
85
116
|
}
|
|
@@ -26,12 +26,25 @@ export declare class UIPaletaFerramentas extends SafeHTMLElement {
|
|
|
26
26
|
private _pendente;
|
|
27
27
|
private visiveis;
|
|
28
28
|
private menu;
|
|
29
|
-
private
|
|
29
|
+
private timerPressao;
|
|
30
|
+
private timerSupressao;
|
|
31
|
+
private inicioPressao;
|
|
32
|
+
private suprimirClique;
|
|
30
33
|
private listeners;
|
|
34
|
+
private tooltip;
|
|
35
|
+
private _modoControlado;
|
|
31
36
|
constructor();
|
|
32
37
|
connectedCallback(): void;
|
|
33
38
|
disconnectedCallback(): void;
|
|
34
39
|
attributeChangedCallback(name: string, old: string | null, value: string | null): void;
|
|
40
|
+
/**
|
|
41
|
+
* Quando `true` ou atributo `copiar-dados` / `modo-controlado`: clona a árvore de itens
|
|
42
|
+
* para não mutar os objetos fornecidos pelo consumidor (Item 11).
|
|
43
|
+
*/
|
|
44
|
+
get modoControlado(): boolean;
|
|
45
|
+
set modoControlado(val: boolean);
|
|
46
|
+
get copiarDados(): boolean;
|
|
47
|
+
set copiarDados(val: boolean);
|
|
35
48
|
get ferramentas(): FerramentaItem[];
|
|
36
49
|
set ferramentas(val: FerramentaItem[]);
|
|
37
50
|
get valor(): string;
|
|
@@ -68,8 +81,11 @@ export declare class UIPaletaFerramentas extends SafeHTMLElement {
|
|
|
68
81
|
private handleClick;
|
|
69
82
|
private handleFocusIn;
|
|
70
83
|
private handlePointerDown;
|
|
84
|
+
/** Arrastar/rolar com o dedo cancela o clique longo. */
|
|
71
85
|
private handlePointerMove;
|
|
86
|
+
/** Fim do gesto: cancela o timer e, se o flyout abriu, descarta a supressão logo após o `click` residual. */
|
|
72
87
|
private handlePointerFim;
|
|
88
|
+
private cancelarPressao;
|
|
73
89
|
private handleContextMenu;
|
|
74
90
|
private handleKeyDown;
|
|
75
91
|
private handleAtalho;
|
|
@@ -10,15 +10,26 @@ export declare class UIRibbon extends SafeHTMLElement {
|
|
|
10
10
|
private readonly uid;
|
|
11
11
|
private _abaPendente;
|
|
12
12
|
private _pronto;
|
|
13
|
+
private _modoControlado;
|
|
13
14
|
private _abas;
|
|
14
15
|
private _abaAtiva;
|
|
15
16
|
private menu;
|
|
16
17
|
private listeners;
|
|
18
|
+
private tooltip;
|
|
19
|
+
private observerResize;
|
|
20
|
+
private gruposColapsados;
|
|
21
|
+
private keytipsAtivas;
|
|
17
22
|
constructor();
|
|
18
23
|
connectedCallback(): void;
|
|
19
24
|
disconnectedCallback(): void;
|
|
20
25
|
attributeChangedCallback(name: string, old: string | null, value: string | null): void;
|
|
21
26
|
private aplicarRotulos;
|
|
27
|
+
get modoControlado(): boolean;
|
|
28
|
+
set modoControlado(val: boolean);
|
|
29
|
+
get copiarDados(): boolean;
|
|
30
|
+
set copiarDados(val: boolean);
|
|
31
|
+
get ativacaoManual(): boolean;
|
|
32
|
+
set ativacaoManual(val: boolean);
|
|
22
33
|
get abas(): RibbonAba[];
|
|
23
34
|
set abas(val: RibbonAba[]);
|
|
24
35
|
get abaAtiva(): string;
|
|
@@ -40,6 +51,10 @@ export declare class UIRibbon extends SafeHTMLElement {
|
|
|
40
51
|
private renderizarAbas;
|
|
41
52
|
private idAba;
|
|
42
53
|
private renderizarPainel;
|
|
54
|
+
private iniciarResizeObserver;
|
|
55
|
+
private ajustarColapsoGrupos;
|
|
56
|
+
private alternarMenuGrupoColapsado;
|
|
57
|
+
private criarGrupo;
|
|
43
58
|
private criarBotao;
|
|
44
59
|
private botoesPainel;
|
|
45
60
|
private handleClickAbas;
|
|
@@ -51,6 +66,8 @@ export declare class UIRibbon extends SafeHTMLElement {
|
|
|
51
66
|
private handleKeyDownGrupos;
|
|
52
67
|
private handleEscape;
|
|
53
68
|
private handlePointerDownFora;
|
|
69
|
+
private handleAtalho;
|
|
70
|
+
private alternarKeyTips;
|
|
54
71
|
private acionar;
|
|
55
72
|
private alternarMenu;
|
|
56
73
|
private fecharMenu;
|
|
@@ -1,4 +1,2 @@
|
|
|
1
1
|
import { CamadasHostCompleto } from './camadas-host';
|
|
2
|
-
/** Cancela o gesto do `host`, soltando os ouvintes de `window` e devolvendo `user-select` ao `body`. */
|
|
3
|
-
export declare function cancelarArrasteControles(host: CamadasHostCompleto): void;
|
|
4
2
|
export declare function conectarArrasteControles(host: CamadasHostCompleto, shadow: ShadowRoot): void;
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { CamadaItem, FeicaoItem } from './tipos';
|
|
2
2
|
import { escapeHtml } from './camadas-utils';
|
|
3
|
-
import { renderizarThumbGeometria } from './camadas-thumb';
|
|
4
|
-
import { construirHierarquiaCamadas, CamadaNodoHierarquico } from './camadas-hierarquia';
|
|
5
3
|
export interface ParametrosRenderArvore {
|
|
6
4
|
camadas: CamadaItem[];
|
|
7
5
|
feicoes: FeicaoItem[];
|
|
@@ -15,6 +13,15 @@ export interface ParametrosRenderArvore {
|
|
|
15
13
|
limiteFeicoesPorCamada?: number;
|
|
16
14
|
mostrarBotaoColapsar?: boolean;
|
|
17
15
|
}
|
|
18
|
-
export { escapeHtml
|
|
19
|
-
export
|
|
16
|
+
export { escapeHtml };
|
|
17
|
+
export declare function renderizarThumbGeometria(tipo: string | undefined, cor: string, coords?: unknown): string;
|
|
18
|
+
export interface CamadaNodoHierarquico {
|
|
19
|
+
camada: CamadaItem;
|
|
20
|
+
depth: number;
|
|
21
|
+
subcamadas: CamadaNodoHierarquico[];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Organiza a lista de camadas em uma árvore hierárquica de nós baseada em parentId ou children
|
|
25
|
+
*/
|
|
26
|
+
export declare function construirHierarquiaCamadas(camadas: CamadaItem[]): CamadaNodoHierarquico[];
|
|
20
27
|
export declare function renderizarArvoreCamadas(params: ParametrosRenderArvore): string;
|
|
@@ -4,8 +4,6 @@ export interface UICamadasHost {
|
|
|
4
4
|
feicoes: FeicaoItem[];
|
|
5
5
|
editingLayerId: string | null;
|
|
6
6
|
editingFeatureId: string | null;
|
|
7
|
-
/** Camadas expandidas; ao aninhar uma camada, o pai se expande. */
|
|
8
|
-
expandedLayers?: Set<string>;
|
|
9
7
|
solicitarRenderizacao(): void;
|
|
10
8
|
dispararEvento(nome: string, detalhe: unknown): void;
|
|
11
9
|
salvarLembrancaEstado?(): void;
|
|
@@ -13,22 +11,12 @@ export interface UICamadasHost {
|
|
|
13
11
|
export declare class CamadasDragDropManager {
|
|
14
12
|
private host;
|
|
15
13
|
private shadow;
|
|
16
|
-
/** Cancela um arraste por toque em andamento (remove os ouvintes de `window`). */
|
|
17
|
-
private cancelarToque;
|
|
18
14
|
constructor(host: UICamadasHost, shadow: ShadowRoot);
|
|
19
15
|
bindAll(): void;
|
|
20
|
-
/** Solta o que ficou em `window` (arraste por toque interrompido pela desconexão do componente). */
|
|
21
|
-
destruir(): void;
|
|
22
16
|
bindInlineRename(): void;
|
|
23
|
-
private limparClassesDeArraste;
|
|
24
|
-
/** Depois de qualquer mudança na ordem/hierarquia de camadas. */
|
|
25
|
-
private aposReordenarCamadas;
|
|
26
|
-
private emitirFeicaoMovida;
|
|
27
|
-
private arrasteBloqueado;
|
|
28
17
|
bindDragAndDrop(): void;
|
|
29
18
|
/**
|
|
30
|
-
* Suporte a arraste por toque e ponteiro no handle (.ui-col-drag) para tablets e mobile
|
|
31
|
-
* Os ouvintes de `window` existem só durante o gesto e são soltos em `destruir()`.
|
|
19
|
+
* Suporte a arraste por toque e ponteiro no handle (.ui-col-drag) para tablets e mobile
|
|
32
20
|
*/
|
|
33
21
|
bindTouchDragAndDrop(): void;
|
|
34
22
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { SafeHTMLElement } from '../../core/ssr-safe';
|
|
2
2
|
import { CamadaItem, FeicaoItem, MapaBaseItem, AbaPainelCamadas } from './tipos';
|
|
3
3
|
import { CamadasHostCompleto } from './camadas-host';
|
|
4
|
-
import { LembrancaCamadas } from './camadas-lembranca';
|
|
5
4
|
export declare class UICamadas extends SafeHTMLElement implements CamadasHostCompleto {
|
|
6
5
|
static get observedAttributes(): string[];
|
|
7
6
|
private shadow;
|
|
@@ -12,10 +11,11 @@ export declare class UICamadas extends SafeHTMLElement implements CamadasHostCom
|
|
|
12
11
|
private conectado;
|
|
13
12
|
private profundidadeLote;
|
|
14
13
|
private renderPendente;
|
|
14
|
+
private camadasRemovidas;
|
|
15
15
|
/** Painéis conectados sem `id` nem `storage-key`: dividem a mesma chave de persistência. */
|
|
16
16
|
private static instanciasChavePadrao;
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
private origensCamadas;
|
|
18
|
+
private salvarLembrancaDebounced;
|
|
19
19
|
camadas: CamadaItem[];
|
|
20
20
|
feicoes: FeicaoItem[];
|
|
21
21
|
mapasBase: MapaBaseItem[];
|
|
@@ -79,6 +79,7 @@ export declare class UICamadas extends SafeHTMLElement implements CamadasHostCom
|
|
|
79
79
|
/** Atalho reativo para `definirMapasBase()` — não dispara eventos. */
|
|
80
80
|
get basemaps(): MapaBaseItem[];
|
|
81
81
|
set basemaps(mapas: MapaBaseItem[]);
|
|
82
|
+
private achatarCamadas;
|
|
82
83
|
definirCamadas(camadas: CamadaItem[], feicoes?: FeicaoItem[]): void;
|
|
83
84
|
definirFeicoes(feicoes: FeicaoItem[]): void;
|
|
84
85
|
definirMapasBase(mapas: MapaBaseItem[]): void;
|
|
@@ -113,6 +114,7 @@ export declare class UICamadas extends SafeHTMLElement implements CamadasHostCom
|
|
|
113
114
|
private conectarEventosGerais;
|
|
114
115
|
private sincronizarCamadaAtivaDOM;
|
|
115
116
|
sincronizarSelecaoDOM(): void;
|
|
117
|
+
private sincronizarSelecoesComFeicoesValidas;
|
|
116
118
|
notificarMudancaSelecao(): void;
|
|
117
119
|
}
|
|
118
120
|
export declare class UIPainelCamadas extends UICamadas {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ScaleMode } from '../../gerencigeo-canvas/types';
|
|
2
1
|
import { UICanvasCAD } from './ui-canvas-cad';
|
|
3
2
|
import { GerenciadorBroadcastConfig } from './cad-broadcast';
|
|
4
3
|
import { GerenciGeoMapaController } from '../../gerencigeo-canvas/mapa_controller';
|
|
@@ -8,7 +7,7 @@ export interface ContextoAtributosCAD {
|
|
|
8
7
|
mapContainer: HTMLDivElement | null;
|
|
9
8
|
broadcastConfig: GerenciadorBroadcastConfig;
|
|
10
9
|
setLayerOpacity: (id: string, op: number) => void;
|
|
11
|
-
setLayerScaleMode: (id: string, mode:
|
|
10
|
+
setLayerScaleMode: (id: string, mode: any) => void;
|
|
12
11
|
atualizarZonaProjecao: (zona: number) => void;
|
|
13
12
|
}
|
|
14
13
|
export declare function sincronizarAtributoCAD(ctx: ContextoAtributosCAD, name: string, oldVal: string, newVal: string): void;
|
|
@@ -14,6 +14,6 @@ export declare class GerenciadorBroadcastConfig {
|
|
|
14
14
|
private contexto;
|
|
15
15
|
constructor(contexto: ContextoBroadcastCAD);
|
|
16
16
|
conectar(canalNome?: string | null): void;
|
|
17
|
-
processarMensagem(
|
|
17
|
+
processarMensagem(data: any): void;
|
|
18
18
|
desconectar(): void;
|
|
19
19
|
}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { GerenciGeoMapaController } from '../../gerencigeo-canvas/mapa_controller';
|
|
2
|
-
import { EventoMapaCad, LatLngEvento } from './tipos';
|
|
3
|
-
import { PontoPixel } from './cad-evento-coordenadas';
|
|
4
2
|
export interface ContextoEventosCanvas {
|
|
5
3
|
host: HTMLElement;
|
|
6
4
|
controller: GerenciGeoMapaController;
|
|
@@ -10,7 +8,14 @@ export interface ContextoEventosCanvas {
|
|
|
10
8
|
obterElementoPorId: (id: string | number) => any;
|
|
11
9
|
fecharPopup: () => void;
|
|
12
10
|
}
|
|
13
|
-
export declare function processarCliqueLivreCanvas(ctx: ContextoEventosCanvas, e: MouseEvent |
|
|
11
|
+
export declare function processarCliqueLivreCanvas(ctx: ContextoEventosCanvas, e: MouseEvent | any, latLngParam?: {
|
|
12
|
+
lat: number;
|
|
13
|
+
lng?: number;
|
|
14
|
+
lon?: number;
|
|
15
|
+
}, containerPointParam?: {
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
}): boolean;
|
|
14
19
|
export declare function processarAcaoPopup(ctx: ContextoEventosCanvas, acaoId: string, elementoId: string | number, elemento?: any): void;
|
|
15
20
|
export declare function tratarCliqueMarcador(ctx: ContextoEventosCanvas, pId: string | number, isVizinho: boolean | undefined, elemento: any, coords: {
|
|
16
21
|
lat: number;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { CanvasLayerManager } from '../../gerencigeo-canvas/layer_manager';
|
|
2
|
+
import { LayerStyleDef } from '../../gerencigeo-canvas/types';
|
|
2
3
|
import { Feicao, EstiloFeicao, LatLonPar } from '../../gerencigeo-canvas/feature_types';
|
|
3
4
|
import { RegraVersoes } from '../../gerencigeo-canvas/feature_versoes';
|
|
4
5
|
import { UsuarioRemoto } from '../../gerencigeo-canvas/feature_cursores';
|
|
@@ -6,14 +7,48 @@ import { RefFeicao } from '../../gerencigeo-canvas/feature_selecao';
|
|
|
6
7
|
import { CaixaPx, ModoCaixa } from '../../gerencigeo-canvas/feature_caixa';
|
|
7
8
|
import { MargensPopup } from '../../gerencigeo-canvas/feature_popup';
|
|
8
9
|
import { default as L } from 'leaflet';
|
|
10
|
+
import { MotivoRecusaEdicao } from '../../gerencigeo-canvas/feature_edicao_ops';
|
|
9
11
|
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
|
-
|
|
15
|
-
export
|
|
16
|
-
|
|
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
|
+
}
|
|
17
52
|
interface Contexto {
|
|
18
53
|
obterLayerManager: () => CanvasLayerManager;
|
|
19
54
|
obterMapa: () => L.Map | null;
|
|
@@ -26,21 +61,36 @@ interface Contexto {
|
|
|
26
61
|
/** Regra de oficial × prévia compartilhada com o renderizador (o componente a põe no contexto de renderização). */
|
|
27
62
|
regra?: RegraVersoes;
|
|
28
63
|
}
|
|
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
|
+
}
|
|
29
77
|
export declare class GerenciadorFeicoes {
|
|
30
78
|
private contexto;
|
|
31
|
-
private operacoes;
|
|
32
79
|
private selecao;
|
|
33
80
|
private popup;
|
|
34
|
-
private
|
|
35
|
-
private consulta;
|
|
36
|
-
private ponteiro;
|
|
37
|
-
private regiao;
|
|
81
|
+
private editor;
|
|
38
82
|
private snap;
|
|
39
|
-
private
|
|
40
|
-
private
|
|
41
|
-
private
|
|
42
|
-
private
|
|
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;
|
|
43
91
|
private cursores;
|
|
92
|
+
private hoverId;
|
|
93
|
+
private hoverAgendado;
|
|
44
94
|
private margensHud;
|
|
45
95
|
/** Aceita a coordenada (0, 0) exata nas feições de entrada (atributo `aceitar-origem`). */
|
|
46
96
|
aceitarOrigem: boolean;
|
|
@@ -49,18 +99,28 @@ export declare class GerenciadorFeicoes {
|
|
|
49
99
|
/** Depois de qualquer mudança nos dados: descarta seleção órfã e atualiza/fecha o popup aberto. */
|
|
50
100
|
private aposDados;
|
|
51
101
|
private lista;
|
|
102
|
+
private posicaoDe;
|
|
52
103
|
/** Feição da camada pelo id (O(1)); `undefined` se não existe. */
|
|
53
104
|
buscar(camadaId: string, id: string): Feicao | undefined;
|
|
105
|
+
private garantirCamada;
|
|
54
106
|
private opcoesNormalizacao;
|
|
55
107
|
definirFeicoes(camadaId: string, brutas: unknown[], opcoes?: OpcoesCamadaFeicoes): ResultadoFeicoes;
|
|
56
108
|
adicionarFeicao(camadaId: string, bruta: unknown, opcoes?: OpcoesCamadaFeicoes): Feicao | null;
|
|
57
|
-
/**
|
|
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
|
+
*/
|
|
58
113
|
atualizarFeicao(camadaId: string, id: string, parcial: Record<string, any>, opcoes?: Pick<OpcoesLote, 'substituirPropriedades'>): Feicao | null;
|
|
59
114
|
/** Grava uma feição já normalizada (usado quando o próprio mapa a altera, como ao arrastar um texto). */
|
|
60
115
|
substituir(camadaId: string, feicao: Feicao): void;
|
|
61
116
|
removerFeicao(camadaId: string, id: string): boolean;
|
|
62
|
-
/**
|
|
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
|
+
*/
|
|
63
121
|
aplicarLote(camadaId: string, lote: LoteFeicoes, opcoes?: OpcoesLote): ResultadoLote;
|
|
122
|
+
private mesclar;
|
|
123
|
+
private aplicar;
|
|
64
124
|
obterFeicoes(camadaId: string): Feicao[];
|
|
65
125
|
/** Traduz as ações vindas do renderizador no evento a disparar pelo componente. */
|
|
66
126
|
tratarAcaoCamada(acao: string, detalhe: {
|
|
@@ -74,7 +134,7 @@ export declare class GerenciadorFeicoes {
|
|
|
74
134
|
/** Esc ou clique no vazio: durante a edição só encerra a edição; fora dela, limpa a seleção. */
|
|
75
135
|
aoPedirLimpeza(): void;
|
|
76
136
|
obterFeicoesSelecionadas(): Feicao[];
|
|
77
|
-
/** Laço: seleciona (substituindo) as feições tocadas pelo polígono; a ferramenta encerra. */
|
|
137
|
+
/** Laço: seleciona (substituindo) as feições de camadas selecionáveis tocadas pelo polígono; a ferramenta encerra. */
|
|
78
138
|
private selecionarNoLaco;
|
|
79
139
|
/** Caixa de seleção: só feições de camadas visíveis, interativas e desbloqueadas, com toque geométrico real. */
|
|
80
140
|
selecionarNaCaixa(caixa: CaixaPx, modo: ModoCaixa, aditivo: boolean): void;
|
|
@@ -90,12 +150,14 @@ export declare class GerenciadorFeicoes {
|
|
|
90
150
|
definirMargensHud(m: Partial<MargensHud>): void;
|
|
91
151
|
private aplicarMargensHud;
|
|
92
152
|
get regraVersoes(): RegraVersoes;
|
|
153
|
+
private oficiaisDe;
|
|
93
154
|
/** Aparece segundo a regra de oficial × prévia? */
|
|
94
155
|
visivelPorVersao(f: Feicao): boolean;
|
|
95
156
|
/** 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. */
|
|
96
157
|
desenhada(f: Feicao): boolean;
|
|
97
158
|
/** Regra da seleção: a feição em edição continua selecionada mesmo se for ocultada no meio da edição. */
|
|
98
159
|
private selecionavelAgora;
|
|
160
|
+
private aplicarVersoes;
|
|
99
161
|
get previasGlobais(): boolean;
|
|
100
162
|
/** Mostra (ou esconde) as prévias de todas as entidades. Prévias de entidades sem oficial aparecem sempre. */
|
|
101
163
|
definirPreviasGlobais(ligado: boolean): void;
|
|
@@ -108,6 +170,10 @@ export declare class GerenciadorFeicoes {
|
|
|
108
170
|
removerCursorRemoto(id: string): boolean;
|
|
109
171
|
limparCursoresRemotos(): void;
|
|
110
172
|
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;
|
|
111
177
|
/** Aproxima da feição; liga a camada e a prévia, se estiverem escondidas. Ponto: voa até z ≥ 17. */
|
|
112
178
|
zoomParaFeicao(camadaId: string, id: string): boolean;
|
|
113
179
|
zoomParaFeicoes(refs: RefFeicao[]): boolean;
|
|
@@ -115,6 +181,7 @@ export declare class GerenciadorFeicoes {
|
|
|
115
181
|
ajustarTudo(): boolean;
|
|
116
182
|
/** Enquadra a camada inteira; se estava oculta, torna-a visível. */
|
|
117
183
|
ajustarCamada(camadaId: string): boolean;
|
|
184
|
+
private feicaoSob;
|
|
118
185
|
/** Emite `cad-feicao-hover` quando a feição sob o mouse muda (uma checagem por quadro). */
|
|
119
186
|
aoMoverMouse(e: MouseEvent): void;
|
|
120
187
|
/** Botão direito: emite `cad-feicao-menu` com a feição sob o cursor (ou `null`), para o consumidor abrir o próprio menu. */
|
|
@@ -127,19 +194,13 @@ export declare class GerenciadorFeicoes {
|
|
|
127
194
|
alternarSnap(): void;
|
|
128
195
|
conectarTeclado(): void;
|
|
129
196
|
desconectarTeclado(): void;
|
|
130
|
-
/** Feições visíveis cujo envelope toca um quadrado de `tolPx` px em volta de `coord`. */
|
|
197
|
+
/** Feições visíveis das camadas de feições cujo envelope toca um quadrado de `tolPx` px em volta de `coord`. */
|
|
131
198
|
private candidatasEm;
|
|
132
199
|
/** Snap de uma coordenada contra as feições visíveis de todas as camadas de feições (via índice espacial). */
|
|
133
200
|
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;
|
|
136
201
|
get editando(): boolean;
|
|
137
202
|
iniciarEdicao(camadaId: string, id: string): ResultadoEdicao;
|
|
138
203
|
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;
|
|
143
204
|
get ferramentaAtiva(): Ferramenta | null;
|
|
144
205
|
/** Camada que recebe o que for desenhado. Não existe camada padrão: o consumidor escolhe. */
|
|
145
206
|
definirCamadaDesenho(camadaId: string | null): void;
|
|
@@ -159,8 +220,22 @@ export declare class GerenciadorFeicoes {
|
|
|
159
220
|
desfazerVerticeDesenho(): boolean;
|
|
160
221
|
/** Liga/desliga a tecla S do snap (o botão e `definirSnap` continuam valendo). */
|
|
161
222
|
definirAtalhoSnap(ligado: boolean): void;
|
|
223
|
+
private motivoCamadaDesenhoInvalida;
|
|
224
|
+
private novoId;
|
|
162
225
|
private idLivre;
|
|
163
|
-
/**
|
|
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
|
+
*/
|
|
164
239
|
dividirComLinha(linha: LatLonPar[]): boolean;
|
|
165
240
|
/** Cria um polígono de buffer ao redor da feição (na camada dela, ou em `camadaDestino`). */
|
|
166
241
|
gerarBuffer(camadaId: string, id: string, metros: number, opcoes?: {
|
|
@@ -174,9 +249,14 @@ export declare class GerenciadorFeicoes {
|
|
|
174
249
|
}, opcoes?: {
|
|
175
250
|
id?: string;
|
|
176
251
|
}): Feicao | null;
|
|
177
|
-
/**
|
|
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
|
+
*/
|
|
178
257
|
juntarFeicoes(camadaId: string, ids: string[], opcoes?: {
|
|
179
258
|
toleranciaM?: number;
|
|
180
259
|
id?: string;
|
|
181
260
|
}): Feicao | null;
|
|
182
261
|
}
|
|
262
|
+
export {};
|
|
@@ -3,8 +3,6 @@ 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';
|
|
8
6
|
export interface ContextoInicializadorCAD {
|
|
9
7
|
host: UICanvasCAD;
|
|
10
8
|
shadow: ShadowRoot;
|
|
@@ -15,7 +13,7 @@ export interface ContextoInicializadorCAD {
|
|
|
15
13
|
obterContextoEventos: () => ContextoEventosCanvas;
|
|
16
14
|
renderLayersUI: () => void;
|
|
17
15
|
invalidateSizeSafely: () => void;
|
|
18
|
-
tratarCliqueLivreCanvas: (e:
|
|
16
|
+
tratarCliqueLivreCanvas: (e: any, latlng?: any, containerPoint?: any) => void;
|
|
19
17
|
dispararAcaoPopup: (acaoId: string, elementoId: string | number, elemento?: any) => void;
|
|
20
18
|
}
|
|
21
19
|
export declare function inicializarCAD(ctx: ContextoInicializadorCAD): void;
|