Compare commits

..

41 commits

Author SHA1 Message Date
Keven
b664221d5d feat(OnlyOffice): Ajustes diversos no editor 2025-12-26 15:52:08 -03:00
Keven
c3511a7065 fix(Editor): Realiza ajustes no editor 2025-12-23 09:04:00 -03:00
Keven
5ef46780a5 feat(Certidao): Adiciona recursos para manipular certidões 2025-12-22 18:03:49 -03:00
Keven
fd79837fdc feat(TServicoPedido): Implementa a solicitação de certidão na tela de pedido 2025-12-18 16:11:53 -03:00
Keven
b5ea5a75a8 feat(TAto): Implementa a listagem de atos para realizar o pedido de certidão 2025-12-17 10:12:42 -03:00
Keven
4561194b6b del(): Remove os arquivos de certidão 2025-12-16 15:13:06 -03:00
Keven
c8863e573f feat(): Ajustes na tela de detalhes do pedido 2025-12-16 15:07:01 -03:00
Keven
fca1d0c293 refactor(): Ajustes diversos na tela de pedidos 2025-12-15 19:45:29 -03:00
Keven
32937c9501 refactor(TServicoPedido): Refatoração da tela, otimizando e separando as responsabilidades 2025-12-10 18:10:45 -03:00
Keven
790dbe2df3 refactor(Importações): Refatora as importações de componentes, fixa através do prettier e corrigi através do eslint 2025-12-09 18:03:53 -03:00
Keven
4770c42596 1735 2025-12-09 17:35:31 -03:00
Keven
aceb17b235 fix(UseServer): Ajusta as Services para serem executados lado servidor 2025-12-09 17:17:33 -03:00
Keven
21d5d94197 1655 2025-12-09 16:55:30 -03:00
Keven
8f9659ea5b 1641 2025-12-09 16:41:39 -03:00
Keven
e39970587b 1635 2025-12-09 16:35:45 -03:00
Keven
bcbcc8557b 1612 2025-12-09 16:12:53 -03:00
Keven
f6f4892d09 1610 2025-12-09 16:10:41 -03:00
Keven
1e9627e924 1603 2025-12-09 16:03:24 -03:00
Keven
f23decf071 1558 2025-12-09 15:58:15 -03:00
Keven
43d0863342 1552 2025-12-09 15:52:46 -03:00
Keven
e24a35709b 1545 2025-12-09 15:45:32 -03:00
Keven
3eb0bd6f0e 1541 2025-12-09 15:41:51 -03:00
Keven
c6217b0520 15:20 2025-12-09 15:20:16 -03:00
Keven
7a2305c918 15:19 2025-12-09 15:19:43 -03:00
Keven
26f0016813 1514 2025-12-09 15:14:49 -03:00
Keven
0ec57bd6f8 fix(Deploy): Ajustes para deploy 2025-12-09 14:51:30 -03:00
Keven
50814c9b14 Remove as variaveis locais 2025-12-09 14:50:59 -03:00
Keven
2f891ffc38 1418 2025-12-09 14:18:31 -03:00
Keven
52d16a1548 1413 2025-12-09 14:13:38 -03:00
Keven
26df474611 1406 2025-12-09 14:06:21 -03:00
Keven
cdc5e953a5 1310 2025-12-09 13:10:42 -03:00
Keven
f1abddb383 1309 2025-12-09 13:09:10 -03:00
Keven
824ac5da24 1306 2025-12-09 13:06:55 -03:00
Keven
386b8b0307 fix(Dockerfile): Ajusta o dockerfile 2025-12-09 13:04:37 -03:00
Keven
a400bd233e fix(Dockerfile): Ajusta o dockerfile 2025-12-09 13:01:01 -03:00
Keven
60dce3876a fix(Dockerfile): Ajusta o dockerfile 2025-12-09 12:45:20 -03:00
Keven
7745961ff6 fix(Env): Ajusta a requisição para usar variavel de ambiente 2025-12-09 12:25:25 -03:00
Keven
69d34c713e fix(Dockerfile): Ajusta o dockerfile 2025-12-09 12:13:23 -03:00
Keven
91346bfb19 fix(Dockerfile): Ajusta o dockerfile 2025-12-09 11:59:59 -03:00
Keven
d2494f20b7 Ajusta as variaveis de ambiente 2025-12-09 11:44:45 -03:00
Keven
4ef0517cb7 feat(Env): Ajusta para a api usar as varaiveis de ambiente 2025-12-09 11:39:08 -03:00
470 changed files with 5053 additions and 1919 deletions

View file

@ -1,53 +1,59 @@
# ============================== # ============================
# STAGE 1: Build da aplicação # STAGE 1 Build
# ============================== # ============================
FROM node:20-alpine AS builder FROM node:20-alpine AS builder
WORKDIR /app WORKDIR /app
ARG HTTP_PROXY # Copia pacotes e instala dependências
ARG HTTPS_PROXY COPY package*.json ./
ENV NPM_CONFIG_HTTP_PROXY=$HTTP_PROXY RUN npm ci
ENV NPM_CONFIG_HTTPS_PROXY=$HTTPS_PROXY
ENV NPM_CONFIG_TIMEOUT=600000
COPY package.json package-lock.json ./
RUN npm ci --include=dev --legacy-peer-deps
# Copia o restante do código
COPY . . COPY . .
RUN mkdir -p src/config && \ # ---------- Variáveis de build ----------
if [ ! -f src/config/app.json ]; then \ # Estas variáveis são usadas pelo Next.js durante o "build"
echo '{ "APP_NAME": "Orius SaaS", "API_URL": "https://api.oriustecnologia.com" }' > src/config/app.json; \ # para embutir no bundle do frontend.
fi ARG NEXT_PUBLIC_ORIUS_APP_STATE
ARG NEXT_PUBLIC_ORIUS_APP_API_URL
ARG NEXT_PUBLIC_ORIUS_APP_API_PREFIX
ARG NEXT_PUBLIC_ORIUS_APP_API_CONTENT_TYPE
ENV NEXT_PUBLIC_ORIUS_APP_STATE=$NEXT_PUBLIC_ORIUS_APP_STATE
ENV NEXT_PUBLIC_ORIUS_APP_API_URL=$NEXT_PUBLIC_ORIUS_APP_API_URL
ENV NEXT_PUBLIC_ORIUS_APP_API_PREFIX=$NEXT_PUBLIC_ORIUS_APP_API_PREFIX
ENV NEXT_PUBLIC_ORIUS_APP_API_CONTENT_TYPE=$NEXT_PUBLIC_ORIUS_APP_API_CONTENT_TYPE
# ---------- Build ----------
ENV NODE_ENV=production ENV NODE_ENV=production
RUN npm run build
RUN npm run build -- --no-lint # ============================
# STAGE 2 Runner (standalone)
# ============================== # ============================
# STAGE 2: Imagem final (produção)
# ==============================
FROM node:20-alpine AS runner FROM node:20-alpine AS runner
WORKDIR /app WORKDIR /app
# Copia todo o conteúdo standalone, incluindo o server.js # ---------- Variáveis em runtime ----------
COPY --from=builder --chown=nodejs:nodejs /app/.next/standalone ./
# Copia apenas os assets necessários
COPY --from=builder --chown=nodejs:nodejs /app/.next/static ./.next/static
COPY --from=builder --chown=nodejs:nodejs /app/public ./public
COPY --from=builder --chown=nodejs:nodejs /app/src/config ./src/config
RUN addgroup -g 1001 nodejs && adduser -u 1001 -G nodejs -s /bin/sh -D nodejs
USER nodejs
ENV NODE_ENV=production ENV NODE_ENV=production
ENV PORT=3000 ENV NEXT_TELEMETRY_DISABLED=1
ENV HOSTNAME=0.0.0.0
# Copia apenas o necessário do build
COPY --from=builder /app/.next/standalone ./
COPY --from=builder /app/.next/static ./.next/static
COPY --from=builder /app/public ./public
COPY --from=builder /app/package*.json ./
# ---------- Corrige permissões ----------
RUN addgroup -S nodejs && adduser -S nextjs -G nodejs \
&& mkdir -p .next/cache/images \
&& chown -R nextjs:nodejs /app
USER nextjs
EXPOSE 3000 EXPOSE 3000
# ✅ Corrigido: executa o server.js que está dentro do standalone # ---------- Executa o servidor ----------
CMD ["node", "server.js"] CMD ["node", "server.js"]

View file

@ -1,41 +0,0 @@
# Etapa 1: Construir a aplicação
FROM node:20-alpine AS builder
# Define o diretório de trabalho
WORKDIR /app
# Copia os arquivos de configuração do pacote
COPY package.json package-lock.json ./
# Instala as dependências do projeto
RUN npm install
# Copia todo o código da aplicação para o container
COPY . .
# Constrói a aplicação com o output 'standalone'
RUN npm run build
# Etapa 2: Executar a aplicação
# Usa uma imagem Node.js leve
FROM node:20-alpine AS runner
# Define o diretório de trabalho
WORKDIR /app
# Copia o diretório 'standalone' da etapa de build, que já contém o servidor e as dependências
# O diretório 'standalone' é a pasta .next/standalone gerada pela configuração 'output: standalone'
COPY --from=builder /app/.next/standalone ./
# Copia os arquivos públicos
COPY --from=builder /app/public ./public
# Copia os arquivos estáticos gerados pelo build. É aqui que os arquivos CSS e JS ficam.
COPY --from=builder /app/.next/static ./.next/static
# Expõe a porta padrão do Next.js
EXPOSE 3000
# Define o comando para iniciar a aplicação
# O 'start' do package.json não é necessário, o próprio servidor standalone já está no container
CMD ["node", "server.js"]

View file

@ -1 +1,58 @@
# saas_app # saas_app
Criar envlocal para usar variaveis de ambiente no em desenvolvimento
NEXT_PUBLIC_ORIUS_APP_STATE=GO
NEXT_PUBLIC_ORIUS_APP_API_URL=<http://localhost:8000/>
NEXT_PUBLIC_ORIUS_APP_API_PREFIX=api/v1/
NEXT_PUBLIC_ORIUS_APP_API_CONTENT_TYPE=application/json
## Modo Debug
Abra Run → Add Configuration… → Attach to Node.js
Configure:
{
"name": "Attach Next.js (9230)",
"type": "node",
"request": "attach",
"port": 9230,
"restart": true,
"smartStep": true,
"skipFiles": ["<node_internals>/**"]
}
npm run dev:debug
## onlyoffice
docker run -i -t -d -p 8081:80 --restart=always -e JWT_ENABLED=false onlyoffice/documentserver
## next em rede
```
npx next dev -H 0.0.0.0
```
```
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"dev:lan": "next dev -H 0.0.0.0" <-- Adicione esta linha
},
```
Como acessar no outro dispositivo
Descubra seu IP Local:
No Windows (seu caso), abra um terminal (CMD ou PowerShell) e digite:
Bash
ipconfig
Procure por Endereço IPv4 (geralmente começa com 192.168.x.x ou 10.0.x.x).
Acesse no navegador: No celular ou outro computador, digite: http://SEU_IP_AQUI:3000
Exemplo: <http://192.168.0.15:3000>

View file

@ -1,16 +1,17 @@
/** @type {import('next').NextConfig} */ /** @type {import('next').NextConfig} */
const nextConfig = { const nextConfig = {
// Gera build autônomo para rodar com "node server.js"
output: 'standalone', output: 'standalone',
// Configurações gerais
reactStrictMode: true, reactStrictMode: true,
poweredByHeader: false, poweredByHeader: false,
compress: true, compress: true,
// Desativa ESLint e TypeScript durante o build de produção // Desativa verificações no build de produção
eslint: { ignoreDuringBuilds: true }, eslint: { ignoreDuringBuilds: true },
typescript: { ignoreBuildErrors: true }, typescript: { ignoreBuildErrors: true },
// Força runtime Node.js (para evitar Edge Runtime)
experimental: { runtime: 'nodejs' },
}; };
module.exports = nextConfig; module.exports = nextConfig;

478
package-lock.json generated
View file

