troca por Fastify
This commit is contained in:
parent
ad6dcda6a5
commit
67aeeea9b4
5 changed files with 685 additions and 798 deletions
|
|
@ -10,7 +10,7 @@ const validar = z
|
||||||
|
|
||||||
if ("error" in validar) {
|
if ("error" in validar) {
|
||||||
throw new Error(
|
throw new Error(
|
||||||
validar.error.errors
|
validar.error?.errors
|
||||||
.map((erro) => `${erro.path}: ${erro.message}`)
|
.map((erro) => `${erro.path}: ${erro.message}`)
|
||||||
.join("\n"),
|
.join("\n"),
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,14 @@
|
||||||
import { estaticos } from "../src";
|
|
||||||
import path from "node:path";
|
import path from "node:path";
|
||||||
import express from "express";
|
|
||||||
import fs from "node:fs";
|
|
||||||
import { gerar } from "./listar_arquivos";
|
|
||||||
import { ambiente } from "./ambiente";
|
|
||||||
import { renderToStaticMarkup } from "react-dom/server";
|
import { renderToStaticMarkup } from "react-dom/server";
|
||||||
import bodyParser from 'body-parser'
|
import { estaticos } from "../src";
|
||||||
|
import { ambiente } from "./ambiente";
|
||||||
|
import { gerar } from "./listar_arquivos";
|
||||||
|
|
||||||
// biome-ignore lint/style/useImportType: <explanation>
|
// biome-ignore lint/style/useImportType: <explanation>
|
||||||
import React, {} from "react";
|
import React, {} from "react";
|
||||||
import cors from "cors";
|
|
||||||
|
import fastifyStatc from "@fastify/static";
|
||||||
|
import Fastify, {} from "fastify";
|
||||||
|
|
||||||
const { PORTA, PREFIXO } = ambiente;
|
const { PORTA, PREFIXO } = ambiente;
|
||||||
|
|
||||||
|
|
@ -55,13 +54,24 @@ const criarHtml = (entrada: {
|
||||||
};
|
};
|
||||||
|
|
||||||
gerar.then(() => {
|
gerar.then(() => {
|
||||||
const app = express();
|
const fastify = Fastify({
|
||||||
app.use(express.json());
|
logger: true,
|
||||||
app.use(express.urlencoded());
|
|
||||||
app.use(cors());
|
|
||||||
app.use(bodyParser.urlencoded({ extended: false }))
|
|
||||||
|
|
||||||
app.get([PREFIXO, `${PREFIXO}/`], (req, res) => {
|
ignoreTrailingSlash: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
fastify.route({
|
||||||
|
method: "GET",
|
||||||
|
url: "/",
|
||||||
|
handler: (req, res) => {
|
||||||
|
res.redirect(`${PREFIXO}/`);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
fastify.route({
|
||||||
|
method: "GET",
|
||||||
|
url: `${PREFIXO}/`,
|
||||||
|
handler: async (request, reply) => {
|
||||||
const html = (
|
const html = (
|
||||||
<html lang="pt-BR">
|
<html lang="pt-BR">
|
||||||
<head>
|
<head>
|
||||||
|
|
@ -88,25 +98,24 @@ gerar.then(() => {
|
||||||
|
|
||||||
const renderHtml = renderToStaticMarkup(html, {});
|
const renderHtml = renderToStaticMarkup(html, {});
|
||||||
|
|
||||||
res.setHeader("content-type", "text/html");
|
// htlm utf-8
|
||||||
res.send(renderHtml);
|
reply.header("content-type", "text/html; charset=utf-8");
|
||||||
});
|
reply.send(renderHtml);
|
||||||
app.get(`${PREFIXO}/*`, (req, res) => {
|
},
|
||||||
const caminho_arquivo = path.join(process.cwd(), decodeURI(req.path));
|
|
||||||
|
|
||||||
if (fs.existsSync(caminho_arquivo)) {
|
|
||||||
console.log(`200: ${req.url}`);
|
|
||||||
return res.sendFile(caminho_arquivo);
|
|
||||||
}
|
|
||||||
console.log(`404: ${req.url}`);
|
|
||||||
return res.status(404).send(`404: ${req.url}`);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
app.all("*", (req, res) => {
|
fastify.register(fastifyStatc, {
|
||||||
res.redirect(PREFIXO);
|
root: path.join(process.cwd(), "estaticos"),
|
||||||
|
prefix: PREFIXO,
|
||||||
});
|
});
|
||||||
|
|
||||||
app.listen(PORTA, () => {
|
// 404
|
||||||
console.log(`Servidor ${PREFIXO} Rodando em http://localhost:${PORTA}`);
|
fastify.setNotFoundHandler((request, reply) => {
|
||||||
|
reply.code(404).send(`Não encontrado: ${request.url}`);
|
||||||
|
});
|
||||||
|
|
||||||
|
fastify.listen({ port: Number(PORTA) }, (err, address) => {
|
||||||
|
if (err) throw err;
|
||||||
|
console.log(`Servidor ${PREFIXO} Rodando em ${address}`);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
21
package.json
21
package.json
|
|
@ -1,21 +1,15 @@
|
||||||
{
|
{
|
||||||
"name": "p-estaticos",
|
"name": "p-estaticos",
|
||||||
"version": "0.36.0",
|
"version": "0.37.0",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"#1": "Executa o servidor de desenvolvimento e sem produção",
|
|
||||||
"dev": "tsx ferramentas/rodar_servidor.tsx",
|
"dev": "tsx ferramentas/rodar_servidor.tsx",
|
||||||
"#2": "Gerar o pacote para ser imortado em outros projetos",
|
"build": "npm --no-git-tag-version version minor && pnpm run gerar && pnpm run biome && tsc",
|
||||||
"build": "npm --no-git-tag-version version minor && pnpm run gerar && npx @biomejs/biome check --write ./src && tsc",
|
|
||||||
"#3": "Faz uma checagem de versão do node",
|
|
||||||
"nodev": "check-node-version --node '>= 20'",
|
"nodev": "check-node-version --node '>= 20'",
|
||||||
"#4": "Mata o processo que está rodando na porta 5020",
|
|
||||||
"kill": "npx kill-port -p 5020",
|
"kill": "npx kill-port -p 5020",
|
||||||
"#5": "Gerar a listagem de arquivos estaticos",
|
|
||||||
"gerar": "dotenv -e .env tsx ferramentas/listar_arquivos.ts gerar",
|
"gerar": "dotenv -e .env tsx ferramentas/listar_arquivos.ts gerar",
|
||||||
"#6": "Faz a formatação do código",
|
"biome": "npx @biomejs/biome check --write ./src && npx @biomejs/biome check --write ./ferramentas",
|
||||||
"biome": "npx @biomejs/biome check --write ./src",
|
|
||||||
"postinstall": "pnpm up p-*"
|
"postinstall": "pnpm up p-*"
|
||||||
},
|
},
|
||||||
"author": {
|
"author": {
|
||||||
|
|
@ -25,19 +19,14 @@
|
||||||
},
|
},
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@fastify/static": "^7.0.4",
|
||||||
"body-parser": "latest",
|
"fastify": "^4.27.0",
|
||||||
"cors": "^2.8.5",
|
|
||||||
"express": "latest",
|
|
||||||
"react": "^18.3.1",
|
"react": "^18.3.1",
|
||||||
"react-dom": "^18.3.1",
|
"react-dom": "^18.3.1",
|
||||||
"zod": "3.23.8"
|
"zod": "3.23.8"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@biomejs/biome": "latest",
|
"@biomejs/biome": "latest",
|
||||||
"@types/cors": "^2.8.17",
|
|
||||||
"@types/express": "latest",
|
|
||||||
"@types/body-parser": "latest",
|
|
||||||
"@types/node": "^20.11.30",
|
"@types/node": "^20.11.30",
|
||||||
"@types/react": "^18.3.1",
|
"@types/react": "^18.3.1",
|
||||||
"@types/react-dom": "^18.3.0",
|
"@types/react-dom": "^18.3.0",
|
||||||
|
|
|
||||||
917
pnpm-lock.yaml
generated
917
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load diff
72
src/index.ts
72
src/index.ts
|
|
@ -1,30 +1,27 @@
|
||||||
|
const Prefixos = {
|
||||||
|
relativo: "/estaticos",
|
||||||
|
"link-local": "http://localhost:5020/estaticos",
|
||||||
|
"link-servidor": "https://carro-de-boi-idz-one.b-cdn.net/estaticos",
|
||||||
|
node_modules: "node_modules/p-estaticos/estaticos",
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
|
||||||
const Prefixos = {
|
|
||||||
"relativo": "/estaticos",
|
|
||||||
"link-local": "http://localhost:5020/estaticos",
|
|
||||||
"link-servidor": "https://carro-de-boi-idz-one.b-cdn.net/estaticos",
|
|
||||||
"node_modules": "node_modules/p-estaticos/estaticos"
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
*
|
||||||
* @param caminho
|
* @param caminho
|
||||||
* @returns String
|
* @returns String
|
||||||
*/
|
*/
|
||||||
export const estaticos = (caminho: keyof typeof Prefixos) => {
|
export const estaticos = (caminho: keyof typeof Prefixos) => {
|
||||||
const prefixo = Prefixos[caminho];
|
const prefixo = Prefixos[caminho];
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"logos": {
|
logos: {
|
||||||
"e-licencie-gov": {
|
"e-licencie-gov": {
|
||||||
"Logo-e-licencie-gov-vertical.svg": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-vertical.svg`,
|
"Logo-e-licencie-gov-vertical.svg": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-vertical.svg`,
|
||||||
"Logo-e-licencie-gov-vertical.": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-vertical.`,
|
"Logo-e-licencie-gov-vertical.": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-vertical.`,
|
||||||
"Logo-e-licencie-gov-horizontal.svg": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-horizontal.svg`,
|
"Logo-e-licencie-gov-horizontal.svg": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-horizontal.svg`,
|
||||||
"Logo-e-licencie-gov-horizontal.png": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-horizontal.png`,
|
"Logo-e-licencie-gov-horizontal.png": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-horizontal.png`,
|
||||||
"Logo-e-licencie-gov-horizontal-branco.svg": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-horizontal-branco.svg`,
|
"Logo-e-licencie-gov-horizontal-branco.svg": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-horizontal-branco.svg`,
|
||||||
"Logo-e-licencie-gov-horizontal-branco.png": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-horizontal-branco.png`
|
"Logo-e-licencie-gov-horizontal-branco.png": `${prefixo}/logos/e-licencie-gov/Logo-e-licencie-gov-horizontal-branco.png`,
|
||||||
},
|
},
|
||||||
"e-licencie": {
|
"e-licencie": {
|
||||||
"verde-verde_.png": `${prefixo}/logos/e-licencie/verde-verde_.png`,
|
"verde-verde_.png": `${prefixo}/logos/e-licencie/verde-verde_.png`,
|
||||||
|
|
@ -32,10 +29,10 @@
|
||||||
"logo_verde_plantula_branca.png": `${prefixo}/logos/e-licencie/logo_verde_plantula_branca.png`,
|
"logo_verde_plantula_branca.png": `${prefixo}/logos/e-licencie/logo_verde_plantula_branca.png`,
|
||||||
"escala-branco_.png": `${prefixo}/logos/e-licencie/escala-branco_.png`,
|
"escala-branco_.png": `${prefixo}/logos/e-licencie/escala-branco_.png`,
|
||||||
"escala-branco.png": `${prefixo}/logos/e-licencie/escala-branco.png`,
|
"escala-branco.png": `${prefixo}/logos/e-licencie/escala-branco.png`,
|
||||||
"branco-branco.png": `${prefixo}/logos/e-licencie/branco-branco.png`
|
"branco-branco.png": `${prefixo}/logos/e-licencie/branco-branco.png`,
|
||||||
},
|
},
|
||||||
"betha-sistemas": {
|
"betha-sistemas": {
|
||||||
"logo.png": `${prefixo}/logos/betha-sistemas/logo.png`
|
"logo.png": `${prefixo}/logos/betha-sistemas/logo.png`,
|
||||||
},
|
},
|
||||||
"betha-meio-ambiente": {
|
"betha-meio-ambiente": {
|
||||||
"Logo-betha-meio-ambiente-vertical.svg": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-vertical.svg`,
|
"Logo-betha-meio-ambiente-vertical.svg": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-vertical.svg`,
|
||||||
|
|
@ -45,18 +42,18 @@
|
||||||
"Logo-betha-meio-ambiente-horizontal-branco.svg": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-horizontal-branco.svg`,
|
"Logo-betha-meio-ambiente-horizontal-branco.svg": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-horizontal-branco.svg`,
|
||||||
"Logo-betha-meio-ambiente-horizontal-branco.png": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-horizontal-branco.png`,
|
"Logo-betha-meio-ambiente-horizontal-branco.png": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-horizontal-branco.png`,
|
||||||
"Logo-betha-meio-ambiente-brasao.svg": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-brasao.svg`,
|
"Logo-betha-meio-ambiente-brasao.svg": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-brasao.svg`,
|
||||||
"Logo-betha-meio-ambiente-brasao.png": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-brasao.png`
|
"Logo-betha-meio-ambiente-brasao.png": `${prefixo}/logos/betha-meio-ambiente/Logo-betha-meio-ambiente-brasao.png`,
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"imagens": {
|
},
|
||||||
|
imagens: {
|
||||||
"quero-quero.gif": `${prefixo}/imagens/quero-quero.gif`,
|
"quero-quero.gif": `${prefixo}/imagens/quero-quero.gif`,
|
||||||
"favicon.ico": `${prefixo}/imagens/favicon.ico`,
|
"favicon.ico": `${prefixo}/imagens/favicon.ico`,
|
||||||
"exemplo_brasao.jpeg": `${prefixo}/imagens/exemplo_brasao.jpeg`
|
"exemplo_brasao.jpeg": `${prefixo}/imagens/exemplo_brasao.jpeg`,
|
||||||
},
|
},
|
||||||
"html": {
|
html: {
|
||||||
"404.html": `${prefixo}/html/404.html`
|
"404.html": `${prefixo}/html/404.html`,
|
||||||
},
|
},
|
||||||
"fundos": {
|
fundos: {
|
||||||
"fundo-16.jpg": `${prefixo}/fundos/fundo-16.jpg`,
|
"fundo-16.jpg": `${prefixo}/fundos/fundo-16.jpg`,
|
||||||
"fundo-15.jpg": `${prefixo}/fundos/fundo-15.jpg`,
|
"fundo-15.jpg": `${prefixo}/fundos/fundo-15.jpg`,
|
||||||
"fundo-14.jpg": `${prefixo}/fundos/fundo-14.jpg`,
|
"fundo-14.jpg": `${prefixo}/fundos/fundo-14.jpg`,
|
||||||
|
|
@ -72,11 +69,11 @@
|
||||||
"fundo-04.jpg": `${prefixo}/fundos/fundo-04.jpg`,
|
"fundo-04.jpg": `${prefixo}/fundos/fundo-04.jpg`,
|
||||||
"fundo-03.jpg": `${prefixo}/fundos/fundo-03.jpg`,
|
"fundo-03.jpg": `${prefixo}/fundos/fundo-03.jpg`,
|
||||||
"fundo-02.jpg": `${prefixo}/fundos/fundo-02.jpg`,
|
"fundo-02.jpg": `${prefixo}/fundos/fundo-02.jpg`,
|
||||||
"fundo-01.jpg": `${prefixo}/fundos/fundo-01.jpg`
|
"fundo-01.jpg": `${prefixo}/fundos/fundo-01.jpg`,
|
||||||
},
|
},
|
||||||
"fonts-master": {
|
"fonts-master": {
|
||||||
"sobre.txt": `${prefixo}/fonts-master/sobre.txt`,
|
"sobre.txt": `${prefixo}/fonts-master/sobre.txt`,
|
||||||
"roboto": {
|
roboto: {
|
||||||
"Roboto-ThinItalic.ttf": `${prefixo}/fonts-master/roboto/Roboto-ThinItalic.ttf`,
|
"Roboto-ThinItalic.ttf": `${prefixo}/fonts-master/roboto/Roboto-ThinItalic.ttf`,
|
||||||
"Roboto-Thin.ttf": `${prefixo}/fonts-master/roboto/Roboto-Thin.ttf`,
|
"Roboto-Thin.ttf": `${prefixo}/fonts-master/roboto/Roboto-Thin.ttf`,
|
||||||
"Roboto-Regular.ttf": `${prefixo}/fonts-master/roboto/Roboto-Regular.ttf`,
|
"Roboto-Regular.ttf": `${prefixo}/fonts-master/roboto/Roboto-Regular.ttf`,
|
||||||
|
|
@ -96,7 +93,7 @@
|
||||||
"Roboto-BlackItalic.ttf": `${prefixo}/fonts-master/roboto/Roboto-BlackItalic.ttf`,
|
"Roboto-BlackItalic.ttf": `${prefixo}/fonts-master/roboto/Roboto-BlackItalic.ttf`,
|
||||||
"Roboto-Black.ttf": `${prefixo}/fonts-master/roboto/Roboto-Black.ttf`,
|
"Roboto-Black.ttf": `${prefixo}/fonts-master/roboto/Roboto-Black.ttf`,
|
||||||
"LICENSE.txt": `${prefixo}/fonts-master/roboto/LICENSE.txt`,
|
"LICENSE.txt": `${prefixo}/fonts-master/roboto/LICENSE.txt`,
|
||||||
"COPYRIGHT.txt": `${prefixo}/fonts-master/roboto/COPYRIGHT.txt`
|
"COPYRIGHT.txt": `${prefixo}/fonts-master/roboto/COPYRIGHT.txt`,
|
||||||
},
|
},
|
||||||
"pt-sans": {
|
"pt-sans": {
|
||||||
"PTSans-Regular.ttf": `${prefixo}/fonts-master/pt-sans/PTSans-Regular.ttf`,
|
"PTSans-Regular.ttf": `${prefixo}/fonts-master/pt-sans/PTSans-Regular.ttf`,
|
||||||
|
|
@ -107,7 +104,7 @@
|
||||||
"PTSans-CaptionRegular.ttf": `${prefixo}/fonts-master/pt-sans/PTSans-CaptionRegular.ttf`,
|
"PTSans-CaptionRegular.ttf": `${prefixo}/fonts-master/pt-sans/PTSans-CaptionRegular.ttf`,
|
||||||
"PTSans-BoldItalic.ttf": `${prefixo}/fonts-master/pt-sans/PTSans-BoldItalic.ttf`,
|
"PTSans-BoldItalic.ttf": `${prefixo}/fonts-master/pt-sans/PTSans-BoldItalic.ttf`,
|
||||||
"PTSans-Bold.ttf": `${prefixo}/fonts-master/pt-sans/PTSans-Bold.ttf`,
|
"PTSans-Bold.ttf": `${prefixo}/fonts-master/pt-sans/PTSans-Bold.ttf`,
|
||||||
"OFL.txt": `${prefixo}/fonts-master/pt-sans/OFL.txt`
|
"OFL.txt": `${prefixo}/fonts-master/pt-sans/OFL.txt`,
|
||||||
},
|
},
|
||||||
"open-sans": {
|
"open-sans": {
|
||||||
"OpenSans-SemiboldItalic.ttf": `${prefixo}/fonts-master/open-sans/OpenSans-SemiboldItalic.ttf`,
|
"OpenSans-SemiboldItalic.ttf": `${prefixo}/fonts-master/open-sans/OpenSans-SemiboldItalic.ttf`,
|
||||||
|
|
@ -121,7 +118,7 @@
|
||||||
"OpenSans-BoldItalic.ttf": `${prefixo}/fonts-master/open-sans/OpenSans-BoldItalic.ttf`,
|
"OpenSans-BoldItalic.ttf": `${prefixo}/fonts-master/open-sans/OpenSans-BoldItalic.ttf`,
|
||||||
"OpenSans-Bold.ttf": `${prefixo}/fonts-master/open-sans/OpenSans-Bold.ttf`,
|
"OpenSans-Bold.ttf": `${prefixo}/fonts-master/open-sans/OpenSans-Bold.ttf`,
|
||||||
"LICENSE.txt": `${prefixo}/fonts-master/open-sans/LICENSE.txt`,
|
"LICENSE.txt": `${prefixo}/fonts-master/open-sans/LICENSE.txt`,
|
||||||
"Apache License.txt": `${prefixo}/fonts-master/open-sans/Apache%20License.txt`
|
"Apache License.txt": `${prefixo}/fonts-master/open-sans/Apache%20License.txt`,
|
||||||
},
|
},
|
||||||
"noto-sans": {
|
"noto-sans": {
|
||||||
"fonts.json": `${prefixo}/fonts-master/noto-sans/fonts.json`,
|
"fonts.json": `${prefixo}/fonts-master/noto-sans/fonts.json`,
|
||||||
|
|
@ -170,9 +167,9 @@
|
||||||
"NotoSans-Bold.ttf": `${prefixo}/fonts-master/noto-sans/NotoSans-Bold.ttf`,
|
"NotoSans-Bold.ttf": `${prefixo}/fonts-master/noto-sans/NotoSans-Bold.ttf`,
|
||||||
"NotoNaskhArabic-Regular.ttf": `${prefixo}/fonts-master/noto-sans/NotoNaskhArabic-Regular.ttf`,
|
"NotoNaskhArabic-Regular.ttf": `${prefixo}/fonts-master/noto-sans/NotoNaskhArabic-Regular.ttf`,
|
||||||
"NotoNaskhArabic-Bold.ttf": `${prefixo}/fonts-master/noto-sans/NotoNaskhArabic-Bold.ttf`,
|
"NotoNaskhArabic-Bold.ttf": `${prefixo}/fonts-master/noto-sans/NotoNaskhArabic-Bold.ttf`,
|
||||||
"LICENSE": `${prefixo}/fonts-master/noto-sans/LICENSE`
|
LICENSE: `${prefixo}/fonts-master/noto-sans/LICENSE`,
|
||||||
},
|
},
|
||||||
"metropolis": {
|
metropolis: {
|
||||||
"SIL Open Font License.txt": `${prefixo}/fonts-master/metropolis/SIL%20Open%20Font%20License.txt`,
|
"SIL Open Font License.txt": `${prefixo}/fonts-master/metropolis/SIL%20Open%20Font%20License.txt`,
|
||||||
"Metropolis-ThinItalic.otf": `${prefixo}/fonts-master/metropolis/Metropolis-ThinItalic.otf`,
|
"Metropolis-ThinItalic.otf": `${prefixo}/fonts-master/metropolis/Metropolis-ThinItalic.otf`,
|
||||||
"Metropolis-Thin.otf": `${prefixo}/fonts-master/metropolis/Metropolis-Thin.otf`,
|
"Metropolis-Thin.otf": `${prefixo}/fonts-master/metropolis/Metropolis-Thin.otf`,
|
||||||
|
|
@ -191,16 +188,15 @@
|
||||||
"Metropolis-BoldItalic.otf": `${prefixo}/fonts-master/metropolis/Metropolis-BoldItalic.otf`,
|
"Metropolis-BoldItalic.otf": `${prefixo}/fonts-master/metropolis/Metropolis-BoldItalic.otf`,
|
||||||
"Metropolis-Bold.otf": `${prefixo}/fonts-master/metropolis/Metropolis-Bold.otf`,
|
"Metropolis-Bold.otf": `${prefixo}/fonts-master/metropolis/Metropolis-Bold.otf`,
|
||||||
"Metropolis-BlackItalic.otf": `${prefixo}/fonts-master/metropolis/Metropolis-BlackItalic.otf`,
|
"Metropolis-BlackItalic.otf": `${prefixo}/fonts-master/metropolis/Metropolis-BlackItalic.otf`,
|
||||||
"Metropolis-Black.otf": `${prefixo}/fonts-master/metropolis/Metropolis-Black.otf`
|
"Metropolis-Black.otf": `${prefixo}/fonts-master/metropolis/Metropolis-Black.otf`,
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"dados": {
|
},
|
||||||
|
dados: {
|
||||||
"tabela_ibama.json": `${prefixo}/dados/tabela_ibama.json`,
|
"tabela_ibama.json": `${prefixo}/dados/tabela_ibama.json`,
|
||||||
"municipios.json": `${prefixo}/dados/municipios.json`
|
"municipios.json": `${prefixo}/dados/municipios.json`,
|
||||||
|
},
|
||||||
|
background: {
|
||||||
|
"Paisagem.jpg": `${prefixo}/background/Paisagem.jpg`,
|
||||||
},
|
},
|
||||||
"background": {
|
|
||||||
"Paisagem.jpg": `${prefixo}/background/Paisagem.jpg`
|
|
||||||
}
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue