Compare commits

..

No commits in common. "a70511d5a6897f7afd262382d225d0a576700d52" and "e8eda7ff321000fd06fa45a90bce6991151f3a35" have entirely different histories.

11 changed files with 964 additions and 962 deletions

View file

@ -1,15 +1,16 @@
{
"$schema": "node_modules/@biomejs/biome/configuration_schema.json",
"extends": ["node_modules/p-comuns/Documentos/biome.json"],
"$schema": "node_modules/@biomejs/biome/configuration_schema.json",
"files": {},
"formatter": { "formatWithErrors": true },
"linter": {
"enabled": true,
"rules": {
"complexity": {
"useLiteralKeys": "off"
}
}
}
"files": {
"ignore": []
},
"formatter": { "formatWithErrors": true },
"linter": {
"enabled": true,
"rules": {
"complexity": {
"useLiteralKeys": "off"
}
}
}
}

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View file

@ -12,7 +12,7 @@ const mapearPasta = ({ prefixos, pasta, arquivoDestino, variavel, }) => {
const pasta_estaticos = pasta.endsWith("/") ? pasta : `${pasta}/`;
if (!node_fs_1.default.existsSync(pasta_estaticos))
throw new Error(`Pasta ${pasta_estaticos} não existe`);
const _gerar = (async () => {
const gerar = (async () => {
// listar arquivos da pasta estáticos
const files = (0, glob_1.globSync)(`${pasta_estaticos}**/*`, { nodir: true });
const arquivo_ts = `

View file

@ -1 +1 @@
{"version":3,"file":"mapear_pasta.js","sourceRoot":"","sources":["../src/mapear_pasta.ts"],"names":[],"mappings":";AAAA,0EAA0E;;;;;;AAE1E,sDAAwB;AACxB,0DAA4B;AAC5B,+BAA+B;AAExB,MAAM,WAAW,GAAG,CAAC,EAC1B,QAAQ,EACR,KAAK,EACL,cAAc,EACd,QAAQ,GAMT,EAAE,EAAE;IACH,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAA;IACjE,IAAI,CAAC,iBAAE,CAAC,UAAU,CAAC,eAAe,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,SAAS,eAAe,aAAa,CAAC,CAAA;IAExD,MAAM,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;QACzB,qCAAqC;QACrC,MAAM,KAAK,GAAG,IAAA,eAAQ,EAAC,GAAG,eAAe,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QAEjE,MAAM,UAAU,GAAG;;;;GAIpB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;aACtB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;aACtD,IAAI,CAAC,KAAK,CAAC;;;;;;;;iBAQC,QAAQ,IAAI,WAAW;;;aAG3B,CAAC,GAAG,EAAE;YAcb,MAAM,QAAQ,GAAG,EAAQ,CAAA;YAEzB,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC/D,IAAI,KAAK,GAAG,QAAQ,CAAA;gBACpB,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC1C,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC5B,KAAK,CAAC,KAAK,CAAC,GAAG,iBAAiB,SAAS,CACvC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAC1C,KAAK,CAAA;oBACR,CAAC;yBAAM,CAAC;wBACN,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;wBACjC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAO,CAAA;oBAC5B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;iBACrC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;QAC1B,CAAC,CAAC,EAAE;;KAEH,CAAA;QAED,iCAAiC;QACjC,MAAM,YAAY,GAAG,mBAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QACjD,IAAI,CAAC,iBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,iBAAE,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACjD,CAAC;QAED,mBAAmB;QAEnB,iBAAE,CAAC,aAAa,CAAC,cAAc,EAAE,UAAU,CAAC,CAAA;IAC9C,CAAC,CAAC,EAAE,CAAA;AACN,CAAC,CAAA;AApFY,QAAA,WAAW,eAoFvB"}
{"version":3,"file":"mapear_pasta.js","sourceRoot":"","sources":["../src/mapear_pasta.ts"],"names":[],"mappings":";AAAA,0EAA0E;;;;;;AAE1E,sDAAyB;AACzB,0DAA6B;AAC7B,+BAAgC;AAEzB,MAAM,WAAW,GAAG,CAAC,EAC3B,QAAQ,EACR,KAAK,EACL,cAAc,EACd,QAAQ,GAMR,EAAE,EAAE;IACJ,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;IAClE,IAAI,CAAC,iBAAE,CAAC,UAAU,CAAC,eAAe,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,SAAS,eAAe,aAAa,CAAC,CAAC;IAExD,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;QACzB,qCAAqC;QACrC,MAAM,KAAK,GAAG,IAAA,eAAQ,EAAC,GAAG,eAAe,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAElE,MAAM,UAAU,GAAG;;;;GAIlB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;aACxB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;aACtD,IAAI,CAAC,KAAK,CAAC;;;;;;;;iBAQG,QAAQ,IAAI,WAAW;;;aAG3B,CAAC,GAAG,EAAE;YAchB,MAAM,QAAQ,GAAG,EAAQ,CAAC;YAE1B,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAChE,IAAI,KAAK,GAAG,QAAQ,CAAC;gBACrB,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC3C,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC7B,KAAK,CAAC,KAAK,CAAC,GAAG,iBAAiB,SAAS,CACxC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CACzC,KAAK,CAAC;oBACR,CAAC;yBAAM,CAAC;wBACP,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;wBAClC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAO,CAAC;oBAC5B,CAAC;gBACF,CAAC;YACF,CAAC;YAED,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;iBACtC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACzB,CAAC,CAAC,EAAE;;KAED,CAAC;QAEJ,iCAAiC;QACjC,MAAM,YAAY,GAAG,mBAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAClD,IAAI,CAAC,iBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAClC,iBAAE,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,mBAAmB;QAEnB,iBAAE,CAAC,aAAa,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAC9C,CAAC,CAAC,EAAE,CAAC;AACN,CAAC,CAAC;AApFW,QAAA,WAAW,eAoFtB"}

View file

@ -1,19 +1,19 @@
import { z } from "zod"
import { PORTA, PREFIXO } from "../PREFIXO"
import { z } from "zod";
import { PORTA, PREFIXO } from "../PREFIXO";
const validar = z
.object({
PORTA: z.string(),
PREFIXO: z.string().regex(/^\/\w+$/),
})
.safeParse({ PORTA, PREFIXO })
.object({
PORTA: z.string(),
PREFIXO: z.string().regex(/^\/\w+$/),
})
.safeParse({ PORTA, PREFIXO });
if ("error" in validar) {
throw new Error(
validar.error?.errors
.map((erro) => `${erro.path}: ${erro.message}`)
.join("\n"),
)
throw new Error(
validar.error?.errors
.map((erro) => `${erro.path}: ${erro.message}`)
.join("\n"),
);
}
export const ambiente = validar.data
export const ambiente = validar.data;

View file

@ -1,26 +1,26 @@
import path from "node:path"
import { cdn_carro_de_boi } from "p-comuns"
import { mapearPasta } from "../src/mapear_pasta"
import path from "node:path";
import { cdn_carro_de_boi } from "p-comuns";
import { mapearPasta } from "../src/mapear_pasta";
const pasta_estaticos = path.resolve(process.cwd(), "estaticos")
const pasta_src = path.resolve(process.cwd(), "src")
const _version = process.env.npm_package_version
const pasta_estaticos = path.resolve(process.cwd(), "estaticos");
const pasta_src = path.resolve(process.cwd(), "src");
const version = process.env.npm_package_version;
export const gerar = (async () => {
mapearPasta({
prefixos: {
relativo: "/estaticos",
"link-local": "http://localhost:5020/estaticos",
"link-servidor": `${cdn_carro_de_boi}/estaticos`,
node_modules: "node_modules/p-estaticos/estaticos",
},
arquivoDestino: path.resolve(pasta_src, "index.ts"),
pasta: pasta_estaticos,
})
})()
mapearPasta({
prefixos: {
relativo: "/estaticos",
"link-local": "http://localhost:5020/estaticos",
"link-servidor": `${cdn_carro_de_boi}/estaticos`,
node_modules: "node_modules/p-estaticos/estaticos",
},
arquivoDestino: path.resolve(pasta_src, "index.ts"),
pasta: pasta_estaticos,
});
})();
if (process.argv.includes("gerar")) {
gerar.then(() => {
console.log("Arquivo gerado com sucesso")
})
gerar.then(() => {
console.log("Arquivo gerado com sucesso");
});
}

View file

@ -1,163 +1,164 @@
import fs from "node:fs"
import path from "node:path"
import cors from "@fastify/cors"
import fastifyStatc from "@fastify/static"
import dayjs from "dayjs"
import Fastify from "fastify"
import type React from "react"
import { renderToStaticMarkup } from "react-dom/server"
import { estaticos } from "../src"
import { ambiente } from "./ambiente"
import { gerar } from "./listar_arquivos"
import fs from "node:fs";
import path from "node:path";
import cors from "@fastify/cors";
import { renderToStaticMarkup } from "react-dom/server";
import { estaticos } from "../src";
import { ambiente } from "./ambiente";
import { gerar } from "./listar_arquivos";
const { PORTA, PREFIXO } = ambiente
// biome-ignore lint/style/useImportType: <explanation>
import React, {} from "react";
const _iframe = String(Math.random())
import fastifyStatc from "@fastify/static";
import dayjs from "dayjs";
import Fastify, {} from "fastify";
const { PORTA, PREFIXO } = ambiente;
const _iframe = String(Math.random());
const criarHtml = (entrada: {
[key: string]: string | {}
// biome-ignore lint/complexity/noBannedTypes: <explanation>
[key: string]: string | {};
}): React.JSX.Element[] => {
const retorno = [] as React.JSX.Element[]
const retorno = [] as React.JSX.Element[];
for (const [k, v] of Object.entries(entrada)) {
if (typeof v === "string") {
retorno.push(
<p key={Math.random()}>
<a
target={_iframe}
href={`${v}?aleatório=${Math.random()}`}
>
{v}
</a>
</p>,
)
} else {
retorno.push(
<div
key={Math.random()}
style={{
margin: 10,
padding: 5,
borderColor: "black",
borderWidth: "1px",
borderStyle: "solid",
}}
>
<details>
<summary>{k}</summary>
{criarHtml(v)}
</details>
</div>,
)
}
}
for (const [k, v] of Object.entries(entrada)) {
if (typeof v === "string") {
retorno.push(
<p key={Math.random()}>
<a target={_iframe} href={`${v}?aleatório=${Math.random()}`}>
{v}
</a>
</p>,
);
} else {
retorno.push(
<div
key={Math.random()}
style={{
margin: 10,
padding: 5,
borderColor: "black",
borderWidth: "1px",
borderStyle: "solid",
}}
>
<details>
<summary>{k}</summary>
{criarHtml(v)}
</details>
</div>,
);
}
}
return retorno
}
return retorno;
};
gerar.then(() => {
const fastify = Fastify({
logger: false,
const fastify = Fastify({
logger: false,
ignoreTrailingSlash: true,
})
ignoreTrailingSlash: true,
});
fastify.addHook("onSend", async (request, reply) => {
console.log(
[
dayjs().format("YYYY-MM-DD HH:mm:ss"),
request.method,
request.url,
reply.statusCode,
request.headers.site || request.headers.referer,
].join(" "),
)
})
fastify.addHook("onSend", async (request, reply) => {
console.log(
[
dayjs().format("YYYY-MM-DD HH:mm:ss"),
request.method,
request.url,
reply.statusCode,
request.headers.site || request.headers.referer,
].join(" "),
);
});
//cors
fastify.register(cors, {
origin: "*",
})
//cors
fastify.register(cors, {
origin: "*",
});
fastify.route({
method: "GET",
url: "/",
handler: (_req, res) => {
res.redirect(`${PREFIXO}/`)
},
})
fastify.route({
method: "GET",
url: "/",
handler: (req, res) => {
res.redirect(`${PREFIXO}/`);
},
});
fastify.route({
method: "GET",
url: `${PREFIXO}/`,
handler: async (_request, reply) => {
const html = (
<html lang="pt-BR">
<head>
<title>Arquivos Estáticos</title>
</head>{" "}
<body>
<h4>Arquivos Estáticos</h4>
<table width={"100%"}>
<tr>
<td width={"50%"}> {criarHtml(estaticos("relativo"))} </td>
<td width={"50%"}>
<iframe
title="Iframe"
name={_iframe}
height={600}
width={"100%"}
/>
</td>
</tr>
</table>
</body>
</html>
)
fastify.route({
method: "GET",
url: `${PREFIXO}/`,
handler: async (request, reply) => {
const html = (
<html lang="pt-BR">
<head>
<title>Arquivos Estáticos</title>
</head>{" "}
<body>
<h4>Arquivos Estáticos</h4>
<table width={"100%"}>
<tr>
<td width={"50%"}> {criarHtml(estaticos("relativo"))} </td>
<td width={"50%"}>
<iframe
title="Iframe"
name={_iframe}
height={600}
width={"100%"}
/>
</td>
</tr>
</table>
</body>
</html>
);
const renderHtml = renderToStaticMarkup(html, {})
const renderHtml = renderToStaticMarkup(html, {});
// htlm utf-8
reply.header("content-type", "text/html; charset=utf-8")
reply.send(renderHtml)
},
})
// htlm utf-8
reply.header("content-type", "text/html; charset=utf-8");
reply.send(renderHtml);
},
});
fastify.register(fastifyStatc, {
root: path.join(process.cwd(), "estaticos"),
prefix: PREFIXO,
})
fastify.register(fastifyStatc, {
root: path.join(process.cwd(), "estaticos"),
prefix: PREFIXO,
});
// 404
fastify.setNotFoundHandler((request, reply) => {
const html404 = fs.readFileSync(
path.join(process.cwd(), estaticos("relativo").html["404.html"]),
"utf8",
)
// 404
fastify.setNotFoundHandler((request, reply) => {
const html404 = fs.readFileSync(
path.join(process.cwd(), estaticos("relativo").html["404.html"]),
"utf8",
);
reply.header("content-type", "text/html; charset=utf-8")
reply.header("content-type", "text/html; charset=utf-8");
reply
.code(404)
.send(html404.replace("{ERRO}", `Página não encontrada: ${request.url}`))
})
reply
.code(404)
.send(html404.replace("{ERRO}", `Página não encontrada: ${request.url}`));
});
const jaEstaRodando = fetch(`http://0.0.0.0:${PORTA}`)
.then(() => true)
.catch(() => false)
const jaEstaRodando = fetch(`http://0.0.0.0:${PORTA}`)
.then(() => true)
.catch(() => false);
jaEstaRodando.then((jaEstaRodando) => {
!jaEstaRodando &&
fastify.listen(
{ port: Number(PORTA), host: "0.0.0.0" },
(err, address) => {
if (err) throw err
console.log(
`${new Date().toISOString()} Servidor ${PREFIXO} Rodando em ${address}`,
)
},
)
jaEstaRodando.then((jaEstaRodando) => {
!jaEstaRodando &&
fastify.listen(
{ port: Number(PORTA), host: "0.0.0.0" },
(err, address) => {
if (err) throw err;
console.log(
`${new Date().toISOString()} Servidor ${PREFIXO} Rodando em ${address}`,
);
},
);
jaEstaRodando && console.log(`Servidor ${PREFIXO} já está rodando`)
})
})
jaEstaRodando && console.log(`Servidor ${PREFIXO} já está rodando`);
});
});

View file

@ -1,6 +1,6 @@
{
"name": "p-estaticos",
"version": "0.69.0",
"version": "0.61.0",
"description": "",
"main": "dist/index.js",
"scripts": {
@ -23,13 +23,13 @@
"@fastify/static": "^7.0.4",
"dayjs": "^1.11.11",
"fastify": "^4.27.0",
"p-comuns": "git+https://git2.idz.one/publico/_comuns.git#master",
"p-comuns": "git+http://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one:3000/git/multi-modulos-ambientais/_comuns.git#producao",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"zod": "3.23.8"
},
"devDependencies": {
"@biomejs/biome": "^2.0.6",
"@biomejs/biome": "latest",
"@types/node": "^20.11.30",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.0",

186
pnpm-lock.yaml generated
View file

@ -19,10 +19,10 @@ importers:
version: 1.11.13
fastify:
specifier: ^4.27.0
version: 4.29.1
version: 4.29.0
p-comuns:
specifier: git+https://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one/git/multi-modulos-ambientais/_comuns.git#producao
version: git+https://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one/git/multi-modulos-ambientais/_comuns.git#432361afd274302bccfce44e164d361d0cb9d9f0
specifier: git+http://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one:3000/git/multi-modulos-ambientais/_comuns.git#producao
version: git+http://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one:3000/git/multi-modulos-ambientais/_comuns.git#1350348900bece75a07fcb16f1cca9f7f07cac2d
react:
specifier: ^18.3.1
version: 18.3.1
@ -34,20 +34,20 @@ importers:
version: 3.23.8
devDependencies:
'@biomejs/biome':
specifier: ^2.0.6
version: 2.0.6
specifier: latest
version: 1.9.4
'@types/node':
specifier: ^20.11.30
version: 20.19.4
version: 20.17.19
'@types/react':
specifier: ^18.3.1
version: 18.3.23
version: 18.3.18
'@types/react-dom':
specifier: ^18.3.0
version: 18.3.7(@types/react@18.3.23)
version: 18.3.5(@types/react@18.3.18)
dotenv:
specifier: ^16.4.5
version: 16.6.1
version: 16.4.7
dotenv-cli:
specifier: ^7.4.1
version: 7.4.4
@ -59,59 +59,59 @@ importers:
version: 3.2.1
typescript:
specifier: ^5.7.2
version: 5.8.3
version: 5.7.3
packages:
'@biomejs/biome@2.0.6':
resolution: {integrity: sha512-RRP+9cdh5qwe2t0gORwXaa27oTOiQRQvrFf49x2PA1tnpsyU7FIHX4ZOFMtBC4QNtyWsN7Dqkf5EDbg4X+9iqA==}
'@biomejs/biome@1.9.4':
resolution: {integrity: sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog==}
engines: {node: '>=14.21.3'}
hasBin: true
'@biomejs/cli-darwin-arm64@2.0.6':
resolution: {integrity: sha512-AzdiNNjNzsE6LfqWyBvcL29uWoIuZUkndu+wwlXW13EKcBHbbKjNQEZIJKYDc6IL+p7bmWGx3v9ZtcRyIoIz5A==}
'@biomejs/cli-darwin-arm64@1.9.4':
resolution: {integrity: sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw==}
engines: {node: '>=14.21.3'}
cpu: [arm64]
os: [darwin]
'@biomejs/cli-darwin-x64@2.0.6':
resolution: {integrity: sha512-wJjjP4E7bO4WJmiQaLnsdXMa516dbtC6542qeRkyJg0MqMXP0fvs4gdsHhZ7p9XWTAmGIjZHFKXdsjBvKGIJJQ==}
'@biomejs/cli-darwin-x64@1.9.4':
resolution: {integrity: sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg==}
engines: {node: '>=14.21.3'}
cpu: [x64]
os: [darwin]
'@biomejs/cli-linux-arm64-musl@2.0.6':
resolution: {integrity: sha512-CVPEMlin3bW49sBqLBg2x016Pws7eUXA27XYDFlEtponD0luYjg2zQaMJ2nOqlkKG9fqzzkamdYxHdMDc2gZFw==}
'@biomejs/cli-linux-arm64-musl@1.9.4':
resolution: {integrity: sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA==}
engines: {node: '>=14.21.3'}
cpu: [arm64]
os: [linux]
'@biomejs/cli-linux-arm64@2.0.6':
resolution: {integrity: sha512-ZSVf6TYo5rNMUHIW1tww+rs/krol7U5A1Is/yzWyHVZguuB0lBnIodqyFuwCNqG9aJGyk7xIMS8HG0qGUPz0SA==}
'@biomejs/cli-linux-arm64@1.9.4':
resolution: {integrity: sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g==}
engines: {node: '>=14.21.3'}
cpu: [arm64]
os: [linux]
'@biomejs/cli-linux-x64-musl@2.0.6':
resolution: {integrity: sha512-mKHE/e954hR/hSnAcJSjkf4xGqZc/53Kh39HVW1EgO5iFi0JutTN07TSjEMg616julRtfSNJi0KNyxvc30Y4rQ==}
'@biomejs/cli-linux-x64-musl@1.9.4':
resolution: {integrity: sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg==}
engines: {node: '>=14.21.3'}
cpu: [x64]
os: [linux]
'@biomejs/cli-linux-x64@2.0.6':
resolution: {integrity: sha512-geM1MkHTV1Kh2Cs/Xzot9BOF3WBacihw6bkEmxkz4nSga8B9/hWy5BDiOG3gHDGIBa8WxT0nzsJs2f/hPqQIQw==}
'@biomejs/cli-linux-x64@1.9.4':
resolution: {integrity: sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg==}
engines: {node: '>=14.21.3'}
cpu: [x64]
os: [linux]
'@biomejs/cli-win32-arm64@2.0.6':
resolution: {integrity: sha512-290V4oSFoKaprKE1zkYVsDfAdn0An5DowZ+GIABgjoq1ndhvNxkJcpxPsiYtT7slbVe3xmlT0ncdfOsN7KruzA==}
'@biomejs/cli-win32-arm64@1.9.4':
resolution: {integrity: sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg==}
engines: {node: '>=14.21.3'}
cpu: [arm64]
os: [win32]
'@biomejs/cli-win32-x64@2.0.6':
resolution: {integrity: sha512-bfM1Bce0d69Ao7pjTjUS+AWSZ02+5UHdiAP85Th8e9yV5xzw6JrHXbL5YWlcEKQ84FIZMdDc7ncuti1wd2sdbw==}
'@biomejs/cli-win32-x64@1.9.4':
resolution: {integrity: sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA==}
engines: {node: '>=14.21.3'}
cpu: [x64]
os: [win32]
@ -153,19 +153,19 @@ packages:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
'@types/node@20.19.4':
resolution: {integrity: sha512-OP+We5WV8Xnbuvw0zC2m4qfB/BJvjyCwtNjhHdJxV1639SGSKrLmJkc3fMnp2Qy8nJyHp8RO6umxELN/dS1/EA==}
'@types/node@20.17.19':
resolution: {integrity: sha512-LEwC7o1ifqg/6r2gn9Dns0f1rhK+fPFDoMiceTJ6kWmVk6bgXBI/9IOWfVan4WiAavK9pIVWdX0/e3J+eEUh5A==}
'@types/prop-types@15.7.15':
resolution: {integrity: sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==}
'@types/prop-types@15.7.14':
resolution: {integrity: sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==}
'@types/react-dom@18.3.7':
resolution: {integrity: sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==}
'@types/react-dom@18.3.5':
resolution: {integrity: sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==}
peerDependencies:
'@types/react': ^18.0.0
'@types/react@18.3.23':
resolution: {integrity: sha512-/LDXMQh55EzZQ0uVAZmKKhfENivEvWz6E+EYzh+/MCjMhNsotd+ZHhBGIjFDTi6+fz0OhQQQLbTgdQIxxCsC0w==}
'@types/react@18.3.18':
resolution: {integrity: sha512-t4yC+vtgnkYjNSKlFx1jkAhH8LgTo2N/7Qvi83kdEaUtMDiwpbLAktKDaAMlRcJ5eSxZkH74eEGt1ky31d7kfQ==}
abstract-logging@2.0.1:
resolution: {integrity: sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==}
@ -215,8 +215,8 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
brace-expansion@2.0.2:
resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==}
brace-expansion@2.0.1:
resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
color-convert@2.0.1:
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
@ -261,8 +261,8 @@ packages:
resolution: {integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==}
engines: {node: '>=12'}
dotenv@16.6.1:
resolution: {integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==}
dotenv@16.4.7:
resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==}
engines: {node: '>=12'}
eastasianwidth@0.2.0:
@ -309,8 +309,8 @@ packages:
fastify-plugin@4.5.1:
resolution: {integrity: sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==}
fastify@4.29.1:
resolution: {integrity: sha512-m2kMNHIG92tSNWv+Z3UeTR9AWLLuo7KctC7mlFPtMEVrfjIhmQhkQnT9v15qA/BfVq3vvj134Y0jl9SBje3jXQ==}
fastify@4.29.0:
resolution: {integrity: sha512-MaaUHUGcCgC8fXQDsDtioaCcag1fmPJ9j64vAKunqZF4aSub040ZGi/ag8NGE2714yREPOKZuHCfpPzuUD3UQQ==}
fastq@1.19.1:
resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==}
@ -429,9 +429,9 @@ packages:
resolution: {integrity: sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==}
engines: {node: '>=14.0.0'}
p-comuns@git+https://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one/git/multi-modulos-ambientais/_comuns.git#432361afd274302bccfce44e164d361d0cb9d9f0:
resolution: {commit: 432361afd274302bccfce44e164d361d0cb9d9f0, repo: https://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one/git/multi-modulos-ambientais/_comuns.git, type: git}
version: 0.115.0
p-comuns@git+http://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one:3000/git/multi-modulos-ambientais/_comuns.git#1350348900bece75a07fcb16f1cca9f7f07cac2d:
resolution: {commit: 1350348900bece75a07fcb16f1cca9f7f07cac2d, repo: http://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one:3000/git/multi-modulos-ambientais/_comuns.git, type: git}
version: 0.93.0
p-finally@1.0.0:
resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==}
@ -462,15 +462,15 @@ packages:
pino-std-serializers@7.0.0:
resolution: {integrity: sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==}
pino@9.7.0:
resolution: {integrity: sha512-vnMCM6xZTb1WDmLvtG2lE/2p+t9hDEIvTWJsu6FejkE62vB7gDhvzrpFR4Cw2to+9JNQxVnkAKVPA1KPB98vWg==}
pino@9.6.0:
resolution: {integrity: sha512-i85pKRCt4qMjZ1+L7sy2Ag4t1atFcdbEt76+7iRJn1g2BvsnRMGu9p8pivl9fs63M2kF/A0OacFZhTub+m/qMg==}
hasBin: true
process-warning@3.0.0:
resolution: {integrity: sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==}
process-warning@5.0.0:
resolution: {integrity: sha512-a39t9ApHNx2L4+HBnQKqxxHNs1r7KF+Intd8Q/g1bUh6q0WIp9voPXJ/x0j+ZL45KF1pJd9+q2jLIRMfvEshkA==}
process-warning@4.0.1:
resolution: {integrity: sha512-3c2LzQ3rY9d0hc1emcsHhfT9Jwz0cChib/QN89oME2R451w5fy3f0afAhERFZAwrbDU43wk12d0ORBpDVME50Q==}
proxy-addr@2.0.7:
resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==}
@ -526,8 +526,8 @@ packages:
secure-json-parse@2.7.0:
resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==}
semver@7.7.2:
resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==}
semver@7.7.1:
resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==}
engines: {node: '>=10'}
hasBin: true
@ -605,13 +605,13 @@ packages:
tr46@0.0.3:
resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
typescript@5.8.3:
resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==}
typescript@5.7.3:
resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}
engines: {node: '>=14.17'}
hasBin: true
undici-types@6.21.0:
resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
undici-types@6.19.8:
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
webidl-conversions@3.0.1:
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
@ -647,39 +647,39 @@ packages:
snapshots:
'@biomejs/biome@2.0.6':
'@biomejs/biome@1.9.4':
optionalDependencies:
'@biomejs/cli-darwin-arm64': 2.0.6
'@biomejs/cli-darwin-x64': 2.0.6
'@biomejs/cli-linux-arm64': 2.0.6
'@biomejs/cli-linux-arm64-musl': 2.0.6
'@biomejs/cli-linux-x64': 2.0.6
'@biomejs/cli-linux-x64-musl': 2.0.6
'@biomejs/cli-win32-arm64': 2.0.6
'@biomejs/cli-win32-x64': 2.0.6
'@biomejs/cli-darwin-arm64': 1.9.4
'@biomejs/cli-darwin-x64': 1.9.4
'@biomejs/cli-linux-arm64': 1.9.4
'@biomejs/cli-linux-arm64-musl': 1.9.4
'@biomejs/cli-linux-x64': 1.9.4
'@biomejs/cli-linux-x64-musl': 1.9.4
'@biomejs/cli-win32-arm64': 1.9.4
'@biomejs/cli-win32-x64': 1.9.4
'@biomejs/cli-darwin-arm64@2.0.6':
'@biomejs/cli-darwin-arm64@1.9.4':
optional: true
'@biomejs/cli-darwin-x64@2.0.6':
'@biomejs/cli-darwin-x64@1.9.4':
optional: true
'@biomejs/cli-linux-arm64-musl@2.0.6':
'@biomejs/cli-linux-arm64-musl@1.9.4':
optional: true
'@biomejs/cli-linux-arm64@2.0.6':
'@biomejs/cli-linux-arm64@1.9.4':
optional: true
'@biomejs/cli-linux-x64-musl@2.0.6':
'@biomejs/cli-linux-x64-musl@1.9.4':
optional: true
'@biomejs/cli-linux-x64@2.0.6':
'@biomejs/cli-linux-x64@1.9.4':
optional: true
'@biomejs/cli-win32-arm64@2.0.6':
'@biomejs/cli-win32-arm64@1.9.4':
optional: true
'@biomejs/cli-win32-x64@2.0.6':
'@biomejs/cli-win32-x64@1.9.4':
optional: true
'@fastify/accept-negotiator@1.1.0': {}
@ -736,19 +736,19 @@ snapshots:
'@pkgjs/parseargs@0.11.0':
optional: true
'@types/node@20.19.4':
'@types/node@20.17.19':
dependencies:
undici-types: 6.21.0
undici-types: 6.19.8
'@types/prop-types@15.7.15': {}
'@types/prop-types@15.7.14': {}
'@types/react-dom@18.3.7(@types/react@18.3.23)':
'@types/react-dom@18.3.5(@types/react@18.3.18)':
dependencies:
'@types/react': 18.3.23
'@types/react': 18.3.18
'@types/react@18.3.23':
'@types/react@18.3.18':
dependencies:
'@types/prop-types': 15.7.15
'@types/prop-types': 15.7.14
csstype: 3.1.3
abstract-logging@2.0.1: {}
@ -787,7 +787,7 @@ snapshots:
balanced-match@1.0.2: {}
brace-expansion@2.0.2:
brace-expansion@2.0.1:
dependencies:
balanced-match: 1.0.2
@ -830,13 +830,13 @@ snapshots:
dotenv-cli@7.4.4:
dependencies:
cross-spawn: 7.0.6
dotenv: 16.6.1
dotenv: 16.4.7
dotenv-expand: 10.0.0
minimist: 1.2.8
dotenv-expand@10.0.0: {}
dotenv@16.6.1: {}
dotenv@16.4.7: {}
eastasianwidth@0.2.0: {}
@ -884,7 +884,7 @@ snapshots:
fastify-plugin@4.5.1: {}
fastify@4.29.1:
fastify@4.29.0:
dependencies:
'@fastify/ajv-compiler': 3.6.0
'@fastify/error': 3.4.1
@ -895,12 +895,12 @@ snapshots:
fast-json-stringify: 5.16.1
find-my-way: 8.2.2
light-my-request: 5.14.0
pino: 9.7.0
pino: 9.6.0
process-warning: 3.0.0
proxy-addr: 2.0.7
rfdc: 1.4.1
secure-json-parse: 2.7.0
semver: 7.7.2
semver: 7.7.1
toad-cache: 3.7.0
fastq@1.19.1:
@ -991,7 +991,7 @@ snapshots:
minimatch@9.0.5:
dependencies:
brace-expansion: 2.0.2
brace-expansion: 2.0.1
minimist@1.2.8: {}
@ -1013,7 +1013,7 @@ snapshots:
on-exit-leak-free@2.1.2: {}
p-comuns@git+https://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one/git/multi-modulos-ambientais/_comuns.git#432361afd274302bccfce44e164d361d0cb9d9f0:
p-comuns@git+http://leitura:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MTQ3NTA1NzYsImlzcyI6IkdpdG5lc3MiLCJwaWQiOjgsInRrbiI6eyJ0eXAiOiJwYXQiLCJpZCI6MzJ9fQ.OYdExOVQm5UI3wfeTaWjmD0o65Y1hrjFz5EvMB1a__U@git.idz.one:3000/git/multi-modulos-ambientais/_comuns.git#1350348900bece75a07fcb16f1cca9f7f07cac2d:
dependencies:
cross-fetch: 4.1.0
zod: 3.24.1
@ -1043,14 +1043,14 @@ snapshots:
pino-std-serializers@7.0.0: {}
pino@9.7.0:
pino@9.6.0:
dependencies:
atomic-sleep: 1.0.0
fast-redact: 3.5.0
on-exit-leak-free: 2.1.2
pino-abstract-transport: 2.0.0
pino-std-serializers: 7.0.0
process-warning: 5.0.0
process-warning: 4.0.1
quick-format-unescaped: 4.0.4
real-require: 0.2.0
safe-stable-stringify: 2.5.0
@ -1059,7 +1059,7 @@ snapshots:
process-warning@3.0.0: {}
process-warning@5.0.0: {}
process-warning@4.0.1: {}
proxy-addr@2.0.7:
dependencies:
@ -1104,7 +1104,7 @@ snapshots:
secure-json-parse@2.7.0: {}
semver@7.7.2: {}
semver@7.7.1: {}
set-cookie-parser@2.7.1: {}
@ -1166,9 +1166,9 @@ snapshots:
tr46@0.0.3: {}
typescript@5.8.3: {}
typescript@5.7.3: {}
undici-types@6.21.0: {}
undici-types@6.19.8: {}
webidl-conversions@3.0.1: {}