@ -7,9 +7,11 @@
"": { "": {
"name": "saas", "name": "saas",
"version": "25.9.1", "version": "25.9.1",
"hasInstallScript": true,
"dependencies": { "dependencies": {
"@faker-js/faker": "^10.0.0", "@faker-js/faker": "^10.0.0",
"@hookform/resolvers": "^5.2.1", "@hookform/resolvers": "^5.2.1",
"@onlyoffice/document-editor-react": "^2.1.1",
"@radix-ui/react-alert-dialog": "^1.1.15", "@radix-ui/react-alert-dialog": "^1.1.15",
"@radix-ui/react-avatar": "^1.1.10", "@radix-ui/react-avatar": "^1.1.10",
"@radix-ui/react-checkbox": "^1.3.3", "@radix-ui/react-checkbox": "^1.3.3",
@ -63,6 +65,7 @@
"@types/react-dom": "^19", "@types/react-dom": "^19",
"@typescript-eslint/eslint-plugin": "^8.46.1", "@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/parser": "^8.46.1", "@typescript-eslint/parser": "^8.46.1",
"cross-env": "^10.1.0",
"eslint": "^9.38.0", "eslint": "^9.38.0",
"eslint-config-prettier": "^10.1.8", "eslint-config-prettier": "^10.1.8",
"eslint-import-resolver-typescript": "^4.4.4", "eslint-import-resolver-typescript": "^4.4.4",
@ -74,6 +77,7 @@
"eslint-plugin-unused-imports": "^4.2.0", "eslint-plugin-unused-imports": "^4.2.0",
"prettier": "^3.6.2", "prettier": "^3.6.2",
"prettier-plugin-tailwindcss": "^0.6.14", "prettier-plugin-tailwindcss": "^0.6.14",
"shx": "^0.4.0",
"tailwindcss": "^4", "tailwindcss": "^4",
"tw-animate-css": "^1.3.7", "tw-animate-css": "^1.3.7",
"typescript": "5.9.3", "typescript": "5.9.3",
@ -400,6 +404,13 @@
"tslib": "^2.4.0" "tslib": "^2.4.0"
} }
}, },
"node_modules/@epic-web/invariant": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@epic-web/invariant/-/invariant-1.0.0.tgz",
"integrity": "sha512-lrTPqgvfFQtR/eY/qkIzp98OGdNJu0m5ji3q/nJI8v3SXkRKEnWiOxMmbvcSoAIzv/cGiuvRy57k4suKQSAdwA==",
"dev": true,
"license": "MIT"
},
"node_modules/@eslint-community/eslint-utils": { "node_modules/@eslint-community/eslint-utils": {
"version": "4.9.0", "version": "4.9.0",
"resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz",
@ -1383,6 +1394,19 @@
"node": ">= 8" "node": ">= 8"
} }
}, },
"node_modules/@onlyoffice/document-editor-react": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/@onlyoffice/document-editor-react/-/document-editor-react-2.1.1.tgz",
"integrity": "sha512-b0SnFPmT+OEyJons18PPHpwtFABVCI4nr3gPtAAImar1PhN9tNc9703Yo5KPYsHhIgVq+FqHSWgunI9GJnKa5w==",
"license": "Apache-2.0",
"dependencies": {
"lodash": "4.17.21"
},
"peerDependencies": {
"react": "^16.9.0 || ^17 || ^18 || ^19",
"react-dom": "^16.9.0 || ^17 || ^18 || ^19"
}
},
"node_modules/@pkgr/core": { "node_modules/@pkgr/core": {
"version": "0.2.9", "version": "0.2.9",
"resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.9.tgz", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.9.tgz",
@ -4254,6 +4278,24 @@
"react": ">= 16.8.0" "react": ">= 16.8.0"
} }
}, },
"node_modules/cross-env": {
"version": "10.1.0",
"resolved": "https://registry.npmjs.org/cross-env/-/cross-env-10.1.0.tgz",
"integrity": "sha512-GsYosgnACZTADcmEyJctkJIoqAhHjttw7RsFrVoJNXbsWWqaq6Ym+7kZjq6mS45O0jij6vtiReppKQEtqWy6Dw==",
"dev": true,
"license": "MIT",
"dependencies": {
"@epic-web/invariant": "^1.0.0",
"cross-spawn": "^7.0.6"
},
"bin": {
"cross-env": "dist/bin/cross-env.js",
"cross-env-shell": "dist/bin/cross-env-shell.js"
},
"engines": {
"node": ">=20"
}
},
"node_modules/cross-spawn": { "node_modules/cross-spawn": {
"version": "7.0.6", "version": "7.0.6",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
@ -4273,6 +4315,7 @@
"version": "3.1.3", "version": "3.1.3",
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
"integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
"devOptional": true,
"license": "MIT" "license": "MIT"
}, },
"node_modules/d3-array": { "node_modules/d3-array": {
@ -4396,127 +4439,6 @@
"node": ">=12" "node": ">=12"
} }
}, },
"node_modules/d3-array": {
"version": "3.2.4",
"resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz",
"integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==",
"license": "ISC",
"dependencies": {
"internmap": "1 - 2"
},
"engines": {
"node": ">=12"
}
},
"node_modules/d3-color": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz",
"integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==",
"license": "ISC",
"engines": {
"node": ">=12"
}
},
"node_modules/d3-ease": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz",
"integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==",
"license": "BSD-3-Clause",
"engines": {
"node": ">=12"
}
},
"node_modules/d3-format": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz",
"integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==",
"license": "ISC",
"engines": {
"node": ">=12"
}
},
"node_modules/d3-interpolate": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz",
"integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==",
"license": "ISC",
"dependencies": {
"d3-color": "1 - 3"
},
"engines": {
"node": ">=12"
}
},
"node_modules/d3-path": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz",
"integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==",
"license": "ISC",
"engines": {
"node": ">=12"
}
},
"node_modules/d3-scale": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz",
"integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==",
"license": "ISC",
"dependencies": {
"d3-array": "2.10.0 - 3",
"d3-format": "1 - 3",
"d3-interpolate": "1.2.0 - 3",
"d3-time": "2.1.1 - 3",
"d3-time-format": "2 - 4"
},
"engines": {
"node": ">=12"
}
},
"node_modules/d3-shape": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz",
"integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==",
"license": "ISC",
"dependencies": {
"d3-path": "^3.1.0"
},
"engines": {
"node": ">=12"
}
},
"node_modules/d3-time": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz",
"integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==",
"license": "ISC",
"dependencies": {
"d3-array": "2 - 3"
},
"engines": {
"node": ">=12"
}
},
"node_modules/d3-time-format": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz",
"integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==",
"license": "ISC",
"dependencies": {
"d3-time": "1 - 3"
},
"engines": {
"node": ">=12"
}
},
"node_modules/d3-timer": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz",
"integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==",
"license": "ISC",
"engines": {
"node": ">=12"
}
},
"node_modules/damerau-levenshtein": { "node_modules/damerau-levenshtein": {
"version": "1.0.8", "version": "1.0.8",
"resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz",
@ -4612,12 +4534,6 @@
"integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==", "integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/decimal.js-light": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz",
"integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==",
"license": "MIT"
},
"node_modules/deep-is": { "node_modules/deep-is": {
"version": "0.1.4", "version": "0.1.4",
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
@ -4690,16 +4606,6 @@
"node": ">=0.10.0" "node": ">=0.10.0"
} }
}, },
"node_modules/dom-helpers": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz",
"integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.8.7",
"csstype": "^3.0.2"
}
},
"node_modules/dunder-proto": { "node_modules/dunder-proto": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
@ -4738,6 +4644,16 @@
"dev": true, "dev": true,
"license": "MIT" "license": "MIT"
}, },
"node_modules/end-of-stream": {
"version": "1.4.5",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz",
"integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==",
"dev": true,
"license": "MIT",
"dependencies": {
"once": "^1.4.0"
}
},
"node_modules/enhanced-resolve": { "node_modules/enhanced-resolve": {
"version": "5.18.3", "version": "5.18.3",
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz",
@ -5595,6 +5511,98 @@
"integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/execa": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
"integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
"dev": true,
"license": "MIT",
"dependencies": {
"cross-spawn": "^6.0.0",
"get-stream": "^4.0.0",
"is-stream": "^1.1.0",
"npm-run-path": "^2.0.0",
"p-finally": "^1.0.0",
"signal-exit": "^3.0.0",
"strip-eof": "^1.0.0"
},
"engines": {
"node": ">=6"
}
},
"node_modules/execa/node_modules/cross-spawn": {
"version": "6.0.6",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz",
"integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==",
"dev": true,
"license": "MIT",
"dependencies": {
"nice-try": "^1.0.4",
"path-key": "^2.0.1",
"semver": "^5.5.0",
"shebang-command": "^1.2.0",
"which": "^1.2.9"
},
"engines": {
"node": ">=4.8"
}
},
"node_modules/execa/node_modules/path-key": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
"integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=4"
}
},
"node_modules/execa/node_modules/semver": {
"version": "5.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
"dev": true,
"license": "ISC",
"bin": {
"semver": "bin/semver"
}
},
"node_modules/execa/node_modules/shebang-command": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
"integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==",
"dev": true,
"license": "MIT",
"dependencies": {
"shebang-regex": "^1.0.0"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/execa/node_modules/shebang-regex": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
"integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/execa/node_modules/which": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
"integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
"dev": true,
"license": "ISC",
"dependencies": {
"isexe": "^2.0.0"
},
"bin": {
"which": "bin/which"
}
},
"node_modules/faker-js": { "node_modules/faker-js": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/faker-js/-/faker-js-1.0.0.tgz", "resolved": "https://registry.npmjs.org/faker-js/-/faker-js-1.0.0.tgz",
@ -5615,15 +5623,6 @@
"dev": true, "dev": true,
"license": "Apache-2.0" "license": "Apache-2.0"
}, },
"node_modules/fast-equals": {
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.3.2.tgz",
"integrity": "sha512-6rxyATwPCkaFIL3JLqw8qXqMpIZ942pTX/tbQFkRsDGblS8tNGtlUauA/+mt6RUfqn/4MoEr+WDkYoIQbibWuQ==",
"license": "MIT",
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/fast-glob": { "node_modules/fast-glob": {
"version": "3.3.3", "version": "3.3.3",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz",
@ -5894,6 +5893,19 @@
"node": ">= 0.4" "node": ">= 0.4"
} }
}, },
"node_modules/get-stream": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
"integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
"dev": true,
"license": "MIT",
"dependencies": {
"pump": "^3.0.0"
},
"engines": {
"node": ">=6"
}
},
"node_modules/get-symbol-description": { "node_modules/get-symbol-description": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz",
@ -6187,13 +6199,14 @@
"node": ">=12" "node": ">=12"
} }
}, },
"node_modules/internmap": { "node_modules/interpret": {
"version": "2.0.3", "version": "1.4.0",
"resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz",
"integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==",
"license": "ISC", "dev": true,
"license": "MIT",
"engines": { "engines": {
"node": ">=12" "node": ">= 0.10"
} }
}, },
"node_modules/is-array-buffer": { "node_modules/is-array-buffer": {
@ -6501,6 +6514,16 @@
"url": "https://github.com/sponsors/ljharb" "url": "https://github.com/sponsors/ljharb"
} }
}, },
"node_modules/is-stream": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
"integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-string": { "node_modules/is-string": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz",
@ -7421,6 +7444,13 @@
"node": "^10 || ^12 || >=14" "node": "^10 || ^12 || >=14"
} }
}, },
"node_modules/nice-try": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
"integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
"dev": true,
"license": "MIT"
},
"node_modules/node-releases": { "node_modules/node-releases": {
"version": "2.0.25", "version": "2.0.25",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.25.tgz", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.25.tgz",
@ -7428,6 +7458,29 @@
"dev": true, "dev": true,
"license": "MIT" "license": "MIT"
}, },
"node_modules/npm-run-path": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
"integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==",
"dev": true,
"license": "MIT",
"dependencies": {
"path-key": "^2.0.0"
},
"engines": {
"node": ">=4"
}
},
"node_modules/npm-run-path/node_modules/path-key": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
"integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=4"
}
},
"node_modules/object-assign": { "node_modules/object-assign": {
"version": "4.1.1", "version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
@ -7550,6 +7603,16 @@
"url": "https://github.com/sponsors/ljharb" "url": "https://github.com/sponsors/ljharb"
} }
}, },
"node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
"dev": true,
"license": "ISC",
"dependencies": {
"wrappy": "1"
}
},
"node_modules/optionator": { "node_modules/optionator": {
"version": "0.9.4", "version": "0.9.4",
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz",
@ -7586,6 +7649,16 @@
"url": "https://github.com/sponsors/ljharb" "url": "https://github.com/sponsors/ljharb"
} }
}, },
"node_modules/p-finally": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
"integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=4"
}
},
"node_modules/p-limit": { "node_modules/p-limit": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
@ -7854,6 +7927,17 @@
"react-is": "^16.13.1" "react-is": "^16.13.1"
} }
}, },
"node_modules/pump": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz",
"integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==",
"dev": true,
"license": "MIT",
"dependencies": {
"end-of-stream": "^1.1.0",
"once": "^1.3.1"
}
},
"node_modules/punycode": { "node_modules/punycode": {
"version": "2.3.1", "version": "2.3.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
@ -8009,21 +8093,6 @@
} }
} }
}, },
"node_modules/react-smooth": {
"version": "4.0.4",
"resolved": "https://registry.npmjs.org/react-smooth/-/react-smooth-4.0.4.tgz",
"integrity": "sha512-gnGKTpYwqL0Iii09gHobNolvX4Kiq4PKx6eWBCYYix+8cdw+cGo3do906l1NBPKkSWx1DghC1dlWG9L2uGd61Q==",
"license": "MIT",
"dependencies": {
"fast-equals": "^5.0.1",
"prop-types": "^15.8.1",
"react-transition-group": "^4.4.5"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
}
},
"node_modules/react-style-singleton": { "node_modules/react-style-singleton": {
"version": "2.2.3", "version": "2.2.3",
"resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz",
@ -8073,6 +8142,18 @@
"react-is": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" "react-is": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
} }
}, },
"node_modules/rechoir": {
"version": "0.6.2",
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
"integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==",
"dev": true,
"dependencies": {
"resolve": "^1.1.6"
},
"engines": {
"node": ">= 0.10"
}
},
"node_modules/redux": { "node_modules/redux": {
"version": "5.0.1", "version": "5.0.1",
"resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz", "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz",
@ -8423,6 +8504,42 @@
"node": ">=8" "node": ">=8"
} }
}, },
"node_modules/shelljs": {
"version": "0.9.2",
"resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.9.2.tgz",
"integrity": "sha512-S3I64fEiKgTZzKCC46zT/Ib9meqofLrQVbpSswtjFfAVDW+AZ54WTnAM/3/yENoxz/V1Cy6u3kiiEbQ4DNphvw==",
"dev": true,
"license": "BSD-3-Clause",
"dependencies": {
"execa": "^1.0.0",
"fast-glob": "^3.3.2",
"interpret": "^1.0.0",
"rechoir": "^0.6.2"
},
"bin": {
"shjs": "bin/shjs"
},
"engines": {
"node": ">=18"
}
},
"node_modules/shx": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/shx/-/shx-0.4.0.tgz",
"integrity": "sha512-Z0KixSIlGPpijKgcH6oCMCbltPImvaKy0sGH8AkLRXw1KyzpKtaCTizP2xen+hNDqVF4xxgvA0KXSb9o4Q6hnA==",
"dev": true,
"license": "MIT",
"dependencies": {
"minimist": "^1.2.8",
"shelljs": "^0.9.2"
},
"bin": {
"shx": "lib/cli.js"
},
"engines": {
"node": ">=18"
}
},
"node_modules/side-channel": { "node_modules/side-channel": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
@ -8499,6 +8616,13 @@
"url": "https://github.com/sponsors/ljharb" "url": "https://github.com/sponsors/ljharb"
} }
}, },
"node_modules/signal-exit": {
"version": "3.0.7",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
"integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
"dev": true,
"license": "ISC"
},
"node_modules/sonner": { "node_modules/sonner": {
"version": "2.0.7", "version": "2.0.7",
"resolved": "https://registry.npmjs.org/sonner/-/sonner-2.0.7.tgz", "resolved": "https://registry.npmjs.org/sonner/-/sonner-2.0.7.tgz",
@ -8665,6 +8789,16 @@
"node": ">=4" "node": ">=4"
} }
}, },
"node_modules/strip-eof": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
"integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/strip-json-comments": { "node_modules/strip-json-comments": {
"version": "3.1.1", "version": "3.1.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
@ -9000,9 +9134,6 @@
} }
}, },
"node_modules/typescript": { "node_modules/typescript": {
"version": "5.9.3",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
"version": "5.9.3", "version": "5.9.3",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
"integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
@ -9333,6 +9464,13 @@
"node": ">=0.10.0" "node": ">=0.10.0"
} }
}, },
"node_modules/wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"dev": true,
"license": "ISC"
},
"node_modules/yallist": { "node_modules/yallist": {
"version": "5.0.0", "version": "5.0.0",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz",

View file

@ -4,14 +4,17 @@
"version": "25.9.1", "version": "25.9.1",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "next dev --turbopack", "dev": "next dev",
"dev:debug": "cross-env NEXT_USE_TURBOPACK=0 NODE_OPTIONS=\"--inspect=9230\" next dev",
"build": "next build", "build": "next build",
"start": "next start", "start": "next start",
"lint": "next lint" "lint": "next lint",
"postinstall": "shx mkdir -p public/libs && shx cp -r node_modules/tinymce public/libs/tinymce"
}, },
"dependencies": { "dependencies": {
"@faker-js/faker": "^10.0.0", "@faker-js/faker": "^10.0.0",
"@hookform/resolvers": "^5.2.1", "@hookform/resolvers": "^5.2.1",
"@onlyoffice/document-editor-react": "^2.1.1",
"@radix-ui/react-alert-dialog": "^1.1.15", "@radix-ui/react-alert-dialog": "^1.1.15",
"@radix-ui/react-avatar": "^1.1.10", "@radix-ui/react-avatar": "^1.1.10",
"@radix-ui/react-checkbox": "^1.3.3", "@radix-ui/react-checkbox": "^1.3.3",
@ -65,6 +68,7 @@
"@types/react-dom": "^19", "@types/react-dom": "^19",
"@typescript-eslint/eslint-plugin": "^8.46.1", "@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/parser": "^8.46.1", "@typescript-eslint/parser": "^8.46.1",
"cross-env": "^10.1.0",
"eslint": "^9.38.0", "eslint": "^9.38.0",
"eslint-config-prettier": "^10.1.8", "eslint-config-prettier": "^10.1.8",
"eslint-import-resolver-typescript": "^4.4.4", "eslint-import-resolver-typescript": "^4.4.4",
@ -76,6 +80,7 @@
"eslint-plugin-unused-imports": "^4.2.0", "eslint-plugin-unused-imports": "^4.2.0",
"prettier": "^3.6.2", "prettier": "^3.6.2",
"prettier-plugin-tailwindcss": "^0.6.14", "prettier-plugin-tailwindcss": "^0.6.14",
"shx": "^0.4.0",
"tailwindcss": "^4", "tailwindcss": "^4",
"tw-animate-css": "^1.3.7", "tw-animate-css": "^1.3.7",
"typescript": "5.9.3", "typescript": "5.9.3",

BIN
public/modelo.docx Normal file

Binary file not shown.

View file

@ -0,0 +1,5 @@
import TAtoForm from '@/packages/servicos/components/TAto/TAtoForm';
export default function TAtoFormPage() {
return <TAtoForm />;
}

View file

@ -0,0 +1,5 @@
import TAtoIndex from '@/packages/servicos/components/TAto/TAtoIndex';
export default function TServicoAToPag() {
return <TAtoIndex />;
}

View file

@ -54,8 +54,12 @@ const data = {
url: '/servicos/dashboard/', url: '/servicos/dashboard/',
}, },
{ {
title: 'Balcão', title: 'Pedidos',
url: '/servicos/balcao/', url: '/servicos/pedidos/',
},
{
title: 'Atos',
url: '/servicos/atos/',
}, },
], ],
}, },

View file

@ -10,6 +10,13 @@ const ROOT_PATH = '/login'; // url raiz
export function middleware(request: NextRequest) { export function middleware(request: NextRequest) {
const path = request.nextUrl.pathname; const path = request.nextUrl.pathname;
// --- AJUSTE NECESSÁRIO PARA ONLYOFFICE ---
// Se a rota termina em .docx, libera o acesso imediatamente (sem checar token)
if (path.endsWith('.docx')) {
return NextResponse.next();
}
// -----------------------------------------
const publicRoute = publicRoutes.find((route) => route.path === path); const publicRoute = publicRoutes.find((route) => route.path === path);
const authToken = request.cookies.get('access_token'); const authToken = request.cookies.get('access_token');
@ -25,6 +32,8 @@ export function middleware(request: NextRequest) {
// 3. Autenticado em rota pública com flag "redirect" → vai para raiz // 3. Autenticado em rota pública com flag "redirect" → vai para raiz
if (authToken && publicRoute && publicRoute.whenAuthenticated === 'redirect') { if (authToken && publicRoute && publicRoute.whenAuthenticated === 'redirect') {
// OBS: Se ROOT_PATH for '/login', isso pode gerar um loop infinito para usuários logados.
// O ideal seria redirecionar para '/' (dashboard), mas mantive seu código original.
return NextResponse.redirect(new URL(ROOT_PATH, request.url)); return NextResponse.redirect(new URL(ROOT_PATH, request.url));
} }
@ -52,7 +61,7 @@ export function middleware(request: NextRequest) {
export const config: MiddlewareConfig = { export const config: MiddlewareConfig = {
matcher: [ matcher: [
// ignora APIs, arquivos estáticos e metadados // ignora APIs, arquivos estáticos, metadados E ARQUIVOS .DOCX
'/((?!api|_next/static|_next/image|favicon.ico|sitemap.xml|robots.txt|images).*)', '/((?!api|_next/static|_next/image|favicon.ico|sitemap.xml|robots.txt|images|.*\\.docx$).*)',
], ],
}; };

View file

@ -13,7 +13,7 @@ import {
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import GCartorioInterface from '../../interfaces/GCartorio/GCartorioInterface'; import GCartorioInterface from '@/packages/administrativo/interfaces/GCartorio/GCartorioInterface';
export default function GCartorioColumns( export default function GCartorioColumns(
onEdit: (item: GCartorioInterface, isEditingFormStatus: boolean) => void, onEdit: (item: GCartorioInterface, isEditingFormStatus: boolean) => void,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -24,8 +24,8 @@ import { Input } from '@/components/ui/input';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { useGCartorioFormHook } from '../../hooks/GCartorio/useGCartorioFormHook'; import { useGCartorioFormHook } from '@/packages/administrativo/hooks/GCartorio/useGCartorioFormHook';
import { GCartorioFormInterface } from '../../interfaces/GCartorio/GCartorioFormInterface'; import { GCartorioFormInterface } from '@/packages/administrativo/interfaces/GCartorio/GCartorioFormInterface';
/** /**
* Formulário de cadastro/edição de Natureza * Formulário de cadastro/edição de Natureza

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import GCartorioTableInterface from '@/packages/administrativo/interfaces/GCartorio/GCartorioTableInterface';
import GCartorioColumns from './GCartorioColumns'; import GCartorioColumns from './GCartorioColumns';
import GCartorioTableInterface from '../../interfaces/GCartorio/GCartorioTableInterface';
/** /**
* Componente principal da tabela de Naturezas * Componente principal da tabela de Naturezas

View file

@ -33,7 +33,7 @@ import {
} from '@/components/ui/select'; } from '@/components/ui/select';
import { useGUfReadHook } from '@/packages/administrativo/hooks/GUF/useGUfReadHook'; import { useGUfReadHook } from '@/packages/administrativo/hooks/GUF/useGUfReadHook';
import { GCidadeSchema } from '../../schemas/GCidade/GCidadeSchema'; import { GCidadeSchema } from '@/packages/administrativo/schemas/GCidade/GCidadeSchema';
// Hook responsável em trazer todos os estados brasileiros // Hook responsável em trazer todos os estados brasileiros

View file

@ -20,7 +20,7 @@ import {
TableRow, TableRow,
} from '@/components/ui/table'; } from '@/components/ui/table';
import GCidadeInterface from '../../interfaces/GCidade/GCidadeInterface'; import GCidadeInterface from '@/packages/administrativo/interfaces/GCidade/GCidadeInterface';
// Tipagem das props do componente da tabela // Tipagem das props do componente da tabela
interface GCidadeTableProps { interface GCidadeTableProps {

View file

@ -14,7 +14,7 @@ import {
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import GEmolumentoInterface from '../../interfaces/GEmolumento/GEmolumentoInterface'; import GEmolumentoInterface from '@/packages/administrativo/interfaces/GEmolumento/GEmolumentoInterface';
export default function GEmolumentoColumns( export default function GEmolumentoColumns(
onEdit: (item: GEmolumentoInterface, isEditingFormStatus: boolean) => void, onEdit: (item: GEmolumentoInterface, isEditingFormStatus: boolean) => void,

View file

@ -30,8 +30,8 @@ import SistemasSelect from '@/shared/components/sistemas/SistemasSelect';
import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect'; import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect';
import TipoEmolumentoSelect from '@/shared/components/tipoEmolumento/TipoAtoAnteriorSelect'; import TipoEmolumentoSelect from '@/shared/components/tipoEmolumento/TipoAtoAnteriorSelect';
import { useGEmolumentoFormHook } from '../../hooks/GEmolumento/useGEmolumentoFormHook'; import { useGEmolumentoFormHook } from '@/packages/administrativo/hooks/GEmolumento/useGEmolumentoFormHook';
import { GEmolumentoFormInterface } from '../../interfaces/GEmolumento/GEmolumentoFormInterface'; import { GEmolumentoFormInterface } from '@/packages/administrativo/interfaces/GEmolumento/GEmolumentoFormInterface';
import GSeloGrupoSelect from '../GSeloGrupo/GSeloGrupoSelect'; import GSeloGrupoSelect from '../GSeloGrupo/GSeloGrupoSelect';
/** /**

View file

@ -2,9 +2,9 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import GEmolumentoColumns from './GEmolumentoColumns'; import GEmolumentoTableInterface from '@/packages/administrativo/interfaces/GEmolumento/GEmolumentoTableInterface';
import GEmolumentoTableInterface from '../../interfaces/GEmolumento/GEmolumentoTableInterface';
import GEmolumentoPeriodoSelect from '../GEmolumentoPeriodo/GEmolumentoPeriodoSelect'; import GEmolumentoPeriodoSelect from '../GEmolumentoPeriodo/GEmolumentoPeriodoSelect';
import GEmolumentoColumns from './GEmolumentoColumns';
/** /**
* Componente principal da tabela de Naturezas * Componente principal da tabela de Naturezas

View file

@ -13,7 +13,7 @@ import {
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import GEmolumentoItemInterface from '../../interfaces/GEmolumentoItem/GEmolumentoItemInterface'; import GEmolumentoItemInterface from '@/packages/administrativo/interfaces/GEmolumentoItem/GEmolumentoItemInterface';
export default function GEmolumentoItemColumns( export default function GEmolumentoItemColumns(
onEdit: (item: GEmolumentoItemInterface, isEditingFormStatus: boolean) => void, onEdit: (item: GEmolumentoItemInterface, isEditingFormStatus: boolean) => void,

View file

@ -27,8 +27,8 @@ import { parseNumberInput } from '@/shared/actions/form/parseNumberInput';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { useGEmolumentoItemFormHook } from '../../hooks/GEmolumentoItem/useGEmolumentoItemFormHook'; import { useGEmolumentoItemFormHook } from '@/packages/administrativo/hooks/GEmolumentoItem/useGEmolumentoItemFormHook';
import { GEmolumentoItemFormInterface } from '../../interfaces/GEmolumentoItem/GEmolumentoItemFormInterface'; import { GEmolumentoItemFormInterface } from '@/packages/administrativo/interfaces/GEmolumentoItem/GEmolumentoItemFormInterface';
export default function GEmolumentoItemForm({ export default function GEmolumentoItemForm({
isOpen, isOpen,

View file

@ -14,7 +14,7 @@ import { FormatDateTime } from '@/shared/actions/dateTime/FormatDateTime';
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import GEmolumentoPeriodoInterface from '../../interfaces/GEmolumentoPeriodo/GEmolumentoPeriodoInterface'; import GEmolumentoPeriodoInterface from '@/packages/administrativo/interfaces/GEmolumentoPeriodo/GEmolumentoPeriodoInterface';
export default function GEmolumentoPeriodoColumns( export default function GEmolumentoPeriodoColumns(
onEdit: (item: GEmolumentoPeriodoInterface, isEditingFormStatus: boolean) => void, onEdit: (item: GEmolumentoPeriodoInterface, isEditingFormStatus: boolean) => void,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -24,8 +24,8 @@ import { Input } from '@/components/ui/input';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { useGEmolumentoPeriodoFormHook } from '../../hooks/GEmolumentoPeriodo/useGEmolumentoPeriodoFormHook'; import { useGEmolumentoPeriodoFormHook } from '@/packages/administrativo/hooks/GEmolumentoPeriodo/useGEmolumentoPeriodoFormHook';
import { GEmolumentoPeriodoFormInterface } from '../../interfaces/GEmolumentoPeriodo/GEmolumentoPeriodoFormInterface'; import { GEmolumentoPeriodoFormInterface } from '@/packages/administrativo/interfaces/GEmolumentoPeriodo/GEmolumentoPeriodoFormInterface';
/** /**
* Formulário de cadastro/edição de Natureza * Formulário de cadastro/edição de Natureza

View file

@ -16,8 +16,8 @@ import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover
import { cn } from '@/lib/utils'; import { cn } from '@/lib/utils';
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { useGEmolumentoPeriodoIndexHook } from '../../hooks/GEmolumentoPeriodo/useGEmolumentoPeriodoIndexHook'; import { useGEmolumentoPeriodoIndexHook } from '@/packages/administrativo/hooks/GEmolumentoPeriodo/useGEmolumentoPeriodoIndexHook';
import GEmolumentoPeriodoSelectInterface from '../../interfaces/GEmolumentoPeriodo/GEmolumentoPeriodoSelectInterface'; import GEmolumentoPeriodoSelectInterface from '@/packages/administrativo/interfaces/GEmolumentoPeriodo/GEmolumentoPeriodoSelectInterface';
export default function GEmolumentoPeriodoSelect({ export default function GEmolumentoPeriodoSelect({
onSelectedEmolumentoPeriodo, onSelectedEmolumentoPeriodo,

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import GEmolumentoPeriodoTableInterface from '@/packages/administrativo/interfaces/GEmolumentoPeriodo/GEmolumentoPeriodoTableInterface';
import GEmolumentoPeriodoColumns from './GEmolumentoPeriodoColumns'; import GEmolumentoPeriodoColumns from './GEmolumentoPeriodoColumns';
import GEmolumentoPeriodoTableInterface from '../../interfaces/GEmolumentoPeriodo/GEmolumentoPeriodoTableInterface';
/** /**
* Componente principal da tabela de Naturezas * Componente principal da tabela de Naturezas

View file

@ -13,7 +13,7 @@ import {
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import GGramaticaInterface from '../../interfaces/GGramatica/GGramaticaInterface'; import GGramaticaInterface from '@/packages/administrativo/interfaces/GGramatica/GGramaticaInterface';
export default function GGramaticaColumns( export default function GGramaticaColumns(
onEdit: (item: GGramaticaInterface, isEditingFormStatus: boolean) => void, onEdit: (item: GGramaticaInterface, isEditingFormStatus: boolean) => void,

View file

@ -21,11 +21,11 @@ import {
FormMessage, FormMessage,
} from '@/components/ui/form'; } from '@/components/ui/form';
import { Input } from '@/components/ui/input'; import { Input } from '@/components/ui/input';
import { useGGramaticaFormHook } from '@/packages/administrativo/hooks/GGramatica/useGGramaticaFormHook';
import { GGramaticaFormInterface } from '@/packages/administrativo/interfaces/GGramatica/GGramaticaFormInterface';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { useGGramaticaFormHook } from '../../hooks/GGramatica/useGGramaticaFormHook';
import { GGramaticaFormInterface } from '../../interfaces/GGramatica/GGramaticaFormInterface';
/** /**
* Formulário de cadastro/edição de Natureza * Formulário de cadastro/edição de Natureza

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import GGramaticaTableInterface from '@/packages/administrativo/interfaces/GGramatica/GGramaticaTableInterface';
import GGramaticaColumns from './GGramaticaColumns'; import GGramaticaColumns from './GGramaticaColumns';
import GGramaticaTableInterface from '../../interfaces/GGramatica/GGramaticaTableInterface';
/** /**
* Componente principal da tabela de Naturezas * Componente principal da tabela de Naturezas

View file

@ -26,8 +26,7 @@ import {
import { Input } from '@/components/ui/input'; import { Input } from '@/components/ui/input';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { GMedidaTipoInterface } from '../../interfaces/GMedidaTipo/GMedidaTipoInterface'; import { GMedidaTipoSchema } from '@/packages/administrativo/schemas/GMedidaTipo/GMedidaTipoSchema';
import { GMedidaTipoSchema } from '../../schemas/GMedidaTipo/GMedidaTipoSchema';
type FormValues = z.infer<typeof GMedidaTipoSchema>; type FormValues = z.infer<typeof GMedidaTipoSchema>;

View file

@ -20,7 +20,7 @@ import {
TableRow, TableRow,
} from '@/components/ui/table'; } from '@/components/ui/table';
import { GMedidaTipoInterface } from '../../interfaces/GMedidaTipo/GMedidaTipoInterface'; import { GMedidaTipoInterface } from '@/packages/administrativo/interfaces/GMedidaTipo/GMedidaTipoInterface';
interface GMedidaTipoTableProps { interface GMedidaTipoTableProps {
data: GMedidaTipoInterface[]; data: GMedidaTipoInterface[];

View file

@ -13,7 +13,7 @@ import {
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import GNaturezaInterface from '../../interfaces/GNatureza/GNaturezaInterface'; import GNaturezaInterface from '@/packages/administrativo/interfaces/GNatureza/GNaturezaInterface';
export default function GNaturezaColumns( export default function GNaturezaColumns(
onEdit: (item: GNaturezaInterface, isEditingFormStatus: boolean) => void, onEdit: (item: GNaturezaInterface, isEditingFormStatus: boolean) => void,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -26,8 +26,8 @@ import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect'; import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect';
import { useGNaturezaFormHook } from '../../hooks/GNatureza/useGNaturezaFormHook'; import { useGNaturezaFormHook } from '@/packages/administrativo/hooks/GNatureza/useGNaturezaFormHook';
import { GNaturezaFormInterface } from '../../interfaces/GNatureza/GNaturezaFormInterface'; import { GNaturezaFormInterface } from '@/packages/administrativo/interfaces/GNatureza/GNaturezaFormInterface';
/** /**
* Formulário de cadastro/edição de Natureza * Formulário de cadastro/edição de Natureza

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import { useGNaturezaDeleteHook } from '@/packages/administrativo/hooks/GNatureza/useGNaturezaDeleteHook'; import { useGNaturezaDeleteHook } from '@/packages/administrativo/hooks/GNatureza/useGNaturezaDeleteHook';
import { useGNaturezaIndexHook } from '@/packages/administrativo/hooks/GNatureza/useGNaturezaIndexHook'; import { useGNaturezaIndexHook } from '@/packages/administrativo/hooks/GNatureza/useGNaturezaIndexHook';
@ -11,9 +11,9 @@ import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDi
import Loading from '@/shared/components/loading/loading'; import Loading from '@/shared/components/loading/loading';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { GNaturezaIndexInterface } from '@/packages/administrativo/interfaces/GNatureza/GNaturezaIndexInterface';
import GNaturezaForm from './GNaturezaForm'; import GNaturezaForm from './GNaturezaForm';
import GNaturezaTable from './GNaturezaTable'; import GNaturezaTable from './GNaturezaTable';
import { GNaturezaIndexInterface } from '../../interfaces/GNatureza/GNaturezaIndexInterface';
export default function GNaturezaIndex({ sistema_id }: GNaturezaIndexInterface) { export default function GNaturezaIndex({ sistema_id }: GNaturezaIndexInterface) {
const GNaturezaIndexParams: GNaturezaIndexInterface = { const GNaturezaIndexParams: GNaturezaIndexInterface = {

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import GNaturezaTableInterface from '@/packages/administrativo/interfaces/GNatureza/GNaturezaTableInterface';
import GNaturezaColumns from './GNaturezaColumns'; import GNaturezaColumns from './GNaturezaColumns';
import GNaturezaTableInterface from '../../interfaces/GNatureza/GNaturezaTableInterface';
/** /**
* Componente principal da tabela de Naturezas * Componente principal da tabela de Naturezas

View file

@ -14,7 +14,7 @@ import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import { SituacoesEnum } from '@/shared/enums/SituacoesEnum'; import { SituacoesEnum } from '@/shared/enums/SituacoesEnum';
import GNaturezaTituloInterface from '../../interfaces/GNaturezaTitulo/GNaturezaTituloInterface'; import GNaturezaTituloInterface from '@/packages/administrativo/interfaces/GNaturezaTitulo/GNaturezaTituloInterface';
export default function GNaturezaTituloColumns( export default function GNaturezaTituloColumns(
onEdit: (item: GNaturezaTituloInterface, isEditingFormStatus: boolean) => void, onEdit: (item: GNaturezaTituloInterface, isEditingFormStatus: boolean) => void,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -25,8 +25,8 @@ import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect'; import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect';
import { useGNaturezaTituloFormHook } from '../../hooks/GNaturezaTitulo/useGNaturezaTituloFormHook'; import { useGNaturezaTituloFormHook } from '@/packages/administrativo/hooks/GNaturezaTitulo/useGNaturezaTituloFormHook';
import { GNaturezaTituloFormInterface } from '../../interfaces/GNaturezaTitulo/GNaturezaTituloFormInterface'; import { GNaturezaTituloFormInterface } from '@/packages/administrativo/interfaces/GNaturezaTitulo/GNaturezaTituloFormInterface';
/** /**
* Formulário de cadastro/edição de Natureza * Formulário de cadastro/edição de Natureza

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import { useGNaturezaTituloDeleteHook } from '@/packages/administrativo/hooks/GNaturezaTitulo/useGNaturezaTituloDeleteHook'; import { useGNaturezaTituloDeleteHook } from '@/packages/administrativo/hooks/GNaturezaTitulo/useGNaturezaTituloDeleteHook';
import { useGNaturezaTituloIndexHook } from '@/packages/administrativo/hooks/GNaturezaTitulo/useGNaturezaTituloIndexHook'; import { useGNaturezaTituloIndexHook } from '@/packages/administrativo/hooks/GNaturezaTitulo/useGNaturezaTituloIndexHook';
@ -11,9 +11,9 @@ import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDi
import Loading from '@/shared/components/loading/loading'; import Loading from '@/shared/components/loading/loading';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { GNaturezaTituloIndexInterface } from '@/packages/administrativo/interfaces/GNaturezaTitulo/GNaturezaTituloIndexInterface';
import GNaturezaTituloForm from './GNaturezaTituloForm'; import GNaturezaTituloForm from './GNaturezaTituloForm';
import GNaturezaTituloTable from './GNaturezaTituloTable'; import GNaturezaTituloTable from './GNaturezaTituloTable';
import { GNaturezaTituloIndexInterface } from '../../interfaces/GNaturezaTitulo/GNaturezaTituloIndexInterface';
export default function GNaturezaTituloIndex({ sistema_id }: GNaturezaTituloIndexInterface) { export default function GNaturezaTituloIndex({ sistema_id }: GNaturezaTituloIndexInterface) {
const GNaturezaTituloIndexParams: GNaturezaTituloIndexInterface = { const GNaturezaTituloIndexParams: GNaturezaTituloIndexInterface = {

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import GNaturezaTituloTableInterface from '@/packages/administrativo/interfaces/GNaturezaTitulo/GNaturezaTituloTableInterface';
import GNaturezaTituloColumns from './GNaturezaTituloColumns'; import GNaturezaTituloColumns from './GNaturezaTituloColumns';
import GNaturezaTituloTableInterface from '../../interfaces/GNaturezaTitulo/GNaturezaTituloTableInterface';
/** /**
* Componente principal da tabela de Naturezas * Componente principal da tabela de Naturezas

View file

@ -13,7 +13,7 @@ import {
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import GSeloGrupoInterface from '../../interfaces/GSeloGrupo/GSeloGrupoInterface'; import GSeloGrupoInterface from '@/packages/administrativo/interfaces/GSeloGrupo/GSeloGrupoInterface';
export default function GSeloGrupoColumns( export default function GSeloGrupoColumns(
onEdit: (item: GSeloGrupoInterface, isEditingFormStatus: boolean) => void, onEdit: (item: GSeloGrupoInterface, isEditingFormStatus: boolean) => void,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -28,8 +28,8 @@ import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect'; import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect';
import TipoCartorioSelect from '@/shared/components/tipoCartorio/TipoCartorioSelect'; import TipoCartorioSelect from '@/shared/components/tipoCartorio/TipoCartorioSelect';
import { useGSeloGrupoFormHook } from '../../hooks/GSeloGrupo/useGSeloGrupoFormHook'; import { useGSeloGrupoFormHook } from '@/packages/administrativo/hooks/GSeloGrupo/useGSeloGrupoFormHook';
import { GSeloGrupoFormInterface } from '../../interfaces/GSeloGrupo/GSeloGrupoFormInterface'; import { GSeloGrupoFormInterface } from '@/packages/administrativo/interfaces/GSeloGrupo/GSeloGrupoFormInterface';
/** /**
* Formulário de cadastro/edição de Natureza * Formulário de cadastro/edição de Natureza

View file

@ -18,7 +18,7 @@ import { cn } from '@/lib/utils';
import { useGSeloGrupoIndexHook } from '@/packages/administrativo/hooks/GSeloGrupo/useGSeloGrupoIndexHook'; import { useGSeloGrupoIndexHook } from '@/packages/administrativo/hooks/GSeloGrupo/useGSeloGrupoIndexHook';
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import GTBairroSelectInterface from '../../interfaces/GSeloGrupo/GSeloGrupoSelectInterace'; import GTBairroSelectInterface from '@/packages/administrativo/interfaces/GSeloGrupo/GSeloGrupoSelectInterace';
export default function GSeloGrupoSelect({ field }: GTBairroSelectInterface) { export default function GSeloGrupoSelect({ field }: GTBairroSelectInterface) {
const [open, setOpen] = useState(false); const [open, setOpen] = useState(false);

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import GSeloGrupoTableInterface from '@/packages/administrativo/interfaces/GSeloGrupo/GSeloGrupoTableInterface';
import GSeloGrupoColumns from './GSeloGrupoColumns'; import GSeloGrupoColumns from './GSeloGrupoColumns';
import GSeloGrupoTableInterface from '../../interfaces/GSeloGrupo/GSeloGrupoTableInterface';
/** /**
* Componente principal da tabela de Naturezas * Componente principal da tabela de Naturezas

View file

@ -2,11 +2,10 @@
import { zodResolver } from '@hookform/resolvers/zod'; import { zodResolver } from '@hookform/resolvers/zod';
import { useEffect } from 'react'; import { useEffect } from 'react';
import { useForm, Controller } from 'react-hook-form'; import { Controller, useForm } from 'react-hook-form';
import z from 'zod'; import z from 'zod';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { Checkbox } from '@/components/ui/checkbox';
import { import {
Dialog, Dialog,
DialogClose, DialogClose,
@ -30,7 +29,7 @@ import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect'; import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect';
import { SituacoesEnum } from '@/shared/enums/SituacoesEnum'; import { SituacoesEnum } from '@/shared/enums/SituacoesEnum';
import { GTBBairroSchema } from '../../schemas/GTBBairro/GTBBairroSchema'; import { GTBBairroSchema } from '@/packages/administrativo/schemas/GTBBairro/GTBBairroSchema';
type FormValues = z.infer<typeof GTBBairroSchema>; type FormValues = z.infer<typeof GTBBairroSchema>;

View file

@ -13,9 +13,9 @@ import { useResponse } from '@/shared/components/response/ResponseContext';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { SituacoesEnum } from '@/shared/enums/SituacoesEnum'; import { SituacoesEnum } from '@/shared/enums/SituacoesEnum';
import { GTBBairroInterface } from '@/packages/administrativo/interfaces/GTBBairro/GTBBairroInterface';
import GTBBairroForm from './GTBBairroForm'; import GTBBairroForm from './GTBBairroForm';
import GTBBairroTable from './GTBBairroTable'; import GTBBairroTable from './GTBBairroTable';
import { GTBBairroInterface } from '../../interfaces/GTBBairro/GTBBairroInterface';
const initialBairro: GTBBairroInterface = { const initialBairro: GTBBairroInterface = {
sistema_id: null, sistema_id: null,

View file

@ -18,7 +18,7 @@ import { cn } from '@/lib/utils';
import { useGTBBairroReadHook } from '@/packages/administrativo/hooks/GTBBairro/useGTBBairroReadHook'; import { useGTBBairroReadHook } from '@/packages/administrativo/hooks/GTBBairro/useGTBBairroReadHook';
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import GTBairroSelectInterface from '../../interfaces/GTBBairro/GTBairroSelectInterface'; import GTBairroSelectInterface from '@/packages/administrativo/interfaces/GTBBairro/GTBairroSelectInterface';
export default function GTBBairroSelect({ field }: GTBairroSelectInterface) { export default function GTBBairroSelect({ field }: GTBairroSelectInterface) {
const [open, setOpen] = useState(false); const [open, setOpen] = useState(false);

View file

@ -21,7 +21,7 @@ import {
} from '@/components/ui/table'; } from '@/components/ui/table';
import { SituacoesEnum } from '@/shared/enums/SituacoesEnum'; import { SituacoesEnum } from '@/shared/enums/SituacoesEnum';
import { GTBBairroInterface } from '../../interfaces/GTBBairro/GTBBairroInterface'; import { GTBBairroInterface } from '@/packages/administrativo/interfaces/GTBBairro/GTBBairroInterface';
interface GTBBairroTableProps { interface GTBBairroTableProps {
data: GTBBairroInterface[]; data: GTBBairroInterface[];

View file

@ -2,7 +2,7 @@
import { zodResolver } from '@hookform/resolvers/zod'; import { zodResolver } from '@hookform/resolvers/zod';
import { useEffect } from 'react'; import { useEffect } from 'react';
import { useForm, Controller } from 'react-hook-form'; import { Controller, useForm } from 'react-hook-form';
import z from 'zod'; import z from 'zod';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
@ -28,8 +28,7 @@ import { Input } from '@/components/ui/input';
import { Label } from '@/components/ui/label'; import { Label } from '@/components/ui/label';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { GTBEstadoCivilInterface } from '../../interfaces/GTBEstadoCivil/GTBEstadoCivilInterface'; import { GTBEstadoCivilSchema } from '@/packages/administrativo/schemas/GTBEstadoCivil/GTBEstadoCivilSchema';
import { GTBEstadoCivilSchema } from '../../schemas/GTBEstadoCivil/GTBEstadoCivilSchema';
type FormValues = z.infer<typeof GTBEstadoCivilSchema>; type FormValues = z.infer<typeof GTBEstadoCivilSchema>;

View file

@ -9,12 +9,12 @@ import Loading from '@/shared/components/loading/loading';
import { useResponse } from '@/shared/components/response/ResponseContext'; import { useResponse } from '@/shared/components/response/ResponseContext';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { useGTBEstadoCivilReadHook } from '@/packages/administrativo/hooks/GTBEstadoCivil/useGTBEstadoCivilReadHook';
import { useGTBEstadoCivilRemoveHook } from '@/packages/administrativo/hooks/GTBEstadoCivil/useGTBEstadoCivilRemoveHook';
import { useGTBEstadoCivilSaveHook } from '@/packages/administrativo/hooks/GTBEstadoCivil/useGTBEstadoCivilSaveHook';
import { GTBEstadoCivilInterface } from '@/packages/administrativo/interfaces/GTBEstadoCivil/GTBEstadoCivilInterface';
import GTBEstadoCivilForm from './GTBEstadoCivilForm'; import GTBEstadoCivilForm from './GTBEstadoCivilForm';
import GTBEstadoCivilTable from './GTBEstadoCivilTable'; import GTBEstadoCivilTable from './GTBEstadoCivilTable';
import { useGTBEstadoCivilReadHook } from '../../hooks/GTBEstadoCivil/useGTBEstadoCivilReadHook';
import { useGTBEstadoCivilRemoveHook } from '../../hooks/GTBEstadoCivil/useGTBEstadoCivilRemoveHook';
import { useGTBEstadoCivilSaveHook } from '../../hooks/GTBEstadoCivil/useGTBEstadoCivilSaveHook';
import { GTBEstadoCivilInterface } from '../../interfaces/GTBEstadoCivil/GTBEstadoCivilInterface';
const initalEstadoCivil: GTBEstadoCivilInterface = { const initalEstadoCivil: GTBEstadoCivilInterface = {
tb_estadocivil_id: 0, tb_estadocivil_id: 0,

View file

@ -20,7 +20,7 @@ import {
TableRow, TableRow,
} from '@/components/ui/table'; } from '@/components/ui/table';
import { GTBEstadoCivilInterface } from '../../interfaces/GTBEstadoCivil/GTBEstadoCivilInterface'; import { GTBEstadoCivilInterface } from '@/packages/administrativo/interfaces/GTBEstadoCivil/GTBEstadoCivilInterface';
interface TBEstadoCivilTableProps { interface TBEstadoCivilTableProps {
data: GTBEstadoCivilInterface[]; data: GTBEstadoCivilInterface[];

View file

@ -2,7 +2,7 @@
import { zodResolver } from '@hookform/resolvers/zod'; import { zodResolver } from '@hookform/resolvers/zod';
import { useEffect } from 'react'; import { useEffect } from 'react';
import { useForm, Controller } from 'react-hook-form'; import { Controller, useForm } from 'react-hook-form';
import z from 'zod'; import z from 'zod';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
@ -27,7 +27,7 @@ import {
import { Input } from '@/components/ui/input'; import { Input } from '@/components/ui/input';
import { Label } from '@/components/ui/label'; import { Label } from '@/components/ui/label';
import { GTBProfissaoSchema } from '../../schemas/GTBProfissao/GTBProfissaoSchema'; import { GTBProfissaoSchema } from '@/packages/administrativo/schemas/GTBProfissao/GTBProfissaoSchema';
type FormValues = z.infer<typeof GTBProfissaoSchema>; type FormValues = z.infer<typeof GTBProfissaoSchema>;

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import { Card, CardContent } from '@/components/ui/card'; import { Card, CardContent } from '@/components/ui/card';
import { useGTBProfissaoReadHook } from '@/packages/administrativo/hooks/GTBProfissao/useGTBProfissaoReadHook'; import { useGTBProfissaoReadHook } from '@/packages/administrativo/hooks/GTBProfissao/useGTBProfissaoReadHook';
@ -11,9 +11,9 @@ import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDi
import Loading from '@/shared/components/loading/loading'; import Loading from '@/shared/components/loading/loading';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import GTBProfissaoInterface from '@/packages/administrativo/interfaces/GTBProfissao/GTBProfissaoInterface';
import GTBProfissaoForm from './GTBProfissaoForm'; import GTBProfissaoForm from './GTBProfissaoForm';
import GTBProfissaoTable from './GTBProfissaoTable'; import GTBProfissaoTable from './GTBProfissaoTable';
import GTBProfissaoInterface from '../../interfaces/GTBProfissao/GTBProfissaoInterface';
export default function GTBProfissaoIndex() { export default function GTBProfissaoIndex() {
// Hooks para leitura e salvamento // Hooks para leitura e salvamento

View file

@ -20,7 +20,7 @@ import {
TableRow, TableRow,
} from '@/components/ui/table'; } from '@/components/ui/table';
import GTBProfissaoInterface from '../../interfaces/GTBProfissao/GTBProfissaoInterface'; import GTBProfissaoInterface from '@/packages/administrativo/interfaces/GTBProfissao/GTBProfissaoInterface';
interface GTBProfissaoTableProps { interface GTBProfissaoTableProps {
data: GTBProfissaoInterface[]; data: GTBProfissaoInterface[];

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import { Card, CardContent } from '@/components/ui/card'; import { Card, CardContent } from '@/components/ui/card';
import GTBRegimeBensForm from '@/packages/administrativo/components/GTBRegimeBens/GTBRegimeBensForm'; import GTBRegimeBensForm from '@/packages/administrativo/components/GTBRegimeBens/GTBRegimeBensForm';
@ -10,10 +10,10 @@ import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDi
import Loading from '@/shared/components/loading/loading'; import Loading from '@/shared/components/loading/loading';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { useGTBRegimeBensReadHook } from '../../hooks/GTBRegimeBens/useGTBRegimeBensReadHook'; import { useGTBRegimeBensReadHook } from '@/packages/administrativo/hooks/GTBRegimeBens/useGTBRegimeBensReadHook';
import { useGTBRegimeBensRemoveHook } from '../../hooks/GTBRegimeBens/useGTBRegimeBensRemoveHook'; import { useGTBRegimeBensRemoveHook } from '@/packages/administrativo/hooks/GTBRegimeBens/useGTBRegimeBensRemoveHook';
import { useGTBRegimeBensSaveHook } from '../../hooks/GTBRegimeBens/useGTBRegimeBensSaveHook'; import { useGTBRegimeBensSaveHook } from '@/packages/administrativo/hooks/GTBRegimeBens/useGTBRegimeBensSaveHook';
import GTBRegimeBensInterface from '../../interfaces/GTBRegimeBens/GTBRegimeBensInterface'; import GTBRegimeBensInterface from '@/packages/administrativo/interfaces/GTBRegimeBens/GTBRegimeBensInterface';
export default function GTBRegimeBensIndex() { export default function GTBRegimeBensIndex() {
// Hooks para leitura e salvamento // Hooks para leitura e salvamento

View file

@ -2,7 +2,7 @@
import { zodResolver } from '@hookform/resolvers/zod'; import { zodResolver } from '@hookform/resolvers/zod';
import { useEffect } from 'react'; import { useEffect } from 'react';
import { useForm, Controller } from 'react-hook-form'; import { Controller, useForm } from 'react-hook-form';
import z from 'zod'; import z from 'zod';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
@ -34,8 +34,8 @@ import {
SelectValue, SelectValue,
} from '@/components/ui/select'; } from '@/components/ui/select';
import { useGTBRegimeBensReadHook } from '../../hooks/GTBRegimeBens/useGTBRegimeBensReadHook'; import { useGTBRegimeBensReadHook } from '@/packages/administrativo/hooks/GTBRegimeBens/useGTBRegimeBensReadHook';
import { GTBRegimeComunhaoSchema } from '../../schemas/GTBRegimeComunhao/GTBRegimeComunhaoSchema'; import { GTBRegimeComunhaoSchema } from '@/packages/administrativo/schemas/GTBRegimeComunhao/GTBRegimeComunhaoSchema';
type FormValues = z.infer<typeof GTBRegimeComunhaoSchema>; type FormValues = z.infer<typeof GTBRegimeComunhaoSchema>;

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import { Card, CardContent } from '@/components/ui/card'; import { Card, CardContent } from '@/components/ui/card';
import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog'; import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog';
@ -8,12 +8,12 @@ import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDi
import Loading from '@/shared/components/loading/loading'; import Loading from '@/shared/components/loading/loading';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { useGTBRegimeComunhaoReadHook } from '@/packages/administrativo/hooks/GTBRegimeComunhao/useGTBRegimeComunhaoReadHook';
import { useGTBRegimeComunhaoRemoveHook } from '@/packages/administrativo/hooks/GTBRegimeComunhao/useGTBRegimeComunhaoRemoveHook';
import { useGTBRegimeComunhaoSaveHook } from '@/packages/administrativo/hooks/GTBRegimeComunhao/useGTBRegimeComunhaoSaveHook';
import GTBRegimeComunhaoInterface from '@/packages/administrativo/interfaces/GTBRegimeComunhao/GTBRegimeComunhaoInterface';
import GTBRegimeComunhaoForm from './GTBRegimeComunhaoForm'; import GTBRegimeComunhaoForm from './GTBRegimeComunhaoForm';
import GTBRegimeComunhaoTable from './GTBRegimeComunhaoTable'; import GTBRegimeComunhaoTable from './GTBRegimeComunhaoTable';
import { useGTBRegimeComunhaoReadHook } from '../../hooks/GTBRegimeComunhao/useGTBRegimeComunhaoReadHook';
import { useGTBRegimeComunhaoRemoveHook } from '../../hooks/GTBRegimeComunhao/useGTBRegimeComunhaoRemoveHook';
import { useGTBRegimeComunhaoSaveHook } from '../../hooks/GTBRegimeComunhao/useGTBRegimeComunhaoSaveHook';
import GTBRegimeComunhaoInterface from '../../interfaces/GTBRegimeComunhao/GTBRegimeComunhaoInterface';
export default function GTBRegimeComunhaoIndex() { export default function GTBRegimeComunhaoIndex() {
// Hooks para leitura e salvamento // Hooks para leitura e salvamento

View file

@ -20,7 +20,7 @@ import {
TableRow, TableRow,
} from '@/components/ui/table'; } from '@/components/ui/table';
import GTBRegimeComunhaoInterface from '../../interfaces/GTBRegimeComunhao/GTBRegimeComunhaoInterface'; import GTBRegimeComunhaoInterface from '@/packages/administrativo/interfaces/GTBRegimeComunhao/GTBRegimeComunhaoInterface';
interface GTBRegimeComunhaoTableProps { interface GTBRegimeComunhaoTableProps {
data: GTBRegimeComunhaoInterface[]; data: GTBRegimeComunhaoInterface[];

View file

@ -2,7 +2,7 @@
import { zodResolver } from '@hookform/resolvers/zod'; import { zodResolver } from '@hookform/resolvers/zod';
import { useEffect } from 'react'; import { useEffect } from 'react';
import { useForm, Controller } from 'react-hook-form'; import { Controller, useForm } from 'react-hook-form';
import z from 'zod'; import z from 'zod';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
@ -28,8 +28,7 @@ import { Input } from '@/components/ui/input';
import { Label } from '@/components/ui/label'; import { Label } from '@/components/ui/label';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { GTBTipoLogradouroInterface } from '../../interfaces/GTBTipoLogradouro/GTBTipoLogradouroInterface'; import { GTBTipoLogradouroSchema } from '@/packages/administrativo/schemas/GTBTipoLogradouro/GTBTipoLogradouroSchema';
import { GTBTipoLogradouroSchema } from '../../schemas/GTBTipoLogradouro/GTBTipoLogradouroSchema';
type FormValues = z.infer<typeof GTBTipoLogradouroSchema>; type FormValues = z.infer<typeof GTBTipoLogradouroSchema>;

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import { Card, CardContent } from '@/components/ui/card'; import { Card, CardContent } from '@/components/ui/card';
import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog'; import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog';
@ -9,12 +9,12 @@ import Loading from '@/shared/components/loading/loading';
import { useResponse } from '@/shared/components/response/ResponseContext'; import { useResponse } from '@/shared/components/response/ResponseContext';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { useGTBTipoLogradouroReadHook } from '@/packages/administrativo/hooks/GTBTipoLogradouro/useGTBTipoLogradouroReadHook';
import { useGTBTipoLogradouroRemoveHook } from '@/packages/administrativo/hooks/GTBTipoLogradouro/useGTBTipoLogradouroRemoveHook';
import { useGTBTipoLogradouroSaveHook } from '@/packages/administrativo/hooks/GTBTipoLogradouro/useGTBTipoLogradouroSaveHook';
import { GTBTipoLogradouroInterface } from '@/packages/administrativo/interfaces/GTBTipoLogradouro/GTBTipoLogradouroInterface';
import GTBTipoLogradouroForm from './GTBTipoLogradouroForm'; import GTBTipoLogradouroForm from './GTBTipoLogradouroForm';
import GTBTipoLogradouroTable from './GTBTipoLogradouroTable'; import GTBTipoLogradouroTable from './GTBTipoLogradouroTable';
import { useGTBTipoLogradouroReadHook } from '../../hooks/GTBTipoLogradouro/useGTBTipoLogradouroReadHook';
import { useGTBTipoLogradouroRemoveHook } from '../../hooks/GTBTipoLogradouro/useGTBTipoLogradouroRemoveHook';
import { useGTBTipoLogradouroSaveHook } from '../../hooks/GTBTipoLogradouro/useGTBTipoLogradouroSaveHook';
import { GTBTipoLogradouroInterface } from '../../interfaces/GTBTipoLogradouro/GTBTipoLogradouroInterface';
export default function GTBTipoLogradouroIndex() { export default function GTBTipoLogradouroIndex() {
// Controle de exibição de respostas // Controle de exibição de respostas

View file

@ -20,7 +20,7 @@ import {
TableRow, TableRow,
} from '@/components/ui/table'; } from '@/components/ui/table';
import { GTBTipoLogradouroInterface } from '../../interfaces/GTBTipoLogradouro/GTBTipoLogradouroInterface'; import { GTBTipoLogradouroInterface } from '@/packages/administrativo/interfaces/GTBTipoLogradouro/GTBTipoLogradouroInterface';
interface GTBTipoLogradouroTableProps { interface GTBTipoLogradouroTableProps {
data: GTBTipoLogradouroInterface[]; data: GTBTipoLogradouroInterface[];

View file

@ -16,7 +16,7 @@ import { ConfirmacaoEnum } from '@/shared/enums/ConfirmacaoEnum';
import { SituacoesEnum } from '@/shared/enums/SituacoesEnum'; import { SituacoesEnum } from '@/shared/enums/SituacoesEnum';
import { TipoDaParteEnum } from '@/shared/enums/TIpoDaParteEnum'; import { TipoDaParteEnum } from '@/shared/enums/TIpoDaParteEnum';
import TAtoParteTipoInterface from '../../interfaces/TAtoParteTipo/TAtoParteTipoInterface'; import TAtoParteTipoInterface from '@/packages/administrativo/interfaces/TAtoParteTipo/TAtoParteTipoInterface';
export default function TAtoParteTipoColumns( export default function TAtoParteTipoColumns(
onEdit: (item: TAtoParteTipoInterface, isEditingFormStatus: boolean) => void, onEdit: (item: TAtoParteTipoInterface, isEditingFormStatus: boolean) => void,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -22,13 +22,12 @@ import {
} from '@/components/ui/form'; } from '@/components/ui/form';
import { Input } from '@/components/ui/input'; import { Input } from '@/components/ui/input';
import { Switch } from '@/components/ui/switch'; import { Switch } from '@/components/ui/switch';
import { parseNumberInput } from '@/shared/actions/form/parseNumberInput';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import TipoDaParteSelect from '@/shared/components/tipoDaParte/TipoDaParteSelect'; import TipoDaParteSelect from '@/shared/components/tipoDaParte/TipoDaParteSelect';
import { useTAtoParteTipoFormHook } from '../../hooks/TAtoParteTipo/useTAtoParteTipoFormHook'; import { useTAtoParteTipoFormHook } from '@/packages/administrativo/hooks/TAtoParteTipo/useTAtoParteTipoFormHook';
import { TAtoParteTipoFormInterface } from '../../interfaces/TAtoParteTipo/TAtoParteTipoFormInterface'; import { TAtoParteTipoFormInterface } from '@/packages/administrativo/interfaces/TAtoParteTipo/TAtoParteTipoFormInterface';
import TCensecQualidadeSelect from '../TCensecQualidade/TCensecQualidadeSelect'; import TCensecQualidadeSelect from '../TCensecQualidade/TCensecQualidadeSelect';
export default function TAtoParteTipoForm({ export default function TAtoParteTipoForm({

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import TAtoParteTipoTableInterface from '@/packages/administrativo/interfaces/TAtoParteTipo/TAtoParteTipoTableInterface';
import TAtoParteTipoColumns from './TAtoParteTipoColumns'; import TAtoParteTipoColumns from './TAtoParteTipoColumns';
import TAtoParteTipoTableInterface from '../../interfaces/TAtoParteTipo/TAtoParteTipoTableInterface';
/** /**
* Componente principal da tabela * Componente principal da tabela

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import { Card, CardContent } from '@/components/ui/card'; import { Card, CardContent } from '@/components/ui/card';
import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog'; import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog';
@ -8,12 +8,12 @@ import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDi
import Loading from '@/shared/components/loading/loading'; import Loading from '@/shared/components/loading/loading';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { useTCensecDeleteHook } from '@/packages/administrativo/hooks/TCensec/useTCensecDeleteHook';
import { useTCensecReadHook } from '@/packages/administrativo/hooks/TCensec/useTCensecReadHook';
import { useTCensecSaveHook } from '@/packages/administrativo/hooks/TCensec/useTCensecSaveHook';
import TCensecInterface from '@/packages/administrativo/interfaces/TCensec/TCensecInterface';
import TCensecForm from './TCensecForm'; import TCensecForm from './TCensecForm';
import TCensecTable from './TCensecTable'; import TCensecTable from './TCensecTable';
import { useTCensecDeleteHook } from '../../hooks/TCensec/useTCensecDeleteHook';
import { useTCensecReadHook } from '../../hooks/TCensec/useTCensecReadHook';
import { useTCensecSaveHook } from '../../hooks/TCensec/useTCensecSaveHook';
import TCensecInterface from '../../interfaces/TCensec/TCensecInterface';
export default function TCensecIndex() { export default function TCensecIndex() {
// Controle de estado do botão // Controle de estado do botão

View file

@ -13,9 +13,9 @@ import { useResponse } from '@/shared/components/response/ResponseContext';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { SituacoesEnum } from '@/shared/enums/SituacoesEnum'; import { SituacoesEnum } from '@/shared/enums/SituacoesEnum';
import { TCensecNaturezaLitigioInterface } from '@/packages/administrativo/interfaces/TCensecNaturezaLitigio/TCensecNaturezaLitigioInterface';
import TCensecNaturezaLitigioForm from './TCensecNaturezaLitigioForm'; import TCensecNaturezaLitigioForm from './TCensecNaturezaLitigioForm';
import TCensecNaturezaLitigioTable from './TCensecNaturezaLitigioTable'; import TCensecNaturezaLitigioTable from './TCensecNaturezaLitigioTable';
import { TCensecNaturezaLitigioInterface } from '../../interfaces/TCensecNaturezaLitigio/TCensecNaturezaLitigioInterface';
const initialCensecNaturezaLitigio: TCensecNaturezaLitigioInterface = { const initialCensecNaturezaLitigio: TCensecNaturezaLitigioInterface = {
censec_naturezalitigio_id: 0, censec_naturezalitigio_id: 0,

View file

@ -13,7 +13,7 @@ import {
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import TCensecQualidadeInterface from '../../interfaces/TCensecQualidade/TCensecQualidadeInterface'; import TCensecQualidadeInterface from '@/packages/administrativo/interfaces/TCensecQualidade/TCensecQualidadeInterface';
export default function TCensecQualidadeColumns( export default function TCensecQualidadeColumns(
onEdit: (item: TCensecQualidadeInterface, isEditingFormStatus: boolean) => void, onEdit: (item: TCensecQualidadeInterface, isEditingFormStatus: boolean) => void,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -26,8 +26,8 @@ import ConfirmacaoSelect from '@/shared/components/confirmacao/ConfirmacaoSelect
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect'; import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect';
import { useTCensecQualidadeFormHook } from '../../hooks/TCensecQualidade/useTCensecQualidadeHook'; import { useTCensecQualidadeFormHook } from '@/packages/administrativo/hooks/TCensecQualidade/useTCensecQualidadeHook';
import { TCensecQualidadeFormInterface } from '../../interfaces/TCensecQualidade/TCensecQualidadeFormInterface'; import { TCensecQualidadeFormInterface } from '@/packages/administrativo/interfaces/TCensecQualidade/TCensecQualidadeFormInterface';
export default function TCensecQualidadeForm({ export default function TCensecQualidadeForm({
isOpen, isOpen,

View file

@ -17,7 +17,7 @@ import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover
import { cn } from '@/lib/utils'; import { cn } from '@/lib/utils';
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { useTCensecQualidadeIndexHook } from '../../hooks/TCensecQualidade/useTCensecQualidadeIndexHook'; import { useTCensecQualidadeIndexHook } from '@/packages/administrativo/hooks/TCensecQualidade/useTCensecQualidadeIndexHook';
export default function TCensecQualidadeSelect({ field }: any) { export default function TCensecQualidadeSelect({ field }: any) {
const [open, setOpen] = React.useState(false); const [open, setOpen] = React.useState(false);

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import TCensecQualidadeTableInterface from '@/packages/administrativo/interfaces/TCensecQualidade/TCensecQualidadeTableInterface';
import TCensecQualidadeColumns from './TCensecQualidadeColumns'; import TCensecQualidadeColumns from './TCensecQualidadeColumns';
import TCensecQualidadeTableInterface from '../../interfaces/TCensecQualidade/TCensecQualidadeTableInterface';
/** /**
* Componente principal da tabela * Componente principal da tabela

View file

@ -12,7 +12,7 @@ import {
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import TCensecQualidadeAtoJoinedInterface from '../../interfaces/TCensecQualidadeAto/TCensecQualidadeAtoPageInterface'; import TCensecQualidadeAtoJoinedInterface from '@/packages/administrativo/interfaces/TCensecQualidadeAto/TCensecQualidadeAtoPageInterface';
export default function TCensecQualidadeAtoColumns( export default function TCensecQualidadeAtoColumns(
onDelete: (item: TCensecQualidadeAtoJoinedInterface, isEditingFormStatus: boolean) => void, onDelete: (item: TCensecQualidadeAtoJoinedInterface, isEditingFormStatus: boolean) => void,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect, useState } from 'react'; import { useEffect, useState } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -17,11 +17,11 @@ import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { useTCensecQualidadeIndexHook } from '@/packages/administrativo/hooks/TCensecQualidade/useTCensecQualidadeIndexHook';
import { useTCensecQualidadeAtoFormHook } from '@/packages/administrativo/hooks/TCensecQualidadeAto/useTCensecQualidadeAtoFormHook';
import TCensecQualidadeAtoFormInterface from '@/packages/administrativo/interfaces/TCensecQualidadeAto/TCensecQualidadeAtoFormInterface';
import TCensecQualidadeAtoInterface from '@/packages/administrativo/interfaces/TCensecQualidadeAto/TCensecQualidadeAtoInterface';
import TCensecQualidadeAtoFormColumns from './TCensecQualidadeAtoFormColumns'; import TCensecQualidadeAtoFormColumns from './TCensecQualidadeAtoFormColumns';
import { useTCensecQualidadeIndexHook } from '../../hooks/TCensecQualidade/useTCensecQualidadeIndexHook';
import { useTCensecQualidadeAtoFormHook } from '../../hooks/TCensecQualidadeAto/useTCensecQualidadeAtoFormHook';
import TCensecQualidadeAtoFormInterface from '../../interfaces/TCensecQualidadeAto/TCensecQualidadeAtoFormInterface';
import TCensecQualidadeAtoInterface from '../../interfaces/TCensecQualidadeAto/TCensecQualidadeAtoInterface';
export default function TCensecQualidadeAtoForm({ export default function TCensecQualidadeAtoForm({
isOpen, isOpen,

View file

@ -5,8 +5,8 @@ import { Button } from '@/components/ui/button';
import { Checkbox } from '@/components/ui/checkbox'; import { Checkbox } from '@/components/ui/checkbox';
import GetCapitalize from '@/shared/actions/text/GetCapitalize'; import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import TCensecQualidadeInterface from '../../interfaces/TCensecQualidade/TCensecQualidadeInterface'; import TCensecQualidadeInterface from '@/packages/administrativo/interfaces/TCensecQualidade/TCensecQualidadeInterface';
import TCensecQualidadeAtoInterface from '../../interfaces/TCensecQualidadeAto/TCensecQualidadeAtoInterface'; import TCensecQualidadeAtoInterface from '@/packages/administrativo/interfaces/TCensecQualidadeAto/TCensecQualidadeAtoInterface';
export default function TCensecQualidadeAtoFormColumns( export default function TCensecQualidadeAtoFormColumns(
setSelectedTCensecQualidadeAto: React.Dispatch< setSelectedTCensecQualidadeAto: React.Dispatch<

View file

@ -1,18 +1,18 @@
'use client'; 'use client';
import React, { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog'; import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog';
import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDialog'; import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDialog';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { useTCensecQualidadeAtoDeleteHook } from '@/packages/administrativo/hooks/TCensecQualidadeAto/useTCensecQualidadeAtoDeleteHook';
import { useTCensecQualidadeAtoIndexHook } from '@/packages/administrativo/hooks/TCensecQualidadeAto/useTCensecQualidadeAtoIndexHook';
import { useTCensecQualidadeAtoSaveHook } from '@/packages/administrativo/hooks/TCensecQualidadeAto/useTCensecQualidadeAtoSaveHook';
import TCensecQualidadeAtoInterface from '@/packages/administrativo/interfaces/TCensecQualidadeAto/TCensecQualidadeAtoInterface';
import TCensecQualidadeAtoPageInterface from '@/packages/administrativo/interfaces/TCensecQualidadeAto/TCensecQualidadeAtoPageInterface';
import TCensecQualidadeAtoForm from './TCensecQualidadeAtoForm'; import TCensecQualidadeAtoForm from './TCensecQualidadeAtoForm';
import TCensecQualidadeAtoTable from './TCensecQualidadeAtoTable'; import TCensecQualidadeAtoTable from './TCensecQualidadeAtoTable';
import { useTCensecQualidadeAtoDeleteHook } from '../../hooks/TCensecQualidadeAto/useTCensecQualidadeAtoDeleteHook';
import { useTCensecQualidadeAtoIndexHook } from '../../hooks/TCensecQualidadeAto/useTCensecQualidadeAtoIndexHook';
import { useTCensecQualidadeAtoSaveHook } from '../../hooks/TCensecQualidadeAto/useTCensecQualidadeAtoSaveHook';
import TCensecQualidadeAtoInterface from '../../interfaces/TCensecQualidadeAto/TCensecQualidadeAtoInterface';
import TCensecQualidadeAtoPageInterface from '../../interfaces/TCensecQualidadeAto/TCensecQualidadeAtoPageInterface';
export default function TCensecQualidadeAtoIndex({ export default function TCensecQualidadeAtoIndex({
censec_tipoato_id, censec_tipoato_id,

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import TCensecQualidadeAtoTableInterface from '@/packages/administrativo/interfaces/TCensecQualidadeAto/TCensecQualidadeAtoTableInterface';
import TCensecQualidadeAtoColumns from './TCensecQualidadeAtoColumns'; import TCensecQualidadeAtoColumns from './TCensecQualidadeAtoColumns';
import TCensecQualidadeAtoTableInterface from '../../interfaces/TCensecQualidadeAto/TCensecQualidadeAtoTableInterface';
/** /**
* Componente principal da tabela * Componente principal da tabela

View file

@ -3,7 +3,7 @@
import { zodResolver } from '@hookform/resolvers/zod'; import { zodResolver } from '@hookform/resolvers/zod';
import { IdCardIcon, UserIcon } from 'lucide-react'; import { IdCardIcon, UserIcon } from 'lucide-react';
import { useEffect } from 'react'; import { useEffect } from 'react';
import { useForm, Controller } from 'react-hook-form'; import { Controller, useForm } from 'react-hook-form';
import z from 'zod'; import z from 'zod';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
@ -38,8 +38,8 @@ import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect'; import SituacoesSelect from '@/shared/components/situacoes/SituacoesSelect';
import { SituacoesEnum } from '@/shared/enums/SituacoesEnum'; import { SituacoesEnum } from '@/shared/enums/SituacoesEnum';
import TCensecInterface from '../../interfaces/TCensec/TCensecInterface'; import TCensecInterface from '@/packages/administrativo/interfaces/TCensec/TCensecInterface';
import { TCensecTipoAtoSchema } from '../../schemas/TCensecTipoAto/TCensecTipoAtoSchema'; import { TCensecTipoAtoSchema } from '@/packages/administrativo/schemas/TCensecTipoAto/TCensecTipoAtoSchema';
type FormValues = z.infer<typeof TCensecTipoAtoSchema>; type FormValues = z.infer<typeof TCensecTipoAtoSchema>;

View file

@ -9,13 +9,13 @@ import Loading from '@/shared/components/loading/loading';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { SituacoesEnum } from '@/shared/enums/SituacoesEnum'; import { SituacoesEnum } from '@/shared/enums/SituacoesEnum';
import { useTCensecReadHook } from '@/packages/administrativo/hooks/TCensec/useTCensecReadHook';
import { useTCensecTipoAtoReadHook } from '@/packages/administrativo/hooks/TCensecTipoAto/useTCensecTipoAtoReadHook';
import { useTCensecTipoAtoRemoveHook } from '@/packages/administrativo/hooks/TCensecTipoAto/useTCensecTipoAtoRemoveHook';
import { useTCensecTipoAtoSaveHook } from '@/packages/administrativo/hooks/TCensecTipoAto/useTCensecTipoAtoSaveHook';
import { TCensecTipoAtoInterface } from '@/packages/administrativo/interfaces/TCensecTipoAto/TCensecTipoAtoInterface';
import TCensecTipoAtoForm from './TCensecTipoAtoForm'; import TCensecTipoAtoForm from './TCensecTipoAtoForm';
import TCensecTipoAtoTable from './TCensecTipoAtoTable'; import TCensecTipoAtoTable from './TCensecTipoAtoTable';
import { useTCensecReadHook } from '../../hooks/TCensec/useTCensecReadHook';
import { useTCensecTipoAtoReadHook } from '../../hooks/TCensecTipoAto/useTCensecTipoAtoReadHook';
import { useTCensecTipoAtoRemoveHook } from '../../hooks/TCensecTipoAto/useTCensecTipoAtoRemoveHook';
import { useTCensecTipoAtoSaveHook } from '../../hooks/TCensecTipoAto/useTCensecTipoAtoSaveHook';
import { TCensecTipoAtoInterface } from '../../interfaces/TCensecTipoAto/TCensecTipoAtoInterface';
// Estado inicial para criação // Estado inicial para criação
const initialTCensecTipoAto: TCensecTipoAtoInterface = { const initialTCensecTipoAto: TCensecTipoAtoInterface = {

View file

@ -20,8 +20,8 @@ import {
TableRow, TableRow,
} from '@/components/ui/table'; } from '@/components/ui/table';
import TCensecInterface from '../../interfaces/TCensec/TCensecInterface'; import TCensecInterface from '@/packages/administrativo/interfaces/TCensec/TCensecInterface';
import { TCensecTipoAtoInterface } from '../../interfaces/TCensecTipoAto/TCensecTipoAtoInterface'; import { TCensecTipoAtoInterface } from '@/packages/administrativo/interfaces/TCensecTipoAto/TCensecTipoAtoInterface';
interface TCensecTipoAtoTableProps { interface TCensecTipoAtoTableProps {
data: TCensecTipoAtoInterface[]; data: TCensecTipoAtoInterface[];

View file

@ -15,7 +15,7 @@ import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import { ConfirmacaoEnum } from '@/shared/enums/ConfirmacaoEnum'; import { ConfirmacaoEnum } from '@/shared/enums/ConfirmacaoEnum';
import { TipoAtoAnteriorEnum } from '@/shared/enums/TipoAtoAnteriorEnum'; import { TipoAtoAnteriorEnum } from '@/shared/enums/TipoAtoAnteriorEnum';
import TCensecTipoNaturezaInterface from '../../interfaces/TCensecTipoNatureza/TCensecTipoNaturezaInterface'; import TCensecTipoNaturezaInterface from '@/packages/administrativo/interfaces/TCensecTipoNatureza/TCensecTipoNaturezaInterface';
export default function TCensecTipoNaturezaColumns( export default function TCensecTipoNaturezaColumns(
onEdit: (item: TCensecTipoNaturezaInterface, isEditingFormStatus: boolean) => void, onEdit: (item: TCensecTipoNaturezaInterface, isEditingFormStatus: boolean) => void,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -28,8 +28,8 @@ import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import TipoAtoAnteriorSelect from '@/shared/components/tipoAtoAnterior/TipoAtoAnteriorSelect'; import TipoAtoAnteriorSelect from '@/shared/components/tipoAtoAnterior/TipoAtoAnteriorSelect';
import TipoNaturezaSelect from '@/shared/components/tipoNatureza/TipoNaturezaSelect'; import TipoNaturezaSelect from '@/shared/components/tipoNatureza/TipoNaturezaSelect';
import { useTCensecTipoNaturezaFormHook } from '../../hooks/TCensecTipoNatureza/useTCensecTipoNaturezaFormHook'; import { useTCensecTipoNaturezaFormHook } from '@/packages/administrativo/hooks/TCensecTipoNatureza/useTCensecTipoNaturezaFormHook';
import { TCensecTipoNaturezaFormInterface } from '../../interfaces/TCensecTipoNatureza/TCensecTipoNaturezaFormInterface'; import { TCensecTipoNaturezaFormInterface } from '@/packages/administrativo/interfaces/TCensecTipoNatureza/TCensecTipoNaturezaFormInterface';
import TCensecTipoAtoSelect from '../TCensecTipoAto/TCensecTipoAtoSelect'; import TCensecTipoAtoSelect from '../TCensecTipoAto/TCensecTipoAtoSelect';
export default function TCensecTipoNaturezaForm({ export default function TCensecTipoNaturezaForm({

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import TCensecTipoNaturezaTableInterface from '@/packages/administrativo/interfaces/TCensecTipoNatureza/TCensecTipoNaturezaTableInterface';
import TCensecTipoNaturezaColumns from './TCensecTipoNaturezaColumns'; import TCensecTipoNaturezaColumns from './TCensecTipoNaturezaColumns';
import TCensecTipoNaturezaTableInterface from '../../interfaces/TCensecTipoNatureza/TCensecTipoNaturezaTableInterface';
/** /**
* Componente principal da tabela * Componente principal da tabela

View file

@ -16,7 +16,7 @@ import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import { SortableHeader } from '@/shared/components/dataTable/SortableHeader'; import { SortableHeader } from '@/shared/components/dataTable/SortableHeader';
import { ImovelTipoRegistro } from '@/shared/enums/ImovelTipoRegistro'; import { ImovelTipoRegistro } from '@/shared/enums/ImovelTipoRegistro';
import TImovelInterface from '../../interfaces/TImovel/TImovelInterface'; import TImovelInterface from '@/packages/administrativo/interfaces/TImovel/TImovelInterface';
export default function TImovelColumns( export default function TImovelColumns(
onEdit: (item: TImovelInterface, isEditingFormStatus: boolean) => void, onEdit: (item: TImovelInterface, isEditingFormStatus: boolean) => void,

View file

@ -27,12 +27,12 @@ import { parseNumberInput } from '@/shared/actions/form/parseNumberInput';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import TImovelTipoRegistroSelect from './TImovelTipoRegistroSelect'; import { useTImovelFormHook } from '@/packages/administrativo/hooks/TImovel/useTImovelFormHook';
import { useTImovelFormHook } from '../../hooks/TImovel/useTImovelFormHook'; import { TImovelFormInterface } from '@/packages/administrativo/interfaces/TImovel/TImovelFormInterface';
import { TImovelFormInterface } from '../../interfaces/TImovel/TImovelFormInterface';
import GTBBairroSelect from '../GTBBairro/GTBBairroSelect'; import GTBBairroSelect from '../GTBBairro/GTBBairroSelect';
import TImovelUnidadeRuralIndex from '../TImovelUnidade/TImovelUnidadeRural/TImovelUnidadeRuralIndex'; import TImovelUnidadeRuralIndex from '../TImovelUnidade/TImovelUnidadeRural/TImovelUnidadeRuralIndex';
import TImovelUnidadeUrbanoPage from '../TImovelUnidade/TImovelUnidadeUrbano/TImovelUnidadeUrbanoIndex'; import TImovelUnidadeUrbanoPage from '../TImovelUnidade/TImovelUnidadeUrbano/TImovelUnidadeUrbanoIndex';
import TImovelTipoRegistroSelect from './TImovelTipoRegistroSelect';
export default function TImovelForm({ export default function TImovelForm({
isOpen, isOpen,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import { useTImovelDeleteHook } from '@/packages/administrativo/hooks/TImovel/useTImovelDeleteHook'; import { useTImovelDeleteHook } from '@/packages/administrativo/hooks/TImovel/useTImovelDeleteHook';
import { useTImovelIndexHook } from '@/packages/administrativo/hooks/TImovel/useTImovelIndexHook'; import { useTImovelIndexHook } from '@/packages/administrativo/hooks/TImovel/useTImovelIndexHook';
@ -11,10 +11,10 @@ import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDi
import Loading from '@/shared/components/loading/loading'; import Loading from '@/shared/components/loading/loading';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { TImovelIndexDataInterface } from '@/packages/administrativo/interfaces/TImovel/TImovelIndexDataInterface';
import { TImovelIndexInterface } from '@/packages/administrativo/interfaces/TImovel/TImovelIndexInterface';
import TImovelForm from './TImovelForm'; import TImovelForm from './TImovelForm';
import TImovelTable from './TImovelTable'; import TImovelTable from './TImovelTable';
import { TImovelIndexDataInterface } from '../../interfaces/TImovel/TImovelIndexDataInterface';
import { TImovelIndexInterface } from '../../interfaces/TImovel/TImovelIndexInterface';
export default function TImovelIndex({ export default function TImovelIndex({
pageTitle, pageTitle,

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import TImovelTableInterface from '@/packages/administrativo/interfaces/TImovel/TImovelTabelInterface';
import TImovelColumns from './TImovelColumns'; import TImovelColumns from './TImovelColumns';
import TImovelTableInterface from '../../interfaces/TImovel/TImovelTabelInterface';
/** /**
* Componente principal da tabela * Componente principal da tabela

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -28,15 +28,14 @@ import {
SelectTrigger, SelectTrigger,
SelectValue, SelectValue,
} from '@/components/ui/select'; } from '@/components/ui/select';
import TImovelTipoConstrucaoSelect from '@/packages/administrativo/components/TImovel/TImovelTipoConstrucaoSelect';
import TImovelTipoImovelSelect from '@/packages/administrativo/components/TImovel/TImovelTipoImovelSelect';
import { useTImovelUnidadeRuralFormHook } from '@/packages/administrativo/hooks/TImovelUnidade/TImovelUnidadeRural/useTImovelUnidadeRuralFormHook'; import { useTImovelUnidadeRuralFormHook } from '@/packages/administrativo/hooks/TImovelUnidade/TImovelUnidadeRural/useTImovelUnidadeRuralFormHook';
import { TImovelUnidadeRuralFormInterface } from '@/packages/administrativo/interfaces/TImovelUnidade/TImovelUnidadeRural/TImovelUnidadeRuralFormInterface'; import { TImovelUnidadeRuralFormInterface } from '@/packages/administrativo/interfaces/TImovelUnidade/TImovelUnidadeRural/TImovelUnidadeRuralFormInterface';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { SituacoesEnum } from '@/shared/enums/SituacoesEnum'; import { SituacoesEnum } from '@/shared/enums/SituacoesEnum';
import TImovelTipoConstrucaoSelect from '../../TImovel/TImovelTipoConstrucaoSelect';
import TImovelTipoImovelSelect from '../../TImovel/TImovelTipoImovelSelect';
export default function TImovelUnidadeRuralForm({ export default function TImovelUnidadeRuralForm({
isOpen, isOpen,
data, data,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect } from 'react'; import { useEffect } from 'react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { import {
@ -21,16 +21,15 @@ import {
FormMessage, FormMessage,
} from '@/components/ui/form'; } from '@/components/ui/form';
import { Input } from '@/components/ui/input'; import { Input } from '@/components/ui/input';
import TImovelTipoConstrucaoSelect from '@/packages/administrativo/components/TImovel/TImovelTipoConstrucaoSelect';
import TImovelTipoImovelSelect from '@/packages/administrativo/components/TImovel/TImovelTipoImovelSelect';
import TImovelTipoLogradouroSelect from '@/packages/administrativo/components/TImovel/TImovelTipoLogradouroSelect';
import { useTImovelUnidadeUrbanoFormHook } from '@/packages/administrativo/hooks/TImovelUnidade/TImovelUnidadeUrbano/useTImovelUnidadeUrbanoFormHook'; import { useTImovelUnidadeUrbanoFormHook } from '@/packages/administrativo/hooks/TImovelUnidade/TImovelUnidadeUrbano/useTImovelUnidadeUrbanoFormHook';
import { TImovelUnidadeUrbanoFormInterface } from '@/packages/administrativo/interfaces/TImovelUnidade/TImovelUnidadeUrbano/TImovelUnidadeUrbanoFormInterface'; import { TImovelUnidadeUrbanoFormInterface } from '@/packages/administrativo/interfaces/TImovelUnidade/TImovelUnidadeUrbano/TImovelUnidadeUrbanoFormInterface';
import { parseNumberInput } from '@/shared/actions/form/parseNumberInput'; import { parseNumberInput } from '@/shared/actions/form/parseNumberInput';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import TImovelTipoConstrucaoSelect from '../../TImovel/TImovelTipoConstrucaoSelect';
import TImovelTipoImovelSelect from '../../TImovel/TImovelTipoImovelSelect';
import TImovelTipoLogradouroSelect from '../../TImovel/TImovelTipoLogradouroSelect';
export default function TImovelUnidadeUrbanoForm({ export default function TImovelUnidadeUrbanoForm({
isOpen, isOpen,
data, data,

View file

@ -2,7 +2,7 @@
import { zodResolver } from '@hookform/resolvers/zod'; import { zodResolver } from '@hookform/resolvers/zod';
import { useEffect } from 'react'; import { useEffect } from 'react';
import { useForm, Controller } from 'react-hook-form'; import { Controller, useForm } from 'react-hook-form';
import z from 'zod'; import z from 'zod';
import MainEditor from '@/components/MainEditor'; import MainEditor from '@/components/MainEditor';
@ -28,8 +28,7 @@ import {
import { Input } from '@/components/ui/input'; import { Input } from '@/components/ui/input';
import { Label } from '@/components/ui/label'; import { Label } from '@/components/ui/label';
import { TMinutaInterface } from '../../interfaces/TMinuta/TMinutaInterface'; import { TMinutaSchema } from '@/packages/administrativo/schemas/TMinuta/TMinutaSchema';
import { TMinutaSchema } from '../../schemas/TMinuta/TMinutaSchema';
type FormValues = z.infer<typeof TMinutaSchema>; type FormValues = z.infer<typeof TMinutaSchema>;

View file

@ -1,17 +1,8 @@
'use client'; 'use client';
import { EllipsisIcon, PencilIcon, Trash2Icon } from 'lucide-react';
import Link from 'next/link'; import Link from 'next/link';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuGroup,
DropdownMenuItem,
DropdownMenuSeparator,
DropdownMenuTrigger,
} from '@/components/ui/dropdown-menu';
import { import {
Table, Table,
TableBody, TableBody,
@ -21,7 +12,7 @@ import {
TableRow, TableRow,
} from '@/components/ui/table'; } from '@/components/ui/table';
import { TMinutaInterface } from '../../interfaces/TMinuta/TMinutaInterface'; import { TMinutaInterface } from '@/packages/administrativo/interfaces/TMinuta/TMinutaInterface';
interface TMinutaTableProps { interface TMinutaTableProps {
data: TMinutaInterface[]; data: TMinutaInterface[];

View file

@ -34,7 +34,9 @@ import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover
import { Select, SelectContent, SelectItem, SelectTrigger } from '@/components/ui/select'; import { Select, SelectContent, SelectItem, SelectTrigger } from '@/components/ui/select';
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'; import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs';
import { cn } from '@/lib/utils'; import { cn } from '@/lib/utils';
import { useGTBEstadoCivilReadHook } from '@/packages/administrativo/hooks/GTBEstadoCivil/useGTBEstadoCivilReadHook';
import { useGTBProfissaoReadHook } from '@/packages/administrativo/hooks/GTBProfissao/useGTBProfissaoReadHook'; import { useGTBProfissaoReadHook } from '@/packages/administrativo/hooks/GTBProfissao/useGTBProfissaoReadHook';
import { useGTBRegimeComunhaoReadHook } from '@/packages/administrativo/hooks/GTBRegimeComunhao/useGTBRegimeComunhaoReadHook';
import { useTPessoaFisicaFormHook } from '@/packages/administrativo/hooks/TPessoa/TPessoaFisica/useTPessoaFisicaFormHook'; import { useTPessoaFisicaFormHook } from '@/packages/administrativo/hooks/TPessoa/TPessoaFisica/useTPessoaFisicaFormHook';
import TPessoaFisicaFormInterface from '@/packages/administrativo/interfaces/TPessoa/TPessoaFisica/TPessoaFisicaFormInterface'; import TPessoaFisicaFormInterface from '@/packages/administrativo/interfaces/TPessoa/TPessoaFisica/TPessoaFisicaFormInterface';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
@ -42,9 +44,6 @@ import GetCapitalize from '@/shared/actions/text/GetCapitalize';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { Sexo } from '@/shared/enums/SexoEnum'; import { Sexo } from '@/shared/enums/SexoEnum';
import { useGTBEstadoCivilReadHook } from '../../../hooks/GTBEstadoCivil/useGTBEstadoCivilReadHook';
import { useGTBRegimeComunhaoReadHook } from '../../../hooks/GTBRegimeComunhao/useGTBRegimeComunhaoReadHook';
export default function TPessoaFisicaForm({ export default function TPessoaFisicaForm({
isOpen, isOpen,
data, data,

View file

@ -1,6 +1,6 @@
'use client'; 'use client';
import React, { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import TPessoaForm from '@/packages/administrativo/components/TPessoa/TPessoaFisica/TPessoaFisicaForm'; import TPessoaForm from '@/packages/administrativo/components/TPessoa/TPessoaFisica/TPessoaFisicaForm';
import TPessoaTable from '@/packages/administrativo/components/TPessoa/TPessoaFisica/TPessoaFisicaTable'; import TPessoaTable from '@/packages/administrativo/components/TPessoa/TPessoaFisica/TPessoaFisicaTable';

View file

@ -23,14 +23,13 @@ import {
} from '@/components/ui/form'; } from '@/components/ui/form';
import { Input } from '@/components/ui/input'; import { Input } from '@/components/ui/input';
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'; import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs';
import TPessoaRepresentantePage from '@/packages/administrativo/components/TPessoaRepresentante/TPessoaRepresentanteIndex';
import { useTPessoaJuridicaFormHook } from '@/packages/administrativo/hooks/TPessoa/TPessoaJuridica/useTPessoaJuridicaFormHook'; import { useTPessoaJuridicaFormHook } from '@/packages/administrativo/hooks/TPessoa/TPessoaJuridica/useTPessoaJuridicaFormHook';
import TPessoaJuridicaFormInterface from '@/packages/administrativo/interfaces/TPessoa/TPessoaJuridica/TPessoaJuridicaFormInterface'; import TPessoaJuridicaFormInterface from '@/packages/administrativo/interfaces/TPessoa/TPessoaJuridica/TPessoaJuridicaFormInterface';
import { parseNumberInput } from '@/shared/actions/form/parseNumberInput'; import { parseNumberInput } from '@/shared/actions/form/parseNumberInput';
import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData'; import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import TPessoaRepresentantePage from '../../TPessoaRepresentante/TPessoaRepresentanteIndex';
export default function TPessoaJuridicaForm({ export default function TPessoaJuridicaForm({
isOpen, isOpen,
data, data,

View file

@ -3,13 +3,13 @@ import { ArrowUpDownIcon } from 'lucide-react';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
import { Checkbox } from '@/components/ui/checkbox'; import { Checkbox } from '@/components/ui/checkbox';
import TPessoaInterface from '@/packages/administrativo/interfaces/TPessoa/TPessoaInterface';
import { FormatCPF } from '@/shared/actions/CPF/FormatCPF'; import { FormatCPF } from '@/shared/actions/CPF/FormatCPF';
import { FormatDateTime } from '@/shared/actions/dateTime/FormatDateTime'; import { FormatDateTime } from '@/shared/actions/dateTime/FormatDateTime';
import { FormatPhone } from '@/shared/actions/phone/FormatPhone'; import { FormatPhone } from '@/shared/actions/phone/FormatPhone';
import GetNameInitials from '@/shared/actions/text/GetNameInitials'; import GetNameInitials from '@/shared/actions/text/GetNameInitials';
import empty from '@/shared/actions/validations/empty'; import empty from '@/shared/actions/validations/empty';
import TPessoaInterface from '../../interfaces/TPessoa/TPessoaInterface';
/** /**
* Função para criar a definição das colunas da tabela * Função para criar a definição das colunas da tabela

View file

@ -1,5 +1,5 @@
import { FingerprintIcon, WebcamIcon } from 'lucide-react'; import { FileSpreadsheetIcon, WebcamIcon } from 'lucide-react';
import { memo, useCallback, useMemo, useState } from 'react'; import { memo, useCallback, useState } from 'react';
import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'; import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar';
import { Button } from '@/components/ui/button'; import { Button } from '@/components/ui/button';
@ -11,12 +11,12 @@ import {
ItemMedia, ItemMedia,
ItemTitle, ItemTitle,
} from '@/components/ui/item'; } from '@/components/ui/item';
import TPessoaTableFormSubviewInterface from '@/packages/administrativo/interfaces/TPessoa/TPessoaTableFormSubviewInterface';
import TPessoaCartaoForm from '@/packages/servicos/components/TPessoaCartao/TPessoaCartaoForm'; import TPessoaCartaoForm from '@/packages/servicos/components/TPessoaCartao/TPessoaCartaoForm';
import { FormatDateTime } from '@/shared/actions/dateTime/FormatDateTime';
import GetNameInitials from '@/shared/actions/text/GetNameInitials'; import GetNameInitials from '@/shared/actions/text/GetNameInitials';
import BiometriaButton from '@/shared/components/biometria/BiometriaButton';
import WebCamDialog from '@/shared/components/webcam/WebCamDialog'; import WebCamDialog from '@/shared/components/webcam/WebCamDialog';
import { useFingerTechCaptureHook } from '@/shared/hooks/FingerTech/useFingerTechCaptureHook';
import TPessoaTableFormSubviewInterface from '../../interfaces/TPessoa/TPessoaTableFormSubviewInterface';
function TPessoaTableFormSubview({ function TPessoaTableFormSubview({
item_index, item_index,
@ -24,87 +24,85 @@ function TPessoaTableFormSubview({
params, params,
form, form,
}: TPessoaTableFormSubviewInterface) { }: TPessoaTableFormSubviewInterface) {
const [isWebCamOpenDialog, setIsWebCamOpenDialog] = useState(false); const [isWebCamOpenDialog, setIsWebCamOpenDialog] = useState(false);
const { base64, captureFingerTech } = useFingerTechCaptureHook(); const [statusBiometria, setStatusBiometria] = useState(0)
// Chama o leitor biométrico const handleCaptureSuccess = useCallback(async (base64: string) => {
const handleBiometria = useCallback(() => {
console.log(captureFingerTech());
}, []);
const biometriaButtonClass = useMemo(() => { console.log(base64)
const status = 1 as number; // força tipo number
switch (status) { setStatusBiometria(1)
case 0:
return 'bg-amber-100 text-amber-700 border border-amber-300 hover:bg-amber-200 hover:text-amber-800'; }, [])
case 1:
return 'bg-green-100 text-green-700 border border-green-300 hover:bg-green-200 hover:text-green-800';
case 2:
return 'bg-red-100 text-red-700 border border-red-300 hover:bg-red-200 hover:text-red-800';
default:
return '';
}
}, []);
return ( return (
<div> <div>
<Item variant="outline"> {data.pessoa && (
<ItemMedia> <Item variant="outline">
<Avatar className="size-10"> <ItemMedia>
<AvatarImage src={``} /> <Avatar className="size-10">
<AvatarFallback>{GetNameInitials(data.pessoa?.nome)}</AvatarFallback> <AvatarImage src={``} />
</Avatar> <AvatarFallback>{GetNameInitials(data.pessoa?.nome)}</AvatarFallback>
</ItemMedia> </Avatar>
<ItemContent> </ItemMedia>
<ItemTitle> <ItemContent>
{data.pessoa?.cpf_cnpj} - {data.pessoa?.nome} <ItemTitle>
</ItemTitle> {data.pessoa?.cpf_cnpj} - {data.pessoa?.nome}
<ItemDescription>{data.pessoa?.email || 'Email não informado'}</ItemDescription> </ItemTitle>
{params <ItemDescription>{data.pessoa?.email || 'Email não informado'}</ItemDescription>
.filter((param) => Number(param.valor) === data?.servico?.servico_tipo_id) {params
.map((param) => ( .filter((param) => Number(param.valor) === data?.servico?.servico_tipo_id)
<TPessoaCartaoForm form={form} index={item_index} key={param.config_id} /> .map((param) => (
))} <TPessoaCartaoForm form={form} index={item_index} key={param.config_id} />
</ItemContent> ))}
<ItemActions> </ItemContent>
{data?.servico?.requer_biometria === 'S' && ( <ItemActions>
<Button {data?.servico?.requer_biometria === 'S' && (
type="button" <BiometriaButton
size="icon-lg" status={statusBiometria}
variant="outline" onCaptureSuccess={handleCaptureSuccess}
className={`cursor-pointer rounded-full ${biometriaButtonClass}`} />
aria-label="Capturar biometria" )}
onClick={() => { {data?.servico?.requer_biometria && (
handleBiometria(); <Button
}} type="button"
> size="icon-lg"
<FingerprintIcon /> variant="outline"
</Button> className="cursor-pointer rounded-full"
)} aria-label="Capturar imagem"
{data?.servico?.requer_biometria && ( onClick={() => {
<Button setIsWebCamOpenDialog(true);
type="button" }}
size="icon-lg" >
variant="outline" <WebcamIcon />
className="cursor-pointer rounded-full" </Button>
aria-label="Capturar imagem" )}
onClick={() => { </ItemActions>
setIsWebCamOpenDialog(true); </Item>
}} )}
> {data.ato && (
<WebcamIcon /> <Item variant="outline">
</Button> <ItemMedia>
)} <FileSpreadsheetIcon className="size-5" />
</ItemActions> </ItemMedia>
</Item> <ItemContent>
<ItemTitle>
Ato de Origem
</ItemTitle>
<ItemDescription>
<b>Pedido:</b> {data.ato.ato_id}, <b>Protocolo:</b> {data.ato.protocolo}, <b>Livro:</b> {data.ato.livro}, <b>Lavratura:</b> {FormatDateTime(data.ato.data_lavratura)}, <b>Folhas</b>: {data.ato.folha_inicial} a {data.ato.folha_final}
</ItemDescription>
</ItemContent>
</Item>
)}
{isWebCamOpenDialog && ( {isWebCamOpenDialog && (
<WebCamDialog <WebCamDialog
isOpen={isWebCamOpenDialog} isOpen={isWebCamOpenDialog}
onClose={() => { onClose={() => {
setIsWebCamOpenDialog(false); setIsWebCamOpenDialog(false);
}} }}
onSave={() => {}} onSave={() => { }}
key={item_index} key={item_index}
/> />
)} )}

View file

@ -12,8 +12,8 @@ import {
import GetNameInitials from '@/shared/actions/text/GetNameInitials'; import GetNameInitials from '@/shared/actions/text/GetNameInitials';
import empty from '@/shared/actions/validations/empty'; import empty from '@/shared/actions/validations/empty';
import TPessoaRepresentanteInterface from '../../interfaces/TPessoaRepresentante/TPessoaRepresentanteInterface'; import TPessoaRepresentanteInterface from '@/packages/administrativo/interfaces/TPessoaRepresentante/TPessoaRepresentanteInterface';
import TPessoaRepresentanteJoinedInterface from '../../interfaces/TPessoaRepresentante/TPessoaRepresentanteJoinedInterface'; import TPessoaRepresentanteJoinedInterface from '@/packages/administrativo/interfaces/TPessoaRepresentante/TPessoaRepresentanteJoinedInterface';
export default function TPessoaRepresentanteColumns( export default function TPessoaRepresentanteColumns(
onDelete: (item: TPessoaRepresentanteInterface, isEditingFormStatus: boolean) => void, onDelete: (item: TPessoaRepresentanteInterface, isEditingFormStatus: boolean) => void,

View file

@ -17,11 +17,11 @@ import { ResetFormIfData } from '@/shared/actions/form/ResetFormIfData';
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import LoadingButton from '@/shared/components/loadingButton/LoadingButton'; import LoadingButton from '@/shared/components/loadingButton/LoadingButton';
import { useTPessoaFisicaIndexHook } from '@/packages/administrativo/hooks/TPessoa/TPessoaFisica/useTPessoaFisicaIndexHook';
import { useTPessoaRepresentanteFormHook } from '@/packages/administrativo/hooks/TPessoaRepresentante/useTPessoaRepresentanteFormHook';
import TPessoaRepresentanteInterface from '@/packages/administrativo/interfaces/TPessoaRepresentante/TPessoaRepresentanteInterface';
import TPessoaRepresentanteFormInterface from '@/packages/administrativo/interfaces/TPessoaRepresentante/TPessoaRepresentnateFormInterface';
import TPessoasRepresentanteFormColumns from './TPessoasRepresentanteFormColumns'; import TPessoasRepresentanteFormColumns from './TPessoasRepresentanteFormColumns';
import { useTPessoaFisicaIndexHook } from '../../hooks/TPessoa/TPessoaFisica/useTPessoaFisicaIndexHook';
import { useTPessoaRepresentanteFormHook } from '../../hooks/TPessoaRepresentante/useTPessoaRepresentanteFormHook';
import TPessoaRepresentanteInterface from '../../interfaces/TPessoaRepresentante/TPessoaRepresentanteInterface';
import TPessoaRepresentanteFormInterface from '../../interfaces/TPessoaRepresentante/TPessoaRepresentnateFormInterface';
export default function TPessoaRepresentanteForm({ export default function TPessoaRepresentanteForm({
isOpen, isOpen,

View file

@ -1,19 +1,18 @@
'use client'; 'use client';
import React, { useEffect, useState, useCallback } from 'react'; import { useCallback, useEffect, useState } from 'react';
import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog'; import ConfirmDialog from '@/shared/components/confirmDialog/ConfirmDialog';
import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDialog'; import { useConfirmDialog } from '@/shared/components/confirmDialog/useConfirmDialog';
import Loading from '@/shared/components/loading/loading';
import Header from '@/shared/components/structure/Header'; import Header from '@/shared/components/structure/Header';
import { useTPessoaRepresentanteDeleteHook } from '@/packages/administrativo/hooks/TPessoaRepresentante/useTPessoaRepresentanteDeleteHook';
import { useTPessoaRepresentanteIndexHook } from '@/packages/administrativo/hooks/TPessoaRepresentante/useTPessoaRepresentanteIndexHook';
import { useTPessoaRepresentanteSaveHook } from '@/packages/administrativo/hooks/TPessoaRepresentante/useTPessoaRepresentanteSaveHook';
import TPessoaRepresentanteInterface from '@/packages/administrativo/interfaces/TPessoaRepresentante/TPessoaRepresentanteInterface';
import TPessoaRepresentantePageInterface from '@/packages/administrativo/interfaces/TPessoaRepresentante/TPessoaRepresentantePageInterface';
import TPessoaRepresentanteForm from './TPessoaRepresentanteForm'; import TPessoaRepresentanteForm from './TPessoaRepresentanteForm';
import TPessoaRepresentanteTable from './TPessoaRepresentanteTable'; import TPessoaRepresentanteTable from './TPessoaRepresentanteTable';
import { useTPessoaRepresentanteDeleteHook } from '../../hooks/TPessoaRepresentante/useTPessoaRepresentanteDeleteHook';
import { useTPessoaRepresentanteIndexHook } from '../../hooks/TPessoaRepresentante/useTPessoaRepresentanteIndexHook';
import { useTPessoaRepresentanteSaveHook } from '../../hooks/TPessoaRepresentante/useTPessoaRepresentanteSaveHook';
import TPessoaRepresentanteInterface from '../../interfaces/TPessoaRepresentante/TPessoaRepresentanteInterface';
import TPessoaRepresentantePageInterface from '../../interfaces/TPessoaRepresentante/TPessoaRepresentantePageInterface';
export default function TPessoaRepresentantePage({ pessoa_id }: TPessoaRepresentantePageInterface) { export default function TPessoaRepresentantePage({ pessoa_id }: TPessoaRepresentantePageInterface) {
const TPessoaRepresentantePage: TPessoaRepresentantePageInterface = { const TPessoaRepresentantePage: TPessoaRepresentantePageInterface = {

View file

@ -2,8 +2,8 @@
import { DataTable } from '@/shared/components/dataTable/DataTable'; import { DataTable } from '@/shared/components/dataTable/DataTable';
import TPessoaRepresentanteTableInterface from '@/packages/administrativo/interfaces/TPessoaRepresentante/TPessoaRepresentanteTableInterface';
import TPessoaRepresentanteColumns from './TPessoaRepresentanteColumns'; import TPessoaRepresentanteColumns from './TPessoaRepresentanteColumns';
import TPessoaRepresentanteTableInterface from '../../interfaces/TPessoaRepresentante/TPessoaRepresentanteTableInterface';
/** /**
* Componente principal da tabela * Componente principal da tabela

Some files were not shown because too many files have changed in this diff Show more