@thibezer/ui-components-kit 2.11.1 → 2.12.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.
- package/CHANGELOG.md +62 -1
- package/dist/alvo-digitavel-CzCvNVQ3.js +23 -0
- package/dist/alvo-digitavel-DbH0hYFf.cjs +1 -0
- package/dist/camadas.cjs +111 -106
- package/dist/camadas.js +1061 -892
- package/dist/canvas.cjs +27 -27
- package/dist/canvas.js +801 -819
- package/dist/components/ui-camadas/camadas-arvore-renderer.d.ts +3 -0
- package/dist/components/ui-camadas/camadas-colecao.d.ts +1 -1
- package/dist/components/ui-camadas/camadas-drop-ops.d.ts +3 -0
- package/dist/components/ui-camadas/camadas-eventos-camadas.d.ts +2 -0
- package/dist/components/ui-camadas/camadas-hierarquia.d.ts +12 -2
- package/dist/components/ui-camadas/camadas-host.d.ts +6 -0
- package/dist/components/ui-camadas/camadas-metricas.d.ts +2 -1
- package/dist/components/ui-camadas/camadas-selecao.d.ts +2 -2
- package/dist/components/ui-camadas/tipos.d.ts +1 -0
- package/dist/components/ui-camadas/ui-camadas.d.ts +3 -0
- package/dist/components/ui-tabela-propriedades/editores-basicos.d.ts +4 -1
- package/dist/components/ui-tabela-propriedades/propriedades-dom-utils.d.ts +2 -0
- package/dist/components/ui-tabela-propriedades/propriedades-gerenciador-valores.d.ts +3 -0
- package/dist/components/ui-tabela-propriedades/propriedades-painel-controles.d.ts +1 -0
- package/dist/components/ui-tabela-propriedades/tipos.d.ts +14 -0
- package/dist/components/ui-tabela-propriedades/ui-tabela-propriedades.d.ts +20 -0
- package/dist/custom-elements.json +28508 -25795
- package/dist/data.cjs +1 -1
- package/dist/data.js +79 -72
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +163 -156
- package/dist/register.cjs +1 -1
- package/dist/register.js +1 -1
- package/dist/tabela.cjs +1 -1
- package/dist/tabela.js +71 -64
- package/dist/tipos-elementos.d.ts +111 -6
- package/dist/tipos-react.d.ts +4 -0
- package/dist/tipos-vue.d.ts +100 -6
- package/dist/ui-tabela-propriedades-CyPyKXtB.js +3013 -0
- package/dist/ui-tabela-propriedades-DqvPilK_.cjs +142 -0
- 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
|
|
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
|
/**
|
|
@@ -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 (
|
|
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
|
|
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
|
+
}
|