Atualização floresta
This commit is contained in:
parent
0886fd5c3e
commit
2d4d8f8929
103 changed files with 19266 additions and 14160 deletions
51
dist/types/componentes/EliEntrada/EliEntradaNumero.helpers.d.ts
vendored
Normal file
51
dist/types/componentes/EliEntrada/EliEntradaNumero.helpers.d.ts
vendored
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
/**
|
||||
* Helpers de formatação e parsing numérico usados pelo EliEntradaNumero.
|
||||
* Extraídos do componente Vue para manter o arquivo dentro de 250 linhas.
|
||||
*/
|
||||
export declare function casasDecimaisFromPrecisao(precisao: number): number;
|
||||
/**
|
||||
* Analisa a entrada de texto e converte em um valor numérico válido (float).
|
||||
* Troca a vírgula brasileira por ponto antes de passar para o parser nativo.
|
||||
*
|
||||
* @param texto - O texto bruto digitado ou vindo do estado
|
||||
* @returns O número processado ou `null` caso inválido ou vazio
|
||||
*/
|
||||
export declare function parseNumero(texto: string): number | null;
|
||||
/**
|
||||
* Formata um valor numérico para a exibição na interface (usando vírgula como separador).
|
||||
*
|
||||
* @param value - O valor numérico de fato emitido
|
||||
* @param casas - Opcionalmente, o número exato de casas decimais para fixar
|
||||
* @returns String formatada amigável para exibição em pt-BR
|
||||
*/
|
||||
export declare function formatarNumero(value: number | null | undefined, casas: number | null): string;
|
||||
/**
|
||||
* Retira todo tipo de sujeira de uma string, devolvendo restritamente números (para inteiros).
|
||||
*
|
||||
* @param texto - String de entrada
|
||||
* @returns Apenas dígitos de 0 a 9
|
||||
*/
|
||||
export declare function somenteNumeros(texto: string): string;
|
||||
/**
|
||||
* Higieniza o texto preservando apenas os dígitos e exatamente UM separador decimal.
|
||||
*
|
||||
* @param texto - Texto misto de entrada
|
||||
* @returns String contendo número e (opcionalmente) uma vírgula ou ponto residual
|
||||
*/
|
||||
export declare function somenteNumerosESeparadorDecimal(texto: string): string;
|
||||
/**
|
||||
* Trunca a parte decimal de um texto numérico ao número máximo de casas permitidas.
|
||||
* Aplicado durante a digitação para evitar que o usuário ultrapasse a precisão configurada.
|
||||
*
|
||||
* @param texto - Texto numérico já higienizado (com separador único)
|
||||
* @param casas - Número máximo de casas decimais; `null` = sem limite
|
||||
* @returns Texto com a parte decimal truncada no limite especificado
|
||||
*/
|
||||
export declare function limitarCasasDecimais(texto: string, casas: number | null): string;
|
||||
/**
|
||||
* Resolve o edge-case de digitação transitória parcial terminada em separador (ex: "1,").
|
||||
*
|
||||
* @param texto - O texto já higienizado, tipicamente terminando em vírgula ou ponto
|
||||
* @returns A conversão parcial estrita ou `null` caso falhe
|
||||
*/
|
||||
export declare function valorParcialDecimal(texto: string): number | null;
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
import { type PropType } from "vue";
|
||||
import type { PadroesEntradas } from "./tiposEntradas";
|
||||
import "./EliEntradaNumero.css";
|
||||
type EntradaNumero = PadroesEntradas["numero"];
|
||||
declare const _default: typeof __VLS_export;
|
||||
export default _default;
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1 +1,9 @@
|
|||
/**
|
||||
* Formata um CPF ou CNPJ aplicando a máscara brasileira padrão durante a digitação.
|
||||
* Detecta automaticamente o tipo pelo comprimento (≤11 dígitos = CPF, >11 = CNPJ).
|
||||
* Não valida o dígito verificador — apenas aplica a formatação visual.
|
||||
*
|
||||
* @param v - Valor bruto (pode conter letras, pontos, traços etc.)
|
||||
* @returns String formatada no padrão `000.000.000-00` (CPF) ou `00.000.000/0000-00` (CNPJ)
|
||||
*/
|
||||
export declare function formatarCpfCnpj(v: string): string;
|
||||
|
|
|
|||
533
dist/types/componentes/EliTabela/EliTabela.vue.d.ts
vendored
533
dist/types/componentes/EliTabela/EliTabela.vue.d.ts
vendored
|
|
@ -1,8 +1,17 @@
|
|||
/** Dependências do Vue (Composition API) */
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
* O setup() é orquestrado por `useEliTabela`, que compõe os seguintes sub-composables:
|
||||
* - useEliTabelaConsulta — carregamento, paginação, ordenação, busca
|
||||
* - useEliTabelaFiltrosAvancados — filtros avançados, modal e persistência
|
||||
* - useEliTabelaSelecao — seleção múltipla de linhas
|
||||
* - useEliTabelaColunas — visibilidade, ordem e modal de colunas
|
||||
* - useEliTabelaMenu — menu de ações por linha e posicionamento de popup
|
||||
*/
|
||||
import { type PropType } from "vue";
|
||||
import { type EliTabelaColunasConfig } from "./colunasStorage";
|
||||
/** Tipos da configuração/contrato da tabela */
|
||||
import type { parametrosConsulta, tipoEliColuna, tipoEliTabelaConsulta, tipoFiltro } from "./types-eli-tabela";
|
||||
import "./EliTabela.css";
|
||||
import type { tipoEliTabelaConsulta } from "./types-eli-tabela";
|
||||
import type { FiltroBase } from "./useFiltroAvancado";
|
||||
declare const _default: typeof __VLS_export;
|
||||
export default _default;
|
||||
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
|
|
@ -16,119 +25,19 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
type: PropType<unknown[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
/** Ocultar painel de debug lateral (EliTabelaDebug) */
|
||||
esconderDebug: {
|
||||
type: BooleanConstructor;
|
||||
default: boolean;
|
||||
};
|
||||
}>, {
|
||||
isDev: boolean;
|
||||
tabela: import("vue").ComputedRef<tipoEliTabelaConsulta<any>>;
|
||||
carregando: import("vue").Ref<boolean, boolean>;
|
||||
erro: import("vue").Ref<string | null, string | null>;
|
||||
linhas: import("vue").Ref<unknown[], unknown[]>;
|
||||
linhasPaginadas: import("vue").ComputedRef<unknown[]>;
|
||||
filtrosAvancadosAtivos: import("vue").ComputedRef<tipoFiltro<any>[]>;
|
||||
quantidadeFiltrada: import("vue").ComputedRef<number>;
|
||||
quantidade: import("vue").Ref<number, number>;
|
||||
menuAberto: import("vue").Ref<number | null, number | null>;
|
||||
valorBusca: import("vue").Ref<string, string>;
|
||||
paginaAtual: import("vue").Ref<number, number>;
|
||||
colunaOrdenacao: import("vue").Ref<string | null, string | null>;
|
||||
direcaoOrdenacao: import("vue").Ref<"desc" | "asc", "desc" | "asc">;
|
||||
totalPaginas: import("vue").ComputedRef<number>;
|
||||
registrosPorConsulta: import("vue").ComputedRef<number>;
|
||||
exibirBusca: import("vue").ComputedRef<boolean>;
|
||||
exibirFiltroAvancado: import("vue").ComputedRef<boolean>;
|
||||
acoesSuperiores: import("vue").ComputedRef<{
|
||||
posicao: "superior" | "inferior";
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (parametrosConsulta: parametrosConsulta<any> & {
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (lista: any[]) => Promise<any[]>;
|
||||
}) => void;
|
||||
}[]>;
|
||||
temAcoesSuperiores: import("vue").ComputedRef<boolean>;
|
||||
acoesInferiores: import("vue").ComputedRef<{
|
||||
posicao: "superior" | "inferior";
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (parametrosConsulta: parametrosConsulta<any> & {
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (lista: any[]) => Promise<any[]>;
|
||||
}) => void;
|
||||
}[]>;
|
||||
temAcoesInferiores: import("vue").ComputedRef<boolean>;
|
||||
parametrosConsultaAtuais: import("vue").ComputedRef<{
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (novaLista: any[]) => Promise<any[]>;
|
||||
filtros?: import("p-comuns").tipoFiltro26<any>[] | undefined;
|
||||
coluna_ordem?: string | number | symbol | undefined;
|
||||
direcao_ordem?: "asc" | "desc";
|
||||
offSet?: number;
|
||||
limit?: number;
|
||||
texto_busca?: string;
|
||||
}>;
|
||||
temAcoes: import("vue").ComputedRef<boolean>;
|
||||
totalColunas: import("vue").ComputedRef<number>;
|
||||
colunasEfetivas: import("vue").ComputedRef<any[]>;
|
||||
rotulosColunas: import("vue").ComputedRef<string[]>;
|
||||
modalColunasAberto: import("vue").Ref<boolean, boolean>;
|
||||
configColunas: import("vue").Ref<{
|
||||
visiveis: string[];
|
||||
invisiveis: string[];
|
||||
}, EliTabelaColunasConfig | {
|
||||
visiveis: string[];
|
||||
invisiveis: string[];
|
||||
}>;
|
||||
temColunasInvisiveis: import("vue").ComputedRef<boolean>;
|
||||
colunasInvisiveisEfetivas: import("vue").ComputedRef<tipoEliColuna<any>[]>;
|
||||
linhasExpandidas: import("vue").Ref<Record<number, boolean>, Record<number, boolean>>;
|
||||
mostrarSelecao: import("vue").ComputedRef<boolean>;
|
||||
isSelecionado: (linha: unknown) => boolean;
|
||||
alternarSelecao: (linha: unknown) => void;
|
||||
todosSelecionados: import("vue").ComputedRef<boolean>;
|
||||
algunsSelecionados: import("vue").ComputedRef<boolean>;
|
||||
alternarSelecaoTodos: (forcarMarcar?: boolean) => void;
|
||||
abrirModalColunas: () => void;
|
||||
abrirModalFiltro: () => void;
|
||||
fecharModalColunas: () => void;
|
||||
salvarModalColunas: (cfg: EliTabelaColunasConfig) => void;
|
||||
modalFiltroAberto: import("vue").Ref<boolean, boolean>;
|
||||
filtrosUi: import("vue").Ref<{
|
||||
chave: string;
|
||||
valor: any;
|
||||
}[], {
|
||||
chave: string;
|
||||
valor: any;
|
||||
}[] | {
|
||||
chave: string;
|
||||
valor: any;
|
||||
}[]>;
|
||||
salvarFiltrosAvancados: (novo: any[]) => void;
|
||||
limparFiltrosAvancados: () => void;
|
||||
fecharModalFiltro: () => void;
|
||||
alternarLinhaExpandida: (indice: number) => void;
|
||||
alternarOrdenacao: (chave?: string) => void;
|
||||
atualizarBusca: (texto: string) => void;
|
||||
irParaPagina: (pagina: number) => void;
|
||||
acoesDisponiveisPorLinha: (i: number) => {
|
||||
acao: import("./types-eli-tabela").tipoEliTabelaAcao<any>;
|
||||
indice: number;
|
||||
visivel: boolean;
|
||||
}[];
|
||||
possuiAcoes: (i: number) => boolean;
|
||||
toggleMenu: (i: number, evento?: MouseEvent) => void;
|
||||
menuPopup: import("vue").Ref<{
|
||||
menuEl: {
|
||||
value: HTMLElement | null;
|
||||
};
|
||||
menuEl: HTMLElement | null;
|
||||
} | null, {
|
||||
menuEl: {
|
||||
value: HTMLElement | null;
|
||||
};
|
||||
menuEl: HTMLElement | null;
|
||||
} | {
|
||||
menuEl: {
|
||||
value: HTMLElement | null;
|
||||
};
|
||||
menuEl: HTMLElement | null;
|
||||
} | null>;
|
||||
menuPopupPos: import("vue").Ref<{
|
||||
top: number;
|
||||
|
|
@ -140,6 +49,111 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
top: number;
|
||||
left: number;
|
||||
}>;
|
||||
possuiAcoes: (i: number) => boolean;
|
||||
toggleMenu: (i: number, evento?: MouseEvent) => void;
|
||||
acoesDisponiveisPorLinha: (i: number) => {
|
||||
acao: import("./types-eli-tabela").tipoEliTabelaAcao<any>;
|
||||
indice: number;
|
||||
visivel: boolean;
|
||||
}[];
|
||||
paginaAtual: import("vue").Ref<number, number>;
|
||||
valorBusca: import("vue").Ref<string, string>;
|
||||
modalColunasAberto: import("vue").Ref<boolean, boolean>;
|
||||
configColunas: import("vue").Ref<{
|
||||
visiveis: string[];
|
||||
invisiveis: string[];
|
||||
}, import("./colunasStorage").EliTabelaColunasConfig | {
|
||||
visiveis: string[];
|
||||
invisiveis: string[];
|
||||
}>;
|
||||
linhasExpandidas: import("vue").Ref<Record<number, boolean>, Record<number, boolean>>;
|
||||
rotulosColunas: import("vue").ComputedRef<string[]>;
|
||||
colunasEfetivas: import("vue").ComputedRef<any[]>;
|
||||
colunasInvisiveisEfetivas: import("vue").ComputedRef<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
temColunasInvisiveis: import("vue").ComputedRef<boolean>;
|
||||
totalColunas: import("vue").ComputedRef<number>;
|
||||
abrirModalColunas: () => void;
|
||||
fecharModalColunas: () => void;
|
||||
salvarModalColunas: (cfg: import("./colunasStorage").EliTabelaColunasConfig) => void;
|
||||
alternarLinhaExpandida: (indice: number) => void;
|
||||
mostrarSelecao: import("vue").ComputedRef<boolean>;
|
||||
isSelecionado: (linha: unknown) => boolean;
|
||||
alternarSelecao: (linha: unknown) => void;
|
||||
todosSelecionados: import("vue").ComputedRef<boolean>;
|
||||
algunsSelecionados: import("vue").ComputedRef<boolean>;
|
||||
alternarSelecaoTodos: (forcarMarcar?: boolean) => void;
|
||||
filtrosUi: import("vue").Ref<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[], {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[] | {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[]>;
|
||||
filtrosFormula: import("vue").Ref<string, string>;
|
||||
modalFiltroAberto: import("vue").Ref<boolean, boolean>;
|
||||
exibirFiltroAvancado: import("vue").ComputedRef<boolean>;
|
||||
filtrosAvancadosAtivos: import("vue").ComputedRef<import("p-comuns").tipoFiltroDeltaColunaTipada<any>[]>;
|
||||
abrirModalFiltro: () => void;
|
||||
fecharModalFiltro: () => void;
|
||||
limparFiltrosAvancados: () => void;
|
||||
salvarFiltrosAvancados: (novoLinhas: {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[], novaFormula?: string) => void;
|
||||
isDev: boolean;
|
||||
tabela: import("vue").ComputedRef<tipoEliTabelaConsulta<any>>;
|
||||
carregando: import("vue").Ref<boolean, boolean>;
|
||||
erro: import("vue").Ref<string | null, string | null>;
|
||||
linhas: import("vue").Ref<unknown[], unknown[]>;
|
||||
linhasPaginadas: import("vue").ComputedRef<unknown[]>;
|
||||
quantidade: import("vue").Ref<number, number>;
|
||||
quantidadeFiltrada: import("vue").ComputedRef<number>;
|
||||
acoesVisiveis: import("vue").Ref<boolean[][], boolean[][]>;
|
||||
colunaOrdenacao: import("vue").Ref<string | null, string | null>;
|
||||
direcaoOrdenacao: import("vue").Ref<"desc" | "asc", "desc" | "asc">;
|
||||
registrosPorConsulta: import("vue").ComputedRef<number>;
|
||||
totalPaginas: import("vue").ComputedRef<number>;
|
||||
temAcoes: import("vue").ComputedRef<boolean>;
|
||||
exibirBusca: import("vue").ComputedRef<boolean>;
|
||||
acoesSuperiores: import("vue").ComputedRef<{
|
||||
posicao: "superior" | "inferior";
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (parametrosConsulta: import("./types-eli-tabela").parametrosConsulta<any> & {
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (lista: any[]) => Promise<any[]>;
|
||||
}) => void;
|
||||
}[]>;
|
||||
acoesInferiores: import("vue").ComputedRef<{
|
||||
posicao: "superior" | "inferior";
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (parametrosConsulta: import("./types-eli-tabela").parametrosConsulta<any> & {
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (lista: any[]) => Promise<any[]>;
|
||||
}) => void;
|
||||
}[]>;
|
||||
temAcoesSuperiores: import("vue").ComputedRef<boolean>;
|
||||
temAcoesInferiores: import("vue").ComputedRef<boolean>;
|
||||
parametrosConsultaAtuais: import("vue").ComputedRef<{
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (novaLista: any[]) => Promise<any[]>;
|
||||
filtros?: import("p-comuns").tipoFiltroDeltaColunaTipada<string>[] | undefined;
|
||||
coluna_ordem?: string | number | symbol | undefined;
|
||||
direcao_ordem?: "asc" | "desc";
|
||||
offSet?: number;
|
||||
limit?: number;
|
||||
texto_busca?: string;
|
||||
}>;
|
||||
carregar: () => Promise<void>;
|
||||
alternarOrdenacao: (chave?: string) => void;
|
||||
atualizarBusca: (texto: string) => void;
|
||||
irParaPagina: (pagina: number) => void;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:selecionados"[], "update:selecionados", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
/** Configuração principal da tabela (colunas, consulta e ações) */
|
||||
tabela: {
|
||||
|
|
@ -151,10 +165,16 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
type: PropType<unknown[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
/** Ocultar painel de debug lateral (EliTabelaDebug) */
|
||||
esconderDebug: {
|
||||
type: BooleanConstructor;
|
||||
default: boolean;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
"onUpdate:selecionados"?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
selecionados: unknown[];
|
||||
esconderDebug: boolean;
|
||||
}, {}, {
|
||||
EliTabelaCabecalho: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
exibirBusca: {
|
||||
|
|
@ -181,28 +201,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
};
|
||||
acoesCabecalho: {
|
||||
type: PropType<Array<{
|
||||
icone
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: any;
|
||||
cor
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: string;
|
||||
icone?: any;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (params
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: any) => void;
|
||||
acao: (params?: any) => void;
|
||||
}>>;
|
||||
required: true;
|
||||
};
|
||||
|
|
@ -240,28 +242,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
};
|
||||
acoesCabecalho: {
|
||||
type: PropType<Array<{
|
||||
icone
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: any;
|
||||
cor
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: string;
|
||||
icone?: any;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (params
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: any) => void;
|
||||
acao: (params?: any) => void;
|
||||
}>>;
|
||||
required: true;
|
||||
};
|
||||
|
|
@ -273,6 +257,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
exibirBotaoColunas: boolean;
|
||||
exibirBotaoFiltroAvancado: boolean;
|
||||
}, {}, {
|
||||
Columns3: import("@lucide/vue").LucideIcon;
|
||||
EliTabelaCaixaDeBusca: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
modelo: {
|
||||
type: StringConstructor;
|
||||
|
|
@ -297,6 +282,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}, {}, {
|
||||
Search: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
Filter: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
EliTabelaEstados: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
carregando: {
|
||||
|
|
@ -329,7 +315,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>> & Readonly<{}>, {
|
||||
erro: string | null;
|
||||
mensagemVazio: string | undefined;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
}, {}, {
|
||||
AlertCircle: import("@lucide/vue").LucideIcon;
|
||||
Inbox: import("@lucide/vue").LucideIcon;
|
||||
LoaderCircle: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
EliTabelaDebug: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
isDev: {
|
||||
type: BooleanConstructor;
|
||||
|
|
@ -346,7 +336,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>;
|
||||
required: true;
|
||||
};
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
}>, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
isDev: {
|
||||
type: BooleanConstructor;
|
||||
required: true;
|
||||
|
|
@ -367,7 +357,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
EliTabelaHead: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
temAcoes: {
|
||||
|
|
@ -401,14 +391,14 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>, {
|
||||
ArrowUp: import("@lucide/vue").LucideIcon;
|
||||
ArrowDown: import("@lucide/vue").LucideIcon;
|
||||
isOrdenavel: (coluna: any) => boolean;
|
||||
isOrdenavel: (coluna: import("./types-eli-tabela").tipoEliColuna<unknown>) => boolean;
|
||||
emitAlternarOrdenacao: (chave: string) => void;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
alternarOrdenacao(chave: string): boolean;
|
||||
"alternar-selecao-todos": () => true;
|
||||
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
temAcoes: {
|
||||
|
|
@ -453,11 +443,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
EliTabelaBody: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
temColunasInvisiveis: {
|
||||
|
|
@ -469,7 +459,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
linhas: {
|
||||
type: PropType<Array<unknown>>;
|
||||
type: PropType<unknown[]>;
|
||||
required: true;
|
||||
};
|
||||
temAcoes: {
|
||||
|
|
@ -509,11 +499,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
ChevronDown: import("@lucide/vue").LucideIcon;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
temColunasInvisiveis: {
|
||||
|
|
@ -525,7 +515,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
linhas: {
|
||||
type: PropType<Array<unknown>>;
|
||||
type: PropType<unknown[]>;
|
||||
required: true;
|
||||
};
|
||||
temAcoes: {
|
||||
|
|
@ -588,22 +578,37 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
* O setup() é orquestrado por `useEliTabela`, que compõe os seguintes sub-composables:
|
||||
* - useEliTabelaConsulta — carregamento, paginação, ordenação, busca
|
||||
* - useEliTabelaFiltrosAvancados — filtros avançados, modal e persistência
|
||||
* - useEliTabelaSelecao — seleção múltipla de linhas
|
||||
* - useEliTabelaColunas — visibilidade, ordem e modal de colunas
|
||||
* - useEliTabelaMenu — menu de ações por linha e posicionamento de popup
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: string;
|
||||
icone
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
* O setup() é orquestrado por `useEliTabela`, que compõe os seguintes sub-composables:
|
||||
* - useEliTabelaConsulta — carregamento, paginação, ordenação, busca
|
||||
* - useEliTabelaFiltrosAvancados — filtros avançados, modal e persistência
|
||||
* - useEliTabelaSelecao — seleção múltipla de linhas
|
||||
* - useEliTabelaColunas — visibilidade, ordem e modal de colunas
|
||||
* - useEliTabelaMenu — menu de ações por linha e posicionamento de popup
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: import("@lucide/vue").LucideIcon;
|
||||
acao
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
* O setup() é orquestrado por `useEliTabela`, que compõe os seguintes sub-composables:
|
||||
* - useEliTabelaConsulta — carregamento, paginação, ordenação, busca
|
||||
* - useEliTabelaFiltrosAvancados — filtros avançados, modal e persistência
|
||||
* - useEliTabelaSelecao — seleção múltipla de linhas
|
||||
* - useEliTabelaColunas — visibilidade, ordem e modal de colunas
|
||||
* - useEliTabelaMenu — menu de ações por linha e posicionamento de popup
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: () => void;
|
||||
}[];
|
||||
} | {
|
||||
|
|
@ -623,7 +628,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
|
|
@ -632,7 +637,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>> & Readonly<{}>, {}, {}, {
|
||||
|
|
@ -661,22 +666,37 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
* O setup() é orquestrado por `useEliTabela`, que compõe os seguintes sub-composables:
|
||||
* - useEliTabelaConsulta — carregamento, paginação, ordenação, busca
|
||||
* - useEliTabelaFiltrosAvancados — filtros avançados, modal e persistência
|
||||
* - useEliTabelaSelecao — seleção múltipla de linhas
|
||||
* - useEliTabelaColunas — visibilidade, ordem e modal de colunas
|
||||
* - useEliTabelaMenu — menu de ações por linha e posicionamento de popup
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: string;
|
||||
icone
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
* O setup() é orquestrado por `useEliTabela`, que compõe os seguintes sub-composables:
|
||||
* - useEliTabelaConsulta — carregamento, paginação, ordenação, busca
|
||||
* - useEliTabelaFiltrosAvancados — filtros avançados, modal e persistência
|
||||
* - useEliTabelaSelecao — seleção múltipla de linhas
|
||||
* - useEliTabelaColunas — visibilidade, ordem e modal de colunas
|
||||
* - useEliTabelaMenu — menu de ações por linha e posicionamento de popup
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: import("@lucide/vue").LucideIcon;
|
||||
acao
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
* O setup() é orquestrado por `useEliTabela`, que compõe os seguintes sub-composables:
|
||||
* - useEliTabelaConsulta — carregamento, paginação, ordenação, busca
|
||||
* - useEliTabelaFiltrosAvancados — filtros avançados, modal e persistência
|
||||
* - useEliTabelaSelecao — seleção múltipla de linhas
|
||||
* - useEliTabelaColunas — visibilidade, ordem e modal de colunas
|
||||
* - useEliTabelaMenu — menu de ações por linha e posicionamento de popup
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: () => void;
|
||||
}[];
|
||||
} | {
|
||||
|
|
@ -708,11 +728,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
acoes: {
|
||||
type: PropType<Array<{
|
||||
type: PropType<{
|
||||
acao: import("./types-eli-tabela").tipoEliTabelaAcao<any>;
|
||||
indice: number;
|
||||
visivel: boolean;
|
||||
}>>;
|
||||
}[]>;
|
||||
required: true;
|
||||
};
|
||||
linha: {
|
||||
|
|
@ -743,11 +763,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
acoes: {
|
||||
type: PropType<Array<{
|
||||
type: PropType<{
|
||||
acao: import("./types-eli-tabela").tipoEliTabelaAcao<any>;
|
||||
indice: number;
|
||||
visivel: boolean;
|
||||
}>>;
|
||||
}[]>;
|
||||
required: true;
|
||||
};
|
||||
linha: {
|
||||
|
|
@ -778,28 +798,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
};
|
||||
acoes: {
|
||||
type: PropType<Array<{
|
||||
icone
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: any;
|
||||
cor
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: string;
|
||||
icone?: any;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (params
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: any) => void;
|
||||
acao: (params?: any) => void;
|
||||
}>>;
|
||||
required: false;
|
||||
default: () => never[];
|
||||
|
|
@ -837,28 +839,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
};
|
||||
acoes: {
|
||||
type: PropType<Array<{
|
||||
icone
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: any;
|
||||
cor
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: string;
|
||||
icone?: any;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (params
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: any) => void;
|
||||
acao: (params?: any) => void;
|
||||
}>>;
|
||||
required: false;
|
||||
default: () => never[];
|
||||
|
|
@ -874,13 +858,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
icone?: any;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (params
|
||||
/**
|
||||
* EliTabela
|
||||
* Componente de tabela consultável com busca, paginação, ordenação e ações por linha.
|
||||
*/
|
||||
/** Enum de códigos de resposta utilizado na consulta */
|
||||
?: any) => void;
|
||||
acao: (params?: any) => void;
|
||||
}[];
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
EliTabelaModalColunas: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
|
|
@ -893,26 +871,26 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
configInicial: {
|
||||
type: PropType<EliTabelaColunasConfig>;
|
||||
type: PropType<import("./colunasStorage").EliTabelaColunasConfig>;
|
||||
required: true;
|
||||
};
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>, {
|
||||
emitFechar: () => void;
|
||||
emitSalvar: () => void;
|
||||
visiveisLocal: import("vue").Ref<string[], string[]>;
|
||||
invisiveisLocal: import("vue").Ref<string[], string[]>;
|
||||
itemSendoArrastado: import("vue").Ref<string | null, string | null>;
|
||||
emitFechar: () => void;
|
||||
emitSalvar: () => void;
|
||||
onDragStart: (e: DragEvent, rotulo: string) => void;
|
||||
onDragEnd: () => void;
|
||||
onDragOverItem: (alvoRotulo: string, destino: "visiveis" | "invisiveis") => void;
|
||||
onDragOverLista: (destino: "visiveis" | "invisiveis") => void;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
fechar(): true;
|
||||
salvar(_config: EliTabelaColunasConfig): true;
|
||||
salvar(_config: import("./colunasStorage").EliTabelaColunasConfig): true;
|
||||
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
aberto: {
|
||||
type: BooleanConstructor;
|
||||
|
|
@ -923,35 +901,44 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
configInicial: {
|
||||
type: PropType<EliTabelaColunasConfig>;
|
||||
type: PropType<import("./colunasStorage").EliTabelaColunasConfig>;
|
||||
required: true;
|
||||
};
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onFechar?: (() => any) | undefined;
|
||||
onSalvar?: ((_config: EliTabelaColunasConfig) => any) | undefined;
|
||||
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
onSalvar?: ((_config: import("./colunasStorage").EliTabelaColunasConfig) => any) | undefined;
|
||||
}>, {}, {}, {
|
||||
Columns2: import("@lucide/vue").LucideIcon;
|
||||
Eye: import("@lucide/vue").LucideIcon;
|
||||
EyeOff: import("@lucide/vue").LucideIcon;
|
||||
GripVertical: import("@lucide/vue").LucideIcon;
|
||||
X: import("@lucide/vue").LucideIcon;
|
||||
Check: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
EliTabelaModalFiltroAvancado: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
aberto: {
|
||||
type: BooleanConstructor;
|
||||
required: true;
|
||||
};
|
||||
filtrosBase: {
|
||||
type: PropType<Array<{
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
filtro: (valor: unknown) => import("p-comuns").tipoFiltro26<any>;
|
||||
entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada;
|
||||
}>>;
|
||||
type: PropType<FiltroBase<string>[]>;
|
||||
required: true;
|
||||
};
|
||||
modelo: {
|
||||
type: PropType<Array<any>>;
|
||||
type: PropType<Array<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}>>;
|
||||
required: true;
|
||||
};
|
||||
modeloFormula: {
|
||||
type: StringConstructor;
|
||||
default: string;
|
||||
};
|
||||
}>, {
|
||||
linhas: import("vue").Ref<{
|
||||
chave: string;
|
||||
|
|
@ -1009,12 +996,8 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}];
|
||||
valor: any;
|
||||
}[], {
|
||||
chave: string;
|
||||
entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada;
|
||||
valor: any;
|
||||
}[] | {
|
||||
valor: unknown;
|
||||
}[], import("./useFiltroAvancado").LinhaFiltro[] | {
|
||||
chave: string;
|
||||
entrada: readonly ["texto", {
|
||||
rotulo: string;
|
||||
|
|
@ -1070,15 +1053,17 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}];
|
||||
valor: any;
|
||||
valor: unknown;
|
||||
}[]>;
|
||||
opcoesParaAdicionar: import("vue").ComputedRef<{
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
filtro: (valor: unknown) => import("p-comuns").tipoFiltro26<any>;
|
||||
filtro: (valor: unknown) => import("p-comuns").tipoFiltroDeltaColunaTipada<"small" | "length" | "concat" | "slice" | "indexOf" | "lastIndexOf" | "includes" | "toString" | "charAt" | "charCodeAt" | "localeCompare" | "match" | "replace" | "search" | "split" | "substring" | "toLowerCase" | "toLocaleLowerCase" | "toUpperCase" | "toLocaleUpperCase" | "trim" | "substr" | "codePointAt" | "endsWith" | "normalize" | "repeat" | "startsWith" | "anchor" | "big" | "blink" | "bold" | "fixed" | "fontcolor" | "fontsize" | "italics" | "link" | "strike" | "sub" | "sup" | "padStart" | "padEnd" | "trimEnd" | "trimStart" | "trimLeft" | "trimRight" | "matchAll" | "valueOf"> | undefined;
|
||||
entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada;
|
||||
}[]>;
|
||||
chaveParaAdicionar: import("vue").Ref<string, string>;
|
||||
formulaCustomizada: import("vue").Ref<string, string>;
|
||||
formulaGerada: import("vue").ComputedRef<string>;
|
||||
componenteEntrada: (entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada) => import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
value: {
|
||||
type: PropType<string | null | undefined>;
|
||||
|
|
@ -1418,43 +1403,57 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>, {
|
||||
value: string | null | undefined;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
opcoesEntrada: (entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada) => any;
|
||||
opcoesEntrada: (entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada) => {
|
||||
rotulo: string;
|
||||
};
|
||||
adicionar: () => void;
|
||||
remover: (idx: number) => void;
|
||||
emitFechar: () => void;
|
||||
emitSalvar: () => void;
|
||||
emitLimpar: () => void;
|
||||
rotuloDoFiltro: (f: {
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
filtro: (valor: unknown) => import("p-comuns").tipoFiltro26<any>;
|
||||
entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada;
|
||||
}) => string;
|
||||
rotuloDoFiltro: typeof import("./useFiltroAvancado").rotuloDoFiltro;
|
||||
rotuloDoFiltroAtivo: (chave: string) => string;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
fechar: () => true;
|
||||
limpar: () => true;
|
||||
salvar: (_linhas: any[]) => true;
|
||||
salvar: (_linhas: Array<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}>, _formula?: string) => true;
|
||||
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
aberto: {
|
||||
type: BooleanConstructor;
|
||||
required: true;
|
||||
};
|
||||
filtrosBase: {
|
||||
type: PropType<Array<{
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
filtro: (valor: unknown) => import("p-comuns").tipoFiltro26<any>;
|
||||
entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada;
|
||||
}>>;
|
||||
type: PropType<FiltroBase<string>[]>;
|
||||
required: true;
|
||||
};
|
||||
modelo: {
|
||||
type: PropType<Array<any>>;
|
||||
type: PropType<Array<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}>>;
|
||||
required: true;
|
||||
};
|
||||
modeloFormula: {
|
||||
type: StringConstructor;
|
||||
default: string;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onFechar?: (() => any) | undefined;
|
||||
onSalvar?: ((_linhas: any[]) => any) | undefined;
|
||||
onSalvar?: ((_linhas: {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[], _formula?: string | undefined) => any) | undefined;
|
||||
onLimpar?: (() => any) | undefined;
|
||||
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
}>, {
|
||||
modeloFormula: string;
|
||||
}, {}, {
|
||||
CircleHelp: import("@lucide/vue").LucideIcon;
|
||||
Filter: import("@lucide/vue").LucideIcon;
|
||||
Plus: import("@lucide/vue").LucideIcon;
|
||||
Trash2: import("@lucide/vue").LucideIcon;
|
||||
X: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
|
|
|
|||
|
|
@ -4,11 +4,11 @@ declare const _default: typeof __VLS_export;
|
|||
export default _default;
|
||||
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
temColunasInvisiveis: {
|
||||
|
|
@ -20,7 +20,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
linhas: {
|
||||
type: PropType<Array<unknown>>;
|
||||
type: PropType<unknown[]>;
|
||||
required: true;
|
||||
};
|
||||
temAcoes: {
|
||||
|
|
@ -60,11 +60,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
ChevronDown: import("@lucide/vue").LucideIcon;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
temColunasInvisiveis: {
|
||||
|
|
@ -76,7 +76,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
linhas: {
|
||||
type: PropType<Array<unknown>>;
|
||||
type: PropType<unknown[]>;
|
||||
required: true;
|
||||
};
|
||||
temAcoes: {
|
||||
|
|
@ -156,7 +156,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
|
|
@ -165,7 +165,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>> & Readonly<{}>, {}, {}, {
|
||||
|
|
|
|||
|
|
@ -82,6 +82,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
exibirBotaoColunas: boolean;
|
||||
exibirBotaoFiltroAvancado: boolean;
|
||||
}, {}, {
|
||||
Columns3: import("@lucide/vue").LucideIcon;
|
||||
EliTabelaCaixaDeBusca: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
modelo: {
|
||||
type: StringConstructor;
|
||||
|
|
@ -106,4 +107,5 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}, {}, {
|
||||
Search: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
Filter: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>;
|
||||
required: true;
|
||||
};
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
}>, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
isDev: {
|
||||
type: BooleanConstructor;
|
||||
required: true;
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
|
|
@ -17,7 +17,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
colunasInvisiveis: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>> & Readonly<{}>, {}, {}, {
|
||||
|
|
|
|||
|
|
@ -32,4 +32,8 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>> & Readonly<{}>, {
|
||||
erro: string | null;
|
||||
mensagemVazio: string | undefined;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
}, {}, {
|
||||
AlertCircle: import("@lucide/vue").LucideIcon;
|
||||
Inbox: import("@lucide/vue").LucideIcon;
|
||||
LoaderCircle: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ declare const _default: typeof __VLS_export;
|
|||
export default _default;
|
||||
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
temAcoes: {
|
||||
|
|
@ -38,14 +38,14 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>, {
|
||||
ArrowUp: import("@lucide/vue").LucideIcon;
|
||||
ArrowDown: import("@lucide/vue").LucideIcon;
|
||||
isOrdenavel: (coluna: any) => boolean;
|
||||
isOrdenavel: (coluna: tipoEliColuna<unknown>) => boolean;
|
||||
emitAlternarOrdenacao: (chave: string) => void;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
alternarOrdenacao(chave: string): boolean;
|
||||
"alternar-selecao-todos": () => true;
|
||||
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
temAcoes: {
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
acoes: {
|
||||
type: PropType<Array<ItemAcao<any>>>;
|
||||
type: PropType<ItemAcao<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
linha: {
|
||||
|
|
@ -51,7 +51,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
acoes: {
|
||||
type: PropType<Array<ItemAcao<any>>>;
|
||||
type: PropType<ItemAcao<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
linha: {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { type PropType } from "vue";
|
||||
import "./EliTabelaModalColunas.css";
|
||||
import type { EliTabelaColunasConfig } from "./colunasStorage";
|
||||
import type { tipoEliColuna } from "./types-eli-tabela";
|
||||
type OrigemLista = "visiveis" | "invisiveis";
|
||||
declare const _default: typeof __VLS_export;
|
||||
export default _default;
|
||||
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
|
|
@ -18,19 +18,19 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>, {
|
||||
emitFechar: () => void;
|
||||
emitSalvar: () => void;
|
||||
visiveisLocal: import("vue").Ref<string[], string[]>;
|
||||
invisiveisLocal: import("vue").Ref<string[], string[]>;
|
||||
itemSendoArrastado: import("vue").Ref<string | null, string | null>;
|
||||
emitFechar: () => void;
|
||||
emitSalvar: () => void;
|
||||
onDragStart: (e: DragEvent, rotulo: string) => void;
|
||||
onDragEnd: () => void;
|
||||
onDragOverItem: (alvoRotulo: string, destino: OrigemLista) => void;
|
||||
onDragOverLista: (destino: OrigemLista) => void;
|
||||
onDragOverItem: (alvoRotulo: string, destino: "visiveis" | "invisiveis") => void;
|
||||
onDragOverLista: (destino: "visiveis" | "invisiveis") => void;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
fechar(): true;
|
||||
salvar(_config: EliTabelaColunasConfig): true;
|
||||
|
|
@ -48,10 +48,17 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
colunas: {
|
||||
type: PropType<Array<tipoEliColuna<any>>>;
|
||||
type: PropType<tipoEliColuna<any>[]>;
|
||||
required: true;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onFechar?: (() => any) | undefined;
|
||||
onSalvar?: ((_config: EliTabelaColunasConfig) => any) | undefined;
|
||||
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
}>, {}, {}, {
|
||||
Columns2: import("@lucide/vue").LucideIcon;
|
||||
Eye: import("@lucide/vue").LucideIcon;
|
||||
EyeOff: import("@lucide/vue").LucideIcon;
|
||||
GripVertical: import("@lucide/vue").LucideIcon;
|
||||
X: import("@lucide/vue").LucideIcon;
|
||||
Check: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
|
|
|
|||
|
|
@ -1,13 +1,7 @@
|
|||
import { type PropType } from "vue";
|
||||
import type { ComponenteEntrada } from "../EliEntrada/tiposEntradas";
|
||||
import type { tipoEliTabelaConsulta } from "./types-eli-tabela";
|
||||
type FiltroBase<T> = NonNullable<tipoEliTabelaConsulta<T>["filtroAvancado"]>[number];
|
||||
type LinhaFiltro = {
|
||||
chave: string;
|
||||
entrada: ComponenteEntrada;
|
||||
valor: any;
|
||||
};
|
||||
declare function rotuloDoFiltro(f: FiltroBase<any>): string;
|
||||
import type { FiltroBase } from "./useFiltroAvancado";
|
||||
import { rotuloDoFiltro } from "./useFiltroAvancado";
|
||||
import "./EliTabelaModalFiltroAvancado.css";
|
||||
declare const _default: typeof __VLS_export;
|
||||
export default _default;
|
||||
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
|
|
@ -16,13 +10,21 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: true;
|
||||
};
|
||||
filtrosBase: {
|
||||
type: PropType<Array<FiltroBase<any>>>;
|
||||
type: PropType<FiltroBase<string>[]>;
|
||||
required: true;
|
||||
};
|
||||
modelo: {
|
||||
type: PropType<Array<any>>;
|
||||
/** Linhas persistidas do pai — normalizadas internamente via normalizarModelo() */
|
||||
type: PropType<Array<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}>>;
|
||||
required: true;
|
||||
};
|
||||
modeloFormula: {
|
||||
type: StringConstructor;
|
||||
default: string;
|
||||
};
|
||||
}>, {
|
||||
linhas: import("vue").Ref<{
|
||||
chave: string;
|
||||
|
|
@ -80,8 +82,8 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}];
|
||||
valor: any;
|
||||
}[], LinhaFiltro[] | {
|
||||
valor: unknown;
|
||||
}[], import("./useFiltroAvancado").LinhaFiltro[] | {
|
||||
chave: string;
|
||||
entrada: readonly ["texto", {
|
||||
rotulo: string;
|
||||
|
|
@ -137,16 +139,18 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}];
|
||||
valor: any;
|
||||
valor: unknown;
|
||||
}[]>;
|
||||
opcoesParaAdicionar: import("vue").ComputedRef<{
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
filtro: (valor: unknown) => import("p-comuns").tipoFiltro26<any>;
|
||||
entrada: ComponenteEntrada;
|
||||
filtro: (valor: unknown) => import("p-comuns").tipoFiltroDeltaColunaTipada<"small" | "length" | "concat" | "slice" | "indexOf" | "lastIndexOf" | "includes" | "toString" | "charAt" | "charCodeAt" | "localeCompare" | "match" | "replace" | "search" | "split" | "substring" | "toLowerCase" | "toLocaleLowerCase" | "toUpperCase" | "toLocaleUpperCase" | "trim" | "substr" | "codePointAt" | "endsWith" | "normalize" | "repeat" | "startsWith" | "anchor" | "big" | "blink" | "bold" | "fixed" | "fontcolor" | "fontsize" | "italics" | "link" | "strike" | "sub" | "sup" | "padStart" | "padEnd" | "trimEnd" | "trimStart" | "trimLeft" | "trimRight" | "matchAll" | "valueOf"> | undefined;
|
||||
entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada;
|
||||
}[]>;
|
||||
chaveParaAdicionar: import("vue").Ref<string, string>;
|
||||
componenteEntrada: (entrada: ComponenteEntrada) => import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
formulaCustomizada: import("vue").Ref<string, string>;
|
||||
formulaGerada: import("vue").ComputedRef<string>;
|
||||
componenteEntrada: (entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada) => import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
value: {
|
||||
type: PropType<string | null | undefined>;
|
||||
default: undefined;
|
||||
|
|
@ -485,32 +489,58 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>, {
|
||||
value: string | null | undefined;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
opcoesEntrada: (entrada: ComponenteEntrada) => any;
|
||||
opcoesEntrada: (entrada: import("../EliEntrada/tiposEntradas").ComponenteEntrada) => {
|
||||
rotulo: string;
|
||||
};
|
||||
adicionar: () => void;
|
||||
remover: (idx: number) => void;
|
||||
emitFechar: () => void;
|
||||
emitSalvar: () => void;
|
||||
emitLimpar: () => void;
|
||||
rotuloDoFiltro: typeof rotuloDoFiltro;
|
||||
rotuloDoFiltroAtivo: (chave: string) => string;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
fechar: () => true;
|
||||
limpar: () => true;
|
||||
salvar: (_linhas: any[]) => true;
|
||||
/** Dado serializável emitido pelo botão Aplicar */
|
||||
salvar: (_linhas: Array<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}>, _formula?: string) => true;
|
||||
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
aberto: {
|
||||
type: BooleanConstructor;
|
||||
required: true;
|
||||
};
|
||||
filtrosBase: {
|
||||
type: PropType<Array<FiltroBase<any>>>;
|
||||
type: PropType<FiltroBase<string>[]>;
|
||||
required: true;
|
||||
};
|
||||
modelo: {
|
||||
type: PropType<Array<any>>;
|
||||
/** Linhas persistidas do pai — normalizadas internamente via normalizarModelo() */
|
||||
type: PropType<Array<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}>>;
|
||||
required: true;
|
||||
};
|
||||
modeloFormula: {
|
||||
type: StringConstructor;
|
||||
default: string;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onFechar?: (() => any) | undefined;
|
||||
onSalvar?: ((_linhas: any[]) => any) | undefined;
|
||||
onSalvar?: ((_linhas: {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[], _formula?: string | undefined) => any) | undefined;
|
||||
onLimpar?: (() => any) | undefined;
|
||||
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
}>, {
|
||||
modeloFormula: string;
|
||||
}, {}, {
|
||||
CircleHelp: import("@lucide/vue").LucideIcon;
|
||||
Filter: import("@lucide/vue").LucideIcon;
|
||||
Plus: import("@lucide/vue").LucideIcon;
|
||||
Trash2: import("@lucide/vue").LucideIcon;
|
||||
X: import("@lucide/vue").LucideIcon;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import { type PropType } from "vue";
|
||||
import "./EliTabelaPaginacao.css";
|
||||
declare const _default: typeof __VLS_export;
|
||||
export default _default;
|
||||
declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import "dayjs/locale/pt-br";
|
||||
import { type PropType } from "vue";
|
||||
import type { tiposTabelaCelulas } from "./tiposTabelaCelulas";
|
||||
declare const _default: typeof __VLS_export;
|
||||
|
|
@ -8,11 +9,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
required: false;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
valor: string;
|
||||
formato: "data" | "data_hora" | "relativo";
|
||||
acao?: () => void;
|
||||
} | undefined;
|
||||
textoData: import("vue").ComputedRef<string>;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
|
|
|
|||
|
|
@ -7,12 +7,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
type: PropType<tiposTabelaCelulas["numero"]>;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
numero: number;
|
||||
prefixo?: string;
|
||||
sufixo?: string;
|
||||
acao?: () => void;
|
||||
} | undefined;
|
||||
textoNumero: import("vue").ComputedRef<string>;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
|
|
|
|||
|
|
@ -7,16 +7,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
type: PropType<tiposTabelaCelulas["tags"]>;
|
||||
required: false;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
opcoes: {
|
||||
rotulo: string;
|
||||
cor?: string;
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
acao?: () => void;
|
||||
}[];
|
||||
} | undefined;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
type: PropType<tiposTabelaCelulas["tags"]>;
|
||||
required: false;
|
||||
|
|
|
|||
|
|
@ -6,12 +6,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
dados: {
|
||||
type: PropType<tiposTabelaCelulas["textoSimples"]>;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
texto: string;
|
||||
acao?: () => void;
|
||||
} | undefined;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
type: PropType<tiposTabelaCelulas["textoSimples"]>;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -6,12 +6,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
dados: {
|
||||
type: PropType<tiposTabelaCelulas["textoTruncado"]>;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
texto: string;
|
||||
acao?: () => void;
|
||||
} | undefined;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
type: PropType<tiposTabelaCelulas["textoTruncado"]>;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,14 +1,19 @@
|
|||
/**
|
||||
* Mapa (dispatch table) que associa cada `tipoTabelaCelula` ao seu componente Vue de renderização.
|
||||
* Usado por `EliTabelaCelula.vue` para resolver dinamicamente qual componente renderizar
|
||||
* a partir do tipo retornado por `tipoEliColuna.celula(linha)`.
|
||||
*
|
||||
* Adicionar um novo tipo de célula requer:
|
||||
* 1. Criar o componente `EliTabelaCelula<Tipo>.vue`
|
||||
* 2. Adicionar a chave em `tipoTabelaCelula` (tiposTabelaCelulas.ts)
|
||||
* 3. Registrar aqui no mapa
|
||||
*/
|
||||
export declare const registryTabelaCelulas: {
|
||||
readonly textoSimples: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
type: import("vue").PropType<import("./tiposTabelaCelulas").tiposTabelaCelulas["textoSimples"]>;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
texto: string;
|
||||
acao?: () => void;
|
||||
} | undefined;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
type: import("vue").PropType<import("./tiposTabelaCelulas").tiposTabelaCelulas["textoSimples"]>;
|
||||
};
|
||||
|
|
@ -17,12 +22,7 @@ export declare const registryTabelaCelulas: {
|
|||
dados: {
|
||||
type: import("vue").PropType<import("./tiposTabelaCelulas").tiposTabelaCelulas["textoTruncado"]>;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
texto: string;
|
||||
acao?: () => void;
|
||||
} | undefined;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
type: import("vue").PropType<import("./tiposTabelaCelulas").tiposTabelaCelulas["textoTruncado"]>;
|
||||
};
|
||||
|
|
@ -32,12 +32,6 @@ export declare const registryTabelaCelulas: {
|
|||
type: import("vue").PropType<import("./tiposTabelaCelulas").tiposTabelaCelulas["numero"]>;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
numero: number;
|
||||
prefixo?: string;
|
||||
sufixo?: string;
|
||||
acao?: () => void;
|
||||
} | undefined;
|
||||
textoNumero: import("vue").ComputedRef<string>;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
|
|
@ -49,16 +43,7 @@ export declare const registryTabelaCelulas: {
|
|||
type: import("vue").PropType<import("./tiposTabelaCelulas").tiposTabelaCelulas["tags"]>;
|
||||
required: false;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
opcoes: {
|
||||
rotulo: string;
|
||||
cor?: string;
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
acao?: () => void;
|
||||
}[];
|
||||
} | undefined;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
type: import("vue").PropType<import("./tiposTabelaCelulas").tiposTabelaCelulas["tags"]>;
|
||||
required: false;
|
||||
|
|
@ -729,11 +714,6 @@ export declare const registryTabelaCelulas: {
|
|||
required: false;
|
||||
};
|
||||
}>, {
|
||||
dados: {
|
||||
valor: string;
|
||||
formato: "data" | "data_hora" | "relativo";
|
||||
acao?: () => void;
|
||||
} | undefined;
|
||||
textoData: import("vue").ComputedRef<string>;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dados: {
|
||||
|
|
|
|||
|
|
@ -1,10 +1,36 @@
|
|||
export type EliTabelaColunasConfig = {
|
||||
/** Rotulos das colunas visiveis (em ordem). */
|
||||
/** Rótulos das colunas visíveis (em ordem). */
|
||||
visiveis: string[];
|
||||
/** Rotulos das colunas invisiveis. */
|
||||
/** Rótulos das colunas invisíveis. */
|
||||
invisiveis: string[];
|
||||
};
|
||||
/**
|
||||
* Retorna a chave de `localStorage` utilizada para persistir a configuração de colunas de uma tabela.
|
||||
*
|
||||
* @param nomeTabela - Identificador único da tabela (campo `nome` de `tipoEliTabelaConsulta`)
|
||||
* @returns Chave no formato `eli:tabela:<nomeTabela>:colunas`
|
||||
*/
|
||||
export declare function storageKeyColunas(nomeTabela: string): string;
|
||||
/**
|
||||
* Carrega do `localStorage` a configuração de visibilidade e ordem das colunas de uma tabela.
|
||||
* Em caso de dado corrompido ou ausente, retorna configuração vazia (sem colunas fixadas).
|
||||
*
|
||||
* @param nomeTabela - Identificador único da tabela
|
||||
* @returns Configuração salva ou `{ visiveis: [], invisiveis: [] }` como fallback seguro
|
||||
*/
|
||||
export declare function carregarConfigColunas(nomeTabela: string): EliTabelaColunasConfig;
|
||||
/**
|
||||
* Persiste no `localStorage` a configuração de visibilidade e ordem das colunas.
|
||||
* Falhas de armazenamento (modo privado, storage cheio) são silenciadas.
|
||||
*
|
||||
* @param nomeTabela - Identificador único da tabela
|
||||
* @param config - Configuração com listas de colunas visíveis e invisíveis
|
||||
*/
|
||||
export declare function salvarConfigColunas(nomeTabela: string, config: EliTabelaColunasConfig): void;
|
||||
/**
|
||||
* Remove do `localStorage` a configuração de colunas salva para uma tabela.
|
||||
* Usado para restaurar o estado padrão de visibilidade definido nas props.
|
||||
*
|
||||
* @param nomeTabela - Identificador único da tabela
|
||||
*/
|
||||
export declare function limparConfigColunas(nomeTabela: string): void;
|
||||
|
|
|
|||
|
|
@ -1,7 +1,33 @@
|
|||
export type EliTabelaFiltroAvancadoSalvo<T> = Array<{
|
||||
coluna: keyof T;
|
||||
valor: T[keyof T];
|
||||
}>;
|
||||
export type EliTabelaFiltroAvancadoSalvo<T> = {
|
||||
linhas: Array<{
|
||||
chave: keyof T;
|
||||
/** Valor vindo de JSON.parse — tipo desconhecido intencionalmente; faça narrowing no consumidor. */
|
||||
valor: unknown;
|
||||
}>;
|
||||
formula?: string;
|
||||
};
|
||||
/**
|
||||
* Carrega do `localStorage` as linhas de filtro avançado salvas para uma tabela.
|
||||
* Trata dois formatos legados: array direto de filtros (v1) e objeto `{ linhas, formula }` (v2).
|
||||
* Em caso de dado ausente, corrompido ou formato desconhecido, retorna estado vazio.
|
||||
*
|
||||
* @param nomeTabela - Identificador único da tabela (campo `nome` de `tipoEliTabelaConsulta`)
|
||||
* @returns Estado de filtros salvo, ou `{ linhas: [], formula: '' }` como fallback seguro
|
||||
*/
|
||||
export declare function carregarFiltroAvancado<T>(nomeTabela: string): EliTabelaFiltroAvancadoSalvo<T>;
|
||||
/**
|
||||
* Persiste no `localStorage` o estado do filtro avançado de uma tabela.
|
||||
* Salva tanto as linhas de filtro quanto a fórmula booleana customizada.
|
||||
* Falhas de armazenamento são silenciadas para não interromper o fluxo do usuário.
|
||||
*
|
||||
* @param nomeTabela - Identificador único da tabela
|
||||
* @param filtros - Estado completo dos filtros a persistir
|
||||
*/
|
||||
export declare function salvarFiltroAvancado<T>(nomeTabela: string, filtros: EliTabelaFiltroAvancadoSalvo<T>): void;
|
||||
/**
|
||||
* Remove do `localStorage` os filtros avançados salvos para uma tabela.
|
||||
* Chamado ao executar "Limpar Filtros" no modal de filtro avançado.
|
||||
*
|
||||
* @param nomeTabela - Identificador único da tabela
|
||||
*/
|
||||
export declare function limparFiltroAvancado(nomeTabela: string): void;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
import type { LucideIcon } from "@lucide/vue";
|
||||
import type { tipoFiltro26 } from "p-comuns";
|
||||
export type tipoFiltro<T> = tipoFiltro26<T>;
|
||||
import type { tipoFiltroDeltaColunaTipada } from "p-comuns";
|
||||
import type { tipoResposta } from "p-respostas";
|
||||
import type { ComponenteEntrada } from "../EliEntrada/tiposEntradas";
|
||||
import type { tiposTabelaCelulas, tipoTabelaCelula } from "./celulas/tiposTabelaCelulas";
|
||||
|
|
@ -11,6 +10,20 @@ export type tipoComponenteCelulaBase<T extends tipoTabelaCelula> = readonly [
|
|||
export type tipoComponenteCelula = {
|
||||
[K in tipoTabelaCelula]: tipoComponenteCelulaBase<K>;
|
||||
}[tipoTabelaCelula];
|
||||
/**
|
||||
* Cria uma tupla tipada `[tipo, dados]` que representa o conteúdo de uma célula da tabela.
|
||||
* Funciona como type-safe builder: o TypeScript infere o tipo exato de `dados` a partir de `tipo`,
|
||||
* garantindo que não seja possível passar dados incorretos para um tipo de célula.
|
||||
*
|
||||
* Uso esperado dentro de `tipoEliColuna.celula`:
|
||||
* ```ts
|
||||
* celula: (linha) => celulaTabela("textoSimples", { texto: linha.nome })
|
||||
* ```
|
||||
*
|
||||
* @param tipo - Identificador do tipo de célula (chave de `tiposTabelaCelulas`)
|
||||
* @param dados - Dados tipados para o tipo de célula escolhido
|
||||
* @returns Tupla `[tipo, dados]` consumida pelo `EliTabelaCelula.vue`
|
||||
*/
|
||||
export declare const celulaTabela: <T extends tipoTabelaCelula>(tipo: T, dados: tiposTabelaCelulas[T]) => tipoComponenteCelulaBase<T>;
|
||||
export type { tiposTabelaCelulas, tipoTabelaCelula };
|
||||
export type tipoEliColuna<T> = {
|
||||
|
|
@ -52,7 +65,7 @@ export type tipoEliTabelaAcao<T> = {
|
|||
exibir?: boolean | ((linha: T) => Promise<boolean> | boolean);
|
||||
};
|
||||
export type parametrosConsulta<T> = {
|
||||
filtros?: tipoFiltro26<T>[];
|
||||
filtros?: tipoFiltroDeltaColunaTipada<Extract<keyof T, string>>[];
|
||||
coluna_ordem?: keyof T;
|
||||
direcao_ordem?: "asc" | "desc";
|
||||
offSet?: number;
|
||||
|
|
@ -124,7 +137,7 @@ export type tipoEliTabelaConsulta<T> = {
|
|||
/** Rótulo exibido no select de adicionar filtro */
|
||||
rotulo: string;
|
||||
/** vai gerar filtro e mescla com os filtros já existentes */
|
||||
filtro: (valor: unknown) => tipoFiltro26<T>;
|
||||
filtro: (valor: unknown) => tipoFiltroDeltaColunaTipada<Extract<keyof T, string>> | undefined;
|
||||
/** componente de entrada que vai receber o valor para o filtro */
|
||||
entrada: ComponenteEntrada;
|
||||
}[];
|
||||
|
|
|
|||
42
dist/types/componentes/EliTabela/useColunasOrdenacao.d.ts
vendored
Normal file
42
dist/types/componentes/EliTabela/useColunasOrdenacao.d.ts
vendored
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
/**
|
||||
* useColunasOrdenacao
|
||||
* Composable que encapsula a lógica de drag-and-drop e sincronização de estado
|
||||
* do modal de configuração de colunas da EliTabela.
|
||||
*
|
||||
* Responsável por:
|
||||
* - Sincronizar colunas visíveis/invisíveis com a configuração persistida
|
||||
* - Aplicar ordem salva e adicionar novas colunas ao final
|
||||
* - Gerenciar eventos de arrastar-e-soltar entre as duas listas
|
||||
*
|
||||
* Extraído de `EliTabelaModalColunas.vue` para manter o componente abaixo de 250 linhas.
|
||||
*/
|
||||
import { type Ref } from "vue";
|
||||
import type { EliTabelaColunasConfig } from "./colunasStorage";
|
||||
import type { tipoEliColuna } from "./types-eli-tabela";
|
||||
type OrigemLista = "visiveis" | "invisiveis";
|
||||
interface UseColunasOrdenacaoOptions {
|
||||
aberto: Ref<boolean>;
|
||||
rotulosColunas: Ref<string[]>;
|
||||
configInicial: Ref<EliTabelaColunasConfig>;
|
||||
colunas: Ref<tipoEliColuna<any>[]>;
|
||||
}
|
||||
/**
|
||||
* Composable de drag-and-drop para reordenação e alternância de visibilidade de colunas.
|
||||
* Sincroniza automaticamente quando `aberto`, `rotulosColunas`, `configInicial` ou `colunas` mudam.
|
||||
*
|
||||
* @param options.aberto - Ref que controla se o modal está aberto (gatilho de sincronização)
|
||||
* @param options.rotulosColunas - Ref com todos os rótulos de colunas da tabela
|
||||
* @param options.configInicial - Ref com a configuração persistida (visíveis + invisíveis)
|
||||
* @param options.colunas - Ref com a definição completa das colunas (para ler `visivel: false` padrão)
|
||||
* @returns Estado reativo e handlers de drag-and-drop prontos para o template
|
||||
*/
|
||||
export declare function useColunasOrdenacao({ aberto, rotulosColunas, configInicial, colunas, }: UseColunasOrdenacaoOptions): {
|
||||
visiveisLocal: Ref<string[], string[]>;
|
||||
invisiveisLocal: Ref<string[], string[]>;
|
||||
itemSendoArrastado: Ref<string | null, string | null>;
|
||||
onDragStart: (e: DragEvent, rotulo: string) => void;
|
||||
onDragEnd: () => void;
|
||||
onDragOverItem: (alvoRotulo: string, destino: OrigemLista) => void;
|
||||
onDragOverLista: (destino: OrigemLista) => void;
|
||||
};
|
||||
export {};
|
||||
132
dist/types/componentes/EliTabela/useEliTabela.d.ts
vendored
Normal file
132
dist/types/componentes/EliTabela/useEliTabela.d.ts
vendored
Normal file
|
|
@ -0,0 +1,132 @@
|
|||
import type { tipoEliTabelaConsulta } from "./types-eli-tabela";
|
||||
type TabelaProps = tipoEliTabelaConsulta<any>;
|
||||
export declare function useEliTabela(props: {
|
||||
tabela: TabelaProps;
|
||||
selecionados: unknown[];
|
||||
esconderDebug: boolean;
|
||||
}, emit: (event: "update:selecionados", value: unknown[]) => void): {
|
||||
menuAberto: import("vue").Ref<number | null, number | null>;
|
||||
menuPopup: import("vue").Ref<{
|
||||
menuEl: HTMLElement | null;
|
||||
} | null, {
|
||||
menuEl: HTMLElement | null;
|
||||
} | {
|
||||
menuEl: HTMLElement | null;
|
||||
} | null>;
|
||||
menuPopupPos: import("vue").Ref<{
|
||||
top: number;
|
||||
left: number;
|
||||
}, {
|
||||
top: number;
|
||||
left: number;
|
||||
} | {
|
||||
top: number;
|
||||
left: number;
|
||||
}>;
|
||||
possuiAcoes: (i: number) => boolean;
|
||||
toggleMenu: (i: number, evento?: MouseEvent) => void;
|
||||
acoesDisponiveisPorLinha: (i: number) => {
|
||||
acao: import("./types-eli-tabela").tipoEliTabelaAcao<any>;
|
||||
indice: number;
|
||||
visivel: boolean;
|
||||
}[];
|
||||
paginaAtual: import("vue").Ref<number, number>;
|
||||
valorBusca: import("vue").Ref<string, string>;
|
||||
modalColunasAberto: import("vue").Ref<boolean, boolean>;
|
||||
configColunas: import("vue").Ref<{
|
||||
visiveis: string[];
|
||||
invisiveis: string[];
|
||||
}, import("./colunasStorage").EliTabelaColunasConfig | {
|
||||
visiveis: string[];
|
||||
invisiveis: string[];
|
||||
}>;
|
||||
linhasExpandidas: import("vue").Ref<Record<number, boolean>, Record<number, boolean>>;
|
||||
rotulosColunas: import("vue").ComputedRef<string[]>;
|
||||
colunasEfetivas: import("vue").ComputedRef<any[]>;
|
||||
colunasInvisiveisEfetivas: import("vue").ComputedRef<import("./types-eli-tabela").tipoEliColuna<any>[]>;
|
||||
temColunasInvisiveis: import("vue").ComputedRef<boolean>;
|
||||
totalColunas: import("vue").ComputedRef<number>;
|
||||
abrirModalColunas: () => void;
|
||||
fecharModalColunas: () => void;
|
||||
salvarModalColunas: (cfg: import("./colunasStorage").EliTabelaColunasConfig) => void;
|
||||
alternarLinhaExpandida: (indice: number) => void;
|
||||
mostrarSelecao: import("vue").ComputedRef<boolean>;
|
||||
isSelecionado: (linha: unknown) => boolean;
|
||||
alternarSelecao: (linha: unknown) => void;
|
||||
todosSelecionados: import("vue").ComputedRef<boolean>;
|
||||
algunsSelecionados: import("vue").ComputedRef<boolean>;
|
||||
alternarSelecaoTodos: (forcarMarcar?: boolean) => void;
|
||||
filtrosUi: import("vue").Ref<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[], {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[] | {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[]>;
|
||||
filtrosFormula: import("vue").Ref<string, string>;
|
||||
modalFiltroAberto: import("vue").Ref<boolean, boolean>;
|
||||
exibirFiltroAvancado: import("vue").ComputedRef<boolean>;
|
||||
filtrosAvancadosAtivos: import("vue").ComputedRef<import("p-comuns").tipoFiltroDeltaColunaTipada<any>[]>;
|
||||
abrirModalFiltro: () => void;
|
||||
fecharModalFiltro: () => void;
|
||||
limparFiltrosAvancados: () => void;
|
||||
salvarFiltrosAvancados: (novoLinhas: {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[], novaFormula?: string) => void;
|
||||
isDev: boolean;
|
||||
tabela: import("vue").ComputedRef<tipoEliTabelaConsulta<any>>;
|
||||
carregando: import("vue").Ref<boolean, boolean>;
|
||||
erro: import("vue").Ref<string | null, string | null>;
|
||||
linhas: import("vue").Ref<unknown[], unknown[]>;
|
||||
linhasPaginadas: import("vue").ComputedRef<unknown[]>;
|
||||
quantidade: import("vue").Ref<number, number>;
|
||||
quantidadeFiltrada: import("vue").ComputedRef<number>;
|
||||
acoesVisiveis: import("vue").Ref<boolean[][], boolean[][]>;
|
||||
colunaOrdenacao: import("vue").Ref<string | null, string | null>;
|
||||
direcaoOrdenacao: import("vue").Ref<"desc" | "asc", "desc" | "asc">;
|
||||
registrosPorConsulta: import("vue").ComputedRef<number>;
|
||||
totalPaginas: import("vue").ComputedRef<number>;
|
||||
temAcoes: import("vue").ComputedRef<boolean>;
|
||||
exibirBusca: import("vue").ComputedRef<boolean>;
|
||||
acoesSuperiores: import("vue").ComputedRef<{
|
||||
posicao: "superior" | "inferior";
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (parametrosConsulta: import("./types-eli-tabela").parametrosConsulta<any> & {
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (lista: any[]) => Promise<any[]>;
|
||||
}) => void;
|
||||
}[]>;
|
||||
acoesInferiores: import("vue").ComputedRef<{
|
||||
posicao: "superior" | "inferior";
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (parametrosConsulta: import("./types-eli-tabela").parametrosConsulta<any> & {
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (lista: any[]) => Promise<any[]>;
|
||||
}) => void;
|
||||
}[]>;
|
||||
temAcoesSuperiores: import("vue").ComputedRef<boolean>;
|
||||
temAcoesInferiores: import("vue").ComputedRef<boolean>;
|
||||
parametrosConsultaAtuais: import("vue").ComputedRef<{
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (novaLista: any[]) => Promise<any[]>;
|
||||
filtros?: import("p-comuns").tipoFiltroDeltaColunaTipada<string>[] | undefined;
|
||||
coluna_ordem?: string | number | symbol | undefined;
|
||||
direcao_ordem?: "asc" | "desc";
|
||||
offSet?: number;
|
||||
limit?: number;
|
||||
texto_busca?: string;
|
||||
}>;
|
||||
carregar: () => Promise<void>;
|
||||
alternarOrdenacao: (chave?: string) => void;
|
||||
atualizarBusca: (texto: string) => void;
|
||||
irParaPagina: (pagina: number) => void;
|
||||
};
|
||||
export {};
|
||||
38
dist/types/componentes/EliTabela/useEliTabelaColunas.d.ts
vendored
Normal file
38
dist/types/componentes/EliTabela/useEliTabelaColunas.d.ts
vendored
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
/**
|
||||
* useEliTabelaColunas
|
||||
* Gerencia visibilidade, ordenação e persistência da configuração de colunas da EliTabela.
|
||||
* Controla também o modal de colunas e o estado de linhas expandidas (detalhe de colunas invisíveis).
|
||||
*
|
||||
* @param props - Props do componente (tabela.colunas, tabela.nome)
|
||||
* @param temAcoes - Computed que indica se existem ações por linha (para totalColunas)
|
||||
*/
|
||||
import { type Ref } from "vue";
|
||||
import { type EliTabelaColunasConfig } from "./colunasStorage";
|
||||
import type { tipoEliColuna } from "./types-eli-tabela";
|
||||
type PropsColunas = {
|
||||
tabela: {
|
||||
colunas: tipoEliColuna<any>[];
|
||||
nome: string;
|
||||
};
|
||||
};
|
||||
export declare function useEliTabelaColunas(props: PropsColunas, temAcoes: Ref<boolean>): {
|
||||
modalColunasAberto: Ref<boolean, boolean>;
|
||||
configColunas: Ref<{
|
||||
visiveis: string[];
|
||||
invisiveis: string[];
|
||||
}, EliTabelaColunasConfig | {
|
||||
visiveis: string[];
|
||||
invisiveis: string[];
|
||||
}>;
|
||||
linhasExpandidas: Ref<Record<number, boolean>, Record<number, boolean>>;
|
||||
rotulosColunas: import("vue").ComputedRef<string[]>;
|
||||
colunasEfetivas: import("vue").ComputedRef<any[]>;
|
||||
colunasInvisiveisEfetivas: import("vue").ComputedRef<tipoEliColuna<any>[]>;
|
||||
temColunasInvisiveis: import("vue").ComputedRef<boolean>;
|
||||
totalColunas: import("vue").ComputedRef<number>;
|
||||
abrirModalColunas: () => void;
|
||||
fecharModalColunas: () => void;
|
||||
salvarModalColunas: (cfg: EliTabelaColunasConfig) => void;
|
||||
alternarLinhaExpandida: (indice: number) => void;
|
||||
};
|
||||
export {};
|
||||
72
dist/types/componentes/EliTabela/useEliTabelaConsulta.d.ts
vendored
Normal file
72
dist/types/componentes/EliTabela/useEliTabelaConsulta.d.ts
vendored
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
/**
|
||||
* useEliTabelaConsulta
|
||||
* Gerencia o ciclo de consultas da EliTabela: carregamento, paginação, ordenação e busca.
|
||||
* Usa um contador sequencial para descartar respostas de consultas antigas (race condition).
|
||||
*
|
||||
* @param props - Props do componente (tabela, esconderDebug)
|
||||
* @param filtrosAvancadosAtivos - Computed com filtros ativos para envio à API
|
||||
* @param paginaAtual - Ref da página atual (compartilhada com filtros e busca)
|
||||
* @param valorBusca - Ref da busca textual (compartilhada com filtros avançados)
|
||||
* @param linhasExpandidas - Ref das linhas expandidas (resetada ao carregar)
|
||||
*/
|
||||
import type { tipoFiltroDeltaColunaTipada } from "p-comuns";
|
||||
import { type Ref } from "vue";
|
||||
import type { parametrosConsulta, tipoEliTabelaConsulta } from "./types-eli-tabela";
|
||||
type PropsConsulta = {
|
||||
tabela: tipoEliTabelaConsulta<any>;
|
||||
esconderDebug: boolean;
|
||||
};
|
||||
export declare function useEliTabelaConsulta(props: PropsConsulta, filtrosAvancadosAtivos: Ref<tipoFiltroDeltaColunaTipada<any>[]>, paginaAtual: Ref<number>, valorBusca: Ref<string>, linhasExpandidas: Ref<Record<number, boolean>>): {
|
||||
isDev: boolean;
|
||||
tabela: import("vue").ComputedRef<tipoEliTabelaConsulta<any>>;
|
||||
carregando: Ref<boolean, boolean>;
|
||||
erro: Ref<string | null, string | null>;
|
||||
linhas: Ref<unknown[], unknown[]>;
|
||||
linhasPaginadas: import("vue").ComputedRef<unknown[]>;
|
||||
quantidade: Ref<number, number>;
|
||||
quantidadeFiltrada: import("vue").ComputedRef<number>;
|
||||
acoesVisiveis: Ref<boolean[][], boolean[][]>;
|
||||
colunaOrdenacao: Ref<string | null, string | null>;
|
||||
direcaoOrdenacao: Ref<"desc" | "asc", "desc" | "asc">;
|
||||
registrosPorConsulta: import("vue").ComputedRef<number>;
|
||||
totalPaginas: import("vue").ComputedRef<number>;
|
||||
temAcoes: import("vue").ComputedRef<boolean>;
|
||||
exibirBusca: import("vue").ComputedRef<boolean>;
|
||||
acoesSuperiores: import("vue").ComputedRef<{
|
||||
posicao: "superior" | "inferior";
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (parametrosConsulta: parametrosConsulta<any> & {
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (lista: any[]) => Promise<any[]>;
|
||||
}) => void;
|
||||
}[]>;
|
||||
acoesInferiores: import("vue").ComputedRef<{
|
||||
posicao: "superior" | "inferior";
|
||||
icone?: import("@lucide/vue").LucideIcon;
|
||||
cor?: string;
|
||||
rotulo: string;
|
||||
acao: (parametrosConsulta: parametrosConsulta<any> & {
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (lista: any[]) => Promise<any[]>;
|
||||
}) => void;
|
||||
}[]>;
|
||||
temAcoesSuperiores: import("vue").ComputedRef<boolean>;
|
||||
temAcoesInferiores: import("vue").ComputedRef<boolean>;
|
||||
parametrosConsultaAtuais: import("vue").ComputedRef<{
|
||||
atualizarConsulta: () => Promise<void>;
|
||||
editarLista: (novaLista: any[]) => Promise<any[]>;
|
||||
filtros?: tipoFiltroDeltaColunaTipada<string>[] | undefined;
|
||||
coluna_ordem?: string | number | symbol | undefined;
|
||||
direcao_ordem?: "asc" | "desc";
|
||||
offSet?: number;
|
||||
limit?: number;
|
||||
texto_busca?: string;
|
||||
}>;
|
||||
carregar: () => Promise<void>;
|
||||
alternarOrdenacao: (chave?: string) => void;
|
||||
atualizarBusca: (texto: string) => void;
|
||||
irParaPagina: (pagina: number) => void;
|
||||
};
|
||||
export {};
|
||||
45
dist/types/componentes/EliTabela/useEliTabelaFiltrosAvancados.d.ts
vendored
Normal file
45
dist/types/componentes/EliTabela/useEliTabelaFiltrosAvancados.d.ts
vendored
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
/**
|
||||
* useEliTabelaFiltrosAvancados
|
||||
* Gerencia o estado de filtros avançados da EliTabela, incluindo:
|
||||
* - Linhas de filtro ativas (`filtrosUi`) e fórmula booleana (`filtrosFormula`)
|
||||
* - Computed `filtrosAvancadosAtivos` que converte as linhas em FiltroDelta para a API
|
||||
* - Abertura/fechamento e limpeza do modal de filtro avançado
|
||||
*
|
||||
* A fórmula é armazenada no formato `{chave}` (ex: `{email} E {nome}`) e convertida
|
||||
* para IDs globais `{c1} {c2}` durante a montagem do FiltroDelta final.
|
||||
*
|
||||
* @param props - Props do componente (tabela.filtroAvancado, tabela.nome)
|
||||
* @param paginaAtual - Ref da página atual (para resetar ao aplicar filtros)
|
||||
* @param valorBusca - Ref da busca textual (limpa ao aplicar filtros avançados)
|
||||
* @param carregar - Função de recarregamento dos dados
|
||||
*/
|
||||
import type { tipoFiltroDeltaColunaTipada } from "p-comuns";
|
||||
import { type Ref } from "vue";
|
||||
type PropsFiltros = {
|
||||
tabela: {
|
||||
filtroAvancado?: any[];
|
||||
nome: string;
|
||||
};
|
||||
};
|
||||
type LinhaFiltroUI = {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
};
|
||||
export declare function useEliTabelaFiltrosAvancados(props: PropsFiltros, paginaAtual: Ref<number>, valorBusca: Ref<string>, carregar: () => Promise<void>): {
|
||||
filtrosUi: Ref<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[], LinhaFiltroUI[] | {
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}[]>;
|
||||
filtrosFormula: Ref<string, string>;
|
||||
modalFiltroAberto: Ref<boolean, boolean>;
|
||||
exibirFiltroAvancado: import("vue").ComputedRef<boolean>;
|
||||
filtrosAvancadosAtivos: import("vue").ComputedRef<tipoFiltroDeltaColunaTipada<any>[]>;
|
||||
abrirModalFiltro: () => void;
|
||||
fecharModalFiltro: () => void;
|
||||
limparFiltrosAvancados: () => void;
|
||||
salvarFiltrosAvancados: (novoLinhas: LinhaFiltroUI[], novaFormula?: string) => void;
|
||||
};
|
||||
export {};
|
||||
43
dist/types/componentes/EliTabela/useEliTabelaMenu.d.ts
vendored
Normal file
43
dist/types/componentes/EliTabela/useEliTabelaMenu.d.ts
vendored
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
/**
|
||||
* useEliTabelaMenu
|
||||
* Gerencia o menu de ações por linha da EliTabela.
|
||||
* Controla abertura/fechamento, posicionamento do popup e detecção de clique externo.
|
||||
*
|
||||
* @param props - Props do componente (tabela.acoesLinha)
|
||||
* @param acoesVisiveis - Ref com matriz de visibilidade das ações por linha
|
||||
*/
|
||||
import { type Ref } from "vue";
|
||||
import type { tipoEliTabelaAcao } from "./types-eli-tabela";
|
||||
type PropsMenu = {
|
||||
tabela: {
|
||||
acoesLinha?: tipoEliTabelaAcao<any>[];
|
||||
};
|
||||
};
|
||||
export declare function useEliTabelaMenu(props: PropsMenu, acoesVisiveis: Ref<boolean[][]>): {
|
||||
menuAberto: Ref<number | null, number | null>;
|
||||
menuPopup: Ref<{
|
||||
menuEl: HTMLElement | null;
|
||||
} | null, {
|
||||
menuEl: HTMLElement | null;
|
||||
} | {
|
||||
menuEl: HTMLElement | null;
|
||||
} | null>;
|
||||
menuPopupPos: Ref<{
|
||||
top: number;
|
||||
left: number;
|
||||
}, {
|
||||
top: number;
|
||||
left: number;
|
||||
} | {
|
||||
top: number;
|
||||
left: number;
|
||||
}>;
|
||||
possuiAcoes: (i: number) => boolean;
|
||||
toggleMenu: (i: number, evento?: MouseEvent) => void;
|
||||
acoesDisponiveisPorLinha: (i: number) => {
|
||||
acao: tipoEliTabelaAcao<any>;
|
||||
indice: number;
|
||||
visivel: boolean;
|
||||
}[];
|
||||
};
|
||||
export {};
|
||||
26
dist/types/componentes/EliTabela/useEliTabelaSelecao.d.ts
vendored
Normal file
26
dist/types/componentes/EliTabela/useEliTabelaSelecao.d.ts
vendored
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
/**
|
||||
* useEliTabelaSelecao
|
||||
* Gerencia a seleção múltipla de linhas na EliTabela.
|
||||
* Suporta seleção por objeto completo ou por chave configurável (`chave_selecao`).
|
||||
*
|
||||
* @param props - Props do componente (selecionados, tabela.chave_selecao, tabela.mostrar_selecao)
|
||||
* @param emit - Função de emit para `update:selecionados`
|
||||
* @param linhasPaginadas - Ref com as linhas da página atual (para todosSelecionados/algunsSelecionados)
|
||||
*/
|
||||
import { type Ref } from "vue";
|
||||
type PropsSelecao = {
|
||||
selecionados: unknown[];
|
||||
tabela: {
|
||||
mostrar_selecao?: boolean;
|
||||
chave_selecao?: string | number | symbol;
|
||||
};
|
||||
};
|
||||
export declare function useEliTabelaSelecao(props: PropsSelecao, emit: (event: "update:selecionados", value: unknown[]) => void, linhasPaginadas: Ref<unknown[]>): {
|
||||
mostrarSelecao: import("vue").ComputedRef<boolean>;
|
||||
isSelecionado: (linha: unknown) => boolean;
|
||||
alternarSelecao: (linha: unknown) => void;
|
||||
todosSelecionados: import("vue").ComputedRef<boolean>;
|
||||
algunsSelecionados: import("vue").ComputedRef<boolean>;
|
||||
alternarSelecaoTodos: (forcarMarcar?: boolean) => void;
|
||||
};
|
||||
export {};
|
||||
534
dist/types/componentes/EliTabela/useFiltroAvancado.d.ts
vendored
Normal file
534
dist/types/componentes/EliTabela/useFiltroAvancado.d.ts
vendored
Normal file
|
|
@ -0,0 +1,534 @@
|
|||
/**
|
||||
* useFiltroAvancado
|
||||
* Composable que encapsula a lógica do modal de filtro avançado da EliTabela.
|
||||
*
|
||||
* Responsável por:
|
||||
* - Gerenciar a lista de linhas de filtro ativas
|
||||
* - Converter fórmulas booleanas entre notação de exibição (`{c1}`) e persistência (`{chave}`)
|
||||
* - Normalizar filtros carregados do localStorage (compatibilidade com formatos legados)
|
||||
* - Resolver o componente de entrada correto por tipo (`texto`, `numero`, `dataHora`)
|
||||
*
|
||||
* Extraído de `EliTabelaModalFiltroAvancado.vue` para manter o componente abaixo de 250 linhas.
|
||||
*/
|
||||
import { type Ref } from "vue";
|
||||
import type { ComponenteEntrada } from "../EliEntrada/tiposEntradas";
|
||||
import type { tipoEliTabelaConsulta } from "./types-eli-tabela";
|
||||
export type FiltroBase<T> = NonNullable<tipoEliTabelaConsulta<T>["filtroAvancado"]>[number];
|
||||
export type LinhaFiltro = {
|
||||
chave: string;
|
||||
entrada: ComponenteEntrada;
|
||||
/** Valor do campo de filtro — unknown intencionalmente (vem de localStorage ou entrada do usuário). */
|
||||
valor: unknown;
|
||||
};
|
||||
/**
|
||||
* Retorna o rótulo de exibição de uma definição de filtro.
|
||||
* Utilizado no template do modal para exibir o nome do campo ao usuário.
|
||||
*
|
||||
* @param f - Definição de filtro da configuração da tabela
|
||||
* @returns Rótulo textual do filtro
|
||||
*/
|
||||
export declare function rotuloDoFiltro(f: FiltroBase<string>): string;
|
||||
interface UseFiltroAvancadoOptions {
|
||||
aberto: Ref<boolean>;
|
||||
filtrosBase: Ref<FiltroBase<string>[]>;
|
||||
modelo: Ref<Array<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}>>;
|
||||
modeloFormula: Ref<string>;
|
||||
emit: {
|
||||
(event: "fechar"): void;
|
||||
(event: "limpar"): void;
|
||||
(event: "salvar", linhas: Array<{
|
||||
chave: string;
|
||||
valor: unknown;
|
||||
}>, formula?: string): void;
|
||||
};
|
||||
}
|
||||
/**
|
||||
* Composable principal do modal de filtro avançado da EliTabela.
|
||||
* Sincroniza automaticamente quando o modal abre ou o modelo/filtrosBase mudam.
|
||||
*
|
||||
* @param options.aberto - Ref que controla se o modal está aberto
|
||||
* @param options.filtrosBase - Ref com as definições de filtros disponíveis na tabela
|
||||
* @param options.modelo - Ref com as linhas de filtro persistidas (vindo do pai)
|
||||
* @param options.modeloFormula - Ref com a fórmula booleana persistida no pai
|
||||
* @param options.emit - Função de emit do componente Vue pai
|
||||
* @returns Estado reativo e ações do modal de filtro
|
||||
*/
|
||||
export declare function useFiltroAvancado({ aberto, filtrosBase, modelo, modeloFormula, emit, }: UseFiltroAvancadoOptions): {
|
||||
linhas: Ref<{
|
||||
chave: string;
|
||||
entrada: readonly ["texto", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
limiteCaracteres?: number | undefined;
|
||||
formato?: "texto" | "email" | "url" | "telefone" | "cpfCnpj" | "cep" | undefined;
|
||||
}] | readonly ["dataHora", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
modo?: "data" | "dataHora" | undefined;
|
||||
limpavel?: boolean | undefined;
|
||||
erro?: boolean | undefined;
|
||||
mensagensErro?: string | string[] | undefined;
|
||||
dica?: string | undefined;
|
||||
dicaPersistente?: boolean | undefined;
|
||||
min?: string | undefined;
|
||||
max?: string | undefined;
|
||||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}] | readonly ["numero", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
sufixo?: string | undefined;
|
||||
prefixo?: string | undefined;
|
||||
precisao?: number | undefined;
|
||||
}] | readonly ["paragrafo", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
linhas?: number | undefined;
|
||||
limiteCaracteres?: number | undefined;
|
||||
limpavel?: boolean | undefined;
|
||||
erro?: boolean | undefined;
|
||||
mensagensErro?: string | string[] | undefined;
|
||||
dica?: string | undefined;
|
||||
dicaPersistente?: boolean | undefined;
|
||||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}] | readonly ["selecao", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
itens: () => {
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
}[] | Promise<{
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
}[]>;
|
||||
limpavel?: boolean | undefined;
|
||||
erro?: boolean | undefined;
|
||||
mensagensErro?: string | string[] | undefined;
|
||||
dica?: string | undefined;
|
||||
dicaPersistente?: boolean | undefined;
|
||||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}];
|
||||
valor: unknown;
|
||||
}[], LinhaFiltro[] | {
|
||||
chave: string;
|
||||
entrada: readonly ["texto", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
limiteCaracteres?: number | undefined;
|
||||
formato?: "texto" | "email" | "url" | "telefone" | "cpfCnpj" | "cep" | undefined;
|
||||
}] | readonly ["dataHora", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
modo?: "data" | "dataHora" | undefined;
|
||||
limpavel?: boolean | undefined;
|
||||
erro?: boolean | undefined;
|
||||
mensagensErro?: string | string[] | undefined;
|
||||
dica?: string | undefined;
|
||||
dicaPersistente?: boolean | undefined;
|
||||
min?: string | undefined;
|
||||
max?: string | undefined;
|
||||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}] | readonly ["numero", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
sufixo?: string | undefined;
|
||||
prefixo?: string | undefined;
|
||||
precisao?: number | undefined;
|
||||
}] | readonly ["paragrafo", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
linhas?: number | undefined;
|
||||
limiteCaracteres?: number | undefined;
|
||||
limpavel?: boolean | undefined;
|
||||
erro?: boolean | undefined;
|
||||
mensagensErro?: string | string[] | undefined;
|
||||
dica?: string | undefined;
|
||||
dicaPersistente?: boolean | undefined;
|
||||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}] | readonly ["selecao", {
|
||||
rotulo: string;
|
||||
placeholder?: string | undefined;
|
||||
itens: () => {
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
}[] | Promise<{
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
}[]>;
|
||||
limpavel?: boolean | undefined;
|
||||
erro?: boolean | undefined;
|
||||
mensagensErro?: string | string[] | undefined;
|
||||
dica?: string | undefined;
|
||||
dicaPersistente?: boolean | undefined;
|
||||
densidade?: import("../..").CampoDensidade | undefined;
|
||||
variante?: import("../..").CampoVariante | undefined;
|
||||
}];
|
||||
valor: unknown;
|
||||
}[]>;
|
||||
opcoesParaAdicionar: import("vue").ComputedRef<{
|
||||
chave: string;
|
||||
rotulo: string;
|
||||
filtro: (valor: unknown) => import("p-comuns").tipoFiltroDeltaColunaTipada<"small" | "length" | "concat" | "slice" | "indexOf" | "lastIndexOf" | "includes" | "toString" | "charAt" | "charCodeAt" | "localeCompare" | "match" | "replace" | "search" | "split" | "substring" | "toLowerCase" | "toLocaleLowerCase" | "toUpperCase" | "toLocaleUpperCase" | "trim" | "substr" | "codePointAt" | "endsWith" | "normalize" | "repeat" | "startsWith" | "anchor" | "big" | "blink" | "bold" | "fixed" | "fontcolor" | "fontsize" | "italics" | "link" | "strike" | "sub" | "sup" | "padStart" | "padEnd" | "trimEnd" | "trimStart" | "trimLeft" | "trimRight" | "matchAll" | "valueOf"> | undefined;
|
||||
entrada: ComponenteEntrada;
|
||||
}[]>;
|
||||
chaveParaAdicionar: Ref<string, string>;
|
||||
formulaCustomizada: Ref<string, string>;
|
||||
formulaGerada: import("vue").ComputedRef<string>;
|
||||
componenteEntrada: (entrada: ComponenteEntrada) => import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
value: {
|
||||
type: import("vue").PropType<string | null | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
opcoes: {
|
||||
type: import("vue").PropType<{
|
||||
rotulo: string;
|
||||
placeholder?: string;
|
||||
} & {
|
||||
modo?: "data" | "dataHora";
|
||||
limpavel?: boolean;
|
||||
erro?: boolean;
|
||||
mensagensErro?: string | string[];
|
||||
dica?: string;
|
||||
dicaPersistente?: boolean;
|
||||
min?: string;
|
||||
max?: string;
|
||||
densidade?: import("../..").CampoDensidade;
|
||||
variante?: import("../..").CampoVariante;
|
||||
}>;
|
||||
required: false;
|
||||
default: undefined;
|
||||
};
|
||||
modelValue: {
|
||||
type: import("vue").PropType<string | null>;
|
||||
default: null;
|
||||
};
|
||||
modo: {
|
||||
type: import("vue").PropType<"data" | "dataHora" | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
rotulo: {
|
||||
type: StringConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
placeholder: {
|
||||
type: StringConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
desabilitado: {
|
||||
type: BooleanConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
limpavel: {
|
||||
type: BooleanConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
erro: {
|
||||
type: BooleanConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
mensagensErro: {
|
||||
type: import("vue").PropType<string | string[]>;
|
||||
default: undefined;
|
||||
};
|
||||
dica: {
|
||||
type: StringConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
dicaPersistente: {
|
||||
type: BooleanConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
densidade: {
|
||||
type: import("vue").PropType<import("../..").CampoDensidade>;
|
||||
default: undefined;
|
||||
};
|
||||
variante: {
|
||||
type: import("vue").PropType<import("../..").CampoVariante>;
|
||||
default: undefined;
|
||||
};
|
||||
min: {
|
||||
type: import("vue").PropType<string | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
max: {
|
||||
type: import("vue").PropType<string | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
}>, {
|
||||
attrs: import("vue").Attrs;
|
||||
valor: import("vue").WritableComputedRef<string, string>;
|
||||
tipoInput: import("vue").ComputedRef<"date" | "datetime-local">;
|
||||
minLocal: import("vue").ComputedRef<string | undefined>;
|
||||
maxLocal: import("vue").ComputedRef<string | undefined>;
|
||||
opcoesEfetivas: import("vue").ComputedRef<{
|
||||
rotulo: string;
|
||||
placeholder?: string;
|
||||
} & {
|
||||
modo?: "data" | "dataHora";
|
||||
limpavel?: boolean;
|
||||
erro?: boolean;
|
||||
mensagensErro?: string | string[];
|
||||
dica?: string;
|
||||
dicaPersistente?: boolean;
|
||||
min?: string;
|
||||
max?: string;
|
||||
densidade?: import("../..").CampoDensidade;
|
||||
variante?: import("../..").CampoVariante;
|
||||
}>;
|
||||
desabilitadoEfetivo: import("vue").ComputedRef<boolean>;
|
||||
emitCompatFocus: () => void;
|
||||
emitCompatBlur: () => void;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
"update:value": (_v: string | null) => true;
|
||||
input: (_v: string | null) => true;
|
||||
change: (_v: string | null) => true;
|
||||
"update:modelValue": (_v: string | null) => true;
|
||||
alterar: (_v: string | null) => true;
|
||||
foco: () => true;
|
||||
desfoco: () => true;
|
||||
focus: () => true;
|
||||
blur: () => true;
|
||||
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
value: {
|
||||
type: import("vue").PropType<string | null | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
opcoes: {
|
||||
type: import("vue").PropType<{
|
||||
rotulo: string;
|
||||
placeholder?: string;
|
||||
} & {
|
||||
modo?: "data" | "dataHora";
|
||||
limpavel?: boolean;
|
||||
erro?: boolean;
|
||||
mensagensErro?: string | string[];
|
||||
dica?: string;
|
||||
dicaPersistente?: boolean;
|
||||
min?: string;
|
||||
max?: string;
|
||||
densidade?: import("../..").CampoDensidade;
|
||||
variante?: import("../..").CampoVariante;
|
||||
}>;
|
||||
required: false;
|
||||
default: undefined;
|
||||
};
|
||||
modelValue: {
|
||||
type: import("vue").PropType<string | null>;
|
||||
default: null;
|
||||
};
|
||||
modo: {
|
||||
type: import("vue").PropType<"data" | "dataHora" | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
rotulo: {
|
||||
type: StringConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
placeholder: {
|
||||
type: StringConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
desabilitado: {
|
||||
type: BooleanConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
limpavel: {
|
||||
type: BooleanConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
erro: {
|
||||
type: BooleanConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
mensagensErro: {
|
||||
type: import("vue").PropType<string | string[]>;
|
||||
default: undefined;
|
||||
};
|
||||
dica: {
|
||||
type: StringConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
dicaPersistente: {
|
||||
type: BooleanConstructor;
|
||||
default: undefined;
|
||||
};
|
||||
densidade: {
|
||||
type: import("vue").PropType<import("../..").CampoDensidade>;
|
||||
default: undefined;
|
||||
};
|
||||
variante: {
|
||||
type: import("vue").PropType<import("../..").CampoVariante>;
|
||||
default: undefined;
|
||||
};
|
||||
min: {
|
||||
type: import("vue").PropType<string | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
max: {
|
||||
type: import("vue").PropType<string | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onInput?: ((_v: string | null) => any) | undefined;
|
||||
"onUpdate:value"?: ((_v: string | null) => any) | undefined;
|
||||
onChange?: ((_v: string | null) => any) | undefined;
|
||||
"onUpdate:modelValue"?: ((_v: string | null) => any) | undefined;
|
||||
onAlterar?: ((_v: string | null) => any) | undefined;
|
||||
onFoco?: (() => any) | undefined;
|
||||
onDesfoco?: (() => any) | undefined;
|
||||
onFocus?: (() => any) | undefined;
|
||||
onBlur?: (() => any) | undefined;
|
||||
}>, {
|
||||
modo: "data" | "dataHora" | undefined;
|
||||
limpavel: boolean;
|
||||
erro: boolean;
|
||||
mensagensErro: string | string[];
|
||||
dica: string;
|
||||
dicaPersistente: boolean;
|
||||
min: string | undefined;
|
||||
max: string | undefined;
|
||||
densidade: import("../..").CampoDensidade;
|
||||
variante: import("../..").CampoVariante;
|
||||
opcoes: {
|
||||
rotulo: string;
|
||||
placeholder?: string;
|
||||
} & {
|
||||
modo?: "data" | "dataHora";
|
||||
limpavel?: boolean;
|
||||
erro?: boolean;
|
||||
mensagensErro?: string | string[];
|
||||
dica?: string;
|
||||
dicaPersistente?: boolean;
|
||||
min?: string;
|
||||
max?: string;
|
||||
densidade?: import("../..").CampoDensidade;
|
||||
variante?: import("../..").CampoVariante;
|
||||
};
|
||||
value: string | null | undefined;
|
||||
modelValue: string | null;
|
||||
rotulo: string;
|
||||
placeholder: string;
|
||||
desabilitado: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any> | import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
value: {
|
||||
type: import("vue").PropType<number | null | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
opcoes: {
|
||||
type: import("vue").PropType<{
|
||||
rotulo: string;
|
||||
placeholder?: string;
|
||||
} & {
|
||||
sufixo?: string;
|
||||
prefixo?: string;
|
||||
precisao?: number;
|
||||
}>;
|
||||
required: true;
|
||||
};
|
||||
}>, {
|
||||
attrs: import("vue").Attrs;
|
||||
emit: ((event: "input", _v: number | null | undefined) => void) & ((event: "update:value", _v: number | null | undefined) => void) & ((event: "change", _v: number | null | undefined) => void) & ((event: "focus") => void) & ((event: "blur") => void);
|
||||
displayValue: Ref<string, string>;
|
||||
isInteiro: import("vue").ComputedRef<boolean>;
|
||||
onUpdateModelValue: (texto: string) => void;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
"update:value": (_v: number | null | undefined) => true;
|
||||
input: (_v: number | null | undefined) => true;
|
||||
change: (_v: number | null | undefined) => true;
|
||||
focus: () => true;
|
||||
blur: () => true;
|
||||
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
value: {
|
||||
type: import("vue").PropType<number | null | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
opcoes: {
|
||||
type: import("vue").PropType<{
|
||||
rotulo: string;
|
||||
placeholder?: string;
|
||||
} & {
|
||||
sufixo?: string;
|
||||
prefixo?: string;
|
||||
precisao?: number;
|
||||
}>;
|
||||
required: true;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onInput?: ((_v: number | null | undefined) => any) | undefined;
|
||||
"onUpdate:value"?: ((_v: number | null | undefined) => any) | undefined;
|
||||
onChange?: ((_v: number | null | undefined) => any) | undefined;
|
||||
onFocus?: (() => any) | undefined;
|
||||
onBlur?: (() => any) | undefined;
|
||||
}>, {
|
||||
value: number | null | undefined;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any> | import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
value: {
|
||||
type: import("vue").PropType<string | null | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
opcoes: {
|
||||
type: import("vue").PropType<{
|
||||
rotulo: string;
|
||||
placeholder?: string;
|
||||
} & {
|
||||
limiteCaracteres?: number;
|
||||
formato?: "texto" | "email" | "url" | "telefone" | "cpfCnpj" | "cep";
|
||||
}>;
|
||||
required: true;
|
||||
};
|
||||
}>, {
|
||||
attrs: import("vue").Attrs;
|
||||
emit: ((event: "input", _v: string | null | undefined) => void) & ((event: "update:value", _v: string | null | undefined) => void) & ((event: "change", _v: string | null | undefined) => void) & ((event: "focus") => void) & ((event: "blur") => void);
|
||||
localValue: import("vue").WritableComputedRef<string | null | undefined, string | null | undefined>;
|
||||
inputHtmlType: import("vue").ComputedRef<"text" | "email" | "url">;
|
||||
inputMode: import("vue").ComputedRef<string | undefined>;
|
||||
onInput: (e: Event) => void;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
"update:value": (_v: string | null | undefined) => true;
|
||||
input: (_v: string | null | undefined) => true;
|
||||
change: (_v: string | null | undefined) => true;
|
||||
focus: () => true;
|
||||
blur: () => true;
|
||||
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
value: {
|
||||
type: import("vue").PropType<string | null | undefined>;
|
||||
default: undefined;
|
||||
};
|
||||
opcoes: {
|
||||
type: import("vue").PropType<{
|
||||
rotulo: string;
|
||||
placeholder?: string;
|
||||
} & {
|
||||
limiteCaracteres?: number;
|
||||
formato?: "texto" | "email" | "url" | "telefone" | "cpfCnpj" | "cep";
|
||||
}>;
|
||||
required: true;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onInput?: ((_v: string | null | undefined) => any) | undefined;
|
||||
"onUpdate:value"?: ((_v: string | null | undefined) => any) | undefined;
|
||||
onChange?: ((_v: string | null | undefined) => any) | undefined;
|
||||
onFocus?: (() => any) | undefined;
|
||||
onBlur?: (() => any) | undefined;
|
||||
}>, {
|
||||
value: string | null | undefined;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
opcoesEntrada: (entrada: ComponenteEntrada) => {
|
||||
rotulo: string;
|
||||
};
|
||||
adicionar: () => void;
|
||||
remover: (idx: number) => void;
|
||||
emitFechar: () => void;
|
||||
emitSalvar: () => void;
|
||||
emitLimpar: () => void;
|
||||
rotuloDoFiltro: typeof rotuloDoFiltro;
|
||||
rotuloDoFiltroAtivo: (chave: string) => string;
|
||||
};
|
||||
export {};
|
||||
Loading…
Add table
Add a link
Reference in a new issue