diff --git a/dist-back/dayjs26.js b/dist-back/dayjs26.js new file mode 100644 index 0000000..da03329 --- /dev/null +++ b/dist-back/dayjs26.js @@ -0,0 +1,49 @@ +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); +var dayjs26_exports = {}; +__export(dayjs26_exports, { + defineDayjsBr: () => defineDayjsBr +}); +module.exports = __toCommonJS(dayjs26_exports); +const defineDayjsBr = ({ + dayjs, + duration, + isSameOrAfter, + isSameOrBefore, + minMax, + relativeTime, + timezone, + utc, + weekOfYear +}) => { + dayjs.extend(utc); + dayjs.extend(timezone); + dayjs.extend(weekOfYear); + dayjs.extend(isSameOrBefore); + dayjs.extend(isSameOrAfter); + dayjs.extend(minMax); + dayjs.extend(relativeTime); + dayjs.extend(duration); + dayjs.locale("pt-br"); + return dayjs; +}; +// Annotate the CommonJS export names for ESM import in node: +0 && (module.exports = { + defineDayjsBr +}); diff --git a/dist-back/index.js b/dist-back/index.js index 487f583..4d12d2d 100644 --- a/dist-back/index.js +++ b/dist-back/index.js @@ -20,6 +20,7 @@ __reExport(index_exports, require("./cacheMemoria"), module.exports); __reExport(index_exports, require("./constantes"), module.exports); __reExport(index_exports, require("./consulta"), module.exports); __reExport(index_exports, require("./dayjs"), module.exports); +__reExport(index_exports, require("./dayjs26"), module.exports); __reExport(index_exports, require("./ecosistema"), module.exports); __reExport(index_exports, require("./extensoes"), module.exports); __reExport(index_exports, require("./extensoes"), module.exports); @@ -42,6 +43,7 @@ __reExport(index_exports, require("./variaveisComuns"), module.exports); ...require("./constantes"), ...require("./consulta"), ...require("./dayjs"), + ...require("./dayjs26"), ...require("./ecosistema"), ...require("./extensoes"), ...require("./extensoes"), diff --git a/dist-front/index.d.mts b/dist-front/index.d.mts index 8fb1e77..52e0fa3 100644 --- a/dist-front/index.d.mts +++ b/dist-front/index.d.mts @@ -1,6 +1,14 @@ import z, { z as z$1 } from 'zod'; -import dayjs from 'dayjs'; +import _dayjs from 'dayjs'; export { Dayjs, ManipulateType } from 'dayjs'; +import _duration from 'dayjs/plugin/duration'; +import _isSameOrAfter from 'dayjs/plugin/isSameOrAfter'; +import _isSameOrBefore from 'dayjs/plugin/isSameOrBefore'; +import _minMax from 'dayjs/plugin/minMax'; +import _relativeTime from 'dayjs/plugin/relativeTime'; +import _timezone from 'dayjs/plugin/timezone'; +import _utc from 'dayjs/plugin/utc'; +import _weekOfYear from 'dayjs/plugin/weekOfYear'; import { v4 } from 'uuid'; declare const aleatorio: (tamanho?: number) => string; @@ -93,7 +101,72 @@ declare const zFiltro: z.ZodObject<{ ou: z.ZodOptional; }, z.core.$strip>; -declare const dayjsbr: typeof dayjs; +declare const dayjsbr: typeof _dayjs; + +/** + * Utilitário de configuração do Dayjs focado em compatibilidade com SSR. + * + * PROBLEMA: + * A importação direta do `dayjs` e seus plugins frequentemente causa conflitos em ambientes + * de Renderização do Lado do Servidor (SSR), como Nuxt ou Next.js, devido a discrepâncias + * na resolução de módulos (ESM vs CJS) e instabilidades de importação. + * + * SOLUÇÃO: + * Este módulo utiliza o padrão de Injeção de Dependência. Ele expõe apenas tipagens e + * uma função de configuração (`defineDayjsBr`). A responsabilidade de importar as + * bibliotecas "vivas" é delegada à aplicação consumidora (o cliente da função). + * + * Isso permite que o bundler da aplicação principal (Vite, Webpack, etc.) gerencie as + * instâncias, garantindo consistência e evitando erros de "module not found" ou + * instâncias duplicadas/não inicializadas adequadamente. + */ + +/** + * Inicializa e configura o Dayjs com o locale 'pt-br' e plugins essenciais. + * + * MODO DE USO: + * Importe os pacotes reais na sua aplicação e passe-os para esta função. + * + * @example + * ```ts + * // Em seu arquivo de configuração (ex: plugins/dayjs.ts): + * import dayjs from "dayjs"; + * import duration from "dayjs/plugin/duration"; + * import isSameOrAfter from "dayjs/plugin/isSameOrAfter"; + * import isSameOrBefore from "dayjs/plugin/isSameOrBefore"; + * import minMax from "dayjs/plugin/minMax"; + * import relativeTime from "dayjs/plugin/relativeTime"; + * import timezone from "dayjs/plugin/timezone"; + * import utc from "dayjs/plugin/utc"; + * import weekOfYear from "dayjs/plugin/weekOfYear"; + * import "dayjs/locale/pt-br"; // Importante: importar o locale! + * + * import { defineDayjsBr } from "@comuns/src/dayjs26"; + * + * export const dayjsbr = defineDayjsBr({ + * dayjs, + * duration, + * isSameOrAfter, + * isSameOrBefore, + * minMax, + * relativeTime, + * timezone, + * utc, + * weekOfYear, + * }); + * ``` + */ +declare const defineDayjsBr: ({ dayjs, duration, isSameOrAfter, isSameOrBefore, minMax, relativeTime, timezone, utc, weekOfYear, }: { + dayjs: typeof _dayjs; + duration: typeof _duration; + isSameOrAfter: typeof _isSameOrAfter; + isSameOrBefore: typeof _isSameOrBefore; + minMax: typeof _minMax; + relativeTime: typeof _relativeTime; + timezone: typeof _timezone; + utc: typeof _utc; + weekOfYear: typeof _weekOfYear; +}) => typeof _dayjs; declare const link_paiol = "https://paiol.idz.one"; @@ -467,4 +540,4 @@ declare const nomeVariavel: (v: { [key: string]: any; }) => string; -export { Produtos, TipagemRotas, agrupadores26, aleatorio, cacheM, cacheMFixo, cacheMemoria, camposComuns, criarFiltro26, dayjsbr, 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, dayjsbr, defineDayjsBr, 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 }; diff --git a/dist-front/index.mjs b/dist-front/index.mjs index 8b1aae0..1a07b9a 100644 --- a/dist-front/index.mjs +++ b/dist-front/index.mjs @@ -1 +1 @@ -var g="ABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),Z=o=>`eli-${Array.from({length:o||8}).map(()=>g[(999*Math.random()|0)%g.length]).join("")}`;var f={};globalThis.cacheMemoria_cache=f;var x=(o,r,a)=>{let n=typeof o=="string"?o:typeof o=="number"?String(o):encodeURIComponent(JSON.stringify(o)),t=a&&new Date().getTime()+a*1e3;r!==void 0&&(f[n]={valor:r,validade:t});let i=f[n];if(!(i?.validade&&i.validadef,X=x,S=o=>r=>x(o,r);var oo="00000000-0000-0000-0000-000000000000",b=(m=>(m.codigo="codigo",m.excluido="excluido",m.data_hora_criacao="data_hora_criacao",m.data_hora_atualizacao="data_hora_atualizacao",m.codigo_usuario_criacao="codigo_usuario_criacao",m.codigo_usuario_atualizacao="codigo_usuario_atualizacao",m.versao="versao",m))(b||{}),v=(r=>(r.token="token",r))(v||{}),h=(a=>(a.Usuario="usuario",a.Fornecedor="fornecedor",a))(h||{});import s from"zod";var T=(n=>(n["="]="=",n["!="]="!=",n[">"]=">",n[">="]=">=",n["<"]="<",n["<="]="<=",n.like="like",n.in="in",n.isNull="isNull",n))(T||{}),O=s.enum(["=","!=",">",">=","<","<=","like","in","isNull"]),ro=s.object({coluna:s.string(),valor:s.any(),operador:O,ou:s.boolean().optional()});import z from"dayjs";import j from"dayjs/plugin/duration";import w from"dayjs/plugin/isSameOrAfter";import k from"dayjs/plugin/isSameOrBefore";import N from"dayjs/plugin/minMax";import F from"dayjs/plugin/relativeTime";import P from"dayjs/plugin/timezone";import K from"dayjs/plugin/utc";import U from"dayjs/plugin/weekOfYear";import"dayjs/locale/pt-br";var d=z;d.locale("pt-br");d.extend(K);d.extend(P);d.extend(U);d.extend(k);d.extend(w);d.extend(N);d.extend(F);d.extend(j);var _o="https://paiol.idz.one";var M=[{ext:"gif",tipo:"imagem",mime:"image/gif"},{ext:"jpg",tipo:"imagem",mime:"image/jpeg"},{ext:"jpeg",tipo:"imagem",mime:"image/jpeg"},{ext:"png",tipo:"imagem",mime:"image/png"},{ext:"bmp",tipo:"imagem",mime:"image/bmp"},{ext:"webp",tipo:"imagem",mime:"image/webp"},{ext:"tiff",tipo:"imagem",mime:"image/tiff"},{ext:"svg",tipo:"imagem",mime:"image/svg+xml"},{ext:"ico",tipo:"imagem",mime:"image/x-icon"},{ext:"pdf",tipo:"documento",mime:"application/pdf"},{ext:"doc",tipo:"documento",mime:"application/msword"},{ext:"docx",tipo:"documento",mime:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"},{ext:"xls",tipo:"documento",mime:"application/vnd.ms-excel"},{ext:"xlsx",tipo:"documento",mime:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},{ext:"ppt",tipo:"documento",mime:"application/vnd.ms-powerpoint"},{ext:"pptx",tipo:"documento",mime:"application/vnd.openxmlformats-officedocument.presentationml.presentation"},{ext:"txt",tipo:"documento",mime:"text/plain"},{ext:"odt",tipo:"documento",mime:"application/vnd.oasis.opendocument.text"},{ext:"ods",tipo:"documento",mime:"application/vnd.oasis.opendocument.spreadsheet"},{ext:"rtf",tipo:"documento",mime:"application/rtf"},{ext:"csv",tipo:"documento",mime:"text/csv"},{ext:"mp4",tipo:"v\xEDdeo",mime:"video/mp4"},{ext:"avi",tipo:"v\xEDdeo",mime:"video/x-msvideo"},{ext:"mkv",tipo:"v\xEDdeo",mime:"video/x-matroska"},{ext:"mov",tipo:"v\xEDdeo",mime:"video/quicktime"},{ext:"wmv",tipo:"v\xEDdeo",mime:"video/x-ms-wmv"},{ext:"flv",tipo:"v\xEDdeo",mime:"video/x-flv"},{ext:"webm",tipo:"v\xEDdeo",mime:"video/webm"},{ext:"3gp",tipo:"v\xEDdeo",mime:"video/3gpp"},{ext:"mpeg",tipo:"v\xEDdeo",mime:"video/mpeg"}],ho=o=>{let r=String(o||"").toLocaleLowerCase().split(".").pop();return M.find(n=>n.ext===r)?.tipo||"outros"};var Oo=(o,r)=>{let a="localStorage"in globalThis?globalThis.localStorage:void 0;if(typeof a>"u")return null;let n=typeof o=="string"?o:encodeURIComponent(JSON.stringify(o));try{r!==void 0&&a.setItem(n,JSON.stringify(r));let t=a.getItem(n);if(t===null)return null;try{return JSON.parse(t)}catch{return t}}catch{return null}};var c=o=>{try{return Object.fromEntries(Object.entries(o).map(([r,a])=>[r,a===void 0||a==null||typeof a=="string"||typeof a=="number"||typeof a=="boolean"?a:JSON.stringify(a,null,2)]))}catch(r){throw new Error(`Erro na fun\xE7\xE3o paraObjetoRegistroPg: ${r.message} ${r.stack}`)}},jo=c,wo=c;var L=(o=>(o["e-licencie"]="e-licencie",o["gov.e-licencie"]="gov.e-licencie",o))(L||{});var q=(e=>(e.modelo="000_modelo",e.vencida="100_vencida",e.expirado="200_expirado",e.alerta="300_alerta",e.protocoladafora="350_protocoladafora",e.protocolada="400_protocolada",e.protocoladaApenas="430_protocolada",e.protocolada_alteracao="450_protocolada",e.prazo="500_prazo",e.emitida="515_emitida",e.valida="518_valida",e.novo="520_novo",e.recebido="521_recebido",e.em_andamento="530_em_andamento",e.aguardando="530_aguardando",e.aguardandoresposta="540_aguardandoresposta",e.suspensaotemporaria="540_suspensaotemporaria",e.cancelada="550_cancelada",e.execucao="560_execucao",e.pendente="570_pendente",e.executadafora="600_executadafora",e.executada="700_executada",e.naoexecutada="701_naoexecutada",e.concluida="730_concluida",e.respondido_negado="740_respondido_negado",e.respondido_aceito="741_respondido_aceito",e.atendidoparcial="742_atendidoparcial",e.naoatendido="743_naoatendido",e.atendido="744_atendido",e.renovada="760_renovada",e.finalizada="800_finalizada",e.emitirnota="101_emitirnota",e.faturaatrasada="301_faturaatrasada",e.pagarfatura="302_pagarfatura",e.aguardandoconfirmacao="531_aguardandoconfirmacao",e.agendado="701_agendado",e.faturapaga="801_faturapaga",e.excluida="999_excluida",e.requerida="401_requerida",e.vigente="516_vigente",e.emrenovacao="402_emrenovacao",e.arquivada="801_arquivada",e.aguardando_sincronizacao="999_aguardando_sincronizacao",e.nao_conforme="710_nao_conforme",e.conforme="720_conforme",e.nao_aplicavel="730_nao_aplicavel",e.parcial="715_parcial",e))(q||{});var Po=()=>"Ol\xE1 Mundo! (fun\xE7\xE3o)";var Uo="Ol\xE1 Mundo! (vari\xE1vel)";var Io=(...o)=>o.map(r=>r==null?"":String(r).normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/\s+/g," ").toLowerCase()).join(" ");var _=class{constructor({caminho:r,acaoIr:a,rotulo:n}){this._partesCaminho=[];this._acaoIr=a,this._partesCaminho=(Array.isArray(r)?r:[r]).filter(Boolean).map(t=>String(t)).flatMap(t=>t.split("/")).filter(Boolean),this.rotulo=n}get caminho(){return`/${this._partesCaminho.join("/")}`}set caminho(r){this._partesCaminho=r.split("/").filter(a=>a)}endereco(r,a){let n=typeof globalThis<"u"&&globalThis.window||void 0,t=new URL(n?n.location.href:"http://localhost");t.pathname=this.caminho,t.search="";let i=Object.entries(r);for(let[p,m]of i)t.searchParams.set(String(p),JSON.stringify(m));return t.hash="",a&&(t.hash=`#${t.search}`,t.search=""),t.href}ir(r){if(this._acaoIr)this._acaoIr(this.endereco({...r}));else{let a=typeof globalThis<"u"&&globalThis.window||void 0;a&&(a.location.href=this.endereco({...r}))}}parametros(r){let a=r?new URL(r):new URL(typeof globalThis<"u"&&globalThis.window?globalThis.window.location.href:"http://localhost"),n=a.searchParams,t=Object.fromEntries(n.entries()),i=a.hash;if(i){let p=Object.fromEntries(new URLSearchParams(i.slice(1)).entries());t={...t,...p}}for(let p in t)try{t[p]=JSON.parse(t[p])}catch{console.log(`[${p}|${t[p]}] n\xE3o \xE9 um json v\xE1lido.`)}return t}};import{z as l}from"zod";var y=(a=>(a["="]="=",a["!="]="!=",a[">"]=">",a[">="]=">=",a["<"]="<",a["<="]="<=",a.like="like",a.in="in",a))(y||{}),C=(a=>(a.E="E",a.OU="OU",a))(C||{}),I=l.nativeEnum(y),A=l.any(),V=l.record(I,A),u=l.lazy(()=>l.object({E:l.array(u).optional(),OU:l.array(u).optional()}).catchall(l.union([V,u]))),J=o=>o,Go=J({idade:{">=":18},OU:[{nome:{like:"%pa%"}},{E:[{carro:{ano:{"=":2020}}},{carro:{modelo:{in:["Civic","Corolla"]}}}]}]});var G=(i=>(i.UN="UN",i.KG="KG",i.TON="TON",i.g="g",i["M\xB3"]="M\xB3",i.Lt="Lt",i))(G||{}),Bo=[{sigla_unidade:"KG",nome:"Quilograma",sigla_normalizada:"KG",normalizar:o=>o,tipo:"massa"},{sigla_unidade:"g",nome:"Grama",sigla_normalizada:"KG",normalizar:o=>o/1e3,tipo:"massa"},{sigla_unidade:"TON",nome:"Tonelada",sigla_normalizada:"KG",normalizar:o=>o*1e3,tipo:"massa"},{sigla_unidade:"Lt",nome:"Litro",sigla_normalizada:"Lt",normalizar:o=>o,tipo:"volume"},{sigla_unidade:"M\xB3",nome:"Metro C\xFAbico",sigla_normalizada:"Lt",normalizar:o=>o*1e3,tipo:"volume"},{sigla_unidade:"UN",nome:"Unidade",sigla_normalizada:"UN",normalizar:o=>o,tipo:"unidade"}];import{NIL as $,v3 as B,v4 as D}from"uuid";var R=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,Qo=o=>R.test(String(o||"")),Q=(o,r)=>B(typeof o=="string"?o:typeof o=="number"?String(o):JSON.stringify(o),r?Q(r):$),Y=D,Yo=Y;var Ho=o=>new Promise(r=>setTimeout(()=>r(!0),o)),Wo=o=>Object.keys(o).join("/");export{L as Produtos,_ as TipagemRotas,C as agrupadores26,Z as aleatorio,x as cacheM,S as cacheMFixo,X as cacheMemoria,b as camposComuns,J as criarFiltro26,d as dayjsbr,R as erUuid,Ho as esperar,M as extensoes,_o as link_paiol,Oo as localValor,Wo as nomeVariavel,wo as objetoPg,T as operadores,y as operadores26,c as paraObjetoRegistroPg,jo as pgObjeto,G as siglas_unidades_medida,Io as texto_busca,ho as tipoArquivo,h as tipoUsuarioResiduos,q as tiposSituacoesElicencie,v as tx,Po as umaFuncao,Uo as umaVariavel,Bo as unidades_medida,Yo as uuid,Q as uuidV3,Y as uuidV4,oo as uuid_null,Qo as validarUuid,W as verCacheM,ro as zFiltro,u as zFiltro26,O as zOperadores}; +var x="ABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),H=e=>`eli-${Array.from({length:e||8}).map(()=>x[(999*Math.random()|0)%x.length]).join("")}`;var f={};globalThis.cacheMemoria_cache=f;var g=(e,t,r)=>{let n=typeof e=="string"?e:typeof e=="number"?String(e):encodeURIComponent(JSON.stringify(e)),a=r&&new Date().getTime()+r*1e3;t!==void 0&&(f[n]={valor:t,validade:a});let i=f[n];if(!(i?.validade&&i.validadef,S=g,E=e=>t=>g(e,t);var oe="00000000-0000-0000-0000-000000000000",v=(m=>(m.codigo="codigo",m.excluido="excluido",m.data_hora_criacao="data_hora_criacao",m.data_hora_atualizacao="data_hora_atualizacao",m.codigo_usuario_criacao="codigo_usuario_criacao",m.codigo_usuario_atualizacao="codigo_usuario_atualizacao",m.versao="versao",m))(v||{}),h=(t=>(t.token="token",t))(h||{}),O=(r=>(r.Usuario="usuario",r.Fornecedor="fornecedor",r))(O||{});import s from"zod";var T=(n=>(n["="]="=",n["!="]="!=",n[">"]=">",n[">="]=">=",n["<"]="<",n["<="]="<=",n.like="like",n.in="in",n.isNull="isNull",n))(T||{}),z=s.enum(["=","!=",">",">=","<","<=","like","in","isNull"]),ae=s.object({coluna:s.string(),valor:s.any(),operador:z,ou:s.boolean().optional()});import j from"dayjs";import w from"dayjs/plugin/duration";import k from"dayjs/plugin/isSameOrAfter";import N from"dayjs/plugin/isSameOrBefore";import M from"dayjs/plugin/minMax";import F from"dayjs/plugin/relativeTime";import P from"dayjs/plugin/timezone";import K from"dayjs/plugin/utc";import U from"dayjs/plugin/weekOfYear";import"dayjs/locale/pt-br";var p=j;p.locale("pt-br");p.extend(K);p.extend(P);p.extend(U);p.extend(N);p.extend(k);p.extend(M);p.extend(F);p.extend(w);var ye=({dayjs:e,duration:t,isSameOrAfter:r,isSameOrBefore:n,minMax:a,relativeTime:i,timezone:d,utc:m,weekOfYear:b})=>(e.extend(m),e.extend(d),e.extend(b),e.extend(n),e.extend(r),e.extend(a),e.extend(i),e.extend(t),e.locale("pt-br"),e);var be="https://paiol.idz.one";var A=[{ext:"gif",tipo:"imagem",mime:"image/gif"},{ext:"jpg",tipo:"imagem",mime:"image/jpeg"},{ext:"jpeg",tipo:"imagem",mime:"image/jpeg"},{ext:"png",tipo:"imagem",mime:"image/png"},{ext:"bmp",tipo:"imagem",mime:"image/bmp"},{ext:"webp",tipo:"imagem",mime:"image/webp"},{ext:"tiff",tipo:"imagem",mime:"image/tiff"},{ext:"svg",tipo:"imagem",mime:"image/svg+xml"},{ext:"ico",tipo:"imagem",mime:"image/x-icon"},{ext:"pdf",tipo:"documento",mime:"application/pdf"},{ext:"doc",tipo:"documento",mime:"application/msword"},{ext:"docx",tipo:"documento",mime:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"},{ext:"xls",tipo:"documento",mime:"application/vnd.ms-excel"},{ext:"xlsx",tipo:"documento",mime:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},{ext:"ppt",tipo:"documento",mime:"application/vnd.ms-powerpoint"},{ext:"pptx",tipo:"documento",mime:"application/vnd.openxmlformats-officedocument.presentationml.presentation"},{ext:"txt",tipo:"documento",mime:"text/plain"},{ext:"odt",tipo:"documento",mime:"application/vnd.oasis.opendocument.text"},{ext:"ods",tipo:"documento",mime:"application/vnd.oasis.opendocument.spreadsheet"},{ext:"rtf",tipo:"documento",mime:"application/rtf"},{ext:"csv",tipo:"documento",mime:"text/csv"},{ext:"mp4",tipo:"v\xEDdeo",mime:"video/mp4"},{ext:"avi",tipo:"v\xEDdeo",mime:"video/x-msvideo"},{ext:"mkv",tipo:"v\xEDdeo",mime:"video/x-matroska"},{ext:"mov",tipo:"v\xEDdeo",mime:"video/quicktime"},{ext:"wmv",tipo:"v\xEDdeo",mime:"video/x-ms-wmv"},{ext:"flv",tipo:"v\xEDdeo",mime:"video/x-flv"},{ext:"webm",tipo:"v\xEDdeo",mime:"video/webm"},{ext:"3gp",tipo:"v\xEDdeo",mime:"video/3gpp"},{ext:"mpeg",tipo:"v\xEDdeo",mime:"video/mpeg"}],Te=e=>{let t=String(e||"").toLocaleLowerCase().split(".").pop();return A.find(n=>n.ext===t)?.tipo||"outros"};var je=(e,t)=>{let r="localStorage"in globalThis?globalThis.localStorage:void 0;if(typeof r>"u")return null;let n=typeof e=="string"?e:encodeURIComponent(JSON.stringify(e));try{t!==void 0&&r.setItem(n,JSON.stringify(t));let a=r.getItem(n);if(a===null)return null;try{return JSON.parse(a)}catch{return a}}catch{return null}};var c=e=>{try{return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,r===void 0||r==null||typeof r=="string"||typeof r=="number"||typeof r=="boolean"?r:JSON.stringify(r,null,2)]))}catch(t){throw new Error(`Erro na fun\xE7\xE3o paraObjetoRegistroPg: ${t.message} ${t.stack}`)}},ke=c,Ne=c;var L=(e=>(e["e-licencie"]="e-licencie",e["gov.e-licencie"]="gov.e-licencie",e))(L||{});var q=(o=>(o.modelo="000_modelo",o.vencida="100_vencida",o.expirado="200_expirado",o.alerta="300_alerta",o.protocoladafora="350_protocoladafora",o.protocolada="400_protocolada",o.protocoladaApenas="430_protocolada",o.protocolada_alteracao="450_protocolada",o.prazo="500_prazo",o.emitida="515_emitida",o.valida="518_valida",o.novo="520_novo",o.recebido="521_recebido",o.em_andamento="530_em_andamento",o.aguardando="530_aguardando",o.aguardandoresposta="540_aguardandoresposta",o.suspensaotemporaria="540_suspensaotemporaria",o.cancelada="550_cancelada",o.execucao="560_execucao",o.pendente="570_pendente",o.executadafora="600_executadafora",o.executada="700_executada",o.naoexecutada="701_naoexecutada",o.concluida="730_concluida",o.respondido_negado="740_respondido_negado",o.respondido_aceito="741_respondido_aceito",o.atendidoparcial="742_atendidoparcial",o.naoatendido="743_naoatendido",o.atendido="744_atendido",o.renovada="760_renovada",o.finalizada="800_finalizada",o.emitirnota="101_emitirnota",o.faturaatrasada="301_faturaatrasada",o.pagarfatura="302_pagarfatura",o.aguardandoconfirmacao="531_aguardandoconfirmacao",o.agendado="701_agendado",o.faturapaga="801_faturapaga",o.excluida="999_excluida",o.requerida="401_requerida",o.vigente="516_vigente",o.emrenovacao="402_emrenovacao",o.arquivada="801_arquivada",o.aguardando_sincronizacao="999_aguardando_sincronizacao",o.nao_conforme="710_nao_conforme",o.conforme="720_conforme",o.nao_aplicavel="730_nao_aplicavel",o.parcial="715_parcial",o))(q||{});var Ke=()=>"Ol\xE1 Mundo! (fun\xE7\xE3o)";var Ae="Ol\xE1 Mundo! (vari\xE1vel)";var Be=(...e)=>e.map(t=>t==null?"":String(t).normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/\s+/g," ").toLowerCase()).join(" ");var y=class{constructor({caminho:t,acaoIr:r,rotulo:n}){this._partesCaminho=[];this._acaoIr=r,this._partesCaminho=(Array.isArray(t)?t:[t]).filter(Boolean).map(a=>String(a)).flatMap(a=>a.split("/")).filter(Boolean),this.rotulo=n}get caminho(){return`/${this._partesCaminho.join("/")}`}set caminho(t){this._partesCaminho=t.split("/").filter(r=>r)}endereco(t,r){let n=typeof globalThis<"u"&&globalThis.window||void 0,a=new URL(n?n.location.href:"http://localhost");a.pathname=this.caminho,a.search="";let i=Object.entries(t);for(let[d,m]of i)a.searchParams.set(String(d),JSON.stringify(m));return a.hash="",r&&(a.hash=`#${a.search}`,a.search=""),a.href}ir(t){if(this._acaoIr)this._acaoIr(this.endereco({...t}));else{let r=typeof globalThis<"u"&&globalThis.window||void 0;r&&(r.location.href=this.endereco({...t}))}}parametros(t){let r=t?new URL(t):new URL(typeof globalThis<"u"&&globalThis.window?globalThis.window.location.href:"http://localhost"),n=r.searchParams,a=Object.fromEntries(n.entries()),i=r.hash;if(i){let d=Object.fromEntries(new URLSearchParams(i.slice(1)).entries());a={...a,...d}}for(let d in a)try{a[d]=JSON.parse(a[d])}catch{console.log(`[${d}|${a[d]}] n\xE3o \xE9 um json v\xE1lido.`)}return a}};import{z as l}from"zod";var _=(r=>(r["="]="=",r["!="]="!=",r[">"]=">",r[">="]=">=",r["<"]="<",r["<="]="<=",r.like="like",r.in="in",r))(_||{}),C=(r=>(r.E="E",r.OU="OU",r))(C||{}),I=l.nativeEnum(_),B=l.any(),V=l.record(I,B),u=l.lazy(()=>l.object({E:l.array(u).optional(),OU:l.array(u).optional()}).catchall(l.union([V,u]))),D=e=>e,Ge=D({idade:{">=":18},OU:[{nome:{like:"%pa%"}},{E:[{carro:{ano:{"=":2020}}},{carro:{modelo:{in:["Civic","Corolla"]}}}]}]});var J=(i=>(i.UN="UN",i.KG="KG",i.TON="TON",i.g="g",i["M\xB3"]="M\xB3",i.Lt="Lt",i))(J||{}),Re=[{sigla_unidade:"KG",nome:"Quilograma",sigla_normalizada:"KG",normalizar:e=>e,tipo:"massa"},{sigla_unidade:"g",nome:"Grama",sigla_normalizada:"KG",normalizar:e=>e/1e3,tipo:"massa"},{sigla_unidade:"TON",nome:"Tonelada",sigla_normalizada:"KG",normalizar:e=>e*1e3,tipo:"massa"},{sigla_unidade:"Lt",nome:"Litro",sigla_normalizada:"Lt",normalizar:e=>e,tipo:"volume"},{sigla_unidade:"M\xB3",nome:"Metro C\xFAbico",sigla_normalizada:"Lt",normalizar:e=>e*1e3,tipo:"volume"},{sigla_unidade:"UN",nome:"Unidade",sigla_normalizada:"UN",normalizar:e=>e,tipo:"unidade"}];import{NIL as G,v3 as $,v4 as R}from"uuid";var Y=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,Ze=e=>Y.test(String(e||"")),Q=(e,t)=>$(typeof e=="string"?e:typeof e=="number"?String(e):JSON.stringify(e),t?Q(t):G),Z=R,He=Z;var Xe=e=>new Promise(t=>setTimeout(()=>t(!0),e)),Se=e=>Object.keys(e).join("/");export{L as Produtos,y as TipagemRotas,C as agrupadores26,H as aleatorio,g as cacheM,E as cacheMFixo,S as cacheMemoria,v as camposComuns,D as criarFiltro26,p as dayjsbr,ye as defineDayjsBr,Y as erUuid,Xe as esperar,A as extensoes,be as link_paiol,je as localValor,Se as nomeVariavel,Ne as objetoPg,T as operadores,_ as operadores26,c as paraObjetoRegistroPg,ke as pgObjeto,J as siglas_unidades_medida,Be as texto_busca,Te as tipoArquivo,O as tipoUsuarioResiduos,q as tiposSituacoesElicencie,h as tx,Ke as umaFuncao,Ae as umaVariavel,Re as unidades_medida,He as uuid,Q as uuidV3,Z as uuidV4,oe as uuid_null,Ze as validarUuid,X as verCacheM,ae as zFiltro,u as zFiltro26,z as zOperadores}; diff --git a/package.json b/package.json index 0074b61..aa4368a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "p-comuns", - "version": "0.313.0", + "version": "0.316.0", "description": "", "main": "./dist-front/index.mjs", "module": "./dist-front/index.mjs", diff --git a/pacote.tgz b/pacote.tgz index 1a2226a..1989375 100644 Binary files a/pacote.tgz and b/pacote.tgz differ diff --git a/src/dayjs26.ts b/src/dayjs26.ts new file mode 100755 index 0000000..bbb1b5c --- /dev/null +++ b/src/dayjs26.ts @@ -0,0 +1,108 @@ +/** + * Utilitário de configuração do Dayjs focado em compatibilidade com SSR. + * + * PROBLEMA: + * A importação direta do `dayjs` e seus plugins frequentemente causa conflitos em ambientes + * de Renderização do Lado do Servidor (SSR), como Nuxt ou Next.js, devido a discrepâncias + * na resolução de módulos (ESM vs CJS) e instabilidades de importação. + * + * SOLUÇÃO: + * Este módulo utiliza o padrão de Injeção de Dependência. Ele expõe apenas tipagens e + * uma função de configuração (`defineDayjsBr`). A responsabilidade de importar as + * bibliotecas "vivas" é delegada à aplicação consumidora (o cliente da função). + * + * Isso permite que o bundler da aplicação principal (Vite, Webpack, etc.) gerencie as + * instâncias, garantindo consistência e evitando erros de "module not found" ou + * instâncias duplicadas/não inicializadas adequadamente. + */ + +import type _dayjs from "dayjs" +import type { Dayjs } from "dayjs" + +export type { ManipulateType } from "dayjs" + +// Importação apenas de TIPOS para evitar bundling indesejado neste arquivo +import type _duration from "dayjs/plugin/duration" +import type _isSameOrAfter from "dayjs/plugin/isSameOrAfter" +import type _isSameOrBefore from "dayjs/plugin/isSameOrBefore" +import type _minMax from "dayjs/plugin/minMax" +import type _relativeTime from "dayjs/plugin/relativeTime" +import type _timezone from "dayjs/plugin/timezone" +import type _utc from "dayjs/plugin/utc" +import type _weekOfYear from "dayjs/plugin/weekOfYear" + +/** + * Inicializa e configura o Dayjs com o locale 'pt-br' e plugins essenciais. + * + * MODO DE USO: + * Importe os pacotes reais na sua aplicação e passe-os para esta função. + * + * @example + * ```ts + * // Em seu arquivo de configuração (ex: plugins/dayjs.ts): + * import dayjs from "dayjs"; + * import duration from "dayjs/plugin/duration"; + * import isSameOrAfter from "dayjs/plugin/isSameOrAfter"; + * import isSameOrBefore from "dayjs/plugin/isSameOrBefore"; + * import minMax from "dayjs/plugin/minMax"; + * import relativeTime from "dayjs/plugin/relativeTime"; + * import timezone from "dayjs/plugin/timezone"; + * import utc from "dayjs/plugin/utc"; + * import weekOfYear from "dayjs/plugin/weekOfYear"; + * import "dayjs/locale/pt-br"; // Importante: importar o locale! + * + * import { defineDayjsBr } from "@comuns/src/dayjs26"; + * + * export const dayjsbr = defineDayjsBr({ + * dayjs, + * duration, + * isSameOrAfter, + * isSameOrBefore, + * minMax, + * relativeTime, + * timezone, + * utc, + * weekOfYear, + * }); + * ``` + */ +const defineDayjsBr = ({ + dayjs, + duration, + isSameOrAfter, + isSameOrBefore, + minMax, + relativeTime, + timezone, + utc, + weekOfYear, +}: { + dayjs: typeof _dayjs + duration: typeof _duration + isSameOrAfter: typeof _isSameOrAfter + isSameOrBefore: typeof _isSameOrBefore + minMax: typeof _minMax + relativeTime: typeof _relativeTime + timezone: typeof _timezone + utc: typeof _utc + weekOfYear: typeof _weekOfYear +}) => { + // Extensão da biblioteca com os plugins fornecidos + dayjs.extend(utc) + dayjs.extend(timezone) + dayjs.extend(weekOfYear) + dayjs.extend(isSameOrBefore) + dayjs.extend(isSameOrAfter) + dayjs.extend(minMax) + dayjs.extend(relativeTime) + dayjs.extend(duration) + + // Definição do locale global + dayjs.locale("pt-br") + + return dayjs +} + +export { defineDayjsBr } + +export type { Dayjs } diff --git a/src/index.ts b/src/index.ts index eaa0800..ca7c49c 100755 --- a/src/index.ts +++ b/src/index.ts @@ -3,6 +3,7 @@ export * from "./cacheMemoria" export * from "./constantes" export * from "./consulta" export * from "./dayjs" +export * from "./dayjs26" export * from "./ecosistema" export * from "./extensoes" export * from "./extensoes"