agrupadores26

This commit is contained in:
Luiz Silva 2026-02-17 11:18:39 -03:00
parent f2a223b015
commit 64ddd6ad8a
6 changed files with 30 additions and 14 deletions

View file

@ -18,6 +18,7 @@ var __copyProps = (to, from, except, desc) => {
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var tipoFiltro_26_exports = {};
__export(tipoFiltro_26_exports, {
agrupadores26: () => agrupadores26,
criarFiltro26: () => criarFiltro26,
operadores26: () => operadores26,
zFiltro26: () => zFiltro26
@ -35,6 +36,11 @@ var operadores26 = /* @__PURE__ */ ((operadores262) => {
operadores262["in"] = "in";
return operadores262;
})(operadores26 || {});
var agrupadores26 = /* @__PURE__ */ ((agrupadores262) => {
agrupadores262["E"] = "E";
agrupadores262["OU"] = "OU";
return agrupadores262;
})(agrupadores26 || {});
const zOperadores = import_zod.z.nativeEnum(operadores26);
const zValor = import_zod.z.any();
const zCondicao = import_zod.z.record(zOperadores, zValor);
@ -44,21 +50,22 @@ const zFiltro26 = import_zod.z.lazy(
OU: import_zod.z.array(zFiltro26).optional()
}).catchall(import_zod.z.union([zCondicao, zFiltro26]))
);
const _filtro = {
const criarFiltro26 = (filtro) => filtro;
const _filtro = criarFiltro26({
idade: { [">=" /* >= */]: 18 },
OU: [
["OU" /* OU */]: [
{ nome: { ["like" /* like */]: "%pa%" } },
{
E: [
["E" /* E */]: [
{ carro: { ano: { ["=" /* = */]: 2020 } } },
{ carro: { modelo: { ["in" /* in */]: ["Civic", "Corolla"] } } }
]
}
]
};
const criarFiltro26 = (filtro) => filtro;
});
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
agrupadores26,
criarFiltro26,
operadores26,
zFiltro26

View file

@ -365,6 +365,10 @@ declare enum operadores26 {
like = "like",
in = "in"
}
declare enum agrupadores26 {
E = "E",
OU = "OU"
}
type PgOpsNumber = {
[K in Extract<operadores26, "=" | "!=" | ">" | ">=" | "<" | "<=">]?: number;
} & {
@ -468,4 +472,4 @@ declare const nomeVariavel: (v: {
[key: string]: any;
}) => string;
export { Produtos, TipagemRotas, aleatorio, cacheM, cacheMFixo, cacheMemoria, camposComuns, criarFiltro26, erUuid, esperar, extensoes, type interfaceConsulta, link_paiol, localValor, nomeVariavel, objetoPg, operadores, operadores26, paraObjetoRegistroPg, pgObjeto, siglas_unidades_medida, texto_busca, tipoArquivo, type tipoFiltro, type tipoFiltro26, tipoUsuarioResiduos, tiposSituacoesElicencie, tx, umaFuncao, umaVariavel, unidades_medida, uuid, uuidV3, uuidV4, uuid_null, validarUuid, verCacheM, zFiltro, zFiltro26, zOperadores };
export { Produtos, TipagemRotas, agrupadores26, aleatorio, cacheM, cacheMFixo, cacheMemoria, camposComuns, criarFiltro26, erUuid, esperar, extensoes, type interfaceConsulta, link_paiol, localValor, nomeVariavel, objetoPg, operadores, operadores26, paraObjetoRegistroPg, pgObjeto, siglas_unidades_medida, texto_busca, tipoArquivo, type tipoFiltro, type tipoFiltro26, tipoUsuarioResiduos, tiposSituacoesElicencie, tx, umaFuncao, umaVariavel, unidades_medida, uuid, uuidV3, uuidV4, uuid_null, validarUuid, verCacheM, zFiltro, zFiltro26, zOperadores };

File diff suppressed because one or more lines are too long

View file

@ -1,6 +1,6 @@
{
"name": "p-comuns",
"version": "0.309.0",
"version": "0.310.0",
"description": "",
"main": "./dist-front/index.mjs",
"module": "./dist-front/index.mjs",

Binary file not shown.

View file

@ -112,6 +112,11 @@ export enum operadores26 {
in = "in",
}
export enum agrupadores26 {
E = "E",
OU = "OU",
}
type PgOpsNumber = {
[K in Extract<operadores26, "=" | "!=" | ">" | ">=" | "<" | "<=">]?: number
} & {
@ -213,18 +218,18 @@ type Pessoa = {
}
}
const _filtro: tipoFiltro26<Pessoa> = {
export const criarFiltro26 = <T>(filtro: tipoFiltro26<T>) => filtro
const _filtro = criarFiltro26<Pessoa>({
idade: { [operadores26[">="]]: 18 },
OU: [
[agrupadores26.OU]: [
{ nome: { [operadores26.like]: "%pa%" } },
{
E: [
[agrupadores26.E]: [
{ carro: { ano: { [operadores26["="]]: 2020 } } },
{ carro: { modelo: { [operadores26.in]: ["Civic", "Corolla"] } } },
],
},
],
}
export const criarFiltro26 = <T>(filtro: tipoFiltro26<T>) => filtro
})