File diff suppressed because it is too large Load diff

View file

@ -1,35 +1,35 @@
// esse arquivo não pode ser importado em index.ts para não gerar conflito
import fs from "node:fs"
import path from "node:path"
import { globSync } from "glob"
import fs from "node:fs";
import path from "node:path";
import { globSync } from "glob";
export const mapearPasta = ({
prefixos,
pasta,
arquivoDestino,
variavel,
prefixos,
pasta,
arquivoDestino,
variavel,
}: {
prefixos: { [k: string]: string }
pasta: string
arquivoDestino: string
variavel?: string
prefixos: { [k: string]: string };
pasta: string;
arquivoDestino: string;
variavel?: string;
}) => {
const pasta_estaticos = pasta.endsWith("/") ? pasta : `${pasta}/`
if (!fs.existsSync(pasta_estaticos))
throw new Error(`Pasta ${pasta_estaticos} não existe`)
const pasta_estaticos = pasta.endsWith("/") ? pasta : `${pasta}/`;
if (!fs.existsSync(pasta_estaticos))
throw new Error(`Pasta ${pasta_estaticos} não existe`);
const _gerar = (async () => {
// listar arquivos da pasta estáticos
const files = globSync(`${pasta_estaticos}**/*`, { nodir: true })
const gerar = (async () => {
// listar arquivos da pasta estáticos
const files = globSync(`${pasta_estaticos}**/*`, { nodir: true });
const arquivo_ts = `
const arquivo_ts = `
const Prefixos = {
${Object.entries(prefixos)
.map(([k, v]) => `"${k}": "${v.replace(/"/g, '\\"')}"`)
.join(",\n")}
.map(([k, v]) => `"${k}": "${v.replace(/"/g, '\\"')}"`)
.join(",\n")}
};
/**
@ -41,7 +41,7 @@ export const mapearPasta = ({
const prefixo = Prefixos[caminho];
return ${(() => {
/*
/*
${files
.map((f) => f.slice(pasta_estaticos.length))
@ -50,42 +50,42 @@ export const mapearPasta = ({
*/
type tp = {
[key: string]: string | tp
}
type tp = {
[key: string]: string | tp;
};
const arquivos = {} as tp
const arquivos = {} as tp;
for (const arquivo of files) {
const partes = arquivo.slice(pasta_estaticos.length).split("/")
let pasta = arquivos
for (const [i, parte] of partes.entries()) {
if (i === partes.length - 1) {
pasta[parte] = `~~~\${prefixo}${encodeURI(
arquivo.slice(pasta_estaticos.length - 1),
)}~~~`
} else {
pasta[parte] = pasta[parte] || {}
pasta = pasta[parte] as tp
}
}
}
for (const arquivo of files) {
const partes = arquivo.slice(pasta_estaticos.length).split("/");
let pasta = arquivos;
for (const [i, parte] of partes.entries()) {
if (i === partes.length - 1) {
pasta[parte] = `~~~\${prefixo}${encodeURI(
arquivo.slice(pasta_estaticos.length - 1),
)}~~~`;
} else {
pasta[parte] = pasta[parte] || {};
pasta = pasta[parte] as tp;
}
}
}
return JSON.stringify(arquivos, null, 2)
.replace(/"~~~/g, "`")
.replace(/~~~"/g, "`")
})()};
return JSON.stringify(arquivos, null, 2)
.replace(/"~~~/g, "`")
.replace(/~~~"/g, "`");
})()};
};
`
`;
// criar pasta de arquivo destino
const pastaDestino = path.dirname(arquivoDestino)
if (!fs.existsSync(pastaDestino)) {
fs.mkdirSync(pastaDestino, { recursive: true })
}
// criar pasta de arquivo destino
const pastaDestino = path.dirname(arquivoDestino);
if (!fs.existsSync(pastaDestino)) {
fs.mkdirSync(pastaDestino, { recursive: true });
}
// escrever arquivo
// escrever arquivo
fs.writeFileSync(arquivoDestino, arquivo_ts)
})()
}
fs.writeFileSync(arquivoDestino, arquivo_ts);
})();
};