diff --git a/dist-back/dayjs.js b/dist-back/dayjs.js deleted file mode 100644 index d88c318..0000000 --- a/dist-back/dayjs.js +++ /dev/null @@ -1,58 +0,0 @@ -"use strict"; -var __create = Object.create; -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __getProtoOf = Object.getPrototypeOf; -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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, - mod -)); -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); -var dayjs_exports = {}; -__export(dayjs_exports, { - definirDayjsbr: () => definirDayjsbr -}); -module.exports = __toCommonJS(dayjs_exports); -var import_duration = __toESM(require("dayjs/plugin/duration")); -var import_isSameOrAfter = __toESM(require("dayjs/plugin/isSameOrAfter")); -var import_isSameOrBefore = __toESM(require("dayjs/plugin/isSameOrBefore")); -var import_minMax = __toESM(require("dayjs/plugin/minMax")); -var import_relativeTime = __toESM(require("dayjs/plugin/relativeTime")); -var import_timezone = __toESM(require("dayjs/plugin/timezone")); -var import_utc = __toESM(require("dayjs/plugin/utc")); -var import_weekOfYear = __toESM(require("dayjs/plugin/weekOfYear")); -var import_pt_br = require("dayjs/locale/pt-br"); -const definirDayjsbr = (dayjsEntrada) => { - dayjsEntrada.locale("pt-br"); - dayjsEntrada.extend(import_utc.default); - dayjsEntrada.extend(import_timezone.default); - dayjsEntrada.extend(import_weekOfYear.default); - dayjsEntrada.extend(import_isSameOrBefore.default); - dayjsEntrada.extend(import_isSameOrAfter.default); - dayjsEntrada.extend(import_minMax.default); - dayjsEntrada.extend(import_relativeTime.default); - dayjsEntrada.extend(import_duration.default); - return dayjsEntrada; -}; -// Annotate the CommonJS export names for ESM import in node: -0 && (module.exports = { - definirDayjsbr -}); 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..fa4757d 100644 --- a/dist-back/index.js +++ b/dist-back/index.js @@ -19,7 +19,7 @@ __reExport(index_exports, require("./aleatorio"), module.exports); __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); @@ -41,7 +41,7 @@ __reExport(index_exports, require("./variaveisComuns"), module.exports); ...require("./cacheMemoria"), ...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 650b74c..7a0301d 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,69 @@ declare const zFiltro: z.ZodObject<{ ou: z.ZodOptional; }, z.core.$strip>; -declare const definirDayjsbr: (dayjsEntrada: typeof dayjs) => 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 { defineDayjsBr } from "p-comuns" + * import "dayjs/locale/pt-br" // Importante: importar o locale! + + * 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 +537,4 @@ declare const nomeVariavel: (v: { [key: string]: any; }) => string; -export { Produtos, TipagemRotas, agrupadores26, aleatorio, cacheM, cacheMFixo, cacheMemoria, camposComuns, criarFiltro26, definirDayjsbr, 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, 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 b162e5e..3dd0ffe 100644 --- a/dist-front/index.mjs +++ b/dist-front/index.mjs @@ -1 +1 @@ -var u="ABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),Q=o=>`eli-${Array.from({length:o||8}).map(()=>u[(999*Math.random()|0)%u.length]).join("")}`;var s={};globalThis.cacheMemoria_cache=s;var g=(o,a,r)=>{let n=typeof o=="string"?o:typeof o=="number"?String(o):encodeURIComponent(JSON.stringify(o)),t=r&&new Date().getTime()+r*1e3;a!==void 0&&(s[n]={valor:a,validade:t});let i=s[n];if(!(i?.validade&&i.validades,H=g,W=o=>a=>g(o,a);var S="00000000-0000-0000-0000-000000000000",y=(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))(y||{}),b=(a=>(a.token="token",a))(b||{}),v=(r=>(r.Usuario="usuario",r.Fornecedor="fornecedor",r))(v||{});import l from"zod";var h=(n=>(n["="]="=",n["!="]="!=",n[">"]=">",n[">="]=">=",n["<"]="<",n["<="]="<=",n.like="like",n.in="in",n.isNull="isNull",n))(h||{}),T=l.enum(["=","!=",">",">=","<","<=","like","in","isNull"]),eo=l.object({coluna:l.string(),valor:l.any(),operador:T,ou:l.boolean().optional()});import O from"dayjs/plugin/duration";import z from"dayjs/plugin/isSameOrAfter";import w from"dayjs/plugin/isSameOrBefore";import k from"dayjs/plugin/minMax";import j from"dayjs/plugin/relativeTime";import N from"dayjs/plugin/timezone";import F from"dayjs/plugin/utc";import P from"dayjs/plugin/weekOfYear";import"dayjs/locale/pt-br";var uo=o=>(o.locale("pt-br"),o.extend(F),o.extend(N),o.extend(P),o.extend(w),o.extend(z),o.extend(k),o.extend(j),o.extend(O),o);var xo="https://paiol.idz.one";var K=[{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"}],bo=o=>{let a=String(o||"").toLocaleLowerCase().split(".").pop();return K.find(n=>n.ext===a)?.tipo||"outros"};var ho=(o,a)=>{let r="localStorage"in globalThis?globalThis.localStorage:void 0;if(typeof r>"u")return null;let n=typeof o=="string"?o:encodeURIComponent(JSON.stringify(o));try{a!==void 0&&r.setItem(n,JSON.stringify(a));let t=r.getItem(n);if(t===null)return null;try{return JSON.parse(t)}catch{return t}}catch{return null}};var x=o=>{try{return Object.fromEntries(Object.entries(o).map(([a,r])=>[a,r===void 0||r==null||typeof r=="string"||typeof r=="number"||typeof r=="boolean"?r:JSON.stringify(r,null,2)]))}catch(a){throw new Error(`Erro na fun\xE7\xE3o paraObjetoRegistroPg: ${a.message} ${a.stack}`)}},Oo=x,zo=x;var U=(o=>(o["e-licencie"]="e-licencie",o["gov.e-licencie"]="gov.e-licencie",o))(U||{});var M=(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))(M||{});var No=()=>"Ol\xE1 Mundo! (fun\xE7\xE3o)";var Po="Ol\xE1 Mundo! (vari\xE1vel)";var qo=(...o)=>o.map(a=>a==null?"":String(a).normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/\s+/g," ").toLowerCase()).join(" ");var c=class{constructor({caminho:a,acaoIr:r,rotulo:n}){this._partesCaminho=[];this._acaoIr=r,this._partesCaminho=(Array.isArray(a)?a:[a]).filter(Boolean).map(t=>String(t)).flatMap(t=>t.split("/")).filter(Boolean),this.rotulo=n}get caminho(){return`/${this._partesCaminho.join("/")}`}set caminho(a){this._partesCaminho=a.split("/").filter(r=>r)}endereco(a,r){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(a);for(let[d,m]of i)t.searchParams.set(String(d),JSON.stringify(m));return t.hash="",r&&(t.hash=`#${t.search}`,t.search=""),t.href}ir(a){if(this._acaoIr)this._acaoIr(this.endereco({...a}));else{let r=typeof globalThis<"u"&&globalThis.window||void 0;r&&(r.location.href=this.endereco({...a}))}}parametros(a){let r=a?new URL(a):new URL(typeof globalThis<"u"&&globalThis.window?globalThis.window.location.href:"http://localhost"),n=r.searchParams,t=Object.fromEntries(n.entries()),i=r.hash;if(i){let d=Object.fromEntries(new URLSearchParams(i.slice(1)).entries());t={...t,...d}}for(let d in t)try{t[d]=JSON.parse(t[d])}catch{console.log(`[${d}|${t[d]}] n\xE3o \xE9 um json v\xE1lido.`)}return t}};import{z as p}from"zod";var _=(r=>(r["="]="=",r["!="]="!=",r[">"]=">",r[">="]=">=",r["<"]="<",r["<="]="<=",r.like="like",r.in="in",r))(_||{}),L=(r=>(r.E="E",r.OU="OU",r))(L||{}),q=p.nativeEnum(_),C=p.any(),I=p.record(q,C),f=p.lazy(()=>p.object({E:p.array(f).optional(),OU:p.array(f).optional()}).catchall(p.union([I,f]))),A=o=>o,Vo=A({idade:{">=":18},OU:[{nome:{like:"%pa%"}},{E:[{carro:{ano:{"=":2020}}},{carro:{modelo:{in:["Civic","Corolla"]}}}]}]});var V=(i=>(i.UN="UN",i.KG="KG",i.TON="TON",i.g="g",i["M\xB3"]="M\xB3",i.Lt="Lt",i))(V||{}),Go=[{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 J,v3 as G,v4 as $}from"uuid";var D=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,Bo=o=>D.test(String(o||"")),B=(o,a)=>G(typeof o=="string"?o:typeof o=="number"?String(o):JSON.stringify(o),a?B(a):J),R=$,Ro=R;var Yo=o=>new Promise(a=>setTimeout(()=>a(!0),o)),Zo=o=>Object.keys(o).join("/");export{U as Produtos,c as TipagemRotas,L as agrupadores26,Q as aleatorio,g as cacheM,W as cacheMFixo,H as cacheMemoria,y as camposComuns,A as criarFiltro26,uo as definirDayjsbr,D as erUuid,Yo as esperar,K as extensoes,xo as link_paiol,ho as localValor,Zo as nomeVariavel,zo as objetoPg,h as operadores,_ as operadores26,x as paraObjetoRegistroPg,Oo as pgObjeto,V as siglas_unidades_medida,qo as texto_busca,bo as tipoArquivo,v as tipoUsuarioResiduos,M as tiposSituacoesElicencie,b as tx,No as umaFuncao,Po as umaVariavel,Go as unidades_medida,Ro as uuid,B as uuidV3,R as uuidV4,S as uuid_null,Bo as validarUuid,Z as verCacheM,eo as zFiltro,f as zFiltro26,T as zOperadores}; +var u="ABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),V=e=>`eli-${Array.from({length:e||8}).map(()=>u[(999*Math.random()|0)%u.length]).join("")}`;var s={};globalThis.cacheMemoria_cache=s;var g=(e,r,a)=>{let n=typeof e=="string"?e:typeof e=="number"?String(e):encodeURIComponent(JSON.stringify(e)),t=a&&new Date().getTime()+a*1e3;r!==void 0&&(s[n]={valor:r,validade:t});let i=s[n];if(!(i?.validade&&i.validades,G=g,$=e=>r=>g(e,r);var R="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||{}),b=(r=>(r.token="token",r))(b||{}),h=(a=>(a.Usuario="usuario",a.Fornecedor="fornecedor",a))(h||{});import l from"zod";var O=(n=>(n["="]="=",n["!="]="!=",n[">"]=">",n[">="]=">=",n["<"]="<",n["<="]="<=",n.like="like",n.in="in",n.isNull="isNull",n))(O||{}),T=l.enum(["=","!=",">",">=","<","<=","like","in","isNull"]),Z=l.object({coluna:l.string(),valor:l.any(),operador:T,ou:l.boolean().optional()});var W=({dayjs:e,duration:r,isSameOrAfter:a,isSameOrBefore:n,minMax:t,relativeTime:i,timezone:d,utc:m,weekOfYear:y})=>(e.extend(m),e.extend(d),e.extend(y),e.extend(n),e.extend(a),e.extend(t),e.extend(i),e.extend(r),e.locale("pt-br"),e);var S="https://paiol.idz.one";var z=[{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"}],ae=e=>{let r=String(e||"").toLocaleLowerCase().split(".").pop();return z.find(n=>n.ext===r)?.tipo||"outros"};var te=(e,r)=>{let a="localStorage"in globalThis?globalThis.localStorage:void 0;if(typeof a>"u")return null;let n=typeof e=="string"?e:encodeURIComponent(JSON.stringify(e));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 x=e=>{try{return Object.fromEntries(Object.entries(e).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}`)}},ie=x,me=x;var w=(e=>(e["e-licencie"]="e-licencie",e["gov.e-licencie"]="gov.e-licencie",e))(w||{});var j=(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))(j||{});var se=()=>"Ol\xE1 Mundo! (fun\xE7\xE3o)";var ue="Ol\xE1 Mundo! (vari\xE1vel)";var ye=(...e)=>e.map(r=>r==null?"":String(r).normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/\s+/g," ").toLowerCase()).join(" ");var c=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[d,m]of i)t.searchParams.set(String(d),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 d=Object.fromEntries(new URLSearchParams(i.slice(1)).entries());t={...t,...d}}for(let d in t)try{t[d]=JSON.parse(t[d])}catch{console.log(`[${d}|${t[d]}] n\xE3o \xE9 um json v\xE1lido.`)}return t}};import{z as p}from"zod";var _=(a=>(a["="]="=",a["!="]="!=",a[">"]=">",a[">="]=">=",a["<"]="<",a["<="]="<=",a.like="like",a.in="in",a))(_||{}),k=(a=>(a.E="E",a.OU="OU",a))(k||{}),N=p.nativeEnum(_),F=p.any(),P=p.record(N,F),f=p.lazy(()=>p.object({E:p.array(f).optional(),OU:p.array(f).optional()}).catchall(p.union([P,f]))),M=e=>e,Oe=M({idade:{">=":18},OU:[{nome:{like:"%pa%"}},{E:[{carro:{ano:{"=":2020}}},{carro:{modelo:{in:["Civic","Corolla"]}}}]}]});var K=(i=>(i.UN="UN",i.KG="KG",i.TON="TON",i.g="g",i["M\xB3"]="M\xB3",i.Lt="Lt",i))(K||{}),ze=[{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 U,v3 as L,v4 as A}from"uuid";var q=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,ke=e=>q.test(String(e||"")),C=(e,r)=>L(typeof e=="string"?e:typeof e=="number"?String(e):JSON.stringify(e),r?C(r):U),I=A,Ne=I;var Pe=e=>new Promise(r=>setTimeout(()=>r(!0),e)),Me=e=>Object.keys(e).join("/");export{w as Produtos,c as TipagemRotas,k as agrupadores26,V as aleatorio,g as cacheM,$ as cacheMFixo,G as cacheMemoria,v as camposComuns,M as criarFiltro26,W as defineDayjsBr,q as erUuid,Pe as esperar,z as extensoes,S as link_paiol,te as localValor,Me as nomeVariavel,me as objetoPg,O as operadores,_ as operadores26,x as paraObjetoRegistroPg,ie as pgObjeto,K as siglas_unidades_medida,ye as texto_busca,ae as tipoArquivo,h as tipoUsuarioResiduos,j as tiposSituacoesElicencie,b as tx,se as umaFuncao,ue as umaVariavel,ze as unidades_medida,Ne as uuid,C as uuidV3,I as uuidV4,R as uuid_null,ke as validarUuid,J as verCacheM,Z as zFiltro,f as zFiltro26,T as zOperadores}; diff --git a/package.json b/package.json index 65bc2d1..8bf0c6d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "p-comuns", - "version": "0.314.0", + "version": "0.317.0", "description": "", "main": "./dist-front/index.mjs", "module": "./dist-front/index.mjs", diff --git a/pacote.tgz b/pacote.tgz index 0a5c2a7..cca779e 100644 Binary files a/pacote.tgz and b/pacote.tgz differ diff --git a/src/dayjs.ts b/src/dayjs.ts deleted file mode 100755 index 44c3bfd..0000000 --- a/src/dayjs.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type dayjs from "dayjs" -import type { Dayjs } from "dayjs" - -export type { 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 "dayjs/locale/pt-br" - -export const definirDayjsbr = (dayjsEntrada: typeof dayjs) => { - dayjsEntrada.locale("pt-br") - dayjsEntrada.extend(utc) - dayjsEntrada.extend(timezone) - dayjsEntrada.extend(weekOfYear) - dayjsEntrada.extend(isSameOrBefore) - dayjsEntrada.extend(isSameOrAfter) - dayjsEntrada.extend(minMax) - dayjsEntrada.extend(relativeTime) - dayjsEntrada.extend(duration) - return dayjsEntrada -} - -export type { Dayjs } diff --git a/src/dayjs26.ts b/src/dayjs26.ts new file mode 100755 index 0000000..e3c5ab0 --- /dev/null +++ b/src/dayjs26.ts @@ -0,0 +1,107 @@ +/** + * 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 { defineDayjsBr } from "p-comuns" + * import "dayjs/locale/pt-br" // Importante: importar o locale! + + * 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..a85465f 100755 --- a/src/index.ts +++ b/src/index.ts @@ -2,7 +2,7 @@ export * from "./aleatorio" export * from "./cacheMemoria" export * from "./constantes" export * from "./consulta" -export * from "./dayjs" +export * from "./dayjs26" export * from "./ecosistema" export * from "./extensoes" export * from "./extensoes" diff --git a/tsup/tsup.config.back.ts b/tsup/tsup.config.back.ts index cffbdf4..912c657 100755 --- a/tsup/tsup.config.back.ts +++ b/tsup/tsup.config.back.ts @@ -18,6 +18,10 @@ export const tsup_config_back: Options = { minify: false, // Geralmente não minificamos o código do backend em produção, mas você pode mudar platform: "node", outExtension: () => ({ js: ".js" }), + loader: { + ".svg": "text", + ".md": "text", + }, } // Exporta a configuração padrão usando defineConfig diff --git a/tsup/tsup.config.front.ts b/tsup/tsup.config.front.ts index 4f0fd7b..38d1a87 100755 --- a/tsup/tsup.config.front.ts +++ b/tsup/tsup.config.front.ts @@ -19,6 +19,10 @@ export const tsup_config_front: Options = { external: ['dayjs', 'cross-fetch', 'uuid', 'zod'], outExtension: () => ({ js: ".mjs" }), shims: false, + loader: { + ".svg": "text", + ".md": "text", + }, } // Exporta a configuração padrão usando defineConfig