diff --git a/README.md b/README.md index 1fe570c..dddc844 100644 --- a/README.md +++ b/README.md @@ -1,2 +1 @@ # saas_app - diff --git a/components.json b/components.json index ffe928f..3289f23 100644 --- a/components.json +++ b/components.json @@ -18,4 +18,4 @@ "hooks": "@/hooks" }, "iconLibrary": "lucide" -} \ No newline at end of file +} diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 0000000..edf63c9 --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,23 @@ +import next from "eslint-config-next"; +import importPlugin from "eslint-plugin-import"; + +export default [ + next, + { + plugins: { + import: importPlugin + }, + rules: { + "import/order": [ + "error", + { + groups: ["builtin", "external", "internal", ["parent", "sibling", "index"]], + "newlines-between": "always", + alphabetize: { order: "asc", caseInsensitive: true } + } + ], + "semi": ["error", "always"], + "quotes": ["error", "double"] + } + } +]; diff --git a/next.config.ts b/next.config.ts index 0a838ef..050ff52 100644 --- a/next.config.ts +++ b/next.config.ts @@ -2,7 +2,7 @@ import type { NextConfig } from "next"; const nextConfig: NextConfig = { // Isso gera um diretório otimizado que inclui tudo o que a aplicação precisa para rodar - output: 'standalone', + output: "standalone", }; export default nextConfig; diff --git a/package-lock.json b/package-lock.json index 4c0e5d9..2a3b88c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,11 +1,11 @@ { - "name": "app", + "name": "saas", "version": "25.9.1", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "app", + "name": "saas", "version": "25.9.1", "dependencies": { "@faker-js/faker": "^10.0.0", @@ -42,12 +42,15 @@ "zod": "^4.0.17" }, "devDependencies": { + "@rushstack/eslint-patch": "^1.12.0", "@tailwindcss/postcss": "^4", "@types/js-cookie": "^3.0.6", "@types/jsonwebtoken": "^9.0.10", "@types/node": "^20", "@types/react": "^19", "@types/react-dom": "^19", + "eslint-config-next": "^15.5.4", + "eslint-plugin-import": "^2.32.0", "tailwindcss": "^4", "tw-animate-css": "^1.3.7", "typescript": "^5" @@ -66,16 +69,187 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@emnapi/core": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.5.0.tgz", + "integrity": "sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, "node_modules/@emnapi/runtime": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.5.tgz", - "integrity": "sha512-++LApOtY0pEEz1zrd9vy1/zXVaVJJ/EbAF3u0fXIzPJEDtnITsBGbbK0EkM72amhl/R5b+5xx0Y/QhcVOpuulg==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.5.0.tgz", + "integrity": "sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==", "license": "MIT", "optional": true, "dependencies": { "tslib": "^2.4.0" } }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", + "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz", + "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.0.tgz", + "integrity": "sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@eslint/object-schema": "^2.1.6", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.3.1.tgz", + "integrity": "sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.2.tgz", + "integrity": "sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "9.36.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.36.0.tgz", + "integrity": "sha512-uhCbYtYynH30iZErszX78U+nR3pJU3RHGQ57NXy5QupD4SBVwDeU8TNBy+MjMngc1UyIW9noKqsRqfjQTBU2dw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.5.tgz", + "integrity": "sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@eslint/core": "^0.15.2", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@faker-js/faker": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-10.0.0.tgz", @@ -102,9 +276,9 @@ } }, "node_modules/@floating-ui/dom": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.3.tgz", - "integrity": "sha512-uZA413QEpNuhtb3/iIKoYMSK07keHPYeXF02Zhd6e213j+d1NamLix/mCLxBUDW/Gx52sPH2m+chlUsyaBs/Ag==", + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.4.tgz", + "integrity": "sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==", "license": "MIT", "dependencies": { "@floating-ui/core": "^1.7.3", @@ -112,12 +286,12 @@ } }, "node_modules/@floating-ui/react-dom": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.5.tgz", - "integrity": "sha512-HDO/1/1oH9fjj4eLgegrlH3dklZpHtUYYFiVwMUwfGvk9jWDRWqkklA2/NFScknrcNSspbV868WjXORvreDX+Q==", + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.6.tgz", + "integrity": "sha512-4JX6rEatQEvlmgU80wZyq9RT96HZJa88q8hp0pBd+LrczeDI4o6uA2M+uvxngVHo4Ihr8uibXxH6+70zhAFrVw==", "license": "MIT", "dependencies": { - "@floating-ui/dom": "^1.7.3" + "@floating-ui/dom": "^1.7.4" }, "peerDependencies": { "react": ">=16.8.0", @@ -131,9 +305,9 @@ "license": "MIT" }, "node_modules/@hookform/resolvers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-5.2.1.tgz", - "integrity": "sha512-u0+6X58gkjMcxur1wRWokA7XsiiBJ6aK17aPZxhkoYiK5J+HcTx0Vhu9ovXe6H+dVpO6cjrn2FkJTryXEMlryQ==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-5.2.2.tgz", + "integrity": "sha512-A/IxlMLShx3KjV/HeTcTfaMxdwy690+L/ZADoeaTltLx+CVuzkeVIPuybK3jrRfw7YZnmdKsVVHAlEPIAEUNlA==", "license": "MIT", "dependencies": { "@standard-schema/utils": "^0.3.0" @@ -142,10 +316,76 @@ "react-hook-form": "^7.55.0" } }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@img/colour": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.0.0.tgz", + "integrity": "sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=18" + } + }, "node_modules/@img/sharp-darwin-arm64": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.3.tgz", - "integrity": "sha512-ryFMfvxxpQRsgZJqBd4wsttYQbCxsJksrv9Lw/v798JcQ8+w84mBWuXwl+TT0WJ/WrYOLaYpwQXi3sA9nTIaIg==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.4.tgz", + "integrity": "sha512-sitdlPzDVyvmINUdJle3TNHl+AG9QcwiAMsXmccqsCOMZNIdW2/7S26w0LyU8euiLVzFBL3dXPwVCq/ODnf2vA==", "cpu": [ "arm64" ], @@ -161,13 +401,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-darwin-arm64": "1.2.0" + "@img/sharp-libvips-darwin-arm64": "1.2.3" } }, "node_modules/@img/sharp-darwin-x64": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.3.tgz", - "integrity": "sha512-yHpJYynROAj12TA6qil58hmPmAwxKKC7reUqtGLzsOHfP7/rniNGTL8tjWX6L3CTV4+5P4ypcS7Pp+7OB+8ihA==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.4.tgz", + "integrity": "sha512-rZheupWIoa3+SOdF/IcUe1ah4ZDpKBGWcsPX6MT0lYniH9micvIU7HQkYTfrx5Xi8u+YqwLtxC/3vl8TQN6rMg==", "cpu": [ "x64" ], @@ -183,13 +423,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-darwin-x64": "1.2.0" + "@img/sharp-libvips-darwin-x64": "1.2.3" } }, "node_modules/@img/sharp-libvips-darwin-arm64": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.0.tgz", - "integrity": "sha512-sBZmpwmxqwlqG9ueWFXtockhsxefaV6O84BMOrhtg/YqbTaRdqDE7hxraVE3y6gVM4eExmfzW4a8el9ArLeEiQ==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.3.tgz", + "integrity": "sha512-QzWAKo7kpHxbuHqUC28DZ9pIKpSi2ts2OJnoIGI26+HMgq92ZZ4vk8iJd4XsxN+tYfNJxzH6W62X5eTcsBymHw==", "cpu": [ "arm64" ], @@ -203,9 +443,9 @@ } }, "node_modules/@img/sharp-libvips-darwin-x64": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.0.tgz", - "integrity": "sha512-M64XVuL94OgiNHa5/m2YvEQI5q2cl9d/wk0qFTDVXcYzi43lxuiFTftMR1tOnFQovVXNZJ5TURSDK2pNe9Yzqg==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.3.tgz", + "integrity": "sha512-Ju+g2xn1E2AKO6YBhxjj+ACcsPQRHT0bhpglxcEf+3uyPY+/gL8veniKoo96335ZaPo03bdDXMv0t+BBFAbmRA==", "cpu": [ "x64" ], @@ -219,9 +459,9 @@ } }, "node_modules/@img/sharp-libvips-linux-arm": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.0.tgz", - "integrity": "sha512-mWd2uWvDtL/nvIzThLq3fr2nnGfyr/XMXlq8ZJ9WMR6PXijHlC3ksp0IpuhK6bougvQrchUAfzRLnbsen0Cqvw==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.3.tgz", + "integrity": "sha512-x1uE93lyP6wEwGvgAIV0gP6zmaL/a0tGzJs/BIDDG0zeBhMnuUPm7ptxGhUbcGs4okDJrk4nxgrmxpib9g6HpA==", "cpu": [ "arm" ], @@ -235,9 +475,9 @@ } }, "node_modules/@img/sharp-libvips-linux-arm64": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.0.tgz", - "integrity": "sha512-RXwd0CgG+uPRX5YYrkzKyalt2OJYRiJQ8ED/fi1tq9WQW2jsQIn0tqrlR5l5dr/rjqq6AHAxURhj2DVjyQWSOA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.3.tgz", + "integrity": "sha512-I4RxkXU90cpufazhGPyVujYwfIm9Nk1QDEmiIsaPwdnm013F7RIceaCc87kAH+oUB1ezqEvC6ga4m7MSlqsJvQ==", "cpu": [ "arm64" ], @@ -251,9 +491,9 @@ } }, "node_modules/@img/sharp-libvips-linux-ppc64": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.0.tgz", - "integrity": "sha512-Xod/7KaDDHkYu2phxxfeEPXfVXFKx70EAFZ0qyUdOjCcxbjqyJOEUpDe6RIyaunGxT34Anf9ue/wuWOqBW2WcQ==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.3.tgz", + "integrity": "sha512-Y2T7IsQvJLMCBM+pmPbM3bKT/yYJvVtLJGfCs4Sp95SjvnFIjynbjzsa7dY1fRJX45FTSfDksbTp6AGWudiyCg==", "cpu": [ "ppc64" ], @@ -267,9 +507,9 @@ } }, "node_modules/@img/sharp-libvips-linux-s390x": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.0.tgz", - "integrity": "sha512-eMKfzDxLGT8mnmPJTNMcjfO33fLiTDsrMlUVcp6b96ETbnJmd4uvZxVJSKPQfS+odwfVaGifhsB07J1LynFehw==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.3.tgz", + "integrity": "sha512-RgWrs/gVU7f+K7P+KeHFaBAJlNkD1nIZuVXdQv6S+fNA6syCcoboNjsV2Pou7zNlVdNQoQUpQTk8SWDHUA3y/w==", "cpu": [ "s390x" ], @@ -283,9 +523,9 @@ } }, "node_modules/@img/sharp-libvips-linux-x64": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.0.tgz", - "integrity": "sha512-ZW3FPWIc7K1sH9E3nxIGB3y3dZkpJlMnkk7z5tu1nSkBoCgw2nSRTFHI5pB/3CQaJM0pdzMF3paf9ckKMSE9Tg==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.3.tgz", + "integrity": "sha512-3JU7LmR85K6bBiRzSUc/Ff9JBVIFVvq6bomKE0e63UXGeRw2HPVEjoJke1Yx+iU4rL7/7kUjES4dZ/81Qjhyxg==", "cpu": [ "x64" ], @@ -299,9 +539,9 @@ } }, "node_modules/@img/sharp-libvips-linuxmusl-arm64": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.0.tgz", - "integrity": "sha512-UG+LqQJbf5VJ8NWJ5Z3tdIe/HXjuIdo4JeVNADXBFuG7z9zjoegpzzGIyV5zQKi4zaJjnAd2+g2nna8TZvuW9Q==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.3.tgz", + "integrity": "sha512-F9q83RZ8yaCwENw1GieztSfj5msz7GGykG/BA+MOUefvER69K/ubgFHNeSyUu64amHIYKGDs4sRCMzXVj8sEyw==", "cpu": [ "arm64" ], @@ -315,9 +555,9 @@ } }, "node_modules/@img/sharp-libvips-linuxmusl-x64": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.0.tgz", - "integrity": "sha512-SRYOLR7CXPgNze8akZwjoGBoN1ThNZoqpOgfnOxmWsklTGVfJiGJoC/Lod7aNMGA1jSsKWM1+HRX43OP6p9+6Q==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.3.tgz", + "integrity": "sha512-U5PUY5jbc45ANM6tSJpsgqmBF/VsL6LnxJmIf11kB7J5DctHgqm0SkuXzVWtIY90GnJxKnC/JT251TDnk1fu/g==", "cpu": [ "x64" ], @@ -331,9 +571,9 @@ } }, "node_modules/@img/sharp-linux-arm": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.3.tgz", - "integrity": "sha512-oBK9l+h6KBN0i3dC8rYntLiVfW8D8wH+NPNT3O/WBHeW0OQWCjfWksLUaPidsrDKpJgXp3G3/hkmhptAW0I3+A==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.4.tgz", + "integrity": "sha512-Xyam4mlqM0KkTHYVSuc6wXRmM7LGN0P12li03jAnZ3EJWZqj83+hi8Y9UxZUbxsgsK1qOEwg7O0Bc0LjqQVtxA==", "cpu": [ "arm" ], @@ -349,13 +589,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linux-arm": "1.2.0" + "@img/sharp-libvips-linux-arm": "1.2.3" } }, "node_modules/@img/sharp-linux-arm64": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.3.tgz", - "integrity": "sha512-QdrKe3EvQrqwkDrtuTIjI0bu6YEJHTgEeqdzI3uWJOH6G1O8Nl1iEeVYRGdj1h5I21CqxSvQp1Yv7xeU3ZewbA==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.4.tgz", + "integrity": "sha512-YXU1F/mN/Wu786tl72CyJjP/Ngl8mGHN1hST4BGl+hiW5jhCnV2uRVTNOcaYPs73NeT/H8Upm3y9582JVuZHrQ==", "cpu": [ "arm64" ], @@ -371,13 +611,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linux-arm64": "1.2.0" + "@img/sharp-libvips-linux-arm64": "1.2.3" } }, "node_modules/@img/sharp-linux-ppc64": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.3.tgz", - "integrity": "sha512-GLtbLQMCNC5nxuImPR2+RgrviwKwVql28FWZIW1zWruy6zLgA5/x2ZXk3mxj58X/tszVF69KK0Is83V8YgWhLA==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.4.tgz", + "integrity": "sha512-F4PDtF4Cy8L8hXA2p3TO6s4aDt93v+LKmpcYFLAVdkkD3hSxZzee0rh6/+94FpAynsuMpLX5h+LRsSG3rIciUQ==", "cpu": [ "ppc64" ], @@ -393,13 +633,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linux-ppc64": "1.2.0" + "@img/sharp-libvips-linux-ppc64": "1.2.3" } }, "node_modules/@img/sharp-linux-s390x": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.3.tgz", - "integrity": "sha512-3gahT+A6c4cdc2edhsLHmIOXMb17ltffJlxR0aC2VPZfwKoTGZec6u5GrFgdR7ciJSsHT27BD3TIuGcuRT0KmQ==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.4.tgz", + "integrity": "sha512-qVrZKE9Bsnzy+myf7lFKvng6bQzhNUAYcVORq2P7bDlvmF6u2sCmK2KyEQEBdYk+u3T01pVsPrkj943T1aJAsw==", "cpu": [ "s390x" ], @@ -415,13 +655,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linux-s390x": "1.2.0" + "@img/sharp-libvips-linux-s390x": "1.2.3" } }, "node_modules/@img/sharp-linux-x64": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.3.tgz", - "integrity": "sha512-8kYso8d806ypnSq3/Ly0QEw90V5ZoHh10yH0HnrzOCr6DKAPI6QVHvwleqMkVQ0m+fc7EH8ah0BB0QPuWY6zJQ==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.4.tgz", + "integrity": "sha512-ZfGtcp2xS51iG79c6Vhw9CWqQC8l2Ot8dygxoDoIQPTat/Ov3qAa8qpxSrtAEAJW+UjTXc4yxCjNfxm4h6Xm2A==", "cpu": [ "x64" ], @@ -437,13 +677,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linux-x64": "1.2.0" + "@img/sharp-libvips-linux-x64": "1.2.3" } }, "node_modules/@img/sharp-linuxmusl-arm64": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.3.tgz", - "integrity": "sha512-vAjbHDlr4izEiXM1OTggpCcPg9tn4YriK5vAjowJsHwdBIdx0fYRsURkxLG2RLm9gyBq66gwtWI8Gx0/ov+JKQ==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.4.tgz", + "integrity": "sha512-8hDVvW9eu4yHWnjaOOR8kHVrew1iIX+MUgwxSuH2XyYeNRtLUe4VNioSqbNkB7ZYQJj9rUTT4PyRscyk2PXFKA==", "cpu": [ "arm64" ], @@ -459,13 +699,13 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-arm64": "1.2.0" + "@img/sharp-libvips-linuxmusl-arm64": "1.2.3" } }, "node_modules/@img/sharp-linuxmusl-x64": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.3.tgz", - "integrity": "sha512-gCWUn9547K5bwvOn9l5XGAEjVTTRji4aPTqLzGXHvIr6bIDZKNTA34seMPgM0WmSf+RYBH411VavCejp3PkOeQ==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.4.tgz", + "integrity": "sha512-lU0aA5L8QTlfKjpDCEFOZsTYGn3AEiO6db8W5aQDxj0nQkVrZWmN3ZP9sYKWJdtq3PWPhUNlqehWyXpYDcI9Sg==", "cpu": [ "x64" ], @@ -481,20 +721,20 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-x64": "1.2.0" + "@img/sharp-libvips-linuxmusl-x64": "1.2.3" } }, "node_modules/@img/sharp-wasm32": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.3.tgz", - "integrity": "sha512-+CyRcpagHMGteySaWos8IbnXcHgfDn7pO2fiC2slJxvNq9gDipYBN42/RagzctVRKgxATmfqOSulgZv5e1RdMg==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.4.tgz", + "integrity": "sha512-33QL6ZO/qpRyG7woB/HUALz28WnTMI2W1jgX3Nu2bypqLIKx/QKMILLJzJjI+SIbvXdG9fUnmrxR7vbi1sTBeA==", "cpu": [ "wasm32" ], "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", "optional": true, "dependencies": { - "@emnapi/runtime": "^1.4.4" + "@emnapi/runtime": "^1.5.0" }, "engines": { "node": "^18.17.0 || ^20.3.0 || >=21.0.0" @@ -504,9 +744,9 @@ } }, "node_modules/@img/sharp-win32-arm64": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.3.tgz", - "integrity": "sha512-MjnHPnbqMXNC2UgeLJtX4XqoVHHlZNd+nPt1kRPmj63wURegwBhZlApELdtxM2OIZDRv/DFtLcNhVbd1z8GYXQ==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.4.tgz", + "integrity": "sha512-2Q250do/5WXTwxW3zjsEuMSv5sUU4Tq9VThWKlU2EYLm4MB7ZeMwF+SFJutldYODXF6jzc6YEOC+VfX0SZQPqA==", "cpu": [ "arm64" ], @@ -523,9 +763,9 @@ } }, "node_modules/@img/sharp-win32-ia32": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.3.tgz", - "integrity": "sha512-xuCdhH44WxuXgOM714hn4amodJMZl3OEvf0GVTm0BEyMeA2to+8HEdRPShH0SLYptJY1uBw+SCFP9WVQi1Q/cw==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.4.tgz", + "integrity": "sha512-3ZeLue5V82dT92CNL6rsal6I2weKw1cYu+rGKm8fOCCtJTR2gYeUfY3FqUnIJsMUPIH68oS5jmZ0NiJ508YpEw==", "cpu": [ "ia32" ], @@ -542,9 +782,9 @@ } }, "node_modules/@img/sharp-win32-x64": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.3.tgz", - "integrity": "sha512-OWwz05d++TxzLEv4VnsTz5CmZ6mI6S05sfQGEMrNrQcOEERbX46332IvE7pO/EUiw7jUrrS40z/M7kPyjfl04g==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.4.tgz", + "integrity": "sha512-xIyj4wpYs8J18sVN3mSQjwrw7fKUqRw+Z5rnHNCy5fYTxigBz81u5mOMPmFumwjcn8+ld1ppptMBCLic1nz6ig==", "cpu": [ "x64" ], @@ -613,9 +853,9 @@ "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.30", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz", - "integrity": "sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==", + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "dev": true, "license": "MIT", "dependencies": { @@ -623,16 +863,39 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", + "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.10.0" + } + }, "node_modules/@next/env": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/@next/env/-/env-15.5.3.tgz", - "integrity": "sha512-RSEDTRqyihYXygx/OJXwvVupfr9m04+0vH8vyy0HfZ7keRto6VX9BbEk0J2PUk0VGy6YhklJUSrgForov5F9pw==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-15.5.4.tgz", + "integrity": "sha512-27SQhYp5QryzIT5uO8hq99C69eLQ7qkzkDPsk3N+GuS2XgOgoYEeOav7Pf8Tn4drECOVDsDg8oj+/DVy8qQL2A==", "license": "MIT" }, + "node_modules/@next/eslint-plugin-next": { + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-15.5.4.tgz", + "integrity": "sha512-SR1vhXNNg16T4zffhJ4TS7Xn7eq4NfKfcOsRwea7RIAHrjRpI9ALYbamqIJqkAhowLlERffiwk0FMvTLNdnVtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-glob": "3.3.1" + } + }, "node_modules/@next/swc-darwin-arm64": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.5.3.tgz", - "integrity": "sha512-nzbHQo69+au9wJkGKTU9lP7PXv0d1J5ljFpvb+LnEomLtSbJkbZyEs6sbF3plQmiOB2l9OBtN2tNSvCH1nQ9Jg==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.5.4.tgz", + "integrity": "sha512-nopqz+Ov6uvorej8ndRX6HlxCYWCO3AHLfKK2TYvxoSB2scETOcfm/HSS3piPqc3A+MUgyHoqE6je4wnkjfrOA==", "cpu": [ "arm64" ], @@ -646,9 +909,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.5.3.tgz", - "integrity": "sha512-w83w4SkOOhekJOcA5HBvHyGzgV1W/XvOfpkrxIse4uPWhYTTRwtGEM4v/jiXwNSJvfRvah0H8/uTLBKRXlef8g==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.5.4.tgz", + "integrity": "sha512-QOTCFq8b09ghfjRJKfb68kU9k2K+2wsC4A67psOiMn849K9ZXgCSRQr0oVHfmKnoqCbEmQWG1f2h1T2vtJJ9mA==", "cpu": [ "x64" ], @@ -662,9 +925,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.5.3.tgz", - "integrity": "sha512-+m7pfIs0/yvgVu26ieaKrifV8C8yiLe7jVp9SpcIzg7XmyyNE7toC1fy5IOQozmr6kWl/JONC51osih2RyoXRw==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.5.4.tgz", + "integrity": "sha512-eRD5zkts6jS3VfE/J0Kt1VxdFqTnMc3QgO5lFE5GKN3KDI/uUpSyK3CjQHmfEkYR4wCOl0R0XrsjpxfWEA++XA==", "cpu": [ "arm64" ], @@ -678,9 +941,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.5.3.tgz", - "integrity": "sha512-u3PEIzuguSenoZviZJahNLgCexGFhso5mxWCrrIMdvpZn6lkME5vc/ADZG8UUk5K1uWRy4hqSFECrON6UKQBbQ==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.5.4.tgz", + "integrity": "sha512-TOK7iTxmXFc45UrtKqWdZ1shfxuL4tnVAOuuJK4S88rX3oyVV4ZkLjtMT85wQkfBrOOvU55aLty+MV8xmcJR8A==", "cpu": [ "arm64" ], @@ -694,9 +957,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.5.3.tgz", - "integrity": "sha512-lDtOOScYDZxI2BENN9m0pfVPJDSuUkAD1YXSvlJF0DKwZt0WlA7T7o3wrcEr4Q+iHYGzEaVuZcsIbCps4K27sA==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.5.4.tgz", + "integrity": "sha512-7HKolaj+481FSW/5lL0BcTkA4Ueam9SPYWyN/ib/WGAFZf0DGAN8frNpNZYFHtM4ZstrHZS3LY3vrwlIQfsiMA==", "cpu": [ "x64" ], @@ -710,9 +973,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.5.3.tgz", - "integrity": "sha512-9vWVUnsx9PrY2NwdVRJ4dUURAQ8Su0sLRPqcCCxtX5zIQUBES12eRVHq6b70bbfaVaxIDGJN2afHui0eDm+cLg==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.5.4.tgz", + "integrity": "sha512-nlQQ6nfgN0nCO/KuyEUwwOdwQIGjOs4WNMjEUtpIQJPR2NUfmGpW2wkJln1d4nJ7oUzd1g4GivH5GoEPBgfsdw==", "cpu": [ "x64" ], @@ -726,9 +989,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.5.3.tgz", - "integrity": "sha512-1CU20FZzY9LFQigRi6jM45oJMU3KziA5/sSG+dXeVaTm661snQP6xu3ykGxxwU5sLG3sh14teO/IOEPVsQMRfA==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.5.4.tgz", + "integrity": "sha512-PcR2bN7FlM32XM6eumklmyWLLbu2vs+D7nJX8OAIoWy69Kef8mfiN4e8TUv2KohprwifdpFKPzIP1njuCjD0YA==", "cpu": [ "arm64" ], @@ -742,9 +1005,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.5.3.tgz", - "integrity": "sha512-JMoLAq3n3y5tKXPQwCK5c+6tmwkuFDa2XAxz8Wm4+IVthdBZdZGh+lmiLUHg9f9IDwIQpUjp+ysd6OkYTyZRZw==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.5.4.tgz", + "integrity": "sha512-1ur2tSHZj8Px/KMAthmuI9FMp/YFusMMGoRNJaRZMOlSkgvLjzosSdQI0cJAKogdHl3qXUQKL9MGaYvKwA7DXg==", "cpu": [ "x64" ], @@ -757,6 +1020,54 @@ "node": ">= 10" } }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nolyfill/is-core-module": { + "version": "1.0.39", + "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", + "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.4.0" + } + }, "node_modules/@radix-ui/number": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", @@ -1663,6 +1974,20 @@ "integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==", "license": "MIT" }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.12.0.tgz", + "integrity": "sha512-5EwMtOqvJMMa3HbmxLlF74e+3/HhwBTMcvt3nqVJgGCozO6hzIPOBlwm8mGVNR9SN2IJpxSnlxczyDjcn7qIyw==", + "dev": true, + "license": "MIT" + }, "node_modules/@standard-schema/utils": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/@standard-schema/utils/-/utils-0.3.0.tgz", @@ -1679,9 +2004,9 @@ } }, "node_modules/@tailwindcss/node": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.12.tgz", - "integrity": "sha512-3hm9brwvQkZFe++SBt+oLjo4OLDtkvlE8q2WalaD/7QWaeM7KEJbAiY/LJZUaCs7Xa8aUu4xy3uoyX4q54UVdQ==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.13.tgz", + "integrity": "sha512-eq3ouolC1oEFOAvOMOBAmfCIqZBJuvWvvYWh5h5iOYfe1HFC6+GZ6EIL0JdM3/niGRJmnrOc+8gl9/HGUaaptw==", "dev": true, "license": "MIT", "dependencies": { @@ -1689,15 +2014,15 @@ "enhanced-resolve": "^5.18.3", "jiti": "^2.5.1", "lightningcss": "1.30.1", - "magic-string": "^0.30.17", + "magic-string": "^0.30.18", "source-map-js": "^1.2.1", - "tailwindcss": "4.1.12" + "tailwindcss": "4.1.13" } }, "node_modules/@tailwindcss/oxide": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.12.tgz", - "integrity": "sha512-gM5EoKHW/ukmlEtphNwaGx45fGoEmP10v51t9unv55voWh6WrOL19hfuIdo2FjxIaZzw776/BUQg7Pck++cIVw==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.13.tgz", + "integrity": "sha512-CPgsM1IpGRa880sMbYmG1s4xhAy3xEt1QULgTJGQmZUeNgXFR7s1YxYygmJyBGtou4SyEosGAGEeYqY7R53bIA==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1709,24 +2034,24 @@ "node": ">= 10" }, "optionalDependencies": { - "@tailwindcss/oxide-android-arm64": "4.1.12", - "@tailwindcss/oxide-darwin-arm64": "4.1.12", - "@tailwindcss/oxide-darwin-x64": "4.1.12", - "@tailwindcss/oxide-freebsd-x64": "4.1.12", - "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.12", - "@tailwindcss/oxide-linux-arm64-gnu": "4.1.12", - "@tailwindcss/oxide-linux-arm64-musl": "4.1.12", - "@tailwindcss/oxide-linux-x64-gnu": "4.1.12", - "@tailwindcss/oxide-linux-x64-musl": "4.1.12", - "@tailwindcss/oxide-wasm32-wasi": "4.1.12", - "@tailwindcss/oxide-win32-arm64-msvc": "4.1.12", - "@tailwindcss/oxide-win32-x64-msvc": "4.1.12" + "@tailwindcss/oxide-android-arm64": "4.1.13", + "@tailwindcss/oxide-darwin-arm64": "4.1.13", + "@tailwindcss/oxide-darwin-x64": "4.1.13", + "@tailwindcss/oxide-freebsd-x64": "4.1.13", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.13", + "@tailwindcss/oxide-linux-arm64-gnu": "4.1.13", + "@tailwindcss/oxide-linux-arm64-musl": "4.1.13", + "@tailwindcss/oxide-linux-x64-gnu": "4.1.13", + "@tailwindcss/oxide-linux-x64-musl": "4.1.13", + "@tailwindcss/oxide-wasm32-wasi": "4.1.13", + "@tailwindcss/oxide-win32-arm64-msvc": "4.1.13", + "@tailwindcss/oxide-win32-x64-msvc": "4.1.13" } }, "node_modules/@tailwindcss/oxide-android-arm64": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.12.tgz", - "integrity": "sha512-oNY5pq+1gc4T6QVTsZKwZaGpBb2N1H1fsc1GD4o7yinFySqIuRZ2E4NvGasWc6PhYJwGK2+5YT1f9Tp80zUQZQ==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.13.tgz", + "integrity": "sha512-BrpTrVYyejbgGo57yc8ieE+D6VT9GOgnNdmh5Sac6+t0m+v+sKQevpFVpwX3pBrM2qKrQwJ0c5eDbtjouY/+ew==", "cpu": [ "arm64" ], @@ -1741,9 +2066,9 @@ } }, "node_modules/@tailwindcss/oxide-darwin-arm64": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.12.tgz", - "integrity": "sha512-cq1qmq2HEtDV9HvZlTtrj671mCdGB93bVY6J29mwCyaMYCP/JaUBXxrQQQm7Qn33AXXASPUb2HFZlWiiHWFytw==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.13.tgz", + "integrity": "sha512-YP+Jksc4U0KHcu76UhRDHq9bx4qtBftp9ShK/7UGfq0wpaP96YVnnjFnj3ZFrUAjc5iECzODl/Ts0AN7ZPOANQ==", "cpu": [ "arm64" ], @@ -1758,9 +2083,9 @@ } }, "node_modules/@tailwindcss/oxide-darwin-x64": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.12.tgz", - "integrity": "sha512-6UCsIeFUcBfpangqlXay9Ffty9XhFH1QuUFn0WV83W8lGdX8cD5/+2ONLluALJD5+yJ7k8mVtwy3zMZmzEfbLg==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.13.tgz", + "integrity": "sha512-aAJ3bbwrn/PQHDxCto9sxwQfT30PzyYJFG0u/BWZGeVXi5Hx6uuUOQEI2Fa43qvmUjTRQNZnGqe9t0Zntexeuw==", "cpu": [ "x64" ], @@ -1775,9 +2100,9 @@ } }, "node_modules/@tailwindcss/oxide-freebsd-x64": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.12.tgz", - "integrity": "sha512-JOH/f7j6+nYXIrHobRYCtoArJdMJh5zy5lr0FV0Qu47MID/vqJAY3r/OElPzx1C/wdT1uS7cPq+xdYYelny1ww==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.13.tgz", + "integrity": "sha512-Wt8KvASHwSXhKE/dJLCCWcTSVmBj3xhVhp/aF3RpAhGeZ3sVo7+NTfgiN8Vey/Fi8prRClDs6/f0KXPDTZE6nQ==", "cpu": [ "x64" ], @@ -1792,9 +2117,9 @@ } }, "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.12.tgz", - "integrity": "sha512-v4Ghvi9AU1SYgGr3/j38PD8PEe6bRfTnNSUE3YCMIRrrNigCFtHZ2TCm8142X8fcSqHBZBceDx+JlFJEfNg5zQ==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.13.tgz", + "integrity": "sha512-mbVbcAsW3Gkm2MGwA93eLtWrwajz91aXZCNSkGTx/R5eb6KpKD5q8Ueckkh9YNboU8RH7jiv+ol/I7ZyQ9H7Bw==", "cpu": [ "arm" ], @@ -1809,9 +2134,9 @@ } }, "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.12.tgz", - "integrity": "sha512-YP5s1LmetL9UsvVAKusHSyPlzSRqYyRB0f+Kl/xcYQSPLEw/BvGfxzbH+ihUciePDjiXwHh+p+qbSP3SlJw+6g==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.13.tgz", + "integrity": "sha512-wdtfkmpXiwej/yoAkrCP2DNzRXCALq9NVLgLELgLim1QpSfhQM5+ZxQQF8fkOiEpuNoKLp4nKZ6RC4kmeFH0HQ==", "cpu": [ "arm64" ], @@ -1826,9 +2151,9 @@ } }, "node_modules/@tailwindcss/oxide-linux-arm64-musl": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.12.tgz", - "integrity": "sha512-V8pAM3s8gsrXcCv6kCHSuwyb/gPsd863iT+v1PGXC4fSL/OJqsKhfK//v8P+w9ThKIoqNbEnsZqNy+WDnwQqCA==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.13.tgz", + "integrity": "sha512-hZQrmtLdhyqzXHB7mkXfq0IYbxegaqTmfa1p9MBj72WPoDD3oNOh1Lnxf6xZLY9C3OV6qiCYkO1i/LrzEdW2mg==", "cpu": [ "arm64" ], @@ -1843,9 +2168,9 @@ } }, "node_modules/@tailwindcss/oxide-linux-x64-gnu": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.12.tgz", - "integrity": "sha512-xYfqYLjvm2UQ3TZggTGrwxjYaLB62b1Wiysw/YE3Yqbh86sOMoTn0feF98PonP7LtjsWOWcXEbGqDL7zv0uW8Q==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.13.tgz", + "integrity": "sha512-uaZTYWxSXyMWDJZNY1Ul7XkJTCBRFZ5Fo6wtjrgBKzZLoJNrG+WderJwAjPzuNZOnmdrVg260DKwXCFtJ/hWRQ==", "cpu": [ "x64" ], @@ -1860,9 +2185,9 @@ } }, "node_modules/@tailwindcss/oxide-linux-x64-musl": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.12.tgz", - "integrity": "sha512-ha0pHPamN+fWZY7GCzz5rKunlv9L5R8kdh+YNvP5awe3LtuXb5nRi/H27GeL2U+TdhDOptU7T6Is7mdwh5Ar3A==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.13.tgz", + "integrity": "sha512-oXiPj5mi4Hdn50v5RdnuuIms0PVPI/EG4fxAfFiIKQh5TgQgX7oSuDWntHW7WNIi/yVLAiS+CRGW4RkoGSSgVQ==", "cpu": [ "x64" ], @@ -1877,9 +2202,9 @@ } }, "node_modules/@tailwindcss/oxide-wasm32-wasi": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.12.tgz", - "integrity": "sha512-4tSyu3dW+ktzdEpuk6g49KdEangu3eCYoqPhWNsZgUhyegEda3M9rG0/j1GV/JjVVsj+lG7jWAyrTlLzd/WEBg==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.13.tgz", + "integrity": "sha512-+LC2nNtPovtrDwBc/nqnIKYh/W2+R69FA0hgoeOn64BdCX522u19ryLh3Vf3F8W49XBcMIxSe665kwy21FkhvA==", "bundleDependencies": [ "@napi-rs/wasm-runtime", "@emnapi/core", @@ -1907,9 +2232,9 @@ } }, "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.12.tgz", - "integrity": "sha512-iGLyD/cVP724+FGtMWslhcFyg4xyYyM+5F4hGvKA7eifPkXHRAUDFaimu53fpNg9X8dfP75pXx/zFt/jlNF+lg==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.13.tgz", + "integrity": "sha512-dziTNeQXtoQ2KBXmrjCxsuPk3F3CQ/yb7ZNZNA+UkNTeiTGgfeh+gH5Pi7mRncVgcPD2xgHvkFCh/MhZWSgyQg==", "cpu": [ "arm64" ], @@ -1924,9 +2249,9 @@ } }, "node_modules/@tailwindcss/oxide-win32-x64-msvc": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.12.tgz", - "integrity": "sha512-NKIh5rzw6CpEodv/++r0hGLlfgT/gFN+5WNdZtvh6wpU2BpGNgdjvj6H2oFc8nCM839QM1YOhjpgbAONUb4IxA==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.13.tgz", + "integrity": "sha512-3+LKesjXydTkHk5zXX01b5KMzLV1xl2mcktBJkje7rhFUpUlYJy7IMOLqjIRQncLTa1WZZiFY/foAeB5nmaiTw==", "cpu": [ "x64" ], @@ -1941,17 +2266,17 @@ } }, "node_modules/@tailwindcss/postcss": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.1.12.tgz", - "integrity": "sha512-5PpLYhCAwf9SJEeIsSmCDLgyVfdBhdBpzX1OJ87anT9IVR0Z9pjM0FNixCAUAHGnMBGB8K99SwAheXrT0Kh6QQ==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.1.13.tgz", + "integrity": "sha512-HLgx6YSFKJT7rJqh9oJs/TkBFhxuMOfUKSBEPYwV+t78POOBsdQ7crhZLzwcH3T0UyUuOzU/GK5pk5eKr3wCiQ==", "dev": true, "license": "MIT", "dependencies": { "@alloc/quick-lru": "^5.2.0", - "@tailwindcss/node": "4.1.12", - "@tailwindcss/oxide": "4.1.12", + "@tailwindcss/node": "4.1.13", + "@tailwindcss/oxide": "4.1.13", "postcss": "^8.4.41", - "tailwindcss": "4.1.12" + "tailwindcss": "4.1.13" } }, "node_modules/@tinymce/tinymce-react": { @@ -1973,6 +2298,25 @@ } } }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT", + "peer": true + }, "node_modules/@types/js-cookie": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-3.0.6.tgz", @@ -1980,6 +2324,21 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/jsonwebtoken": { "version": "9.0.10", "resolved": "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-9.0.10.tgz", @@ -1999,9 +2358,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "20.19.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.11.tgz", - "integrity": "sha512-uug3FEEGv0r+jrecvUUpbY8lLisvIjg6AAic6a2bSP5OEOLeJsDSnvhCDov7ipFFMXS3orMpzlmi0ZcuGkBbow==", + "version": "20.19.17", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.17.tgz", + "integrity": "sha512-gfehUI8N1z92kygssiuWvLiwcbOB3IRktR6hTDgJlXMYh5OvkPSRmgfoBUmfZt+vhwJtX7v1Yw4KvvAf7c5QKQ==", "dev": true, "license": "MIT", "dependencies": { @@ -2009,9 +2368,9 @@ } }, "node_modules/@types/react": { - "version": "19.1.10", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.10.tgz", - "integrity": "sha512-EhBeSYX0Y6ye8pNebpKrwFJq7BoQ8J5SO6NlvNwwHjSj6adXJViPQrKlsyPw7hLBLvckEMO1yxeGdR82YBBlDg==", + "version": "19.1.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.14.tgz", + "integrity": "sha512-ukd93VGzaNPMAUPy0gRDSC57UuQbnH9Kussp7HBjM06YFi9uZTFhOvMSO2OKqXm1rSgzOE+pVx1k1PYHGwlc8Q==", "devOptional": true, "license": "MIT", "dependencies": { @@ -2019,15 +2378,640 @@ } }, "node_modules/@types/react-dom": { - "version": "19.1.7", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.1.7.tgz", - "integrity": "sha512-i5ZzwYpqjmrKenzkoLM2Ibzt6mAsM7pxB6BCIouEVVmgiqaMj1TjaK7hnA36hbW5aZv20kx7Lw6hWzPWg0Rurw==", + "version": "19.1.9", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.1.9.tgz", + "integrity": "sha512-qXRuZaOsAdXKFyOhRBg6Lqqc0yay13vN7KrIg4L7N4aaHN68ma9OK3NE1BoDFgFOTfM7zg+3/8+2n8rLUH3OKQ==", "devOptional": true, "license": "MIT", "peerDependencies": { "@types/react": "^19.0.0" } }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.44.1.tgz", + "integrity": "sha512-molgphGqOBT7t4YKCSkbasmu1tb1MgrZ2szGzHbclF7PNmOkSTQVHy+2jXOSnxvR3+Xe1yySHFZoqMpz3TfQsw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "8.44.1", + "@typescript-eslint/type-utils": "8.44.1", + "@typescript-eslint/utils": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1", + "graphemer": "^1.4.0", + "ignore": "^7.0.0", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.44.1", + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.44.1.tgz", + "integrity": "sha512-EHrrEsyhOhxYt8MTg4zTF+DJMuNBzWwgvvOYNj/zm1vnaD/IC5zCXFehZv94Piqa2cRFfXrTFxIvO95L7Qc/cw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/scope-manager": "8.44.1", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/typescript-estree": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.44.1.tgz", + "integrity": "sha512-ycSa60eGg8GWAkVsKV4E6Nz33h+HjTXbsDT4FILyL8Obk5/mx4tbvCNsLf9zret3ipSumAOG89UcCs/KRaKYrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.44.1", + "@typescript-eslint/types": "^8.44.1", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.44.1.tgz", + "integrity": "sha512-NdhWHgmynpSvyhchGLXh+w12OMT308Gm25JoRIyTZqEbApiBiQHD/8xgb6LqCWCFcxFtWwaVdFsLPQI3jvhywg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.44.1.tgz", + "integrity": "sha512-B5OyACouEjuIvof3o86lRMvyDsFwZm+4fBOqFHccIctYgBjqR3qT39FBYGN87khcgf0ExpdCBeGKpKRhSFTjKQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.44.1.tgz", + "integrity": "sha512-KdEerZqHWXsRNKjF9NYswNISnFzXfXNDfPxoTh7tqohU/PRIbwTmsjGK6V9/RTYWau7NZvfo52lgVk+sJh0K3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/typescript-estree": "8.44.1", + "@typescript-eslint/utils": "8.44.1", + "debug": "^4.3.4", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.1.tgz", + "integrity": "sha512-Lk7uj7y9uQUOEguiDIDLYLJOrYHQa7oBiURYVFqIpGxclAFQ78f6VUOM8lI2XEuNOKNB7XuvM2+2cMXAoq4ALQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.44.1.tgz", + "integrity": "sha512-qnQJ+mVa7szevdEyvfItbO5Vo+GfZ4/GZWWDRRLjrxYPkhM+6zYB2vRYwCsoJLzqFCdZT4mEqyJoyzkunsZ96A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.44.1", + "@typescript-eslint/tsconfig-utils": "8.44.1", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.44.1.tgz", + "integrity": "sha512-DpX5Fp6edTlocMCwA+mHY8Mra+pPjRZ0TfHkXI8QFelIKcbADQz1LUPNtzOFUriBB2UYqw4Pi9+xV4w9ZczHFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.7.0", + "@typescript-eslint/scope-manager": "8.44.1", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/typescript-estree": "8.44.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.44.1.tgz", + "integrity": "sha512-576+u0QD+Jp3tZzvfRfxon0EA2lzcDt3lhUbsC6Lgzy9x2VR4E+JUiNyGHi5T8vk0TV+fpJ5GLG1JsJuWCaKhw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.44.1", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@unrs/resolver-binding-android-arm-eabi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", + "integrity": "sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-android-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", + "integrity": "sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", + "integrity": "sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", + "integrity": "sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-freebsd-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", + "integrity": "sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", + "integrity": "sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", + "integrity": "sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", + "integrity": "sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", + "integrity": "sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", + "integrity": "sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", + "integrity": "sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", + "integrity": "sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", + "integrity": "sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", + "integrity": "sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", + "integrity": "sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", + "integrity": "sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.11" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", + "integrity": "sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", + "integrity": "sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-x64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", + "integrity": "sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peer": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0", + "peer": true + }, "node_modules/aria-hidden": { "version": "1.2.6", "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", @@ -2040,16 +3024,331 @@ "node": ">=10" } }, + "node_modules/aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.3.tgz", + "integrity": "sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==", + "dev": true, + "license": "MPL-2.0", + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/buffer-equal-constant-time": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", "license": "BSD-3-Clause" }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, "node_modules/caniuse-lite": { - "version": "1.0.30001735", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001735.tgz", - "integrity": "sha512-EV/laoX7Wq2J9TQlyIXRxTJqIw4sxfXS4OYgudGxBYRuTv0q7AM6yMEpU/Vo1I94thg9U6EZ2NfZx9GJq83u7w==", + "version": "1.0.30001745", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001745.tgz", + "integrity": "sha512-ywt6i8FzvdgrrrGbr1jZVObnVv6adj+0if2/omv9cmR2oiZs30zL4DIyaptKcbOrBdOIc74QTMoJvSE2QHh5UQ==", "funding": [ { "type": "opencollective", @@ -2066,6 +3365,24 @@ ], "license": "CC-BY-4.0" }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, "node_modules/chownr": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", @@ -2103,26 +3420,13 @@ "node": ">=6" } }, - "node_modules/color": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", - "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "license": "MIT", - "optional": true, - "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - }, - "engines": { - "node": ">=12.5.0" - } - }, "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "license": "MIT", - "optional": true, + "peer": true, "dependencies": { "color-name": "~1.1.4" }, @@ -2134,19 +3438,16 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, "license": "MIT", - "optional": true + "peer": true }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "license": "MIT", - "optional": true, - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" }, "node_modules/cookie": { "version": "1.0.2", @@ -2170,6 +3471,22 @@ "react": ">= 16.8.0" } }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/csstype": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", @@ -2177,10 +3494,133 @@ "devOptional": true, "license": "MIT" }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/detect-libc": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", - "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.1.tgz", + "integrity": "sha512-ecqj/sy1jcK1uWrwpR67UhYrIFQ+5WlGxth34WquCbamhFA6hkkwiu37o6J5xCHdo1oixJRfVRw+ywV+Hq/0Aw==", "devOptional": true, "license": "Apache-2.0", "engines": { @@ -2193,6 +3633,34 @@ "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", "license": "MIT" }, + "node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/ecdsa-sig-formatter": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", @@ -2202,6 +3670,13 @@ "safe-buffer": "^5.0.1" } }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" + }, "node_modules/enhanced-resolve": { "version": "5.18.3", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz", @@ -2216,12 +3691,848 @@ "node": ">=10.13.0" } }, + "node_modules/es-abstract": { + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", + "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.6", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.4", + "safe-array-concat": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.36.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.36.0.tgz", + "integrity": "sha512-hB4FIzXovouYzwzECDcUkJ4OcfOEkXTv2zRY6B9bkwjx/cprAq0uvm1nl7zvQ0/TsUk0zQiN4uPfJpB9m+rPMQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.0", + "@eslint/config-helpers": "^0.3.1", + "@eslint/core": "^0.15.2", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.36.0", + "@eslint/plugin-kit": "^0.3.5", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-config-next": { + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-15.5.4.tgz", + "integrity": "sha512-BzgVVuT3kfJes8i2GHenC1SRJ+W3BTML11lAOYFOOPzrk2xp66jBOAGEFRw+3LkYCln5UzvFsLhojrshb5Zfaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@next/eslint-plugin-next": "15.5.4", + "@rushstack/eslint-patch": "^1.10.3", + "@typescript-eslint/eslint-plugin": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.31.0", + "eslint-plugin-jsx-a11y": "^6.10.0", + "eslint-plugin-react": "^7.37.0", + "eslint-plugin-react-hooks": "^5.0.0" + }, + "peerDependencies": { + "eslint": "^7.23.0 || ^8.0.0 || ^9.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.10.1.tgz", + "integrity": "sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@nolyfill/is-core-module": "1.0.39", + "debug": "^4.4.0", + "get-tsconfig": "^4.10.0", + "is-bun-module": "^2.0.0", + "stable-hash": "^0.0.5", + "tinyglobby": "^0.2.13", + "unrs-resolver": "^1.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-import-resolver-typescript" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*", + "eslint-plugin-import-x": "*" + }, + "peerDependenciesMeta": { + "eslint-plugin-import": { + "optional": true + }, + "eslint-plugin-import-x": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", + "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.9", + "array.prototype.findlastindex": "^1.2.6", + "array.prototype.flat": "^1.3.3", + "array.prototype.flatmap": "^1.3.3", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.12.1", + "hasown": "^2.0.2", + "is-core-module": "^2.16.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.1", + "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.9", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.37.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", + "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.9", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz", + "integrity": "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/faker-js": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/faker-js/-/faker-js-1.0.0.tgz", "integrity": "sha512-kaToadbN63LWhHjl69pqG+YHlxAK0aZAPhQDUpVP7v7+RG//ZpK0OzXjCwaAQq98awOii0WSHxtJmIz0X7/UqQ==", "license": "ISC" }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/get-nonce": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", @@ -2231,6 +4542,109 @@ "node": ">=6" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-tsconfig": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.1.tgz", + "integrity": "sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", @@ -2238,17 +4652,601 @@ "dev": true, "license": "ISC" }, - "node_modules/is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "license": "MIT" + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, "license": "MIT", - "optional": true + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bun-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz", + "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.7.1" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/iterator.prototype": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", + "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "get-proto": "^1.0.0", + "has-symbols": "^1.1.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } }, "node_modules/jiti": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.5.1.tgz", - "integrity": "sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.0.tgz", + "integrity": "sha512-VXe6RjJkBPj0ohtqaO8vSWP3ZhAKo66fKrFNCll4BTcwljPLz03pCbaNKfzGP5MbrCYcbJ7v0nOYYwUzTEIdXQ==", "dev": true, "license": "MIT", "bin": { @@ -2270,6 +5268,57 @@ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "license": "MIT" }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, "node_modules/jsonwebtoken": { "version": "9.0.2", "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", @@ -2292,6 +5341,22 @@ "npm": ">=6" } }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + }, + "engines": { + "node": ">=4.0" + } + }, "node_modules/jwa": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.2.tgz", @@ -2322,6 +5387,52 @@ "node": ">=18" } }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", + "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/language-tags": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", + "dev": true, + "license": "MIT", + "dependencies": { + "language-subtag-registry": "^0.3.20" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, "node_modules/lightningcss": { "version": "1.30.1", "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.1.tgz", @@ -2561,6 +5672,23 @@ "url": "https://opencollective.com/parcel" } }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/lodash.includes": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", @@ -2597,6 +5725,14 @@ "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", "license": "MIT" }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT", + "peer": true + }, "node_modules/lodash.once": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", @@ -2625,13 +5761,70 @@ } }, "node_modules/magic-string": { - "version": "0.30.17", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", - "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "version": "0.30.19", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.19.tgz", + "integrity": "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==", "dev": true, "license": "MIT", "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0" + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/minipass": { @@ -2645,9 +5838,9 @@ } }, "node_modules/minizlib": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.2.tgz", - "integrity": "sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", "dev": true, "license": "MIT", "dependencies": { @@ -2657,22 +5850,6 @@ "node": ">= 18" } }, - "node_modules/mkdirp": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz", - "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==", - "dev": true, - "license": "MIT", - "bin": { - "mkdirp": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -2697,13 +5874,36 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, + "node_modules/napi-postinstall": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.3.tgz", + "integrity": "sha512-uTp172LLXSxuSYHv/kou+f6KW3SMppU9ivthaVTXian9sOt3XM/zHYHpRZiLgQoxeWfYUnslNWQHF1+G71xcow==", + "dev": true, + "license": "MIT", + "bin": { + "napi-postinstall": "lib/cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/napi-postinstall" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, "node_modules/next": { - "version": "15.5.3", - "resolved": "https://registry.npmjs.org/next/-/next-15.5.3.tgz", - "integrity": "sha512-r/liNAx16SQj4D+XH/oI1dlpv9tdKJ6cONYPwwcCC46f2NjpaRWY+EKCzULfgQYV6YKXjHBchff2IZBSlZmJNw==", + "version": "15.5.4", + "resolved": "https://registry.npmjs.org/next/-/next-15.5.4.tgz", + "integrity": "sha512-xH4Yjhb82sFYQfY3vbkJfgSDgXvBB6a8xPs9i35k6oZJRoQRihZH+4s9Yo2qsWpzBmZ3lPXaJ2KPXLfkvW4LnA==", "license": "MIT", "dependencies": { - "@next/env": "15.5.3", + "@next/env": "15.5.4", "@swc/helpers": "0.5.15", "caniuse-lite": "^1.0.30001579", "postcss": "8.4.31", @@ -2716,14 +5916,14 @@ "node": "^18.18.0 || ^19.8.0 || >= 20.0.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "15.5.3", - "@next/swc-darwin-x64": "15.5.3", - "@next/swc-linux-arm64-gnu": "15.5.3", - "@next/swc-linux-arm64-musl": "15.5.3", - "@next/swc-linux-x64-gnu": "15.5.3", - "@next/swc-linux-x64-musl": "15.5.3", - "@next/swc-win32-arm64-msvc": "15.5.3", - "@next/swc-win32-x64-msvc": "15.5.3", + "@next/swc-darwin-arm64": "15.5.4", + "@next/swc-darwin-x64": "15.5.4", + "@next/swc-linux-arm64-gnu": "15.5.4", + "@next/swc-linux-arm64-musl": "15.5.4", + "@next/swc-linux-x64-gnu": "15.5.4", + "@next/swc-linux-x64-musl": "15.5.4", + "@next/swc-win32-arm64-msvc": "15.5.4", + "@next/swc-win32-x64-msvc": "15.5.4", "sharp": "^0.34.3" }, "peerDependencies": { @@ -2796,12 +5996,262 @@ "node": ">=0.10.0" } }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, "node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "license": "ISC" }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/postcss": { "version": "8.5.6", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", @@ -2831,6 +6281,17 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8.0" + } + }, "node_modules/prop-types": { "version": "15.8.1", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", @@ -2842,6 +6303,38 @@ "react-is": "^16.13.1" } }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/react": { "version": "19.1.0", "resolved": "https://registry.npmjs.org/react/-/react-19.1.0.tgz", @@ -2864,9 +6357,9 @@ } }, "node_modules/react-hook-form": { - "version": "7.62.0", - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.62.0.tgz", - "integrity": "sha512-7KWFejc98xqG/F4bAxpL41NB3o1nnvQO1RWZT3TqRZYL8RryQETGfEdVnJN2fy1crCiBLLjkRBVK05j24FxJGA==", + "version": "7.63.0", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.63.0.tgz", + "integrity": "sha512-ZwueDMvUeucovM2VjkCf7zIHcs1aAlDimZu2Hvel5C5907gUzMpm4xCrQXtRzCvsBqFjonB4m3x4LzCFI1ZKWA==", "license": "MIT", "engines": { "node": ">=18.0.0" @@ -2954,6 +6447,147 @@ } } }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -2974,6 +6608,41 @@ ], "license": "MIT" }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/scheduler": { "version": "0.26.0", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", @@ -2992,16 +6661,65 @@ "node": ">=10" } }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/sharp": { - "version": "0.34.3", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.3.tgz", - "integrity": "sha512-eX2IQ6nFohW4DbvHIOLRB3MHFpYqaqvXd3Tp5e/T/dSH83fxaNJQRvDMhASmkNTsNTVF2/OOopzRCt7xokgPfg==", + "version": "0.34.4", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.4.tgz", + "integrity": "sha512-FUH39xp3SBPnxWvd5iib1X8XY7J0K0X7d93sie9CJg2PO8/7gmg89Nve6OjItK53/MlAushNNxteBYfM6DEuoA==", "hasInstallScript": true, "license": "Apache-2.0", "optional": true, "dependencies": { - "color": "^4.2.3", - "detect-libc": "^2.0.4", + "@img/colour": "^1.0.0", + "detect-libc": "^2.1.0", "semver": "^7.7.2" }, "engines": { @@ -3011,38 +6729,129 @@ "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-darwin-arm64": "0.34.3", - "@img/sharp-darwin-x64": "0.34.3", - "@img/sharp-libvips-darwin-arm64": "1.2.0", - "@img/sharp-libvips-darwin-x64": "1.2.0", - "@img/sharp-libvips-linux-arm": "1.2.0", - "@img/sharp-libvips-linux-arm64": "1.2.0", - "@img/sharp-libvips-linux-ppc64": "1.2.0", - "@img/sharp-libvips-linux-s390x": "1.2.0", - "@img/sharp-libvips-linux-x64": "1.2.0", - "@img/sharp-libvips-linuxmusl-arm64": "1.2.0", - "@img/sharp-libvips-linuxmusl-x64": "1.2.0", - "@img/sharp-linux-arm": "0.34.3", - "@img/sharp-linux-arm64": "0.34.3", - "@img/sharp-linux-ppc64": "0.34.3", - "@img/sharp-linux-s390x": "0.34.3", - "@img/sharp-linux-x64": "0.34.3", - "@img/sharp-linuxmusl-arm64": "0.34.3", - "@img/sharp-linuxmusl-x64": "0.34.3", - "@img/sharp-wasm32": "0.34.3", - "@img/sharp-win32-arm64": "0.34.3", - "@img/sharp-win32-ia32": "0.34.3", - "@img/sharp-win32-x64": "0.34.3" + "@img/sharp-darwin-arm64": "0.34.4", + "@img/sharp-darwin-x64": "0.34.4", + "@img/sharp-libvips-darwin-arm64": "1.2.3", + "@img/sharp-libvips-darwin-x64": "1.2.3", + "@img/sharp-libvips-linux-arm": "1.2.3", + "@img/sharp-libvips-linux-arm64": "1.2.3", + "@img/sharp-libvips-linux-ppc64": "1.2.3", + "@img/sharp-libvips-linux-s390x": "1.2.3", + "@img/sharp-libvips-linux-x64": "1.2.3", + "@img/sharp-libvips-linuxmusl-arm64": "1.2.3", + "@img/sharp-libvips-linuxmusl-x64": "1.2.3", + "@img/sharp-linux-arm": "0.34.4", + "@img/sharp-linux-arm64": "0.34.4", + "@img/sharp-linux-ppc64": "0.34.4", + "@img/sharp-linux-s390x": "0.34.4", + "@img/sharp-linux-x64": "0.34.4", + "@img/sharp-linuxmusl-arm64": "0.34.4", + "@img/sharp-linuxmusl-x64": "0.34.4", + "@img/sharp-wasm32": "0.34.4", + "@img/sharp-win32-arm64": "0.34.4", + "@img/sharp-win32-ia32": "0.34.4", + "@img/sharp-win32-x64": "0.34.4" } }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, "license": "MIT", - "optional": true, + "peer": true, "dependencies": { - "is-arrayish": "^0.3.1" + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/sonner": { @@ -3064,6 +6873,164 @@ "node": ">=0.10.0" } }, + "node_modules/stable-hash": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", + "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", + "dev": true, + "license": "MIT" + }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.includes": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", + "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.3", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/styled-jsx": { "version": "5.1.6", "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz", @@ -3087,6 +7054,33 @@ } } }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/tailwind-merge": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-3.3.1.tgz", @@ -3098,46 +7092,136 @@ } }, "node_modules/tailwindcss": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.12.tgz", - "integrity": "sha512-DzFtxOi+7NsFf7DBtI3BJsynR+0Yp6etH+nRPTbpWnS2pZBaSksv/JGctNwSWzbFjp0vxSqknaUylseZqMDGrA==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.13.tgz", + "integrity": "sha512-i+zidfmTqtwquj4hMEwdjshYYgMbOrPzb9a0M3ZgNa0JMoZeFC6bxZvO8yr8ozS6ix2SDz0+mvryPeBs2TFE+w==", "dev": true, "license": "MIT" }, "node_modules/tapable": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.2.tgz", - "integrity": "sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.3.tgz", + "integrity": "sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg==", "dev": true, "license": "MIT", "engines": { "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, "node_modules/tar": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz", - "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==", + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.1.tgz", + "integrity": "sha512-nlGpxf+hv0v7GkWBK2V9spgactGOp0qvfWRxUMjqHyzrt3SgwE48DIv/FhqPHJYLHpgW1opq3nERbz5Anq7n1g==", "dev": true, "license": "ISC", "dependencies": { "@isaacs/fs-minipass": "^4.0.0", "chownr": "^3.0.0", "minipass": "^7.1.2", - "minizlib": "^3.0.1", - "mkdirp": "^3.0.1", + "minizlib": "^3.1.0", "yallist": "^5.0.0" }, "engines": { "node": ">=18" } }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/tinymce": { "version": "8.1.2", "resolved": "https://registry.npmjs.org/tinymce/-/tinymce-8.1.2.tgz", "integrity": "sha512-KITxHEEHRlxC5xOnxA123eAJ67NgsWxNphtItWt9TRu07DiTZrWIqJeIKRX9euE51/l3kJO4WQiqoBXKTJJGsA==", "license": "GPL-2.0-or-later" }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, "node_modules/tslib": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", @@ -3145,15 +7229,107 @@ "license": "0BSD" }, "node_modules/tw-animate-css": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/tw-animate-css/-/tw-animate-css-1.3.7.tgz", - "integrity": "sha512-lvLb3hTIpB5oGsk8JmLoAjeCHV58nKa2zHYn8yWOoG5JJusH3bhJlF2DLAZ/5NmJ+jyH3ssiAx/2KmbhavJy/A==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/tw-animate-css/-/tw-animate-css-1.4.0.tgz", + "integrity": "sha512-7bziOlRqH0hJx80h/3mbicLW7o8qLsH5+RaLR2t+OHM3D0JlWGODQKQ4cxbK7WlvmUxpcj6Kgu6EKqjrGFe3QQ==", "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/Wombosvideo" } }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/typescript": { "version": "5.9.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz", @@ -3168,6 +7344,25 @@ "node": ">=14.17" } }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/undici-types": { "version": "6.21.0", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", @@ -3175,6 +7370,52 @@ "dev": true, "license": "MIT" }, + "node_modules/unrs-resolver": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", + "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "napi-postinstall": "^0.3.0" + }, + "funding": { + "url": "https://opencollective.com/unrs-resolver" + }, + "optionalDependencies": { + "@unrs/resolver-binding-android-arm-eabi": "1.11.1", + "@unrs/resolver-binding-android-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-x64": "1.11.1", + "@unrs/resolver-binding-freebsd-x64": "1.11.1", + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm-musleabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-arm64-musl": "1.11.1", + "@unrs/resolver-binding-linux-ppc64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-musl": "1.11.1", + "@unrs/resolver-binding-linux-s390x-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-musl": "1.11.1", + "@unrs/resolver-binding-wasm32-wasi": "1.11.1", + "@unrs/resolver-binding-win32-arm64-msvc": "1.11.1", + "@unrs/resolver-binding-win32-ia32-msvc": "1.11.1", + "@unrs/resolver-binding-win32-x64-msvc": "1.11.1" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, "node_modules/use-callback-ref": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", @@ -3227,6 +7468,123 @@ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/yallist": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", @@ -3237,10 +7595,24 @@ "node": ">=18" } }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/zod": { - "version": "4.0.17", - "resolved": "https://registry.npmjs.org/zod/-/zod-4.0.17.tgz", - "integrity": "sha512-1PHjlYRevNxxdy2JZ8JcNAw7rX8V9P1AKkP+x/xZfxB0K5FYfuV+Ug6P/6NVSR2jHQ+FzDDoDHS04nYUsOIyLQ==", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.1.11.tgz", + "integrity": "sha512-WPsqwxITS2tzx1bzhIKsEs19ABD5vmCVa4xBo2tq/SrV4RNZtfws1EnCWQXM6yh8bD08a1idvkB5MZSBiZsjwg==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/colinhacks" diff --git a/package.json b/package.json index 45ac7a4..62b639c 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,6 @@ { - "name": "app", + "type": "module", + "name": "saas", "version": "25.9.1", "private": true, "scripts": { @@ -43,12 +44,15 @@ "zod": "^4.0.17" }, "devDependencies": { + "@rushstack/eslint-patch": "^1.12.0", "@tailwindcss/postcss": "^4", "@types/js-cookie": "^3.0.6", "@types/jsonwebtoken": "^9.0.10", "@types/node": "^20", "@types/react": "^19", "@types/react-dom": "^19", + "eslint-config-next": "^15.5.4", + "eslint-plugin-import": "^2.32.0", "tailwindcss": "^4", "tw-animate-css": "^1.3.7", "typescript": "^5" diff --git a/src/abstracts/Schema.ts b/src/abstracts/Schema.ts index 4140499..160ae34 100644 --- a/src/abstracts/Schema.ts +++ b/src/abstracts/Schema.ts @@ -1,14 +1,11 @@ - export default class Schema { + private _errors: any[] = []; - private _errors: any[] = [] + get errors(): any { + return this._errors; + } - get errors(): any { - return this._errors; - } - - set errors(value: any) { - this._errors.push(value); - } - -} \ No newline at end of file + set errors(value: any) { + this._errors.push(value); + } +} diff --git a/src/actions/cookies/CookiesGet.ts b/src/actions/cookies/CookiesGet.ts index 194669f..852aba9 100644 --- a/src/actions/cookies/CookiesGet.ts +++ b/src/actions/cookies/CookiesGet.ts @@ -1,19 +1,17 @@ -'use server' +"use server"; import { cookies } from "next/headers"; /** * Função para obter tokens do lado servidorde acordo com o nome informado -*/ + */ export default async function CookiesGet(token: string) { + // Obtem a lista de Tokens + const cookieStore = await cookies(); - // Obtem a lista de Tokens - const cookieStore = await cookies(); + // Obtem um token em especifico + const data = cookieStore.get(token); - // Obtem um token em especifico - const data = cookieStore.get(token); - - // Retorna nulo ou o valor do token desejado - return data?.value; - -} \ No newline at end of file + // Retorna nulo ou o valor do token desejado + return data?.value; +} diff --git a/src/actions/json/Json.ts b/src/actions/json/Json.ts index b075b64..b8dd068 100644 --- a/src/actions/json/Json.ts +++ b/src/actions/json/Json.ts @@ -1,6 +1,6 @@ -import appConfig from '../../config/app.json'; +import appConfig from "../../config/app.json"; export default class Json { - static execute() { - return appConfig; - } -} \ No newline at end of file + static execute() { + return appConfig; + } +} diff --git a/src/actions/text/GetSigla.ts b/src/actions/text/GetSigla.ts index f6550ae..1e4ed4d 100644 --- a/src/actions/text/GetSigla.ts +++ b/src/actions/text/GetSigla.ts @@ -1,15 +1,14 @@ export default function GetSigla(data: string): string { + if (!data) return ""; - if (!data) return ""; + // Remove espaços extras no início e no fim e divide em palavras + const palavras = data.trim().split(/\s+/); - // Remove espaços extras no início e no fim e divide em palavras - const palavras = data.trim().split(/\s+/); + if (palavras.length === 1) { + // Apenas uma palavra → retorna as duas primeiras letras + return palavras[0].substring(0, 2).toUpperCase(); + } - if (palavras.length === 1) { - // Apenas uma palavra → retorna as duas primeiras letras - return palavras[0].substring(0, 2).toUpperCase(); - } - - // Duas ou mais palavras → retorna a primeira letra de cada - return palavras.map(palavra => palavra.charAt(0).toUpperCase()).join(''); -} \ No newline at end of file + // Duas ou mais palavras → retorna a primeira letra de cada + return palavras.map((palavra) => palavra.charAt(0).toUpperCase()).join(""); +} diff --git a/src/actions/token/TokenGet.ts b/src/actions/token/TokenGet.ts index 235b529..e07b19a 100644 --- a/src/actions/token/TokenGet.ts +++ b/src/actions/token/TokenGet.ts @@ -1,11 +1,9 @@ -'use server' +"use server"; import { cookies } from "next/headers"; export default async function TokenGet() { - - const cookieStore = await cookies(); - const token = cookieStore.get('access_token'); - return token?.value; - -} \ No newline at end of file + const cookieStore = await cookies(); + const token = cookieStore.get("access_token"); + return token?.value; +} diff --git a/src/actions/validations/empty.ts b/src/actions/validations/empty.ts index ab768ed..b7316b7 100644 --- a/src/actions/validations/empty.ts +++ b/src/actions/validations/empty.ts @@ -1,9 +1,7 @@ - export default function empty(data: any) { - if (!data || !data === null || !data === undefined) { - return true; - } + if (!data || !data === null || !data === undefined) { + return true; + } - return false; - -} \ No newline at end of file + return false; +} diff --git a/src/actions/withClientErrorHandler/withClientErrorHandler.ts b/src/actions/withClientErrorHandler/withClientErrorHandler.ts index b7cb4ff..211d820 100644 --- a/src/actions/withClientErrorHandler/withClientErrorHandler.ts +++ b/src/actions/withClientErrorHandler/withClientErrorHandler.ts @@ -1,32 +1,27 @@ import withClientErrorHandlerInterface from "./withClientErrorHandlerInterface"; -/** +/** * Códigos de erro que começam com 6, são do front entd, na ordem do alfabeto o F de frontend é a sexta letra -*/ -export function withClientErrorHandler Promise>( - action: T -) { - return async (...args: Parameters): Promise => { - - try { - - // Executa a função definida - const data = await action(...args); - - // Retorna exatamente a mesma resposta retornada pela função - return data; - - } catch (error: any) { - - // Retorna o erro de execuçãformatado - return { - status: 600, - message: error?.message || "Erro interno do servidor", - data: error - }; - - } - - }; + */ +export function withClientErrorHandler< + T extends (...args: any[]) => Promise, +>(action: T) { + return async ( + ...args: Parameters + ): Promise => { + try { + // Executa a função definida + const data = await action(...args); + // Retorna exatamente a mesma resposta retornada pela função + return data; + } catch (error: any) { + // Retorna o erro de execuçãformatado + return { + status: 600, + message: error?.message || "Erro interno do servidor", + data: error, + }; + } + }; } diff --git a/src/actions/withClientErrorHandler/withClientErrorHandlerInterface.ts b/src/actions/withClientErrorHandler/withClientErrorHandlerInterface.ts index f27c593..be8e02b 100644 --- a/src/actions/withClientErrorHandler/withClientErrorHandlerInterface.ts +++ b/src/actions/withClientErrorHandler/withClientErrorHandlerInterface.ts @@ -1,7 +1,5 @@ export default interface withClientErrorHandlerInterface { - - status: number; - data?: T; - message?: string; - -} \ No newline at end of file + status: number; + data?: T; + message?: string; +} diff --git a/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/[id]/detalhes/page.tsx b/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/[id]/detalhes/page.tsx index 125a254..74fe291 100644 --- a/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/[id]/detalhes/page.tsx +++ b/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/[id]/detalhes/page.tsx @@ -1,73 +1,51 @@ -'use client' +"use client"; import { useEffect } from "react"; import { useParams } from "next/navigation"; -import { - Card, - CardContent -} from "@/components/ui/card"; +import { Card, CardContent } from "@/components/ui/card"; import { useGUsuarioReadHooks } from "@/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioReadHooks"; import Usuario from "@/app/(protected)/(administrativo)/_interfaces/GUsuarioInterface"; import Loading from "@/app/_components/loading/loading"; export default function UsuarioDetalhes() { + const params = useParams(); - const params = useParams(); + const { usuario, fetchUsuario } = useGUsuarioReadHooks(); - const { usuario, fetchUsuario } = useGUsuarioReadHooks(); + useEffect(() => { + if (params.id) { + fetchUsuario({ usuario_id: Number(params.id) } as Usuario); + } + console.log("pagina", usuario); + }, []); - useEffect(() => { + if (!usuario) return ; - if (params.id) { - fetchUsuario({ usuario_id: Number(params.id) } as Usuario); - } - console.log("pagina",usuario) - }, []); - - if (!usuario) return ; - - return ( -
- - -
-
-
- Nome -
-
- {usuario?.nome_completo} -
-
-
-
- CPF -
-
- {usuario?.cpf} -
-
-
-
- Função -
-
- {usuario?.funcao} -
-
-
-
- Email -
-
- {usuario?.email} -
-
-
-
-
-
- ); - -} \ No newline at end of file + return ( +
+ + +
+
+
Nome
+
{usuario?.nome_completo}
+
+
+
CPF
+
{usuario?.cpf}
+
+
+
Função
+
{usuario?.funcao}
+
+
+
Email
+
{usuario?.email}
+
+
+
+
+
+ ); +} diff --git a/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/formulario/page.tsx b/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/formulario/page.tsx index 16c0a87..acffdf3 100644 --- a/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/formulario/page.tsx +++ b/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/formulario/page.tsx @@ -1,136 +1,127 @@ -'use client' +"use client"; -import { zodResolver } from "@hookform/resolvers/zod" -import { useForm } from "react-hook-form" -import { z } from "zod" -import { Input } from "@/components/ui/input" -import { GUsuarioSchema } from "../../../_schemas/GUsuarioSchema" +import { zodResolver } from "@hookform/resolvers/zod"; +import { useForm } from "react-hook-form"; +import { z } from "zod"; +import { Input } from "@/components/ui/input"; +import { GUsuarioSchema } from "../../../_schemas/GUsuarioSchema"; + +import { Button } from "@/components/ui/button"; + +import { Card, CardContent } from "@/components/ui/card"; import { - Button -} from "@/components/ui/button" + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, +} from "@/components/ui/form"; -import { - Card, - CardContent -} from "@/components/ui/card"; +import { useGUsuarioSaveHook } from "../../../_hooks/g_usuario/useGUsuarioSaveHook"; -import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage, -} from "@/components/ui/form" - -import { useGUsuarioSaveHook } from "../../../_hooks/g_usuario/useGUsuarioSaveHook" - -type FormValues = z.infer +type FormValues = z.infer; export default function UsuarioFormularioPage() { + const { usuario, saveUsuario } = useGUsuarioSaveHook(); - const { usuario, saveUsuario } = useGUsuarioSaveHook(); + const form = useForm({ + resolver: zodResolver(GUsuarioSchema), + defaultValues: { + login: "", + nome_completo: "", + funcao: "", + email: "", + cpf: "", + }, + }); - const form = useForm({ - resolver: zodResolver(GUsuarioSchema), - defaultValues: { - login: '', - nome_completo: '', - funcao: '', - email: '', - cpf: '' - }, - }); + async function onSubmit(values: FormValues) { + saveUsuario(values); + } - async function onSubmit(values: FormValues) { - saveUsuario(values); - } + return ( +
+ + +
+ + ( + + Login + + + + + + )} + /> - return ( -
- - - - - ( - - Login - - - - - - )} - /> + ( + + Nome Completo + + + + + + )} + /> - ( - - Nome Completo - - - - - - )} - /> + ( + + Função + + + + + + )} + /> - ( - - Função - - - - - - )} - /> + ( + + Email + + + + + + )} + /> - ( - - Email - - - - - - )} - /> + ( + + Cpf + + + + + + )} + /> - ( - - Cpf - - - - - - )} - /> - - - - - - -
- ); - -} \ No newline at end of file + + + +
+
+
+ ); +} diff --git a/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/page.tsx b/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/page.tsx index 37344b1..f898c82 100644 --- a/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/page.tsx +++ b/src/app/(protected)/(administrativo)/(g_usuario)/usuarios/page.tsx @@ -1,18 +1,15 @@ -'use client' +"use client"; + +import { Card, CardContent } from "@/components/ui/card"; import { - Card, - CardContent, -} from "@/components/ui/card" - -import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow, -} from "@/components/ui/table" + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, +} from "@/components/ui/table"; import Usuario from "../../_interfaces/GUsuarioInterface"; import { Button } from "@/components/ui/button"; @@ -22,91 +19,70 @@ import { useEffect } from "react"; import Loading from "@/app/_components/loading/loading"; export default function UsuarioPage() { + const { usuarios, fetchUsuarios } = useGUsuarioIndexHook(); - const { usuarios, fetchUsuarios } = useGUsuarioIndexHook(); + useEffect(() => { + fetchUsuarios(); + }, []); - useEffect(() => { - fetchUsuarios(); - }, []); + if (!usuarios) return ; - if (!usuarios) return ; - - return ( -
- - -
-
- Usuarios -
-
- -
+ return ( +
+ + +
+
Usuarios
+
+ +
+
+ + + + # + Situação + CPF + Login / Sigla / Nome + Função + + + + + + {usuarios.map((usuario: Usuario) => ( + + + {usuario.usuario_id} + + + {usuario.situacao} + + {usuario.cpf} + +
+ {usuario.login} - {usuario.sigla}
-
- - - - # - - - Situação - - - CPF - - - Login / Sigla / Nome - - - Função - - - - - - - {usuarios.map((usuario: Usuario) => ( - - - {usuario.usuario_id} - - - {usuario.situacao} - - - {usuario.cpf} - - -
- {usuario.login} - {usuario.sigla} -
-
- {usuario.nome_completo} -
-
- -
- {usuario.funcao} -
-
- - - -
- ))} -
-
-
-
-
- ); -} \ No newline at end of file +
{usuario.nome_completo}
+ + +
{usuario.funcao}
+
+ + + + + ))} + + + + +
+ ); +} diff --git a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioDeleteData.ts b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioDeleteData.ts index 1d1d6ba..5dcccff 100644 --- a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioDeleteData.ts +++ b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioDeleteData.ts @@ -1,17 +1,15 @@ -'use server' +"use server"; import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function GUsuarioDeleteData(usuarioId: number) { + const api = new API(); - const api = new API(); + const response = await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/g_usuario/${usuarioId}`, + }); - const response = await api.send({ - 'method': Methods.DELETE, - 'endpoint': `administrativo/g_usuario/${usuarioId}` - }); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioIndexData.ts b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioIndexData.ts index aaf6075..42bc14d 100644 --- a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioIndexData.ts +++ b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioIndexData.ts @@ -1,17 +1,15 @@ -'use server' +"use server"; import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function GUsuarioIndexData() { + const api = new API(); - const api = new API(); + const response = await api.send({ + method: Methods.GET, + endpoint: `administrativo/g_usuario/`, + }); - const response = await api.send({ - 'method': Methods.GET, - 'endpoint': `administrativo/g_usuario/` - }); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioLoginData.ts b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioLoginData.ts index c6f7c46..88d010c 100644 --- a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioLoginData.ts +++ b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioLoginData.ts @@ -1,19 +1,17 @@ -'use server' +"use server"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; import API from "@/services/api/Api"; export default async function GUsuarioLoginData(form: any) { + const api = new API(); - const api = new API(); + // Realiza o envio dos dados + const response = await api.send({ + method: Methods.POST, + endpoint: `administrativo/g_usuario/authenticate`, + body: form, + }); - // Realiza o envio dos dados - const response = await api.send({ - method: Methods.POST, - endpoint: `administrativo/g_usuario/authenticate`, - body: form - }); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioReadData.ts b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioReadData.ts index afe73b3..c1f6d01 100644 --- a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioReadData.ts +++ b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioReadData.ts @@ -1,17 +1,15 @@ -'use server' +"use server"; import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function GUsuarioReadData(usuarioId: number) { + const api = new API(); - const api = new API(); + const response = await api.send({ + method: Methods.GET, + endpoint: `administrativo/g_usuario/${usuarioId}`, + }); - const response = await api.send({ - 'method': Methods.GET, - 'endpoint': `administrativo/g_usuario/${usuarioId}` - }); - - return response - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioSaveData.ts b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioSaveData.ts index e6ce62c..81ad3c5 100644 --- a/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioSaveData.ts +++ b/src/app/(protected)/(administrativo)/_data/g_usuario/GUsuarioSaveData.ts @@ -1,18 +1,16 @@ -'use server' +"use server"; import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function GUsuarioSaveData(form: any) { + const api = new API(); - const api = new API(); + const response = await api.send({ + method: Methods.POST, + endpoint: `administrativo/g_usuario/`, + body: form, + }); - const response = await api.send({ - 'method': Methods.POST, - 'endpoint': `administrativo/g_usuario/`, - 'body': form - }); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioIndexHook.ts b/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioIndexHook.ts index 93ca26d..5e9267e 100644 --- a/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioIndexHook.ts +++ b/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioIndexHook.ts @@ -1,27 +1,23 @@ -'use client' +"use client"; -import { useState } from "react" -import Usuario from "../../_interfaces/GUsuarioInterface" +import { useState } from "react"; +import Usuario from "../../_interfaces/GUsuarioInterface"; import GUsuarioIndex from "../../_services/g_usuario/GUsuarioIndex"; import { useResponse } from "@/app/_response/ResponseContext"; export const useGUsuarioIndexHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [usuarios, setUsuarios] = useState(null); - const [usuarios, setUsuarios] = useState(null); + const fetchUsuarios = async () => { + const response = await GUsuarioIndex(); - const fetchUsuarios = async () => { + setUsuarios(response.data); - const response = await GUsuarioIndex(); + // Define os dados do componente de resposta (toast, modal, etc) + setResponse(response); + }; - setUsuarios(response.data); - - // Define os dados do componente de resposta (toast, modal, etc) - setResponse(response); - - } - - return { usuarios, fetchUsuarios } - -} \ No newline at end of file + return { usuarios, fetchUsuarios }; +}; diff --git a/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioLogoutHook.ts b/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioLogoutHook.ts index 7220189..668a085 100644 --- a/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioLogoutHook.ts +++ b/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioLogoutHook.ts @@ -1,14 +1,11 @@ -'use client' +"use client"; import GUsuarioLogoutService from "../../_services/g_usuario/GUsuarioLogoutService"; export const useGUsuarioLogoutHook = () => { + const logoutUsuario = async () => { + await GUsuarioLogoutService("access_token"); + }; - const logoutUsuario = async () => { - - await GUsuarioLogoutService('access_token') - - } - - return { logoutUsuario } -} \ No newline at end of file + return { logoutUsuario }; +}; diff --git a/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioReadHooks.ts b/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioReadHooks.ts index 9f73250..05f95a6 100644 --- a/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioReadHooks.ts +++ b/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioReadHooks.ts @@ -1,27 +1,23 @@ -'use client' +"use client"; -import { useState } from "react" -import Usuario from "../../_interfaces/GUsuarioInterface" +import { useState } from "react"; +import Usuario from "../../_interfaces/GUsuarioInterface"; import GUsuarioRead from "../../_services/g_usuario/GUsuarioRead"; import { useResponse } from "@/app/_response/ResponseContext"; export const useGUsuarioReadHooks = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [usuario, setUsuario] = useState(); - const [usuario, setUsuario] = useState(); + const fetchUsuario = async (Usuario: Usuario) => { + const response = await GUsuarioRead(Usuario.usuario_id); + console.log("hook", response.data); - const fetchUsuario = async (Usuario: Usuario) => { + setUsuario(response.data); - const response = await GUsuarioRead(Usuario.usuario_id); - console.log("hook",response.data) + setResponse(response); + }; - setUsuario(response.data); - - setResponse(response); - - } - - return { usuario, fetchUsuario } - -} \ No newline at end of file + return { usuario, fetchUsuario }; +}; diff --git a/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioSaveHook.ts b/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioSaveHook.ts index 6519021..90f838d 100644 --- a/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioSaveHook.ts +++ b/src/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioSaveHook.ts @@ -1,26 +1,22 @@ -'use client' +"use client"; -import { useState } from "react" -import Usuario from "../../_interfaces/GUsuarioInterface" +import { useState } from "react"; +import Usuario from "../../_interfaces/GUsuarioInterface"; import GUsuarioSave from "../../_services/g_usuario/GUsuarioSave"; import { useResponse } from "@/app/_response/ResponseContext"; export const useGUsuarioSaveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [usuario, setUsuario] = useState(); - const [usuario, setUsuario] = useState(); + const saveUsuario = async (Usuario: any) => { + const response = await GUsuarioSave(Usuario); - const saveUsuario = async (Usuario: any) => { + setUsuario(response.data); - const response = await GUsuarioSave(Usuario); + setResponse(response); + }; - setUsuario(response.data); - - setResponse(response); - - } - - return { usuario, saveUsuario } - -} \ No newline at end of file + return { usuario, saveUsuario }; +}; diff --git a/src/app/(protected)/(administrativo)/_interfaces/GUsuarioInterface.ts b/src/app/(protected)/(administrativo)/_interfaces/GUsuarioInterface.ts index 13af8c1..5608711 100644 --- a/src/app/(protected)/(administrativo)/_interfaces/GUsuarioInterface.ts +++ b/src/app/(protected)/(administrativo)/_interfaces/GUsuarioInterface.ts @@ -1,34 +1,34 @@ export default interface GUsuario { - usuario_id: number, - trocarsenha: string, - login: string, - senha: string, - situacao: string, - nome_completo: string, - funcao: string, - assina: string, - sigla: string, - usuario_tab: string, - ultimo_login: string, - ultimo_login_regs: string, - data_expiracao: string, - senha_anterior: string, - andamento_padrao: string, - lembrete_pergunta: string, - lembrete_resposta: string, - andamento_padrao2: string, - receber_mensagem_arrolamento: string, - email: string, - assina_certidao: string, - receber_email_penhora: string, - foto: string, - nao_receber_chat_todos: string, - pode_alterar_caixa: string, - receber_chat_certidao_online: string, - receber_chat_cancelamento: string, - cpf: string, - somente_leitura: string, - receber_chat_envio_onr: string, - tipo_usuario: string, - senha_api: string, -} \ No newline at end of file + usuario_id: number; + trocarsenha: string; + login: string; + senha: string; + situacao: string; + nome_completo: string; + funcao: string; + assina: string; + sigla: string; + usuario_tab: string; + ultimo_login: string; + ultimo_login_regs: string; + data_expiracao: string; + senha_anterior: string; + andamento_padrao: string; + lembrete_pergunta: string; + lembrete_resposta: string; + andamento_padrao2: string; + receber_mensagem_arrolamento: string; + email: string; + assina_certidao: string; + receber_email_penhora: string; + foto: string; + nao_receber_chat_todos: string; + pode_alterar_caixa: string; + receber_chat_certidao_online: string; + receber_chat_cancelamento: string; + cpf: string; + somente_leitura: string; + receber_chat_envio_onr: string; + tipo_usuario: string; + senha_api: string; +} diff --git a/src/app/(protected)/(administrativo)/_schemas/GUsuarioLoginSchema.ts b/src/app/(protected)/(administrativo)/_schemas/GUsuarioLoginSchema.ts index 2c5821a..df11b70 100644 --- a/src/app/(protected)/(administrativo)/_schemas/GUsuarioLoginSchema.ts +++ b/src/app/(protected)/(administrativo)/_schemas/GUsuarioLoginSchema.ts @@ -1,6 +1,6 @@ import { z } from "zod"; export const GUsuarioLoginSchema = z.object({ - login: z.string().min(1, "O campo deve ser preenchido"), - senha_api: z.string().min(1, "O campo deve ser preenchido"), -}); \ No newline at end of file + login: z.string().min(1, "O campo deve ser preenchido"), + senha_api: z.string().min(1, "O campo deve ser preenchido"), +}); diff --git a/src/app/(protected)/(administrativo)/_schemas/GUsuarioSchema.ts b/src/app/(protected)/(administrativo)/_schemas/GUsuarioSchema.ts index c3942c2..12bc0b9 100644 --- a/src/app/(protected)/(administrativo)/_schemas/GUsuarioSchema.ts +++ b/src/app/(protected)/(administrativo)/_schemas/GUsuarioSchema.ts @@ -1,35 +1,35 @@ import { z } from "zod"; export const GUsuarioSchema = z.object({ - trocarsenha: z.string().optional(), - login: z.string().optional(), - senha: z.string().optional(), - situacao: z.string().optional(), - nome_completo: z.string().optional(), - funcao: z.string().optional(), - assina: z.string().optional(), - sigla: z.string().optional(), - usuario_tab: z.string().optional(), - ultimo_login: z.string().optional(), - ultimo_login_regs: z.string().optional(), - data_expiracao: z.string().optional(), - senha_anterior: z.string().optional(), - andamento_padrao: z.string().optional(), - lembrete_pergunta: z.string().optional(), - lembrete_resposta: z.string().optional(), - andamento_padrao2: z.string().optional(), - receber_mensagem_arrolamento: z.string().optional(), - email: z.string().optional(), - assina_certidao: z.string().optional(), - receber_email_penhora: z.string().optional(), - foto: z.string().optional(), - nao_receber_chat_todos: z.string().optional(), - pode_alterar_caixa: z.string().optional(), - receber_chat_certidao_online: z.string().optional(), - receber_chat_cancelamento: z.string().optional(), - cpf: z.string().optional(), - somente_leitura: z.string().optional(), - receber_chat_envio_onr: z.string().optional(), - tipo_usuario: z.string().optional(), - senha_api: z.string().optional(), -}); \ No newline at end of file + trocarsenha: z.string().optional(), + login: z.string().optional(), + senha: z.string().optional(), + situacao: z.string().optional(), + nome_completo: z.string().optional(), + funcao: z.string().optional(), + assina: z.string().optional(), + sigla: z.string().optional(), + usuario_tab: z.string().optional(), + ultimo_login: z.string().optional(), + ultimo_login_regs: z.string().optional(), + data_expiracao: z.string().optional(), + senha_anterior: z.string().optional(), + andamento_padrao: z.string().optional(), + lembrete_pergunta: z.string().optional(), + lembrete_resposta: z.string().optional(), + andamento_padrao2: z.string().optional(), + receber_mensagem_arrolamento: z.string().optional(), + email: z.string().optional(), + assina_certidao: z.string().optional(), + receber_email_penhora: z.string().optional(), + foto: z.string().optional(), + nao_receber_chat_todos: z.string().optional(), + pode_alterar_caixa: z.string().optional(), + receber_chat_certidao_online: z.string().optional(), + receber_chat_cancelamento: z.string().optional(), + cpf: z.string().optional(), + somente_leitura: z.string().optional(), + receber_chat_envio_onr: z.string().optional(), + tipo_usuario: z.string().optional(), + senha_api: z.string().optional(), +}); diff --git a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioIndex.ts b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioIndex.ts index b105740..ddb478a 100644 --- a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioIndex.ts +++ b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioIndex.ts @@ -1,11 +1,9 @@ -'use server' +"use server"; -import GUsuarioIndexData from "../../_data/g_usuario/GUsuarioIndexData" +import GUsuarioIndexData from "../../_data/g_usuario/GUsuarioIndexData"; export default async function GUsuarioIndex() { + const response = await GUsuarioIndexData(); - const response = await GUsuarioIndexData(); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogin.ts b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogin.ts index 76a1e5d..79bb9d8 100644 --- a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogin.ts +++ b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogin.ts @@ -1,40 +1,34 @@ -'use server' +"use server"; -import { - cookies -} from "next/headers"; +import { cookies } from "next/headers"; -import GUsuarioLoginData from "../../_data/g_usuario/GUsuarioLoginData" +import GUsuarioLoginData from "../../_data/g_usuario/GUsuarioLoginData"; import { redirect } from "next/navigation"; export default async function GUsuarioLoginService(form: any) { + // Obtem a resposta da requisição + const response = await GUsuarioLoginData(form); - // Obtem a resposta da requisição - const response = await GUsuarioLoginData(form); + // Verifica se localizou o usuário + if (response.data.usuario_id <= 0) { + return { + code: 404, + message: "Não foi localizado o usuário", + }; + } - // Verifica se localizou o usuário - if (response.data.usuario_id <= 0) { + // Importação do manipulador de cookies + const cookieStore = await cookies(); - return { - 'code': 404, - 'message': 'Não foi localizado o usuário' - } + // Cria um novo cookie + cookieStore.set("access_token", response.data.token, { + httpOnly: true, + secure: process.env.NODE_ENV === "production", + sameSite: "strict", + path: "/", + maxAge: 60 * 60 * 24, + }); - } - - // Importação do manipulador de cookies - const cookieStore = await cookies(); - - // Cria um novo cookie - cookieStore.set("access_token", response.data.token, { - httpOnly: true, - secure: process.env.NODE_ENV === "production", - sameSite: "strict", - path: "/", - maxAge: 60 * 60 * 24, - }); - - // Redireciona para a págian desejada - redirect("/servicos"); - -} \ No newline at end of file + // Redireciona para a págian desejada + redirect("/servicos"); +} diff --git a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogoutService.ts b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogoutService.ts index 4747715..a6230b7 100644 --- a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogoutService.ts +++ b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogoutService.ts @@ -1,19 +1,15 @@ -'use server' +"use server"; -import { - cookies -} from "next/headers"; +import { cookies } from "next/headers"; import { redirect } from "next/navigation"; export default async function GUsuarioLogoutService(token: string) { + const cookieStore = await cookies(); + cookieStore.set(token, "", { + expires: new Date(0), + path: "/", + }); - const cookieStore = await cookies(); - cookieStore.set(token, '', { - expires: new Date(0), - path: '/', - }); - - redirect('/login'); - -} \ No newline at end of file + redirect("/login"); +} diff --git a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioRead.ts b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioRead.ts index 037a1ea..e311b6a 100644 --- a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioRead.ts +++ b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioRead.ts @@ -1,25 +1,22 @@ -'use server' +"use server"; import GUsuarioReadData from "../../_data/g_usuario/GUsuarioReadData"; export default async function GUsuarioRead(usuarioId: number) { + // Verifica se o id informado é válido + if (usuarioId <= 0) { + return { + code: 400, + message: "Usuário informado inválido", + }; + } - // Verifica se o id informado é válido - if (usuarioId <= 0) { - return { - 'code': 400, - 'message': 'Usuário informado inválido', - } - } - - try { - const response = await GUsuarioReadData(usuarioId); - console.log("service",response) - return response - } catch (error) { - console.log(error) - return error - } - - -} \ No newline at end of file + try { + const response = await GUsuarioReadData(usuarioId); + console.log("service", response); + return response; + } catch (error) { + console.log(error); + return error; + } +} diff --git a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioSave.ts b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioSave.ts index 385ebe5..0bfeff6 100644 --- a/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioSave.ts +++ b/src/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioSave.ts @@ -1,9 +1,7 @@ -'use server' +"use server"; import GUsuarioSaveData from "../../_data/g_usuario/GUsuarioSaveData"; export default async function GUsuarioSave(form: any) { - - return await GUsuarioSaveData(form); - -} \ No newline at end of file + return await GUsuarioSaveData(form); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/(g_cidade)/cidades/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(g_cidade)/cidades/page.tsx index 92a0ba3..6035955 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(g_cidade)/cidades/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(g_cidade)/cidades/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -18,147 +18,153 @@ import GCidadeInterface from "../../_interfaces/GCidadeInterface"; import Header from "@/app/_components/structure/Header"; export default function GCidadePage() { + // Hooks para leitura e salvamento + const { gCidade, fetchGCidade } = useGCidadeReadHook(); + const { saveGCidade } = useGCidadeSaveHook(); + const { removeGCidade } = useGCidadeRemoveHook(); - // Hooks para leitura e salvamento - const { gCidade, fetchGCidade } = useGCidadeReadHook(); - const { saveGCidade } = useGCidadeSaveHook(); - const { removeGCidade } = useGCidadeRemoveHook(); + // Estados + const [selectedCidade, setSelectedCidade] = useState( + null, + ); + const [isFormOpen, setIsFormOpen] = useState(false); - // Estados - const [selectedCidade, setSelectedCidade] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); + // Estado para saber qual item será deletado + const [itemToDelete, setItemToDelete] = useState( + null, + ); - // Estado para saber qual item será deletado - const [itemToDelete, setItemToDelete] = useState(null); + /** + * Hook do modal de confirmação + */ + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleConfirm, + handleCancel, + } = useConfirmDialog(); - /** - * Hook do modal de confirmação - */ - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleConfirm, - handleCancel, - } = useConfirmDialog(); + /** + * Abre o formulário no modo de edição ou criação + */ + const handleOpenForm = useCallback((data: GCidadeInterface | null) => { + setSelectedCidade(data); + setIsFormOpen(true); + }, []); - /** - * Abre o formulário no modo de edição ou criação - */ - const handleOpenForm = useCallback((data: GCidadeInterface | null) => { - setSelectedCidade(data); - setIsFormOpen(true); - }, []); + /** + * Fecha o formulário e limpa o andamento selecionado + */ + const handleCloseForm = useCallback(() => { + setSelectedCidade(null); + setIsFormOpen(false); + }, []); - /** - * Fecha o formulário e limpa o andamento selecionado - */ - const handleCloseForm = useCallback(() => { - setSelectedCidade(null); - setIsFormOpen(false); - }, []); + /** + * Salva os dados do formulário + */ + const handleSave = useCallback( + async (formData: GCidadeInterface) => { + // Aguarda salvar o registro + await saveGCidade(formData); - /** - * Salva os dados do formulário - */ - const handleSave = useCallback(async (formData: GCidadeInterface) => { + // Atualiza a lista de dados + fetchGCidade(); + }, + [saveGCidade, fetchGCidade], + ); - // Aguarda salvar o registro - await saveGCidade(formData); + /** + * Quando o usuário clica em "remover" na tabela + */ + const handleConfirmDelete = useCallback( + (item: GCidadeInterface) => { + // Define o item atual para remoção + setItemToDelete(item); - // Atualiza a lista de dados - fetchGCidade(); + // Abre o modal de confirmação + openConfirmDialog(); + }, + [openConfirmDialog], + ); - }, [saveGCidade, fetchGCidade]); + /** + * Executa a exclusão de fato quando o usuário confirma + */ + const handleDelete = useCallback(async () => { + // Protege contra null + if (!itemToDelete) return; - /** - * Quando o usuário clica em "remover" na tabela - */ - const handleConfirmDelete = useCallback((item: GCidadeInterface) => { + // Executa o Hook de remoção + await removeGCidade(itemToDelete); - // Define o item atual para remoção - setItemToDelete(item); + // Atualiza a lista + await fetchGCidade(); - // Abre o modal de confirmação - openConfirmDialog(); + // Limpa o item selecionado + setItemToDelete(null); - }, [openConfirmDialog]); + // Fecha o modal + handleCancel(); + }, [itemToDelete, fetchGCidade, handleCancel]); - /** - * Executa a exclusão de fato quando o usuário confirma - */ - const handleDelete = useCallback(async () => { + /** + * Busca inicial dos dados + */ + useEffect(() => { + fetchGCidade(); + }, []); - // Protege contra null - if (!itemToDelete) return; + /** + * Tela de loading enquanto carrega os dados + */ + if (!gCidade) { + return ; + } - // Executa o Hook de remoção - await removeGCidade(itemToDelete); + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm(null); + }} + /> - // Atualiza a lista - await fetchGCidade(); + {/* Tabela de andamentos */} + + + + + - // Limpa o item selecionado - setItemToDelete(null); + {/* Modal de confirmação */} + - // Fecha o modal - handleCancel(); - - }, [itemToDelete, fetchGCidade, handleCancel]); - - /** - * Busca inicial dos dados - */ - useEffect(() => { - fetchGCidade(); - }, []); - - /** - * Tela de loading enquanto carrega os dados - */ - if (!gCidade) { - return ; - } - - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(null) }} - /> - - {/* Tabela de andamentos */} - - - - - - - {/* Modal de confirmação */} - - - {/* Formulário de criação/edição */} - -
- ); 4 -} \ No newline at end of file + {/* Formulário de criação/edição */} + +
+ ); + 4; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/(g_medidatipo)/medida-tipo/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(g_medidatipo)/medida-tipo/page.tsx index 2b2e8a4..2764901 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(g_medidatipo)/medida-tipo/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(g_medidatipo)/medida-tipo/page.tsx @@ -1,9 +1,9 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; import { useConfirmDialog } from "@/app/_components/confirm_dialog/useConfirmDialog"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import Header from "@/app/_components/structure/Header"; import ConfirmDialog from "@/app/_components/confirm_dialog/ConfirmDialog"; @@ -19,132 +19,140 @@ import { GMedidaTipoInterface } from "../../_interfaces/GMedidaTipoInterface"; import { SituacoesEnum } from "@/enums/SituacoesEnum"; const initialMedidaTipo: GMedidaTipoInterface = { - medida_tipo_id: 0, - sigla: '', - descricao: '' -} + medida_tipo_id: 0, + sigla: "", + descricao: "", +}; export default function GMedidaTipoPage() { + // Controle de exibição de respostas + const { setResponse } = useResponse(); - // Controle de exibição de respostas - const { setResponse } = useResponse(); + // Controle de estado do botão + const [buttonIsLoading, setButtonIsLoading] = useState(false); - // Controle de estado do botão - const [buttonIsLoading, setButtonIsLoading] = useState(false); + // Hooks para leitura, salvamento e remoção + const { gMedidaTipo, fetchGMedidaTipo } = useGMedidaTipoReadHook(); + const { saveGMedidaTipo } = useGMedidaTipoSaveHook(); + const { removeGMedidaTipo } = useGMedidaTipoRemoveHook(); - // Hooks para leitura, salvamento e remoção - const { gMedidaTipo, fetchGMedidaTipo } = useGMedidaTipoReadHook(); - const { saveGMedidaTipo } = useGMedidaTipoSaveHook(); - const { removeGMedidaTipo } = useGMedidaTipoRemoveHook(); + // Estado para controlar o formulário e o item selecionado + const [selectedMedidaTipo, setSelectedMedidaTipo] = + useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); + const [itemToDelete, setItemToDelete] = useState( + null, + ); - // Estado para controlar o formulário e o item selecionado - const [selectedMedidaTipo, setSelectedMedidaTipo] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); - const [itemToDelete, setItemToDelete] = useState(null); + // Hook para o modal de confirmação + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleCancel, + } = useConfirmDialog(); - // Hook para o modal de confirmação - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleCancel, - } = useConfirmDialog(); + // Ações do formulário + const handleOpenForm = useCallback((data: GMedidaTipoInterface | null) => { + setSelectedMedidaTipo(data); + setIsFormOpen(true); + }, []); - // Ações do formulário - const handleOpenForm = useCallback((data: GMedidaTipoInterface | null) => { - setSelectedMedidaTipo(data); - setIsFormOpen(true); - }, []); + const handleCloseForm = useCallback(() => { + setIsFormOpen(false); + setSelectedMedidaTipo(null); + }, []); - const handleCloseForm = useCallback(() => { - setIsFormOpen(false); - setSelectedMedidaTipo(null); - }, []); + const handleSave = useCallback( + async (data: GMedidaTipoInterface) => { + // Coloca o botão em estado de loading + setButtonIsLoading(true); + await saveGMedidaTipo(data); + // Remove o botão do estado de loading + setButtonIsLoading(false); + await fetchGMedidaTipo(); // Atualiza a tabela após salvar + handleCloseForm(); + }, + [saveGMedidaTipo, fetchGMedidaTipo], + ); - const handleSave = useCallback(async (data: GMedidaTipoInterface) => { - // Coloca o botão em estado de loading - setButtonIsLoading(true); - await saveGMedidaTipo(data); - // Remove o botão do estado de loading - setButtonIsLoading(false); - await fetchGMedidaTipo(); // Atualiza a tabela após salvar - handleCloseForm(); - }, [saveGMedidaTipo, fetchGMedidaTipo]); + // Ações de deleção + const handleConfirmDelete = useCallback( + (item: GMedidaTipoInterface) => { + setItemToDelete(item); + openConfirmDialog(); + }, + [openConfirmDialog], + ); - // Ações de deleção - const handleConfirmDelete = useCallback((item: GMedidaTipoInterface) => { - setItemToDelete(item); - openConfirmDialog(); - }, [openConfirmDialog]); - - const handleDelete = useCallback(async () => { - - // Verifica se existe item para remoção - if (!itemToDelete) { - - // Define os dados da resposta visual - setResponse({ - status: 400, - message: 'Não foi informado um registro para exclusão' - }); - return; - }; - - await removeGMedidaTipo(itemToDelete); - await fetchGMedidaTipo(); // Atualiza a tabela após remover - handleCancel(); - }, [itemToDelete, fetchGMedidaTipo, handleCancel]); - - // Efeito para carregar os dados na montagem do componente - useEffect(() => { - fetchGMedidaTipo(); - }, []); - - // Mostra tela de loading enquanto os dados não são carregados - if (!gMedidaTipo) { - return ; + const handleDelete = useCallback(async () => { + // Verifica se existe item para remoção + if (!itemToDelete) { + // Define os dados da resposta visual + setResponse({ + status: 400, + message: "Não foi informado um registro para exclusão", + }); + return; } - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(data = initialMedidaTipo) }} - /> + await removeGMedidaTipo(itemToDelete); + await fetchGMedidaTipo(); // Atualiza a tabela após remover + handleCancel(); + }, [itemToDelete, fetchGMedidaTipo, handleCancel]); - {/* Tabela de Tipos de Medida */} - - - - - + // Efeito para carregar os dados na montagem do componente + useEffect(() => { + fetchGMedidaTipo(); + }, []); - {/* Modal de confirmação */} - + // Mostra tela de loading enquanto os dados não são carregados + if (!gMedidaTipo) { + return ; + } - {/* Formulário de criação/edição */} - -
- ); + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm((data = initialMedidaTipo)); + }} + /> + + {/* Tabela de Tipos de Medida */} + + + + + + + {/* Modal de confirmação */} + + + {/* Formulário de criação/edição */} + +
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/(g_tb_bairro)/bairro/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(g_tb_bairro)/bairro/page.tsx index 4cf949b..5d1e3eb 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(g_tb_bairro)/bairro/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(g_tb_bairro)/bairro/page.tsx @@ -1,9 +1,9 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; import { useConfirmDialog } from "@/app/_components/confirm_dialog/useConfirmDialog"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import Header from "@/app/_components/structure/Header"; import ConfirmDialog from "@/app/_components/confirm_dialog/ConfirmDialog"; @@ -19,149 +19,153 @@ import { GTBBairroInterface } from "../../_interfaces/GTBBairroInterface"; import { SituacoesEnum } from "@/enums/SituacoesEnum"; const initialBairro: GTBBairroInterface = { - sistema_id: null, - tb_bairro_id: 0, - descricao: '', - situacao: SituacoesEnum.A -} + sistema_id: null, + tb_bairro_id: 0, + descricao: "", + situacao: SituacoesEnum.A, +}; export default function GTBBairroPage() { + // Controle de exibição de respostas + const { setResponse } = useResponse(); - // Controle de exibição de respostas - const { setResponse } = useResponse(); + // Controle de estado do botão + const [buttonIsLoading, setButtonIsLoading] = useState(false); - // Controle de estado do botão - const [buttonIsLoading, setButtonIsLoading] = useState(false); + // Hooks para leitura e salvamento + const { gTBBairro, fetchGTBBairro } = useGTBBairroReadHook(); + const { saveGTBBairro } = useGTBBairroSaveHook(); + const { removeGTBBairro } = useGTBBairroRemoveHook(); - // Hooks para leitura e salvamento - const { gTBBairro, fetchGTBBairro } = useGTBBairroReadHook(); - const { saveGTBBairro } = useGTBBairroSaveHook(); - const { removeGTBBairro } = useGTBBairroRemoveHook(); + // Estado para controlar o formulário e item selecionado + const [selectedBairro, setBairro] = useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); + const [itemToDelete, setItemToDelete] = useState( + null, + ); - // Estado para controlar o formulário e item selecionado - const [selectedBairro, setBairro] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); - const [itemToDelete, setItemToDelete] = useState(null); + // Hook para o modal de confirmação + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleCancel, + } = useConfirmDialog(); - // Hook para o modal de confirmação - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleCancel, - } = useConfirmDialog(); + // Ações do formulário + const handleOpenForm = useCallback((data: GTBBairroInterface | null) => { + setBairro(data); + setIsFormOpen(true); + }, []); - // Ações do formulário - const handleOpenForm = useCallback((data: GTBBairroInterface | null) => { - setBairro(data); - setIsFormOpen(true); - }, []); + const handleCloseForm = useCallback(() => { + setBairro(null); + setIsFormOpen(false); + }, []); - const handleCloseForm = useCallback(() => { - setBairro(null); - setIsFormOpen(false); - }, []); + const handleSave = useCallback( + async (data: GTBBairroInterface) => { + // Coloca o botão em estado de loading + setButtonIsLoading(true); - const handleSave = useCallback(async (data: GTBBairroInterface) => { + // Realiza o procedimento desejado + await saveGTBBairro(data); - // Coloca o botão em estado de loading - setButtonIsLoading(true); + // Remove o botão do estado de loading + setButtonIsLoading(false); - // Realiza o procedimento desejado - await saveGTBBairro(data); + // Atualiza a tabela após salvar + fetchGTBBairro(); + }, + [saveGTBBairro, fetchGTBBairro], + ); - // Remove o botão do estado de loading - setButtonIsLoading(false); + // Ações de deleção + const handleConfirmDelete = useCallback( + (item: GTBBairroInterface) => { + setItemToDelete(item); + openConfirmDialog(); + }, + [openConfirmDialog], + ); - // Atualiza a tabela após salvar - fetchGTBBairro(); - - }, [saveGTBBairro, fetchGTBBairro]); - - // Ações de deleção - const handleConfirmDelete = useCallback((item: GTBBairroInterface) => { - setItemToDelete(item); - openConfirmDialog(); - }, [openConfirmDialog]); - - const handleDelete = useCallback(async () => { - - // Verifica se existe item para remoção - if (!itemToDelete) { - - // Define os dados da resposta visual - setResponse({ - status: 400, - message: 'Não foi informado um registro para exclusão' - }); - return; - }; - - // Executa o hook de remoção - await removeGTBBairro(itemToDelete); - - // Atualiza a tabela após remover - await fetchGTBBairro(); - - // Limpa o item para remoção - setItemToDelete(null) - - handleCancel(); - - }, [itemToDelete, fetchGTBBairro, handleCancel]); - - // Efeito para carregar os dados na montagem do componente - useEffect(() => { - fetchGTBBairro(); - }, []); - - /** - * Tela de loading enquanto carrega os dados - */ - if (gTBBairro.length == 0) { - return ; + const handleDelete = useCallback(async () => { + // Verifica se existe item para remoção + if (!itemToDelete) { + // Define os dados da resposta visual + setResponse({ + status: 400, + message: "Não foi informado um registro para exclusão", + }); + return; } - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(data = initialBairro) }} - /> + // Executa o hook de remoção + await removeGTBBairro(itemToDelete); - {/* Tabela de Bairros */} - - - - - + // Atualiza a tabela após remover + await fetchGTBBairro(); - {/* Modal de confirmação */} - + // Limpa o item para remoção + setItemToDelete(null); - {/* Formulário de criação/edição */} - -
- ); + handleCancel(); + }, [itemToDelete, fetchGTBBairro, handleCancel]); + + // Efeito para carregar os dados na montagem do componente + useEffect(() => { + fetchGTBBairro(); + }, []); + + /** + * Tela de loading enquanto carrega os dados + */ + if (gTBBairro.length == 0) { + return ; + } + + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm((data = initialBairro)); + }} + /> + + {/* Tabela de Bairros */} + + + + + + + {/* Modal de confirmação */} + + + {/* Formulário de criação/edição */} + +
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/(g_tb_estadocivil)/estado-civil/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(g_tb_estadocivil)/estado-civil/page.tsx index c794868..0156a4e 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(g_tb_estadocivil)/estado-civil/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(g_tb_estadocivil)/estado-civil/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -18,130 +18,138 @@ import { GTBEstadoCivilInterface } from "../../_interfaces/GTBEstadoCivilInterfa import { useResponse } from "@/app/_response/ResponseContext"; const initalEstadoCivil: GTBEstadoCivilInterface = { - tb_estadocivil_id: 0, - sistema_id: 0, - descricao: '', - situacao: 'A', -} + tb_estadocivil_id: 0, + sistema_id: 0, + descricao: "", + situacao: "A", +}; export default function TBEstadoCivilPage() { + // Controle de exibição de respostas + const { setResponse } = useResponse(); - // Controle de exibição de respostas - const { setResponse } = useResponse(); + // Controle de estado do botão + const [buttonIsLoading, setButtonIsLoading] = useState(false); - // Controle de estado do botão - const [buttonIsLoading, setButtonIsLoading] = useState(false); + // Hooks para leitura e salvamento + const { gTBEstadoCivil, fetchGTBEstadoCivil } = useGTBEstadoCivilReadHook(); + const { saveGTBEstadoCivil } = useGTBEstadoCivilSaveHook(); + const { removeGTBEstadoCivil } = useGTBEstadoCivilRemoveHook(); - // Hooks para leitura e salvamento - const { gTBEstadoCivil, fetchGTBEstadoCivil } = useGTBEstadoCivilReadHook(); - const { saveGTBEstadoCivil } = useGTBEstadoCivilSaveHook(); - const { removeGTBEstadoCivil } = useGTBEstadoCivilRemoveHook(); + // Estado para controlar o formulário e item selecionado + const [selectedEstadoCivil, setSelectedEstadoCivil] = + useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); + const [itemToDelete, setItemToDelete] = + useState(null); - // Estado para controlar o formulário e item selecionado - const [selectedEstadoCivil, setSelectedEstadoCivil] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); - const [itemToDelete, setItemToDelete] = useState(null); + // Hook para o modal de confirmação + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleCancel, + } = useConfirmDialog(); - // Hook para o modal de confirmação - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleCancel, - } = useConfirmDialog(); + // Ações do formulário + const handleOpenForm = useCallback((data: GTBEstadoCivilInterface | null) => { + setSelectedEstadoCivil(data); + setIsFormOpen(true); + }, []); - // Ações do formulário - const handleOpenForm = useCallback((data: GTBEstadoCivilInterface | null) => { - setSelectedEstadoCivil(data); - setIsFormOpen(true); - }, []); + const handleCloseForm = useCallback(() => { + setIsFormOpen(false); + setSelectedEstadoCivil(null); + }, []); - const handleCloseForm = useCallback(() => { - setIsFormOpen(false); - setSelectedEstadoCivil(null); - }, []); + const handleSave = useCallback( + async (data: GTBEstadoCivilInterface) => { + // Coloca o botão em estado de loading + setButtonIsLoading(true); + await saveGTBEstadoCivil(data); + // Remove o botão do estado de loading + setButtonIsLoading(false); + await fetchGTBEstadoCivil(); // Atualiza a tabela após salvar + handleCloseForm(); + }, + [saveGTBEstadoCivil, fetchGTBEstadoCivil], + ); - const handleSave = useCallback(async (data: GTBEstadoCivilInterface) => { - // Coloca o botão em estado de loading - setButtonIsLoading(true); - await saveGTBEstadoCivil(data); - // Remove o botão do estado de loading - setButtonIsLoading(false); - await fetchGTBEstadoCivil(); // Atualiza a tabela após salvar - handleCloseForm(); - }, [saveGTBEstadoCivil, fetchGTBEstadoCivil]); + // Ações de deleção + const handleConfirmDelete = useCallback( + (item: GTBEstadoCivilInterface) => { + setItemToDelete(item); + openConfirmDialog(); + }, + [openConfirmDialog], + ); - // Ações de deleção - const handleConfirmDelete = useCallback((item: GTBEstadoCivilInterface) => { - setItemToDelete(item); - openConfirmDialog(); - }, [openConfirmDialog]); - - const handleDelete = useCallback(async () => { - if (!itemToDelete) { - - // Define os dados da resposta visual - setResponse({ - status: 400, - message: 'Não foi informado um registro para exclusão' - }); - return; - }; - await removeGTBEstadoCivil(itemToDelete); - await fetchGTBEstadoCivil(); // Atualiza a tabela após remover - handleCancel(); - }, [itemToDelete, fetchGTBEstadoCivil, handleCancel]); - - // Efeito para carregar os dados na montagem do componente - useEffect(() => { - fetchGTBEstadoCivil(); - }, []); - - // Mostra tela de loading enquanto os dados não são carregados - if (!gTBEstadoCivil) { - return ; + const handleDelete = useCallback(async () => { + if (!itemToDelete) { + // Define os dados da resposta visual + setResponse({ + status: 400, + message: "Não foi informado um registro para exclusão", + }); + return; } + await removeGTBEstadoCivil(itemToDelete); + await fetchGTBEstadoCivil(); // Atualiza a tabela após remover + handleCancel(); + }, [itemToDelete, fetchGTBEstadoCivil, handleCancel]); - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(data = initalEstadoCivil) }} - /> + // Efeito para carregar os dados na montagem do componente + useEffect(() => { + fetchGTBEstadoCivil(); + }, []); - {/* Tabela de Estados Civis */} - - - - - + // Mostra tela de loading enquanto os dados não são carregados + if (!gTBEstadoCivil) { + return ; + } - {/* Modal de confirmação */} - + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm((data = initalEstadoCivil)); + }} + /> - {/* Formulário de criação/edição */} - -
- ); + {/* Tabela de Estados Civis */} + + + + + + + {/* Modal de confirmação */} + + + {/* Formulário de criação/edição */} + +
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/(g_tb_profissao)/profissoes/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(g_tb_profissao)/profissoes/page.tsx index cce2544..89776c6 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(g_tb_profissao)/profissoes/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(g_tb_profissao)/profissoes/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -18,146 +18,151 @@ import GTBProfissaoInterface from "../../_interfaces/GTBProfissaoInterface"; import Header from "@/app/_components/structure/Header"; export default function TTBAndamentoServico() { - // Hooks para leitura e salvamento - const { gTBProfissao, fetchGTBProfissao } = useGTBProfissaoReadHook(); - const { saveGTBProfissao } = useGTBProfissaoSaveHook(); - const { removeGTBProfissao } = useGTBProfissaoRemoveHook(); + // Hooks para leitura e salvamento + const { gTBProfissao, fetchGTBProfissao } = useGTBProfissaoReadHook(); + const { saveGTBProfissao } = useGTBProfissaoSaveHook(); + const { removeGTBProfissao } = useGTBProfissaoRemoveHook(); - // Estados - const [selectedAndamento, setSelectedAndamento] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); + // Estados + const [selectedAndamento, setSelectedAndamento] = + useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); - // Estado para saber qual item será deletado - const [itemToDelete, setItemToDelete] = useState(null); + // Estado para saber qual item será deletado + const [itemToDelete, setItemToDelete] = + useState(null); - /** - * Hook do modal de confirmação - */ - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleConfirm, - handleCancel, - } = useConfirmDialog(); + /** + * Hook do modal de confirmação + */ + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleConfirm, + handleCancel, + } = useConfirmDialog(); - /** - * Abre o formulário no modo de edição ou criação - */ - const handleOpenForm = useCallback((data: GTBProfissaoInterface | null) => { - setSelectedAndamento(data); - setIsFormOpen(true); - }, []); + /** + * Abre o formulário no modo de edição ou criação + */ + const handleOpenForm = useCallback((data: GTBProfissaoInterface | null) => { + setSelectedAndamento(data); + setIsFormOpen(true); + }, []); - /** - * Fecha o formulário e limpa o andamento selecionado - */ - const handleCloseForm = useCallback(() => { - setSelectedAndamento(null); - setIsFormOpen(false); - }, []); + /** + * Fecha o formulário e limpa o andamento selecionado + */ + const handleCloseForm = useCallback(() => { + setSelectedAndamento(null); + setIsFormOpen(false); + }, []); - /** - * Salva os dados do formulário - */ - const handleSave = useCallback(async (formData: GTBProfissaoInterface) => { + /** + * Salva os dados do formulário + */ + const handleSave = useCallback( + async (formData: GTBProfissaoInterface) => { + // Aguarda salvar o registro + await saveGTBProfissao(formData); - // Aguarda salvar o registro - await saveGTBProfissao(formData); + // Atualiza a lista de dados + fetchGTBProfissao(); + }, + [saveGTBProfissao, fetchGTBProfissao, handleCloseForm], + ); - // Atualiza a lista de dados - fetchGTBProfissao(); + /** + * Quando o usuário clica em "remover" na tabela + */ + const handleConfirmDelete = useCallback( + (item: GTBProfissaoInterface) => { + // Define o item atual para remoção + setItemToDelete(item); - }, [saveGTBProfissao, fetchGTBProfissao, handleCloseForm]); + // Abre o modal de confirmação + openConfirmDialog(); + }, + [openConfirmDialog], + ); - /** - * Quando o usuário clica em "remover" na tabela - */ - const handleConfirmDelete = useCallback((item: GTBProfissaoInterface) => { + /** + * Executa a exclusão de fato quando o usuário confirma + */ + const handleDelete = useCallback(async () => { + // Protege contra null + if (!itemToDelete) return; - // Define o item atual para remoção - setItemToDelete(item); + // Executa o Hook de remoção + await removeGTBProfissao(itemToDelete); - // Abre o modal de confirmação - openConfirmDialog(); + // Atualiza a lista + await fetchGTBProfissao(); - }, [openConfirmDialog]); + // Limpa o item selecionado + setItemToDelete(null); - /** - * Executa a exclusão de fato quando o usuário confirma - */ - const handleDelete = useCallback(async () => { + // Fecha o modal + handleCancel(); + }, [itemToDelete, fetchGTBProfissao, handleCancel]); - // Protege contra null - if (!itemToDelete) return; + /** + * Busca inicial dos dados + */ + useEffect(() => { + fetchGTBProfissao(); + }, []); - // Executa o Hook de remoção - await removeGTBProfissao(itemToDelete); + /** + * Tela de loading enquanto carrega os dados + */ + if (!gTBProfissao) { + return ; + } - // Atualiza a lista - await fetchGTBProfissao(); + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm(null); + }} + /> - // Limpa o item selecionado - setItemToDelete(null); + {/* Tabela de andamentos */} + + + + + - // Fecha o modal - handleCancel(); + {/* Modal de confirmação */} + - }, [itemToDelete, fetchGTBProfissao, handleCancel]); - - /** - * Busca inicial dos dados - */ - useEffect(() => { - fetchGTBProfissao(); - }, []); - - /** - * Tela de loading enquanto carrega os dados - */ - if (!gTBProfissao) { - return ; - } - - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(null) }} - /> - - {/* Tabela de andamentos */} - - - - - - - {/* Modal de confirmação */} - - - {/* Formulário de criação/edição */} - -
- ); 4 -} \ No newline at end of file + {/* Formulário de criação/edição */} + +
+ ); + 4; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/(g_tb_regimebens)/regime-bens/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(g_tb_regimebens)/regime-bens/page.tsx index a241d19..3070b0a 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(g_tb_regimebens)/regime-bens/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(g_tb_regimebens)/regime-bens/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -18,146 +18,151 @@ import GTBRegimeBensInterface from "../../_interfaces/GTBRegimeBensInterface"; import Header from "@/app/_components/structure/Header"; export default function TTBAndamentoServico() { - // Hooks para leitura e salvamento - const { gTBRegimeBens, fetchGTBRegimeBens } = useGTBRegimeBensReadHook(); - const { saveGTBRegimeComunhao } = useGTBRegimeBensSaveHook(); - const { removeGTBRegimeComunhao } = useGTBRegimeBensRemoveHook(); + // Hooks para leitura e salvamento + const { gTBRegimeBens, fetchGTBRegimeBens } = useGTBRegimeBensReadHook(); + const { saveGTBRegimeComunhao } = useGTBRegimeBensSaveHook(); + const { removeGTBRegimeComunhao } = useGTBRegimeBensRemoveHook(); - // Estados - const [selectedAndamento, setSelectedAndamento] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); + // Estados + const [selectedAndamento, setSelectedAndamento] = + useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); - // Estado para saber qual item será deletado - const [itemToDelete, setItemToDelete] = useState(null); + // Estado para saber qual item será deletado + const [itemToDelete, setItemToDelete] = + useState(null); - /** - * Hook do modal de confirmação - */ - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleConfirm, - handleCancel, - } = useConfirmDialog(); + /** + * Hook do modal de confirmação + */ + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleConfirm, + handleCancel, + } = useConfirmDialog(); - /** - * Abre o formulário no modo de edição ou criação - */ - const handleOpenForm = useCallback((data: GTBRegimeBensInterface | null) => { - setSelectedAndamento(data); - setIsFormOpen(true); - }, []); + /** + * Abre o formulário no modo de edição ou criação + */ + const handleOpenForm = useCallback((data: GTBRegimeBensInterface | null) => { + setSelectedAndamento(data); + setIsFormOpen(true); + }, []); - /** - * Fecha o formulário e limpa o andamento selecionado - */ - const handleCloseForm = useCallback(() => { - setSelectedAndamento(null); - setIsFormOpen(false); - }, []); + /** + * Fecha o formulário e limpa o andamento selecionado + */ + const handleCloseForm = useCallback(() => { + setSelectedAndamento(null); + setIsFormOpen(false); + }, []); - /** - * Salva os dados do formulário - */ - const handleSave = useCallback(async (formData: GTBRegimeBensInterface) => { + /** + * Salva os dados do formulário + */ + const handleSave = useCallback( + async (formData: GTBRegimeBensInterface) => { + // Aguarda salvar o registro + await saveGTBRegimeComunhao(formData); - // Aguarda salvar o registro - await saveGTBRegimeComunhao(formData); + // Atualiza a lista de dados + fetchGTBRegimeBens(); + }, + [saveGTBRegimeComunhao, fetchGTBRegimeBens], + ); - // Atualiza a lista de dados - fetchGTBRegimeBens(); + /** + * Quando o usuário clica em "remover" na tabela + */ + const handleConfirmDelete = useCallback( + (item: GTBRegimeBensInterface) => { + // Define o item atual para remoção + setItemToDelete(item); - }, [saveGTBRegimeComunhao, fetchGTBRegimeBens]); + // Abre o modal de confirmação + openConfirmDialog(); + }, + [openConfirmDialog], + ); - /** - * Quando o usuário clica em "remover" na tabela - */ - const handleConfirmDelete = useCallback((item: GTBRegimeBensInterface) => { + /** + * Executa a exclusão de fato quando o usuário confirma + */ + const handleDelete = useCallback(async () => { + // Protege contra null + if (!itemToDelete) return; - // Define o item atual para remoção - setItemToDelete(item); + // Executa o Hook de remoção + await removeGTBRegimeComunhao(itemToDelete); - // Abre o modal de confirmação - openConfirmDialog(); + // Atualiza a lista + await fetchGTBRegimeBens(); - }, [openConfirmDialog]); + // Limpa o item selecionado + setItemToDelete(null); - /** - * Executa a exclusão de fato quando o usuário confirma - */ - const handleDelete = useCallback(async () => { + // Fecha o modal + handleCancel(); + }, [itemToDelete, fetchGTBRegimeBens, handleCancel]); - // Protege contra null - if (!itemToDelete) return; + /** + * Busca inicial dos dados + */ + useEffect(() => { + fetchGTBRegimeBens(); + }, []); - // Executa o Hook de remoção - await removeGTBRegimeComunhao(itemToDelete); + /** + * Tela de loading enquanto carrega os dados + */ + if (!gTBRegimeBens) { + return ; + } - // Atualiza a lista - await fetchGTBRegimeBens(); + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm(null); + }} + /> - // Limpa o item selecionado - setItemToDelete(null); + {/* Tabela de andamentos */} + + + + + - // Fecha o modal - handleCancel(); + {/* Modal de confirmação */} + - }, [itemToDelete, fetchGTBRegimeBens, handleCancel]); - - /** - * Busca inicial dos dados - */ - useEffect(() => { - fetchGTBRegimeBens(); - }, []); - - /** - * Tela de loading enquanto carrega os dados - */ - if (!gTBRegimeBens) { - return ; - } - - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(null) }} - /> - - {/* Tabela de andamentos */} - - - - - - - {/* Modal de confirmação */} - - - {/* Formulário de criação/edição */} - -
- ); 4 -} \ No newline at end of file + {/* Formulário de criação/edição */} + +
+ ); + 4; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/(g_tb_regimecomunhao)/regime-comunhao/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(g_tb_regimecomunhao)/regime-comunhao/page.tsx index 55af3da..c780837 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(g_tb_regimecomunhao)/regime-comunhao/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(g_tb_regimecomunhao)/regime-comunhao/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -18,146 +18,155 @@ import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInter import Header from "@/app/_components/structure/Header"; export default function TTBAndamentoServico() { - // Hooks para leitura e salvamento - const { gTBRegimeComunhao, fetchGTBRegimeComunhao } = useGTBRegimeComunhaoReadHook(); - const { saveGTBRegimeComunhao } = useGTBRegimeComunhaoSaveHook(); - const { removeGTBRegimeComunhao } = useGTBRegimeComunhaoRemoveHook(); + // Hooks para leitura e salvamento + const { gTBRegimeComunhao, fetchGTBRegimeComunhao } = + useGTBRegimeComunhaoReadHook(); + const { saveGTBRegimeComunhao } = useGTBRegimeComunhaoSaveHook(); + const { removeGTBRegimeComunhao } = useGTBRegimeComunhaoRemoveHook(); - // Estados - const [selectedAndamento, setSelectedAndamento] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); + // Estados + const [selectedAndamento, setSelectedAndamento] = + useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); - // Estado para saber qual item será deletado - const [itemToDelete, setItemToDelete] = useState(null); + // Estado para saber qual item será deletado + const [itemToDelete, setItemToDelete] = + useState(null); - /** - * Hook do modal de confirmação - */ - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleConfirm, - handleCancel, - } = useConfirmDialog(); + /** + * Hook do modal de confirmação + */ + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleConfirm, + handleCancel, + } = useConfirmDialog(); - /** - * Abre o formulário no modo de edição ou criação - */ - const handleOpenForm = useCallback((data: GTBRegimeComunhaoInterface | null) => { - setSelectedAndamento(data); - setIsFormOpen(true); - }, []); + /** + * Abre o formulário no modo de edição ou criação + */ + const handleOpenForm = useCallback( + (data: GTBRegimeComunhaoInterface | null) => { + setSelectedAndamento(data); + setIsFormOpen(true); + }, + [], + ); - /** - * Fecha o formulário e limpa o andamento selecionado - */ - const handleCloseForm = useCallback(() => { - setSelectedAndamento(null); - setIsFormOpen(false); - }, []); + /** + * Fecha o formulário e limpa o andamento selecionado + */ + const handleCloseForm = useCallback(() => { + setSelectedAndamento(null); + setIsFormOpen(false); + }, []); - /** - * Salva os dados do formulário - */ - const handleSave = useCallback(async (formData: GTBRegimeComunhaoInterface) => { + /** + * Salva os dados do formulário + */ + const handleSave = useCallback( + async (formData: GTBRegimeComunhaoInterface) => { + // Aguarda salvar o registro + await saveGTBRegimeComunhao(formData); - // Aguarda salvar o registro - await saveGTBRegimeComunhao(formData); + // Atualiza a lista de dados + fetchGTBRegimeComunhao(); + }, + [saveGTBRegimeComunhao, fetchGTBRegimeComunhao], + ); - // Atualiza a lista de dados - fetchGTBRegimeComunhao(); + /** + * Quando o usuário clica em "remover" na tabela + */ + const handleConfirmDelete = useCallback( + (item: GTBRegimeComunhaoInterface) => { + // Define o item atual para remoção + setItemToDelete(item); - }, [saveGTBRegimeComunhao, fetchGTBRegimeComunhao]); + // Abre o modal de confirmação + openConfirmDialog(); + }, + [openConfirmDialog], + ); - /** - * Quando o usuário clica em "remover" na tabela - */ - const handleConfirmDelete = useCallback((item: GTBRegimeComunhaoInterface) => { + /** + * Executa a exclusão de fato quando o usuário confirma + */ + const handleDelete = useCallback(async () => { + // Protege contra null + if (!itemToDelete) return; - // Define o item atual para remoção - setItemToDelete(item); + // Executa o Hook de remoção + await removeGTBRegimeComunhao(itemToDelete); - // Abre o modal de confirmação - openConfirmDialog(); + // Atualiza a lista + await fetchGTBRegimeComunhao(); - }, [openConfirmDialog]); + // Limpa o item selecionado + setItemToDelete(null); - /** - * Executa a exclusão de fato quando o usuário confirma - */ - const handleDelete = useCallback(async () => { + // Fecha o modal + handleCancel(); + }, [itemToDelete, fetchGTBRegimeComunhao, handleCancel]); - // Protege contra null - if (!itemToDelete) return; + /** + * Busca inicial dos dados + */ + useEffect(() => { + fetchGTBRegimeComunhao(); + }, []); - // Executa o Hook de remoção - await removeGTBRegimeComunhao(itemToDelete); + /** + * Tela de loading enquanto carrega os dados + */ + if (!gTBRegimeComunhao) { + return ; + } - // Atualiza a lista - await fetchGTBRegimeComunhao(); + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm(null); + }} + /> - // Limpa o item selecionado - setItemToDelete(null); + {/* Tabela de andamentos */} + + + + + - // Fecha o modal - handleCancel(); + {/* Modal de confirmação */} + - }, [itemToDelete, fetchGTBRegimeComunhao, handleCancel]); - - /** - * Busca inicial dos dados - */ - useEffect(() => { - fetchGTBRegimeComunhao(); - }, []); - - /** - * Tela de loading enquanto carrega os dados - */ - if (!gTBRegimeComunhao) { - return ; - } - - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(null) }} - /> - - {/* Tabela de andamentos */} - - - - - - - {/* Modal de confirmação */} - - - {/* Formulário de criação/edição */} - -
- ); 4 -} \ No newline at end of file + {/* Formulário de criação/edição */} + +
+ ); + 4; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/(g_tb_tipologradouro)/tipo-logradouro/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(g_tb_tipologradouro)/tipo-logradouro/page.tsx index f7d42ce..1302199 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(g_tb_tipologradouro)/tipo-logradouro/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(g_tb_tipologradouro)/tipo-logradouro/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -19,167 +19,173 @@ import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroI import { useResponse } from "@/app/_response/ResponseContext"; export default function TTBAndamentoServico() { + // Controle de exibição de respostas + const { setResponse } = useResponse(); - // Controle de exibição de respostas - const { setResponse } = useResponse(); + // Controle de estado do botão + const [buttonIsLoading, setButtonIsLoading] = useState(false); - // Controle de estado do botão - const [buttonIsLoading, setButtonIsLoading] = useState(false); + // Hooks para leitura e salvamento + const { gTBTipoLogradouro, fetchGTBTipoLogradouro } = + useGTBTipoLogradouroReadHook(); + const { saveGTBTipoLogradouro } = useGTBTipoLogradouroSaveHook(); + const { removeGTBTipoLogradouro } = useGTBTipoLogradouroRemoveHook(); - // Hooks para leitura e salvamento - const { gTBTipoLogradouro, fetchGTBTipoLogradouro } = useGTBTipoLogradouroReadHook(); - const { saveGTBTipoLogradouro } = useGTBTipoLogradouroSaveHook(); - const { removeGTBTipoLogradouro } = useGTBTipoLogradouroRemoveHook(); + // Estados + const [selectedTipoLogradouro, setTipoLogradouro] = + useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); - // Estados - const [selectedTipoLogradouro, setTipoLogradouro] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); + // Estado para saber qual item será deletado + const [itemToDelete, setItemToDelete] = + useState(null); - // Estado para saber qual item será deletado - const [itemToDelete, setItemToDelete] = useState(null); + /** + * Hook do modal de confirmação + */ + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleCancel, + } = useConfirmDialog(); - /** - * Hook do modal de confirmação - */ - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleCancel, - } = useConfirmDialog(); + /** + * Abre o formulário no modo de edição ou criação + */ + const handleOpenForm = useCallback( + (data: GTBTipoLogradouroInterface | null) => { + setTipoLogradouro(data); + setIsFormOpen(true); + }, + [], + ); - /** - * Abre o formulário no modo de edição ou criação - */ - const handleOpenForm = useCallback((data: GTBTipoLogradouroInterface | null) => { - setTipoLogradouro(data); - setIsFormOpen(true); - }, []); + /** + * Fecha o formulário e limpa o andamento selecionado + */ + const handleCloseForm = useCallback(() => { + setTipoLogradouro(null); + setIsFormOpen(false); + }, []); - /** - * Fecha o formulário e limpa o andamento selecionado - */ - const handleCloseForm = useCallback(() => { - setTipoLogradouro(null); - setIsFormOpen(false); - }, []); + /** + * Salva os dados do formulário + */ + const handleSave = useCallback( + async (formData: GTBTipoLogradouroInterface) => { + // Coloca o botão em estado de loading + setButtonIsLoading(true); - /** - * Salva os dados do formulário - */ - const handleSave = useCallback(async (formData: GTBTipoLogradouroInterface) => { + // Aguarda salvar o registro + await saveGTBTipoLogradouro(formData); - // Coloca o botão em estado de loading - setButtonIsLoading(true); + // Remove o botão do estado de loading + setButtonIsLoading(false); - // Aguarda salvar o registro - await saveGTBTipoLogradouro(formData); + // Atualiza a lista de dados + fetchGTBTipoLogradouro(); + }, + [saveGTBTipoLogradouro, fetchGTBTipoLogradouro], + ); - // Remove o botão do estado de loading - setButtonIsLoading(false); + /** + * Quando o usuário clica em "remover" na tabela + */ + const handleConfirmDelete = useCallback( + (item: GTBTipoLogradouroInterface) => { + // Define o item atual para remoção + setItemToDelete(item); - // Atualiza a lista de dados - fetchGTBTipoLogradouro(); + // Abre o modal de confirmação + openConfirmDialog(); + }, + [openConfirmDialog], + ); - }, [saveGTBTipoLogradouro, fetchGTBTipoLogradouro]); - - /** - * Quando o usuário clica em "remover" na tabela - */ - const handleConfirmDelete = useCallback((item: GTBTipoLogradouroInterface) => { - - // Define o item atual para remoção - setItemToDelete(item); - - // Abre o modal de confirmação - openConfirmDialog(); - - }, [openConfirmDialog]); - - /** - * Executa a exclusão de fato quando o usuário confirma - */ - const handleDelete = useCallback(async () => { - - // Protege contra null - if (!itemToDelete) { - - // Define os dados da resposta visual - setResponse({ - status: 400, - message: 'Não foi informado um registro para exclusão' - }); - return; - }; - - // Executa o Hook de remoção - await removeGTBTipoLogradouro(itemToDelete); - - // Atualiza a lista - await fetchGTBTipoLogradouro(); - - // Limpa o item selecionado - setItemToDelete(null); - - // Fecha o modal - handleCancel(); - - }, [itemToDelete, fetchGTBTipoLogradouro, handleCancel]); - - /** - * Busca inicial dos dados - */ - useEffect(() => { - fetchGTBTipoLogradouro(); - }, []); - - /** - * Tela de loading enquanto carrega os dados - */ - if (!gTBTipoLogradouro) { - return ; + /** + * Executa a exclusão de fato quando o usuário confirma + */ + const handleDelete = useCallback(async () => { + // Protege contra null + if (!itemToDelete) { + // Define os dados da resposta visual + setResponse({ + status: 400, + message: "Não foi informado um registro para exclusão", + }); + return; } - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(null) }} - /> + // Executa o Hook de remoção + await removeGTBTipoLogradouro(itemToDelete); - {/* Tabela de andamentos */} - - - - - + // Atualiza a lista + await fetchGTBTipoLogradouro(); - {/* Modal de confirmação */} - + // Limpa o item selecionado + setItemToDelete(null); - {/* Formulário de criação/edição */} - -
- ); -} \ No newline at end of file + // Fecha o modal + handleCancel(); + }, [itemToDelete, fetchGTBTipoLogradouro, handleCancel]); + + /** + * Busca inicial dos dados + */ + useEffect(() => { + fetchGTBTipoLogradouro(); + }, []); + + /** + * Tela de loading enquanto carrega os dados + */ + if (!gTBTipoLogradouro) { + return ; + } + + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm(null); + }} + /> + + {/* Tabela de andamentos */} + + + + + + + {/* Modal de confirmação */} + + + {/* Formulário de criação/edição */} + +
+ ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/(t_censec)/censec/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(t_censec)/censec/page.tsx index 24287f2..647cb45 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(t_censec)/censec/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(t_censec)/censec/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -18,157 +18,162 @@ import TCensecInterface from "../../_interfaces/TCensecInterface"; import Header from "@/app/_components/structure/Header"; export default function TTBAndamentoServico() { + // Controle de estado do botão + const [buttonIsLoading, setButtonIsLoading] = useState(false); - // Controle de estado do botão - const [buttonIsLoading, setButtonIsLoading] = useState(false); + // Hooks para leitura e salvamento + const { tCensec, fetchTCensec } = useTCensecReadHook(); + const { saveTCensec } = useTCensecSaveHook(); + const { deleteTCensec } = useTCensecDeleteHook(); - // Hooks para leitura e salvamento - const { tCensec, fetchTCensec } = useTCensecReadHook(); - const { saveTCensec } = useTCensecSaveHook(); - const { deleteTCensec } = useTCensecDeleteHook(); + // Estados + const [selectedAndamento, setSelectedAndamento] = + useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); - // Estados - const [selectedAndamento, setSelectedAndamento] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); + // Estado para saber qual item será deletado + const [itemToDelete, setItemToDelete] = useState( + null, + ); - // Estado para saber qual item será deletado - const [itemToDelete, setItemToDelete] = useState(null); + /** + * Hook do modal de confirmação + */ + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleConfirm, + handleCancel, + } = useConfirmDialog(); - /** - * Hook do modal de confirmação - */ - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleConfirm, - handleCancel, - } = useConfirmDialog(); + /** + * Abre o formulário no modo de edição ou criação + */ + const handleOpenForm = useCallback((data: TCensecInterface | null) => { + setSelectedAndamento(data); + setIsFormOpen(true); + }, []); - /** - * Abre o formulário no modo de edição ou criação - */ - const handleOpenForm = useCallback((data: TCensecInterface | null) => { - setSelectedAndamento(data); - setIsFormOpen(true); - }, []); + /** + * Fecha o formulário e limpa o andamento selecionado + */ + const handleCloseForm = useCallback(() => { + setSelectedAndamento(null); + setIsFormOpen(false); + }, []); - /** - * Fecha o formulário e limpa o andamento selecionado - */ - const handleCloseForm = useCallback(() => { - setSelectedAndamento(null); - setIsFormOpen(false); - }, []); + /** + * Salva os dados do formulário + */ + const handleSave = useCallback( + async (formData: TCensecInterface) => { + // Coloca o botão em estado de loading + setButtonIsLoading(true); - /** - * Salva os dados do formulário - */ - const handleSave = useCallback(async (formData: TCensecInterface) => { + // Aguarda salvar o registro + await saveTCensec(formData); - // Coloca o botão em estado de loading - setButtonIsLoading(true); + // Remove o botão em estado de loading + setButtonIsLoading(false); - // Aguarda salvar o registro - await saveTCensec(formData); + // Atualiza a lista de dados + fetchTCensec(); + }, + [saveTCensec, fetchTCensec, handleCloseForm], + ); - // Remove o botão em estado de loading - setButtonIsLoading(false); + /** + * Quando o usuário clica em "remover" na tabela + */ + const handleConfirmDelete = useCallback( + (item: TCensecInterface) => { + // Define o item atual para remoção + setItemToDelete(item); - // Atualiza a lista de dados - fetchTCensec(); + // Abre o modal de confirmação + openConfirmDialog(); + }, + [openConfirmDialog], + ); - }, [saveTCensec, fetchTCensec, handleCloseForm]); + /** + * Executa a exclusão de fato quando o usuário confirma + */ + const handleDelete = useCallback(async () => { + // Protege contra null + if (!itemToDelete) return; - /** - * Quando o usuário clica em "remover" na tabela - */ - const handleConfirmDelete = useCallback((item: TCensecInterface) => { + // Executa o Hook de remoção + await deleteTCensec(itemToDelete); - // Define o item atual para remoção - setItemToDelete(item); + // Atualiza a lista + await fetchTCensec(); - // Abre o modal de confirmação - openConfirmDialog(); + // Limpa o item selecionado + setItemToDelete(null); - }, [openConfirmDialog]); + // Fecha o modal + handleCancel(); + }, [itemToDelete, fetchTCensec, handleCancel]); - /** - * Executa a exclusão de fato quando o usuário confirma - */ - const handleDelete = useCallback(async () => { + /** + * Busca inicial dos dados + */ + useEffect(() => { + fetchTCensec(); + }, []); - // Protege contra null - if (!itemToDelete) return; + /** + * Tela de loading enquanto carrega os dados + */ + if (tCensec.length == 0) { + return ; + } - // Executa o Hook de remoção - await deleteTCensec(itemToDelete); + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm(null); + }} + /> - // Atualiza a lista - await fetchTCensec(); + {/* Tabela de andamentos */} + + + + + - // Limpa o item selecionado - setItemToDelete(null); + {/* Modal de confirmação */} + - // Fecha o modal - handleCancel(); - - }, [itemToDelete, fetchTCensec, handleCancel]); - - /** - * Busca inicial dos dados - */ - useEffect(() => { - fetchTCensec(); - }, []); - - /** - * Tela de loading enquanto carrega os dados - */ - if (tCensec.length == 0) { - return ; - } - - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(null) }} - /> - - {/* Tabela de andamentos */} - - - - - - - {/* Modal de confirmação */} - - - {/* Formulário de criação/edição */} - -
- ); 4 -} \ No newline at end of file + {/* Formulário de criação/edição */} + +
+ ); + 4; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/(t_censecnaturezalitigio)/censec-natureza-litigio/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(t_censecnaturezalitigio)/censec-natureza-litigio/page.tsx index a17dc36..148d291 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(t_censecnaturezalitigio)/censec-natureza-litigio/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(t_censecnaturezalitigio)/censec-natureza-litigio/page.tsx @@ -1,9 +1,9 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; import { useConfirmDialog } from "@/app/_components/confirm_dialog/useConfirmDialog"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import Header from "@/app/_components/structure/Header"; import ConfirmDialog from "@/app/_components/confirm_dialog/ConfirmDialog"; @@ -22,11 +22,10 @@ import { SituacoesEnum } from "@/enums/SituacoesEnum"; const initialCensecNaturezaLitigio: TCensecNaturezaLitigioInterface = { censec_naturezalitigio_id: 0, descricao: "", - situacao: SituacoesEnum.A -} + situacao: SituacoesEnum.A, +}; export default function TCensecNaturezaLitigioPage() { - // Controle de exibição de respostas const { setResponse } = useResponse(); @@ -34,14 +33,18 @@ export default function TCensecNaturezaLitigioPage() { const [buttonIsLoading, setButtonIsLoading] = useState(false); // Hooks - const { tCensecNaturezaLitigio, fetchTCensecNaturezaLitigio } = useTCensecNaturezaLitigioReadHook(); + const { tCensecNaturezaLitigio, fetchTCensecNaturezaLitigio } = + useTCensecNaturezaLitigioReadHook(); const { saveTCensecNaturezaLitigio } = useTCensecNaturezaLitigioSaveHook(); - const { removeTCensecNaturezaLitigio } = useTCensecNaturezaLitigioRemoveHook(); + const { removeTCensecNaturezaLitigio } = + useTCensecNaturezaLitigioRemoveHook(); // Estados - const [selectedItem, setSelectedItem] = useState(null); + const [selectedItem, setSelectedItem] = + useState(null); const [isFormOpen, setIsFormOpen] = useState(false); - const [itemToDelete, setItemToDelete] = useState(null); + const [itemToDelete, setItemToDelete] = + useState(null); // Modal de confirmação const { @@ -51,10 +54,13 @@ export default function TCensecNaturezaLitigioPage() { } = useConfirmDialog(); // Abrir formulário (criação ou edição) - const handleOpenForm = useCallback((item: TCensecNaturezaLitigioInterface | null) => { - setSelectedItem(item); - setIsFormOpen(true); - }, []); + const handleOpenForm = useCallback( + (item: TCensecNaturezaLitigioInterface | null) => { + setSelectedItem(item); + setIsFormOpen(true); + }, + [], + ); // Fechar formulário const handleCloseForm = useCallback(() => { @@ -63,32 +69,37 @@ export default function TCensecNaturezaLitigioPage() { }, []); // Salvar item - const handleSave = useCallback(async (formData: TCensecNaturezaLitigioInterface) => { - // Coloca o botão em estado de loading - setButtonIsLoading(true); - await saveTCensecNaturezaLitigio(formData); - // Remove o botão do estado de loading - setButtonIsLoading(false); - await fetchTCensecNaturezaLitigio(); - }, [saveTCensecNaturezaLitigio, fetchTCensecNaturezaLitigio]); + const handleSave = useCallback( + async (formData: TCensecNaturezaLitigioInterface) => { + // Coloca o botão em estado de loading + setButtonIsLoading(true); + await saveTCensecNaturezaLitigio(formData); + // Remove o botão do estado de loading + setButtonIsLoading(false); + await fetchTCensecNaturezaLitigio(); + }, + [saveTCensecNaturezaLitigio, fetchTCensecNaturezaLitigio], + ); // Confirmar remoção - const handleConfirmDelete = useCallback((item: TCensecNaturezaLitigioInterface) => { - setItemToDelete(item); - openConfirmDialog(); - }, [openConfirmDialog]); + const handleConfirmDelete = useCallback( + (item: TCensecNaturezaLitigioInterface) => { + setItemToDelete(item); + openConfirmDialog(); + }, + [openConfirmDialog], + ); // Executar remoção const handleDelete = useCallback(async () => { if (!itemToDelete) { - // Define os dados da resposta visual setResponse({ status: 400, - message: 'Não foi informado um registro para exclusão' + message: "Não foi informado um registro para exclusão", }); return; - }; + } await removeTCensecNaturezaLitigio(itemToDelete); await fetchTCensecNaturezaLitigio(); @@ -113,7 +124,9 @@ export default function TCensecNaturezaLitigioPage() { title={"Natureza do Litígio"} description={"Gerenciamento de Naturezas do Litígio"} buttonText={"Nova Natureza"} - buttonAction={(data) => handleOpenForm(data = initialCensecNaturezaLitigio)} + buttonAction={(data) => + handleOpenForm((data = initialCensecNaturezaLitigio)) + } /> {/* Tabela */} @@ -149,4 +162,4 @@ export default function TCensecNaturezaLitigioPage() { />
); -} \ No newline at end of file +} diff --git a/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/[id]/detalhes/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/[id]/detalhes/page.tsx index 402df0c..ded3193 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/[id]/detalhes/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/[id]/detalhes/page.tsx @@ -1,17 +1,14 @@ -'use client' +"use client"; import { useEffect, useState } from "react"; import { useParams } from "next/navigation"; -import { - Card, - CardContent -} from "@/components/ui/card"; +import { Card, CardContent } from "@/components/ui/card"; import MainEditor from "@/components/MainEditor"; import Loading from "@/app/_components/loading/loading"; -import { useTMinutaReadHook } from '../../../../_hooks/t_minuta/useTMinutaReadHook'; -import { TMinutaInterface } from '../../../../_interfaces/TMinutaInterface'; +import { useTMinutaReadHook } from "../../../../_hooks/t_minuta/useTMinutaReadHook"; +import { TMinutaInterface } from "../../../../_interfaces/TMinutaInterface"; export default function TMinutaDetalhes() { const params = useParams(); @@ -47,30 +44,25 @@ export default function TMinutaDetalhes() {
-
- Descrição -
-
- {tMinuta.descricao} -
+
Descrição
+
{tMinuta.descricao}
-
- Situação -
+
Situação
{tMinuta.situacao === "A" ? "Ativo" : "Inativo"}
-
- Texto -
+
Texto
diff --git a/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/formulario/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/formulario/page.tsx index 9a18d59..5cb5b83 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/formulario/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/formulario/page.tsx @@ -1,113 +1,113 @@ -'use client'; +"use client"; -import z from 'zod'; -import { useEffect } from 'react'; -import { useForm, Controller } from 'react-hook-form'; -import { zodResolver } from '@hookform/resolvers/zod'; +import z from "zod"; +import { useEffect } from "react"; +import { useForm, Controller } from "react-hook-form"; +import { zodResolver } from "@hookform/resolvers/zod"; -import { Button } from '@/components/ui/button'; -import { Checkbox } from '@/components/ui/checkbox'; +import { Button } from "@/components/ui/button"; +import { Checkbox } from "@/components/ui/checkbox"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage -} from '@/components/ui/form'; -import { Input } from '@/components/ui/input'; -import { Label } from '@/components/ui/label'; + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, +} from "@/components/ui/form"; +import { Input } from "@/components/ui/input"; +import { Label } from "@/components/ui/label"; -import MainEditor from '@/components/MainEditor'; -import { TMinutaSchema } from '../../../_schemas/TMinutaSchema'; -import { useTMinutaSaveHook } from '../../../_hooks/t_minuta/useTMinutaSaveHook'; -import { Card, CardContent } from '@/components/ui/card'; +import MainEditor from "@/components/MainEditor"; +import { TMinutaSchema } from "../../../_schemas/TMinutaSchema"; +import { useTMinutaSaveHook } from "../../../_hooks/t_minuta/useTMinutaSaveHook"; +import { Card, CardContent } from "@/components/ui/card"; type FormValues = z.infer; export default function TMinutaForm() { + const { tMinuta, saveTMinuta } = useTMinutaSaveHook(); - const { tMinuta, saveTMinuta } = useTMinutaSaveHook(); + const form = useForm({ + resolver: zodResolver(TMinutaSchema), + defaultValues: { + natureza_id: undefined, + descricao: "", + situacao: "A", + texto: "", + }, + }); - const form = useForm({ - resolver: zodResolver(TMinutaSchema), - defaultValues: { - natureza_id: undefined, - descricao: '', - situacao: 'A', - texto: '', - } - }); + async function onSubmit(values: FormValues) { + saveTMinuta(values); + } - async function onSubmit(values: FormValues) { - saveTMinuta(values); - } + return ( +
+ + +
+ + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - return ( -
- - + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - - - - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> - - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> - - {/* Editor de Texto */} - ( -
- - {form.formState.errors.texto && ( -

- {form.formState.errors.texto.message} -

- )} -
- )} - /> - - - -
-
-
- ); + {/* Editor de Texto */} + ( +
+ + {form.formState.errors.texto && ( +

+ {form.formState.errors.texto.message} +

+ )} +
+ )} + /> + + + +
+
+
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/page.tsx index 691dc29..d73a722 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(t_minuta)/minuta/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -19,23 +19,26 @@ import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; import { useTMinutaIndexHook } from "../../_hooks/t_minuta/useTMinutaIndexHook"; export default function TMinutaPage() { - // Hooks de leitura e escrita const { tMinuta, fetchTMinuta } = useTMinutaIndexHook(); const { saveTMinuta } = useTMinutaSaveHook(); const { removeTMinuta } = useTMinutaRemoveHook(); // Estados - const [selectedMinuta, setSelectedMinuta] = useState(null); + const [selectedMinuta, setSelectedMinuta] = useState( + null, + ); const [isFormOpen, setIsFormOpen] = useState(false); - const [itemToDelete, setItemToDelete] = useState(null); + const [itemToDelete, setItemToDelete] = useState( + null, + ); // Hook de confirmação const { isOpen: isConfirmOpen, openDialog: openConfirmDialog, handleConfirm, - handleCancel + handleCancel, } = useConfirmDialog(); // Abertura do formulário @@ -45,10 +48,13 @@ export default function TMinutaPage() { }, []); // Ação de clique em remover - const handleConfirmDelete = useCallback((item: TMinutaInterface) => { - setItemToDelete(item); - openConfirmDialog(); - }, [openConfirmDialog]); + const handleConfirmDelete = useCallback( + (item: TMinutaInterface) => { + setItemToDelete(item); + openConfirmDialog(); + }, + [openConfirmDialog], + ); // Remoção da minuta após confirmação const handleDelete = useCallback(async () => { diff --git a/src/app/(protected)/(cadastros)/cadastros/(t_tb_andamentoservico)/andamentos/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(t_tb_andamentoservico)/andamentos/page.tsx index f33c575..8cf1c66 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(t_tb_andamentoservico)/andamentos/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(t_tb_andamentoservico)/andamentos/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -18,143 +18,152 @@ import { useTTBAndamentoServicoDeleteHook } from "../../_hooks/t_tb_andamentoser import Header from "@/app/_components/structure/Header"; export default function TTBAndamentoServico() { + // Hooks para leitura e salvamento + const { tTBAndamentosServicos, fetchTTBAndamentoServico } = + useTTBAndamentoServicoReadHook(); + const { saveTTBAndamentoServico } = useTTBAndamentoServicoSaveHook(); + const { deleteTTBAndamentoServico } = useTTBAndamentoServicoDeleteHook(); - // Hooks para leitura e salvamento - const { tTBAndamentosServicos, fetchTTBAndamentoServico } = useTTBAndamentoServicoReadHook(); - const { saveTTBAndamentoServico } = useTTBAndamentoServicoSaveHook(); - const { deleteTTBAndamentoServico } = useTTBAndamentoServicoDeleteHook(); + // Estados + const [selectedAndamento, setSelectedAndamento] = + useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); - // Estados - const [selectedAndamento, setSelectedAndamento] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); + // Estado para saber qual item será deletado + const [itemToDelete, setItemToDelete] = + useState(null); - // Estado para saber qual item será deletado - const [itemToDelete, setItemToDelete] = useState(null); + /** + * Hook do modal de confirmação + */ + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleConfirm, + handleCancel, + } = useConfirmDialog(); - /** - * Hook do modal de confirmação - */ - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleConfirm, - handleCancel, - } = useConfirmDialog(); + /** + * Abre o formulário no modo de edição ou criação + */ + const handleOpenForm = useCallback( + (data: TTBAndamentoServicoInterface | null) => { + setSelectedAndamento(data); + setIsFormOpen(true); + }, + [], + ); - /** - * Abre o formulário no modo de edição ou criação - */ - const handleOpenForm = useCallback((data: TTBAndamentoServicoInterface | null) => { - setSelectedAndamento(data); - setIsFormOpen(true); - }, []); + /** + * Fecha o formulário e limpa o andamento selecionado + */ + const handleCloseForm = useCallback(() => { + setSelectedAndamento(null); + setIsFormOpen(false); + }, []); - /** - * Fecha o formulário e limpa o andamento selecionado - */ - const handleCloseForm = useCallback(() => { - setSelectedAndamento(null); - setIsFormOpen(false); - }, []); + /** + * Salva os dados do formulário + */ + const handleSave = useCallback( + async (formData: TTBAndamentoServicoInterface) => { + // Aguarda salvar o registro + await saveTTBAndamentoServico(formData); - /** - * Salva os dados do formulário - */ - const handleSave = useCallback(async (formData: TTBAndamentoServicoInterface) => { + // Atualiza a lista de dados + fetchTTBAndamentoServico(); + }, + [saveTTBAndamentoServico, fetchTTBAndamentoServico], + ); - // Aguarda salvar o registro - await saveTTBAndamentoServico(formData); + /** + * Quando o usuário clica em "remover" na tabela + */ + const handleConfirmDelete = useCallback( + (item: TTBAndamentoServicoInterface) => { + setItemToDelete(item); + openConfirmDialog(); + }, + [openConfirmDialog], + ); - // Atualiza a lista de dados - fetchTTBAndamentoServico(); + /** + * Executa a exclusão de fato quando o usuário confirma + */ + const handleDelete = useCallback(async () => { + // Protege contra null + if (!itemToDelete) return; - }, [saveTTBAndamentoServico, fetchTTBAndamentoServico]); + // Executa o Hook de remoção + await deleteTTBAndamentoServico(itemToDelete); - /** - * Quando o usuário clica em "remover" na tabela - */ - const handleConfirmDelete = useCallback((item: TTBAndamentoServicoInterface) => { - setItemToDelete(item); - openConfirmDialog(); - }, [openConfirmDialog]); + // Atualiza a lista + await fetchTTBAndamentoServico(); - /** - * Executa a exclusão de fato quando o usuário confirma - */ - const handleDelete = useCallback(async () => { + // Limpa o item selecionado + setItemToDelete(null); - // Protege contra null - if (!itemToDelete) return; + // Fecha o modal + handleCancel(); + }, [itemToDelete, fetchTTBAndamentoServico, handleCancel]); + /** + * Busca inicial dos dados + */ + useEffect(() => { + fetchTTBAndamentoServico(); + }, []); - // Executa o Hook de remoção - await deleteTTBAndamentoServico(itemToDelete); + /** + * Tela de loading enquanto carrega os dados + */ + if (!tTBAndamentosServicos) { + return ; + } - // Atualiza a lista - await fetchTTBAndamentoServico(); + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm(null); + }} + /> - // Limpa o item selecionado - setItemToDelete(null); + {/* Tabela de andamentos */} + + + + + - // Fecha o modal - handleCancel(); + {/* Modal de confirmação */} + - }, [itemToDelete, fetchTTBAndamentoServico, handleCancel]); - - /** - * Busca inicial dos dados - */ - useEffect(() => { - fetchTTBAndamentoServico(); - }, []); - - /** - * Tela de loading enquanto carrega os dados - */ - if (!tTBAndamentosServicos) { - return ; - } - - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(null) }} - /> - - {/* Tabela de andamentos */} - - - - - - - {/* Modal de confirmação */} - - - {/* Formulário de criação/edição */} - -
- ); 4 -} \ No newline at end of file + {/* Formulário de criação/edição */} + +
+ ); + 4; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/(t_tb_reconhecimentotipo)/reconhecimentos/page.tsx b/src/app/(protected)/(cadastros)/cadastros/(t_tb_reconhecimentotipo)/reconhecimentos/page.tsx index 8501ce9..ab636ef 100644 --- a/src/app/(protected)/(cadastros)/cadastros/(t_tb_reconhecimentotipo)/reconhecimentos/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/(t_tb_reconhecimentotipo)/reconhecimentos/page.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { useEffect, useState, useCallback } from "react"; import { Card, CardContent } from "@/components/ui/card"; @@ -18,147 +18,154 @@ import { useConfirmDialog } from "@/app/_components/confirm_dialog/useConfirmDia import TTBReconhecimentoTipoInterface from "../../_interfaces/TTBReconhecimentoTipoInterface"; export default function TTBAndamentoServico() { + // Hooks para leitura e salvamento + const { tTBReconhecimentosTipos, fetchTTBReconhecimentosTipos } = + useTTBReconhecimentoTipoReadHook(); + const { saveTTBReconhecimentoTipo } = useTTBReconhecimentoTipoSaveHook(); + const { deleteTTBReconhecimentoTipo } = useTTBReconhecimentoTipoDeleteHook(); - // Hooks para leitura e salvamento - const { tTBReconhecimentosTipos, fetchTTBReconhecimentosTipos } = useTTBReconhecimentoTipoReadHook(); - const { saveTTBReconhecimentoTipo } = useTTBReconhecimentoTipoSaveHook(); - const { deleteTTBReconhecimentoTipo } = useTTBReconhecimentoTipoDeleteHook(); + // Estados + const [selectedReconhecimentoTipo, setReconhecimentoTipo] = + useState(null); + const [isFormOpen, setIsFormOpen] = useState(false); - // Estados - const [selectedReconhecimentoTipo, setReconhecimentoTipo] = useState(null); - const [isFormOpen, setIsFormOpen] = useState(false); + // Estado para saber qual item será deletado + const [itemToDelete, setItemToDelete] = + useState(null); - // Estado para saber qual item será deletado - const [itemToDelete, setItemToDelete] = useState(null); + /** + * Hook do modal de confirmação + */ + const { + isOpen: isConfirmOpen, + openDialog: openConfirmDialog, + handleConfirm, + handleCancel, + } = useConfirmDialog(); - /** - * Hook do modal de confirmação - */ - const { - isOpen: isConfirmOpen, - openDialog: openConfirmDialog, - handleConfirm, - handleCancel, - } = useConfirmDialog(); + /** + * Abre o formulário no modo de edição ou criação + */ + const handleOpenForm = useCallback( + (data: TTBReconhecimentoTipoInterface | null) => { + setReconhecimentoTipo(data); + setIsFormOpen(true); + }, + [], + ); - /** - * Abre o formulário no modo de edição ou criação - */ - const handleOpenForm = useCallback((data: TTBReconhecimentoTipoInterface | null) => { - setReconhecimentoTipo(data); - setIsFormOpen(true); - }, []); + /** + * Fecha o formulário e limpa o andamento selecionado + */ + const handleCloseForm = useCallback(() => { + setReconhecimentoTipo(null); + setIsFormOpen(false); + }, []); - /** - * Fecha o formulário e limpa o andamento selecionado - */ - const handleCloseForm = useCallback(() => { - setReconhecimentoTipo(null); - setIsFormOpen(false); - }, []); + /** + * Salva os dados do formulário + */ + const handleSave = useCallback( + async (formData: TTBReconhecimentoTipoInterface) => { + // Aguarda salvar o registro + await saveTTBReconhecimentoTipo(formData); - /** - * Salva os dados do formulário - */ - const handleSave = useCallback(async (formData: TTBReconhecimentoTipoInterface) => { + // Atualiza a lista de dados + fetchTTBReconhecimentosTipos(); + }, + [saveTTBReconhecimentoTipo, fetchTTBReconhecimentosTipos], + ); - // Aguarda salvar o registro - await saveTTBReconhecimentoTipo(formData); + /** + * Quando o usuário clica em "remover" na tabela + */ + const handleConfirmDelete = useCallback( + (item: TTBReconhecimentoTipoInterface) => { + // Define o item atual para remoção + setItemToDelete(item); - // Atualiza a lista de dados - fetchTTBReconhecimentosTipos(); + // Abre o modal de confirmação + openConfirmDialog(); + }, + [openConfirmDialog], + ); - }, [saveTTBReconhecimentoTipo, fetchTTBReconhecimentosTipos]); + /** + * Executa a exclusão de fato quando o usuário confirma + */ + const handleDelete = useCallback(async () => { + // Protege contra null + if (!itemToDelete) return; - /** - * Quando o usuário clica em "remover" na tabela - */ - const handleConfirmDelete = useCallback((item: TTBReconhecimentoTipoInterface) => { + // Executa o Hook de remoção + await deleteTTBReconhecimentoTipo(itemToDelete); - // Define o item atual para remoção - setItemToDelete(item); + // Atualiza a lista + await fetchTTBReconhecimentosTipos(); - // Abre o modal de confirmação - openConfirmDialog(); + // Limpa o item selecionado + setItemToDelete(null); - }, [openConfirmDialog]); + // Fecha o modal + handleCancel(); + }, [itemToDelete, fetchTTBReconhecimentosTipos, handleCancel]); - /** - * Executa a exclusão de fato quando o usuário confirma - */ - const handleDelete = useCallback(async () => { + /** + * Busca inicial dos dados + */ + useEffect(() => { + fetchTTBReconhecimentosTipos(); + }, []); - // Protege contra null - if (!itemToDelete) return; + /** + * Tela de loading enquanto carrega os dados + */ + if (!tTBReconhecimentosTipos) { + return ; + } - // Executa o Hook de remoção - await deleteTTBReconhecimentoTipo(itemToDelete); + return ( +
+ {/* Cabeçalho */} +
{ + handleOpenForm(null); + }} + /> - // Atualiza a lista - await fetchTTBReconhecimentosTipos(); + {/* Tabela de andamentos */} + + + + + - // Limpa o item selecionado - setItemToDelete(null); + {/* Modal de confirmação */} + - // Fecha o modal - handleCancel(); - - }, [itemToDelete, fetchTTBReconhecimentosTipos, handleCancel]); - - /** - * Busca inicial dos dados - */ - useEffect(() => { - fetchTTBReconhecimentosTipos(); - }, []); - - /** - * Tela de loading enquanto carrega os dados - */ - if (!tTBReconhecimentosTipos) { - return ; - } - - return ( -
- {/* Cabeçalho */} -
{ handleOpenForm(null) }} - /> - - {/* Tabela de andamentos */} - - - - - - - {/* Modal de confirmação */} - - - {/* Formulário de criação/edição */} - -
- ); -} \ No newline at end of file + {/* Formulário de criação/edição */} + +
+ ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_cidade/GCidadeForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_cidade/GCidadeForm.tsx index ebb0778..5c6f9fa 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_cidade/GCidadeForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_cidade/GCidadeForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useForm } from "react-hook-form"; @@ -6,21 +6,21 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; @@ -32,121 +32,119 @@ type FormValues = z.infer; // Propriedades esperadas pelo componente interface Props { - isOpen: boolean; // controla se o Dialog está aberto - data: FormValues | null; // dados para edição (se existirem) - onClose: (item: null, isFormStatus: boolean) => void; // callback para fechar - onSave: (data: FormValues) => void; // callback para salvar + isOpen: boolean; // controla se o Dialog está aberto + data: FormValues | null; // dados para edição (se existirem) + onClose: (item: null, isFormStatus: boolean) => void; // callback para fechar + onSave: (data: FormValues) => void; // callback para salvar } // Componente principal do formulário export default function GCidadeForm({ isOpen, data, onClose, onSave }: Props) { + // Inicializa o react-hook-form integrado ao Zod para validação + const form = useForm({ + resolver: zodResolver(GCidadeSchema), + defaultValues: { + cidade_id: 0, + uf: "", + cidade_nome: "", + codigo_ibge: "", + codigo_gyn: "", + }, + }); - // Inicializa o react-hook-form integrado ao Zod para validação - const form = useForm({ - resolver: zodResolver(GCidadeSchema), - defaultValues: { - cidade_id: 0, - uf: "", - cidade_nome: "", - codigo_ibge: "", - codigo_gyn: "" - }, - }); + // Quando recebe dados para edição, atualiza os valores do formulário + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - // Quando recebe dados para edição, atualiza os valores do formulário - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + return ( + { + if (!open) onClose(null, false); + }} + > + + {/* Cabeçalho do diálogo */} + + Cidades + Controle de Cidades + - return ( - { - if (!open) onClose(null, false); - }} - > - - {/* Cabeçalho do diálogo */} - - Cidades - Controle de Cidades - + {/* Estrutura do formulário */} +
+ + {/* Campo: Nome da cidade */} + ( + + Descrição + + + + + + )} + /> - {/* Estrutura do formulário */} - - + {/* Campo: Código IBGE */} + ( + + Código IBGE + + + + + + )} + /> - {/* Campo: Nome da cidade */} - ( - - Descrição - - - - - - )} - /> + {/* Campo: UF (Estado) */} + ( + + Estado + + + + + + )} + /> - {/* Campo: Código IBGE */} - ( - - Código IBGE - - - - - - )} - /> + {/* Rodapé do diálogo com botões */} + + {/* Botão de cancelar */} + + + - {/* Campo: UF (Estado) */} - ( - - Estado - - - - - - )} - /> + {/* Botão de salvar */} + + - {/* Rodapé do diálogo com botões */} - - {/* Botão de cancelar */} - - - - - {/* Botão de salvar */} - - - - {/* Campo oculto: ID da cidade */} - - - -
-
- ); + {/* Campo oculto: ID da cidade */} + + + +
+
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_cidade/GCidadeTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_cidade/GCidadeTable.tsx index 65f34b5..658d103 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_cidade/GCidadeTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_cidade/GCidadeTable.tsx @@ -1,21 +1,21 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; @@ -23,128 +23,118 @@ import GCidadeInterface from "../../_interfaces/GCidadeInterface"; // Tipagem das props do componente da tabela interface GCidadeTableProps { - data: GCidadeInterface[]; // lista de cidades - onEdit: (item: GCidadeInterface, isEditingFormStatus: boolean) => void; // callback para edição - onDelete: (item: GCidadeInterface, isEditingFormStatus: boolean) => void; // callback para exclusão + data: GCidadeInterface[]; // lista de cidades + onEdit: (item: GCidadeInterface, isEditingFormStatus: boolean) => void; // callback para edição + onDelete: (item: GCidadeInterface, isEditingFormStatus: boolean) => void; // callback para exclusão } /** * Renderiza o "badge" de status da cidade (Ativo/Inativo) */ function StatusBadge({ situacao }: { situacao: string }) { - const isActive = situacao === "A"; // define se está ativo ou inativo + const isActive = situacao === "A"; // define se está ativo ou inativo - // Estilos base - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + // Estilos base + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - // Estilo para ativo - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + // Estilo para ativo + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - // Estilo para inativo - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + // Estilo para inativo + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - // Retorna o badge com classe condicional - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + // Retorna o badge com classe condicional + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } /** * Componente principal da tabela de cidades */ export default function GCidadeTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: GCidadeTableProps) { - return ( - - {/* Cabeçalho da tabela */} - - - # - IBGE - UF - Descrição - - - + return ( +
+ {/* Cabeçalho da tabela */} + + + # + IBGE + UF + Descrição + + + - {/* Corpo da tabela */} - - {data.map((item) => ( - + {data.map((item) => ( + + {/* ID da cidade */} + {item.cidade_id} + + {/* Código IBGE */} + {item.codigo_ibge} + + {/* UF */} + {item.uf} + + {/* Nome/descrição da cidade */} + {item.cidade_nome} + + {/* Ações (menu dropdown) */} + + + {/* Botão de disparo do menu */} + + + + + {/* Conteúdo do menu */} + + + {/* Opção editar */} + onEdit(item, true)} > - {/* ID da cidade */} - - {item.cidade_id} - + + Editar + - {/* Código IBGE */} - - {item.codigo_ibge} - + - {/* UF */} - - {item.uf} - - - {/* Nome/descrição da cidade */} - - {item.cidade_nome} - - - {/* Ações (menu dropdown) */} - - - {/* Botão de disparo do menu */} - - - - - {/* Conteúdo do menu */} - - - {/* Opção editar */} - onEdit(item, true)} - > - - Editar - - - - - {/* Opção remover */} - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); + {/* Opção remover */} + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_medidatipo/GMedidaTipoForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_medidatipo/GMedidaTipoForm.tsx index 1a288bd..3d07a19 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_medidatipo/GMedidaTipoForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_medidatipo/GMedidaTipoForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useEffect } from "react"; @@ -7,21 +7,21 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import LoadingButton from "@/app/_components/loadingButton/LoadingButton"; @@ -31,95 +31,106 @@ import { GMedidaTipoInterface } from "../../_interfaces/GMedidaTipoInterface"; type FormValues = z.infer; interface GMedidaTipoFormProps { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; - buttonIsLoading: boolean; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; + buttonIsLoading: boolean; } -export default function GMedidaTipoForm({ isOpen, data, onClose, onSave, buttonIsLoading }: GMedidaTipoFormProps) { - // Inicializa o react-hook-form com o schema Zod - const form = useForm({ - resolver: zodResolver(GMedidaTipoSchema), - defaultValues: { - medida_tipo_id: 0, - sigla: "", - descricao: "", - }, - }); +export default function GMedidaTipoForm({ + isOpen, + data, + onClose, + onSave, + buttonIsLoading, +}: GMedidaTipoFormProps) { + // Inicializa o react-hook-form com o schema Zod + const form = useForm({ + resolver: zodResolver(GMedidaTipoSchema), + defaultValues: { + medida_tipo_id: 0, + sigla: "", + descricao: "", + }, + }); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - return ( - { - if (!open) onClose(null, false); - }} - > - - - - Tipo de Medida - - - Crie ou edite um tipo de medida - - + return ( + { + if (!open) onClose(null, false); + }} + > + + + Tipo de Medida + Crie ou edite um tipo de medida + -
- + + + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Sigla */} + ( + + Sigla + + + + + + )} + /> - {/* Sigla */} - ( - - Sigla - - - - - - )} - /> - - {/* Rodapé do Dialog */} - - - - - {/* Botão de loading */} - - + {/* Rodapé do Dialog */} + + + + + {/* Botão de loading */} + + - {/* Campo oculto */} - - - -
-
- ); -} \ No newline at end of file + {/* Campo oculto */} + + + +
+
+ ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_medidatipo/GMedidaTipoTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_medidatipo/GMedidaTipoTable.tsx index 6005b84..38d5934 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_medidatipo/GMedidaTipoTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_medidatipo/GMedidaTipoTable.tsx @@ -1,96 +1,91 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import { GMedidaTipoInterface } from "../../_interfaces/GMedidaTipoInterface"; interface GMedidaTipoTableProps { - data: GMedidaTipoInterface[]; - onEdit: (item: GMedidaTipoInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: GMedidaTipoInterface, isEditingFormStatus: boolean) => void; + data: GMedidaTipoInterface[]; + onEdit: (item: GMedidaTipoInterface, isEditingFormStatus: boolean) => void; + onDelete: (item: GMedidaTipoInterface, isEditingFormStatus: boolean) => void; } export default function GMedidaTipoTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: GMedidaTipoTableProps) { - return ( - - - - # - Descrição - Sigla - Ações - - + return ( +
+ + + # + Descrição + Sigla + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + {item.medida_tipo_id} + {item.descricao} + {item.sigla} + + + + + + + + + onEdit(item, true)} > - - {item.medida_tipo_id} - - {item.descricao} - {item.sigla} - - - - - + + Editar + - - - onEdit(item, true)} - > - - Editar - + - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); -} \ No newline at end of file + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_bairro/GTBBairroForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_bairro/GTBBairroForm.tsx index 4e465b4..8a153d0 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_bairro/GTBBairroForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_bairro/GTBBairroForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useEffect, useState } from "react"; @@ -8,21 +8,21 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; @@ -34,99 +34,113 @@ import { SituacoesEnum } from "@/enums/SituacoesEnum"; type FormValues = z.infer; interface GTBBairroFormProps { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; - buttonIsLoading: boolean; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; + buttonIsLoading: boolean; } -export default function GTBBairroForm({ isOpen, data, onClose, onSave, buttonIsLoading }: GTBBairroFormProps) { +export default function GTBBairroForm({ + isOpen, + data, + onClose, + onSave, + buttonIsLoading, +}: GTBBairroFormProps) { + // Inicializa o react-hook-form com o schema Zod + const form = useForm({ + resolver: zodResolver(GTBBairroSchema), + defaultValues: { + sistema_id: null, + tb_bairro_id: 0, + descricao: "", + situacao: SituacoesEnum.A, + }, + }); - // Inicializa o react-hook-form com o schema Zod - const form = useForm({ - resolver: zodResolver(GTBBairroSchema), - defaultValues: { - sistema_id: null, - tb_bairro_id: 0, - descricao: "", - situacao: SituacoesEnum.A, - }, - }); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + return ( + { + if (!open) onClose(null, false); + }} + > + + + Bairro + Crie ou edite um bairro + - return ( - { - if (!open) onClose(null, false); - }} - > - - - - Bairro - - - Crie ou edite um bairro - - +
+ + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - - + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Rodapé do Dialog */} + + + + + {/* Botão de loading */} + + - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> - - {/* Rodapé do Dialog */} - - - - - {/* Botão de loading */} - - - - {/* Campos ocultos */} - - - - - -
-
- ); -} \ No newline at end of file + {/* Campos ocultos */} + + + + +
+
+ ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_bairro/GTBBairroTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_bairro/GTBBairroTable.tsx index 7aeb15c..00bfc34 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_bairro/GTBBairroTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_bairro/GTBBairroTable.tsx @@ -1,123 +1,119 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import { GTBBairroInterface } from "../../_interfaces/GTBBairroInterface"; interface GTBBairroTableProps { - data: GTBBairroInterface[]; - onEdit: (item: GTBBairroInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: GTBBairroInterface, isEditingFormStatus: boolean) => void; + data: GTBBairroInterface[]; + onEdit: (item: GTBBairroInterface, isEditingFormStatus: boolean) => void; + onDelete: (item: GTBBairroInterface, isEditingFormStatus: boolean) => void; } /** * Renderiza o badge de situação */ -function StatusBadge({ situacao }: { situacao: 'A' | 'I' }) { - const isActive = situacao === "A"; +function StatusBadge({ situacao }: { situacao: "A" | "I" }) { + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } export default function GTBBairroTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: GTBBairroTableProps) { - return ( - - - - # - Situação - Descrição - Ações - - + return ( +
+ + + # + Situação + Descrição + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + {item.tb_bairro_id} + + + + + + {item.descricao} + + + + + + + + + + onEdit(item, true)} > - - {item.tb_bairro_id} - + + Editar + - - - + - {item.descricao} - - - - - - - - - - onEdit(item, true)} - > - - Editar - - - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); -} \ No newline at end of file + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_estadocivil/GTBEstadoCivilForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_estadocivil/GTBEstadoCivilForm.tsx index 8669364..a06cd46 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_estadocivil/GTBEstadoCivilForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_estadocivil/GTBEstadoCivilForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useEffect } from "react"; @@ -9,21 +9,21 @@ import LoadingButton from "@/app/_components/loadingButton/LoadingButton"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; @@ -34,97 +34,116 @@ import { GTBEstadoCivilInterface } from "../../_interfaces/GTBEstadoCivilInterfa type FormValues = z.infer; interface TBEstadoCivilFormProps { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; - buttonIsLoading: boolean; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; + buttonIsLoading: boolean; } -export default function GTBEstadoCivilForm({ isOpen, data, onClose, onSave, buttonIsLoading }: TBEstadoCivilFormProps) { - // Inicializa o react-hook-form com o schema Zod - const form = useForm({ - resolver: zodResolver(GTBEstadoCivilSchema), - defaultValues: { - tb_estadocivil_id: 0, - sistema_id: 0, - descricao: "", - situacao: "A", - }, - }); +export default function GTBEstadoCivilForm({ + isOpen, + data, + onClose, + onSave, + buttonIsLoading, +}: TBEstadoCivilFormProps) { + // Inicializa o react-hook-form com o schema Zod + const form = useForm({ + resolver: zodResolver(GTBEstadoCivilSchema), + defaultValues: { + tb_estadocivil_id: 0, + sistema_id: 0, + descricao: "", + situacao: "A", + }, + }); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - return ( - { - if (!open) onClose(null, false); - }} - > - - - - Estado Civil - - - Crie ou edite um estado civil - - + return ( + { + if (!open) onClose(null, false); + }} + > + + + Estado Civil + Crie ou edite um estado civil + -
- + + + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> + {/* Rodapé do Dialog */} + + + + + {/* Botão de loading */} + + - {/* Rodapé do Dialog */} - - - - - {/* Botão de loading */} - - - - {/* Campos ocultos */} - - - - -
-
- ); -} \ No newline at end of file + {/* Campos ocultos */} + + + + +
+
+ ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_estadocivil/GTBEstadoCivilTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_estadocivil/GTBEstadoCivilTable.tsx index 1f3ba22..f5bc773 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_estadocivil/GTBEstadoCivilTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_estadocivil/GTBEstadoCivilTable.tsx @@ -1,123 +1,124 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import { GTBEstadoCivilInterface } from "../../_interfaces/GTBEstadoCivilInterface"; interface TBEstadoCivilTableProps { - data: GTBEstadoCivilInterface[]; - onEdit: (item: GTBEstadoCivilInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: GTBEstadoCivilInterface, isEditingFormStatus: boolean) => void; + data: GTBEstadoCivilInterface[]; + onEdit: (item: GTBEstadoCivilInterface, isEditingFormStatus: boolean) => void; + onDelete: ( + item: GTBEstadoCivilInterface, + isEditingFormStatus: boolean, + ) => void; } /** * Renderiza o badge de situação */ -function StatusBadge({ situacao }: { situacao: 'A' | 'I' }) { - const isActive = situacao === "A"; +function StatusBadge({ situacao }: { situacao: "A" | "I" }) { + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } export default function GTBEstadoCivilTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: TBEstadoCivilTableProps) { - return ( - - - - # - Situação - Descrição - Ações - - + return ( +
+ + + # + Situação + Descrição + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + + {item.tb_estadocivil_id} + + + + + + + {item.descricao} + + + + + + + + + + onEdit(item, true)} > - - {item.tb_estadocivil_id} - + + Editar + - - - + - {item.descricao} - - - - - - - - - - onEdit(item, true)} - > - - Editar - - - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); -} \ No newline at end of file + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_profissao/GTBProfissaoForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_profissao/GTBProfissaoForm.tsx index ec7d5d1..c11ed74 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_profissao/GTBProfissaoForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_profissao/GTBProfissaoForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useEffect } from "react"; @@ -8,21 +8,21 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; @@ -32,112 +32,126 @@ import { GTBProfissaoSchema } from "../../_schemas/GTBProfissaoSchema"; type FormValues = z.infer; interface Props { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; } -export default function GTBProfissaoForm({ isOpen, data, onClose, onSave }: Props) { - // Inicializa o react-hook-form com schema zod - const form = useForm({ - resolver: zodResolver(GTBProfissaoSchema), - defaultValues: { - descricao: "", - cod_cbo: "", - situacao: "A", - tb_profissao_id: 0, - }, - }); +export default function GTBProfissaoForm({ + isOpen, + data, + onClose, + onSave, +}: Props) { + // Inicializa o react-hook-form com schema zod + const form = useForm({ + resolver: zodResolver(GTBProfissaoSchema), + defaultValues: { + descricao: "", + cod_cbo: "", + situacao: "A", + tb_profissao_id: 0, + }, + }); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - return ( - { - if (!open) onClose(null, false); - }} - > - + return ( + { + if (!open) onClose(null, false); + }} + > + + + Profissões + Controle de profissões + - - - Profissões - - - Controle de profissões - - +
+ + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - - + {/* CBO */} + ( + + CBO + + + + + + )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* CBO */} - ( - - CBO - - - - - - )} - /> + {/* Rodapé do Dialog */} + + + + + + - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> - - {/* Rodapé do Dialog */} - - - - - - - - {/* Campo oculto */} - - - -
-
- ); + {/* Campo oculto */} + + + +
+
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_profissao/GTBProfissaoTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_profissao/GTBProfissaoTable.tsx index 295a003..0dfa705 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_profissao/GTBProfissaoTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_profissao/GTBProfissaoTable.tsx @@ -1,129 +1,125 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import GTBProfissaoInterface from "../../_interfaces/GTBProfissaoInterface"; interface GTBProfissaoTableProps { - data: GTBProfissaoInterface[]; - onEdit: (item: GTBProfissaoInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: GTBProfissaoInterface, isEditingFormStatus: boolean) => void; + data: GTBProfissaoInterface[]; + onEdit: (item: GTBProfissaoInterface, isEditingFormStatus: boolean) => void; + onDelete: (item: GTBProfissaoInterface, isEditingFormStatus: boolean) => void; } /** * Renderiza o badge de situação */ function StatusBadge({ situacao }: { situacao: string }) { - const isActive = situacao === "A"; + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } export default function GTBProfissaoTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: GTBProfissaoTableProps) { - return ( - - - - # - Situação - CBO - Descrição - Ações - - + return ( +
+ + + # + Situação + CBO + Descrição + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + + {item.tb_profissao_id} + + + + + + + {item.cod_cbo} + + {item.descricao} + + + + + + + + + + onEdit(item, true)} > - - {item.tb_profissao_id} - + + Editar + - - - + - - {item.cod_cbo} - - - {item.descricao} - - - - - - - - - - onEdit(item, true)} - > - - Editar - - - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimebens/GTBRegimeBensForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimebens/GTBRegimeBensForm.tsx index e535fd8..c6658ab 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimebens/GTBRegimeBensForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimebens/GTBRegimeBensForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useForm, Controller } from "react-hook-form"; @@ -7,21 +7,21 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; @@ -32,96 +32,102 @@ import { useEffect } from "react"; type FormValues = z.infer; interface Props { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; } -export default function GTBRegimeComunhaoForm({ isOpen, data, onClose, onSave }: Props) { +export default function GTBRegimeComunhaoForm({ + isOpen, + data, + onClose, + onSave, +}: Props) { + // Inicializa o react-hook-form com schema zod + const form = useForm({ + resolver: zodResolver(GTBRegimeBensSchema), + defaultValues: { + tb_regimebens_id: 0, + descricao: "", + situacao: "", + }, + }); - // Inicializa o react-hook-form com schema zod - const form = useForm({ - resolver: zodResolver(GTBRegimeBensSchema), - defaultValues: { - tb_regimebens_id: 0, - descricao: "", - situacao: "", - }, - }); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + return ( + { + if (!open) onClose(null, false); + }} + > + + + Regimes de Bens + Controle de Regimes de Vens + - return ( - { - if (!open) onClose(null, false); - }} - > - - - - Regimes de Bens - - - Controle de Regimes de Vens - - +
+ + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - - + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Rodapé do Dialog */} + + + + + + - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> - - {/* Rodapé do Dialog */} - - - - - - - - {/* Campo oculto */} - - - -
-
- ); + {/* Campo oculto */} + + + +
+
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimebens/GTBRegimeBensTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimebens/GTBRegimeBensTable.tsx index 364df88..f591b85 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimebens/GTBRegimeBensTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimebens/GTBRegimeBensTable.tsx @@ -1,126 +1,125 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import GTBRegimeBensInterface from "../../_interfaces/GTBRegimeBensInterface"; interface GTBRegimeBensTableProps { - data: GTBRegimeBensInterface[]; - onEdit: (item: GTBRegimeBensInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: GTBRegimeBensInterface, isEditingFormStatus: boolean) => void; + data: GTBRegimeBensInterface[]; + onEdit: (item: GTBRegimeBensInterface, isEditingFormStatus: boolean) => void; + onDelete: ( + item: GTBRegimeBensInterface, + isEditingFormStatus: boolean, + ) => void; } /** * Renderiza o badge de situação */ function StatusBadge({ situacao }: { situacao: string }) { - const isActive = situacao === "A"; + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } export default function GTBRegimeBensTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: GTBRegimeBensTableProps) { - return ( - - - - # - Situação - Descrição - Ações - - + return ( +
+ + + # + Situação + Descrição + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + + {item.tb_regimebens_id} + + + + + + + {item.descricao} + + + + + + + + + + onEdit(item, true)} > - - {item.tb_regimebens_id} - + + Editar + - - - + - - {item.descricao} - - - - - - - - - - - onEdit(item, true)} - > - - Editar - - - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimecomunhao/GTBRegimeComunhaoForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimecomunhao/GTBRegimeComunhaoForm.tsx index 9a8dc1f..d2f8329 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimecomunhao/GTBRegimeComunhaoForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimecomunhao/GTBRegimeComunhaoForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useEffect } from "react"; @@ -8,182 +8,195 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { GTBRegimeComunhaoSchema } from "../../_schemas/GTBRegimeComunhaoSchema"; -import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select"; +import { + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue, +} from "@/components/ui/select"; import { useGTBRegimeBensReadHook } from "../../_hooks/g_tb_regimebens/useGTBRegimeBensReadHook"; type FormValues = z.infer; interface Props { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; } -export default function GTBRegimeComunhaoForm({ isOpen, data, onClose, onSave }: Props) { +export default function GTBRegimeComunhaoForm({ + isOpen, + data, + onClose, + onSave, +}: Props) { + const { gTBRegimeBens, fetchGTBRegimeBens } = useGTBRegimeBensReadHook(); - const { gTBRegimeBens, fetchGTBRegimeBens } = useGTBRegimeBensReadHook(); + // Inicializa o react-hook-form com schema zod + const form = useForm({ + resolver: zodResolver(GTBRegimeComunhaoSchema), + defaultValues: { + tb_regimecomunhao_id: 0, + tb_regimebens_id: 0, + descricao: "", + texto: "", + situacao: "", + }, + }); - // Inicializa o react-hook-form com schema zod - const form = useForm({ - resolver: zodResolver(GTBRegimeComunhaoSchema), - defaultValues: { - tb_regimecomunhao_id: 0, - tb_regimebens_id: 0, - descricao: "", - texto: "", - situacao: "", - }, - }); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + const loadData = async () => { + // Se existir dados, reseta o formulário com os dados informados + if (data) form.reset(data); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { + // Aguarda a busca terminar + await fetchGTBRegimeBens(); + }; - const loadData = async () => { - // Se existir dados, reseta o formulário com os dados informados - if (data) form.reset(data); + // Dispara a função + loadData(); + }, [data, form]); - // Aguarda a busca terminar - await fetchGTBRegimeBens(); - }; + return ( + { + if (!open) onClose(null, false); + }} + > + + + Regimes de Comunhão + Controle de Regimes de Comunhão + - // Dispara a função - loadData(); +
+ + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - }, [data, form]); + {/* Texto */} + ( + + Texto + + + + + + )} + /> - return ( - { - if (!open) onClose(null, false); - }} - > - - - - Regimes de Comunhão - - - Controle de Regimes de Comunhão - - + {/* Tipo */} + ( + + Tipo + + + + )} + /> - - + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Rodapé do Dialog */} + + + + + + - {/* Texto */} - ( - - Texto - - - - - - )} - /> - - {/* Tipo */} - ( - - Tipo - - - - )} - /> - - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> - - {/* Rodapé do Dialog */} - - - - - - - - {/* Campo oculto */} - - - -
-
- ); + {/* Campo oculto */} + + + +
+
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimecomunhao/GTBRegimeComunhaoTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimecomunhao/GTBRegimeComunhaoTable.tsx index 704c6d1..22a5929 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimecomunhao/GTBRegimeComunhaoTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_regimecomunhao/GTBRegimeComunhaoTable.tsx @@ -1,126 +1,128 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInterface"; interface GTBRegimeComunhaoTableProps { - data: GTBRegimeComunhaoInterface[]; - onEdit: (item: GTBRegimeComunhaoInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: GTBRegimeComunhaoInterface, isEditingFormStatus: boolean) => void; + data: GTBRegimeComunhaoInterface[]; + onEdit: ( + item: GTBRegimeComunhaoInterface, + isEditingFormStatus: boolean, + ) => void; + onDelete: ( + item: GTBRegimeComunhaoInterface, + isEditingFormStatus: boolean, + ) => void; } /** * Renderiza o badge de situação */ function StatusBadge({ situacao }: { situacao: string }) { - const isActive = situacao === "A"; + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } export default function GTBRegimeComunhaoTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: GTBRegimeComunhaoTableProps) { - return ( - - - - # - Situação - Descrição - Ações - - + return ( +
+ + + # + Situação + Descrição + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + + {item.tb_regimecomunhao_id} + + + + + + + {item.descricao} + + + + + + + + + + onEdit(item, true)} > - - {item.tb_regimecomunhao_id} - + + Editar + - - - + - - {item.descricao} - - - - - - - - - - - onEdit(item, true)} - > - - Editar - - - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_tipologradouro/GTBTipoLogradouroForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_tipologradouro/GTBTipoLogradouroForm.tsx index 6dd7432..cb02186 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_tipologradouro/GTBTipoLogradouroForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_tipologradouro/GTBTipoLogradouroForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useEffect } from "react"; @@ -8,21 +8,21 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; @@ -35,116 +35,131 @@ import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroI type FormValues = z.infer; interface GTBTipoLogradouroFormProps { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; - buttonIsLoading: boolean; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; + buttonIsLoading: boolean; } -export default function GTBTipoLogradouroForm({ isOpen, data, onClose, onSave,buttonIsLoading }: GTBTipoLogradouroFormProps) { - // Inicializa o react-hook-form com schema zod - const form = useForm({ - resolver: zodResolver(GTBTipoLogradouroSchema), - defaultValues: { - sistema_id: null, - tb_tipologradouro_id: 0, - situacao_id: null, - descricao: "", - situacao: "A", - onr_tipo_logradouro_id: 0 - }, - }); +export default function GTBTipoLogradouroForm({ + isOpen, + data, + onClose, + onSave, + buttonIsLoading, +}: GTBTipoLogradouroFormProps) { + // Inicializa o react-hook-form com schema zod + const form = useForm({ + resolver: zodResolver(GTBTipoLogradouroSchema), + defaultValues: { + sistema_id: null, + tb_tipologradouro_id: 0, + situacao_id: null, + descricao: "", + situacao: "A", + onr_tipo_logradouro_id: 0, + }, + }); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - return ( - { - if (!open) onClose(null, false); - }} - > - - - - Tipo de Logradouro - - - Crie ou edite um tipo de logradouro - - + return ( + { + if (!open) onClose(null, false); + }} + > + + + Tipo de Logradouro + + Crie ou edite um tipo de logradouro + + -
- + + + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* ID do tipo logradouro na ONR */} + ( + + ID do tipo logradouro na ONR + + + + + + )} + /> - {/* ID do tipo logradouro na ONR */} - ( - - ID do tipo logradouro na ONR - - - - - - )} - /> + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> + {/* Rodapé do Dialog */} + + + + + {/* Botão de loading */} + + - {/* Rodapé do Dialog */} - - - - - {/* Botão de loading */} - - - - {/* Campos ocultos */} - - - - - - -
-
- ); -} \ No newline at end of file + {/* Campos ocultos */} + + + + + + +
+
+ ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_tipologradouro/GTBTipoLogradouroTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_tipologradouro/GTBTipoLogradouroTable.tsx index acadbdc..a0495f8 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_tipologradouro/GTBTipoLogradouroTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/g_tb_tipologradouro/GTBTipoLogradouroTable.tsx @@ -1,123 +1,127 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroInterface"; interface GTBTipoLogradouroTableProps { - data: GTBTipoLogradouroInterface[]; - onEdit: (item: GTBTipoLogradouroInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: GTBTipoLogradouroInterface, isEditingFormStatus: boolean) => void; + data: GTBTipoLogradouroInterface[]; + onEdit: ( + item: GTBTipoLogradouroInterface, + isEditingFormStatus: boolean, + ) => void; + onDelete: ( + item: GTBTipoLogradouroInterface, + isEditingFormStatus: boolean, + ) => void; } /** * Renderiza o badge de situação */ -function StatusBadge({ situacao }: { situacao: 'A' | 'I' }) { - const isActive = situacao === "A"; +function StatusBadge({ situacao }: { situacao: "A" | "I" }) { + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } export default function GTBTipoLogradouroTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: GTBTipoLogradouroTableProps) { - return ( - - - - # - Situação - Descrição - Ações - - + return ( +
+ + + # + Situação + Descrição + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + + {item.tb_tipologradouro_id} + + + + + + + {item.descricao} + + + + + + + + + + onEdit(item, true)} > - - {item.tb_tipologradouro_id} - + + Editar + - - - + - {item.descricao} - - - - - - - - - - onEdit(item, true)} - > - - Editar - - - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_censec/TCensecForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_censec/TCensecForm.tsx index a5e58fd..762a665 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_censec/TCensecForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_censec/TCensecForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useEffect } from "react"; @@ -8,21 +8,21 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; @@ -34,96 +34,112 @@ import LoadingButton from "@/app/_components/loadingButton/LoadingButton"; type FormValues = z.infer; interface Props { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; - buttonIsLoading: boolean; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; + buttonIsLoading: boolean; } -export default function TCensecForm({ isOpen, data, onClose, onSave, buttonIsLoading }: Props) { - // Inicializa o react-hook-form com schema zod - const form = useForm({ - resolver: zodResolver(TCensecSchema), - defaultValues: { - descricao: "", - situacao: SituacoesEnum.A, - censec_id: 0, - }, - }); +export default function TCensecForm({ + isOpen, + data, + onClose, + onSave, + buttonIsLoading, +}: Props) { + // Inicializa o react-hook-form com schema zod + const form = useForm({ + resolver: zodResolver(TCensecSchema), + defaultValues: { + descricao: "", + situacao: SituacoesEnum.A, + censec_id: 0, + }, + }); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - return ( - { - if (!open) onClose(null, false); - }} - > - + return ( + { + if (!open) onClose(null, false); + }} + > + + + Censec + Tipos de Centrais + - - - Censec - - - Tipos de Centrais - - +
+ + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - - + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Rodapé do Dialog */} + + + + + {/* Botão de loading */} + + - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> - - {/* Rodapé do Dialog */} - - - - - {/* Botão de loading */} - - - - {/* Campo oculto */} - - - -
-
- ); + {/* Campo oculto */} + + + +
+
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_censec/TCensecTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_censec/TCensecTable.tsx index 37df466..5f7bb02 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_censec/TCensecTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_censec/TCensecTable.tsx @@ -1,125 +1,121 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import TCensecInterface from "../../_interfaces/TCensecInterface"; interface TCensecTableProps { - data: TCensecInterface[]; - onEdit: (item: TCensecInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: TCensecInterface, isEditingFormStatus: boolean) => void; + data: TCensecInterface[]; + onEdit: (item: TCensecInterface, isEditingFormStatus: boolean) => void; + onDelete: (item: TCensecInterface, isEditingFormStatus: boolean) => void; } /** * Renderiza o badge de situação */ function StatusBadge({ situacao }: { situacao: string }) { - const isActive = situacao === "A"; + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } export default function TCensecTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: TCensecTableProps) { - return ( - - - - # - Situação - CBO - Descrição - Ações - - + return ( +
+ + + # + Situação + CBO + Descrição + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + {item.censec_id} + + + + + + {item.descricao} + + + + + + + + + + onEdit(item, true)} > - - {item.censec_id} - + + Editar + - - - + - {item.descricao} - - - - - - - - - - onEdit(item, true)} - > - - Editar - - - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_censecnaturezalitigio/TCensecNaturezaLitigioForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_censecnaturezalitigio/TCensecNaturezaLitigioForm.tsx index defb242..608fe5c 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_censecnaturezalitigio/TCensecNaturezaLitigioForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_censecnaturezalitigio/TCensecNaturezaLitigioForm.tsx @@ -1,124 +1,142 @@ -'use client'; +"use client"; -import z from 'zod'; -import { useEffect } from 'react'; -import { useForm, Controller } from 'react-hook-form'; -import { zodResolver } from '@hookform/resolvers/zod'; +import z from "zod"; +import { useEffect } from "react"; +import { useForm, Controller } from "react-hook-form"; +import { zodResolver } from "@hookform/resolvers/zod"; -import LoadingButton from '@/app/_components/loadingButton/LoadingButton'; -import { Button } from '@/components/ui/button'; -import { Checkbox } from '@/components/ui/checkbox'; +import LoadingButton from "@/app/_components/loadingButton/LoadingButton"; +import { Button } from "@/components/ui/button"; +import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle -} from '@/components/ui/dialog'; + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, +} from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage -} from '@/components/ui/form'; -import { Input } from '@/components/ui/input'; -import { Label } from '@/components/ui/label'; + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, +} from "@/components/ui/form"; +import { Input } from "@/components/ui/input"; +import { Label } from "@/components/ui/label"; -import { TCensecNaturezaLitigioSchema } from '../../_schemas/TCensecNaturezaLitigioSchema'; +import { TCensecNaturezaLitigioSchema } from "../../_schemas/TCensecNaturezaLitigioSchema"; type FormValues = z.infer; interface TCensecNaturezaLitigioFormProps { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; - buttonIsLoading: boolean; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; + buttonIsLoading: boolean; } -export default function TCensecNaturezaLitigioForm({isOpen, data, onClose, onSave, buttonIsLoading}: TCensecNaturezaLitigioFormProps) { - const form = useForm({ - resolver: zodResolver(TCensecNaturezaLitigioSchema), - defaultValues: { - censec_naturezalitigio_id: 0, - descricao: "", - situacao: "A" - } - }); +export default function TCensecNaturezaLitigioForm({ + isOpen, + data, + onClose, + onSave, + buttonIsLoading, +}: TCensecNaturezaLitigioFormProps) { + const form = useForm({ + resolver: zodResolver(TCensecNaturezaLitigioSchema), + defaultValues: { + censec_naturezalitigio_id: 0, + descricao: "", + situacao: "A", + }, + }); - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - return ( - { - if (!open) onClose(null, false); - }} - > - - - Natureza do Litígio - - Crie ou edite uma natureza do litígio - - + return ( + { + if (!open) onClose(null, false); + }} + > + + + Natureza do Litígio + + Crie ou edite uma natureza do litígio + + -
- + + + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> + {/* Rodapé */} + + + + + {/* Botão de loading */} + + - - {/* Rodapé */} - - - - - {/* Botão de loading */} - - - - {/* Campo oculto */} - - - -
-
- ); -} \ No newline at end of file + {/* Campo oculto */} + + + +
+
+ ); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_censecnaturezalitigio/TCensecNaturezaLitigioTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_censecnaturezalitigio/TCensecNaturezaLitigioTable.tsx index 02f96a5..1b8ffe1 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_censecnaturezalitigio/TCensecNaturezaLitigioTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_censecnaturezalitigio/TCensecNaturezaLitigioTable.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { @@ -7,7 +7,7 @@ import { DropdownMenuGroup, DropdownMenuItem, DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { Table, @@ -15,25 +15,30 @@ import { TableCell, TableHead, TableHeader, - TableRow + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import { TCensecNaturezaLitigioInterface } from "../../_interfaces/TCensecNaturezaLitigioInterface"; interface TCensecNaturezaLitigioTableProps { data: TCensecNaturezaLitigioInterface[]; - onEdit: (item: TCensecNaturezaLitigioInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: TCensecNaturezaLitigioInterface, isEditingFormStatus: boolean) => void; + onEdit: ( + item: TCensecNaturezaLitigioInterface, + isEditingFormStatus: boolean, + ) => void; + onDelete: ( + item: TCensecNaturezaLitigioInterface, + isEditingFormStatus: boolean, + ) => void; } /** * Renderiza o badge de situação */ -function StatusBadge({ situacao }: { situacao: 'A' | 'I' }) { - const isActive = situacao === 'A'; +function StatusBadge({ situacao }: { situacao: "A" | "I" }) { + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; const activeClasses = "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; @@ -42,7 +47,9 @@ function StatusBadge({ situacao }: { situacao: 'A' | 'I' }) { "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; return ( - + {isActive ? "Ativo" : "Inativo"} ); @@ -51,7 +58,7 @@ function StatusBadge({ situacao }: { situacao: 'A' | 'I' }) { export default function TCensecNaturezaLitigioTable({ data, onEdit, - onDelete + onDelete, }: TCensecNaturezaLitigioTableProps) { return ( @@ -120,4 +127,4 @@ export default function TCensecNaturezaLitigioTable({
); -} \ No newline at end of file +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_minuta/TMinutaForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_minuta/TMinutaForm.tsx index 2a05718..91d335e 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_minuta/TMinutaForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_minuta/TMinutaForm.tsx @@ -1,12 +1,12 @@ -'use client'; +"use client"; -import z from 'zod'; -import { useEffect } from 'react'; -import { useForm, Controller } from 'react-hook-form'; -import { zodResolver } from '@hookform/resolvers/zod'; +import z from "zod"; +import { useEffect } from "react"; +import { useForm, Controller } from "react-hook-form"; +import { zodResolver } from "@hookform/resolvers/zod"; -import { Button } from '@/components/ui/button'; -import { Checkbox } from '@/components/ui/checkbox'; +import { Button } from "@/components/ui/button"; +import { Checkbox } from "@/components/ui/checkbox"; import { Dialog, DialogClose, @@ -14,22 +14,22 @@ import { DialogDescription, DialogFooter, DialogHeader, - DialogTitle -} from '@/components/ui/dialog'; + DialogTitle, +} from "@/components/ui/dialog"; import { Form, FormControl, FormField, FormItem, FormLabel, - FormMessage -} from '@/components/ui/form'; -import { Input } from '@/components/ui/input'; -import { Label } from '@/components/ui/label'; + FormMessage, +} from "@/components/ui/form"; +import { Input } from "@/components/ui/input"; +import { Label } from "@/components/ui/label"; -import MainEditor from '@/components/MainEditor'; -import { TMinutaInterface } from '../../_interfaces/TMinutaInterface'; -import { TMinutaSchema } from '../../_schemas/TMinutaSchema'; +import MainEditor from "@/components/MainEditor"; +import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; +import { TMinutaSchema } from "../../_schemas/TMinutaSchema"; type FormValues = z.infer; @@ -44,18 +44,17 @@ export default function TMinutaForm({ isOpen, data, onClose, - onSave + onSave, }: TMinutaFormProps) { - const form = useForm({ resolver: zodResolver(TMinutaSchema), defaultValues: { minuta_id: 0, natureza_id: undefined, - descricao: '', - situacao: 'A', - texto: '', - } + descricao: "", + situacao: "A", + texto: "", + }, }); useEffect(() => { @@ -69,17 +68,17 @@ export default function TMinutaForm({ if (!open) onClose(null, false); }} > - {/* tamanho maior para comportar o editor */} + + {" "} + {/* tamanho maior para comportar o editor */} Minuta Crie ou edite uma minuta de ato notarial. -
- {/* Descrição */} Descrição - + @@ -103,7 +105,9 @@ export default function TMinutaForm({
field.onChange(checked ? "A" : "I")} + onCheckedChange={(checked) => + field.onChange(checked ? "A" : "I") + } />
@@ -119,7 +123,7 @@ export default function TMinutaForm({ {form.formState.errors.texto && ( @@ -134,7 +138,11 @@ export default function TMinutaForm({ {/* Rodapé do Dialog */} - @@ -146,7 +154,6 @@ export default function TMinutaForm({ {/* Campos ocultos */} -
diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_minuta/TMinutaTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_minuta/TMinutaTable.tsx index d7fabf9..92c172e 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_minuta/TMinutaTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_minuta/TMinutaTable.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import Link from "next/link"; import { Button } from "@/components/ui/button"; @@ -30,7 +30,7 @@ interface TMinutaTableProps { /** * Renderiza o badge de situação */ -function StatusBadge({ situacao }: { situacao: 'A' | 'I' }) { +function StatusBadge({ situacao }: { situacao: "A" | "I" }) { const isActive = situacao === "A"; const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm mr-2"; @@ -42,15 +42,15 @@ function StatusBadge({ situacao }: { situacao: 'A' | 'I' }) { "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; return ( - + {isActive ? "Ativo" : "Inativo"} ); } -export default function TMinutaTable({ - data, -}: TMinutaTableProps) { +export default function TMinutaTable({ data }: TMinutaTableProps) { return ( @@ -64,16 +64,17 @@ export default function TMinutaTable({ {data.length === 0 ? ( - + Nenhuma minuta encontrada. ) : ( data.map((item) => ( - - {item.t_minuta_id} - + {item.t_minuta_id} diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_andamentoservico/TTBAndamentoServicoForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_andamentoservico/TTBAndamentoServicoForm.tsx index 6199024..34d667f 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_andamentoservico/TTBAndamentoServicoForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_andamentoservico/TTBAndamentoServicoForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useEffect } from "react"; @@ -8,30 +8,30 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { - Select, - SelectContent, - SelectItem, - SelectTrigger, - SelectValue + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue, } from "@/components/ui/select"; import { TTBAndamentoServicoSchema } from "../../_schemas/TTBAndamentoServicoSchema"; @@ -40,150 +40,164 @@ import { tipoEnum } from "../../_interfaces/TTBAndamentoServicoInterface"; type FormValues = z.infer; interface Props { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; } -export default function TTBAndamentoServicoForm({ isOpen, data, onClose, onSave }: Props) { - // Inicializa o react-hook-form com schema zod - const form = useForm({ - resolver: zodResolver(TTBAndamentoServicoSchema), - defaultValues: { - descricao: "", - tipo: tipoEnum.OUTROS, - situacao: "A", - usa_email: "I", - tb_andamentoservico_id: 0, - }, - }); +export default function TTBAndamentoServicoForm({ + isOpen, + data, + onClose, + onSave, +}: Props) { + // Inicializa o react-hook-form com schema zod + const form = useForm({ + resolver: zodResolver(TTBAndamentoServicoSchema), + defaultValues: { + descricao: "", + tipo: tipoEnum.OUTROS, + situacao: "A", + usa_email: "I", + tb_andamentoservico_id: 0, + }, + }); - // Opções do Select mapeadas a partir do enum - const tipoOptions = Object.values(tipoEnum).map((value) => ({ - value, - label: - value === "C" ? "Cancelado" : - value === "E" ? "Estornado" : - value === "PT" ? "Protocolado" : - value === "PD" ? "Pedido" : - value === "NC" ? "Não Consta" : - "Outros" - })); + // Opções do Select mapeadas a partir do enum + const tipoOptions = Object.values(tipoEnum).map((value) => ({ + value, + label: + value === "C" + ? "Cancelado" + : value === "E" + ? "Estornado" + : value === "PT" + ? "Protocolado" + : value === "PD" + ? "Pedido" + : value === "NC" + ? "Não Consta" + : "Outros", + })); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - return ( - { - if (!open) onClose(null, false); - }} - > - - - - Andamentos - - - Controle de andamentos de atos - - + return ( + { + if (!open) onClose(null, false); + }} + > + + + Andamentos + Controle de andamentos de atos + -
- + + + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Tipo */} + ( + + Tipo + + + + )} + /> - {/* Tipo */} - ( - - Tipo - - - - )} - /> + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> + {/* Usar e-mail */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Usar e-mail */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> + {/* Rodapé do Dialog */} + + + + + + - {/* Rodapé do Dialog */} - - - - - - - - {/* Campo oculto */} - - - -
-
- ); + {/* Campo oculto */} + + + +
+
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_andamentoservico/TTBAndamentoServicoTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_andamentoservico/TTBAndamentoServicoTable.tsx index 1eada8f..a13e5a8 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_andamentoservico/TTBAndamentoServicoTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_andamentoservico/TTBAndamentoServicoTable.tsx @@ -1,124 +1,131 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import TTBAndamentoServicoInteface from "../../_interfaces/TTBAndamentoServicoInterface"; interface TTBAndamentoServicoTableProps { - data: TTBAndamentoServicoInteface[]; - onEdit: (item: TTBAndamentoServicoInteface, isEditingFormStatus: boolean) => void; - onDelete: (item: TTBAndamentoServicoInteface, isEditingFormStatus: boolean) => void; + data: TTBAndamentoServicoInteface[]; + onEdit: ( + item: TTBAndamentoServicoInteface, + isEditingFormStatus: boolean, + ) => void; + onDelete: ( + item: TTBAndamentoServicoInteface, + isEditingFormStatus: boolean, + ) => void; } /** * Renderiza o badge de situação */ function StatusBadge({ situacao }: { situacao: string }) { - const isActive = situacao === "A"; + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } export default function TTBAndamentoServicoTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: TTBAndamentoServicoTableProps) { - return ( -
- - - # - Situação - Descrição - Ações - - + return ( +
+ + + # + Situação + Descrição + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + + {item.tb_andamentoservico_id} + + + + + + + {item.descricao} + + + + + + + + + + onEdit(item, true)} > - - {item.tb_andamentoservico_id} - + + Editar + - - - + - {item.descricao} - - - - - - - - - - onEdit(item, true)} - > - - Editar - - - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_reconhecimentotipo/TTBReconhecimentoTipoForm.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_reconhecimentotipo/TTBReconhecimentoTipoForm.tsx index 83df3c3..bdb73ad 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_reconhecimentotipo/TTBReconhecimentoTipoForm.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_reconhecimentotipo/TTBReconhecimentoTipoForm.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import z from "zod"; import { useEffect } from "react"; @@ -8,21 +8,21 @@ import { zodResolver } from "@hookform/resolvers/zod"; import { Button } from "@/components/ui/button"; import { Checkbox } from "@/components/ui/checkbox"; import { - Dialog, - DialogClose, - DialogContent, - DialogDescription, - DialogFooter, - DialogHeader, - DialogTitle + Dialog, + DialogClose, + DialogContent, + DialogDescription, + DialogFooter, + DialogHeader, + DialogTitle, } from "@/components/ui/dialog"; import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage + Form, + FormControl, + FormField, + FormItem, + FormLabel, + FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; @@ -33,95 +33,105 @@ import { situacaoEnum } from "../../_interfaces/TTBReconhecimentoTipoInterface"; type FormValues = z.infer; interface TTBReconhecimentoTipoFormProps { - isOpen: boolean; - data: FormValues | null; - onClose: (item: null, isFormStatus: boolean) => void; - onSave: (data: FormValues) => void; + isOpen: boolean; + data: FormValues | null; + onClose: (item: null, isFormStatus: boolean) => void; + onSave: (data: FormValues) => void; } -export default function TTBReconhecimentoTipoForm({ isOpen, data, onClose, onSave }: TTBReconhecimentoTipoFormProps) { - // Inicializa o react-hook-form com schema zod - const form = useForm({ - resolver: zodResolver(TTBReconhecimentoTipoSchema), - defaultValues: { - tb_reconhecimentotipo_id: 0, - descricao: "", - situacao: situacaoEnum.ATIVO, - }, - }); +export default function TTBReconhecimentoTipoForm({ + isOpen, + data, + onClose, + onSave, +}: TTBReconhecimentoTipoFormProps) { + // Inicializa o react-hook-form com schema zod + const form = useForm({ + resolver: zodResolver(TTBReconhecimentoTipoSchema), + defaultValues: { + tb_reconhecimentotipo_id: 0, + descricao: "", + situacao: situacaoEnum.ATIVO, + }, + }); - // Atualiza o formulário quando recebe dados para edição - useEffect(() => { - if (data) form.reset(data); - }, [data, form]); + // Atualiza o formulário quando recebe dados para edição + useEffect(() => { + if (data) form.reset(data); + }, [data, form]); - return ( - { - if (!open) onClose(null, false); - }} - > - - - - Reconhecimentos - - - Tipos de Reconhecimentos - - + return ( + { + if (!open) onClose(null, false); + }} + > + + + Reconhecimentos + Tipos de Reconhecimentos + -
- + + + {/* Descrição */} + ( + + Descrição + + + + + + )} + /> - {/* Descrição */} - ( - - Descrição - - - - - - )} - /> + {/* Situação */} + ( +
+ + field.onChange(checked ? "A" : "I") + } + /> + +
+ )} + /> - {/* Situação */} - ( -
- field.onChange(checked ? "A" : "I")} - /> - -
- )} - /> + {/* Rodapé do Dialog */} + + + + + + - {/* Rodapé do Dialog */} - - - - - - - - {/* Campo oculto */} - - - -
-
- ); + {/* Campo oculto */} + + + +
+
+ ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_reconhecimentotipo/TTBReconhecimentoTipoTable.tsx b/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_reconhecimentotipo/TTBReconhecimentoTipoTable.tsx index d8e1087..d21d5db 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_reconhecimentotipo/TTBReconhecimentoTipoTable.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/_components/t_tb_reconhecimentotipo/TTBReconhecimentoTipoTable.tsx @@ -1,124 +1,131 @@ -'use client'; +"use client"; import { Button } from "@/components/ui/button"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuGroup, - DropdownMenuItem, - DropdownMenuSeparator, - DropdownMenuTrigger + DropdownMenu, + DropdownMenuContent, + DropdownMenuGroup, + DropdownMenuItem, + DropdownMenuSeparator, + DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { - Table, - TableBody, - TableCell, - TableHead, - TableHeader, - TableRow + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, } from "@/components/ui/table"; import { EllipsisIcon, PencilIcon, Trash2Icon } from "lucide-react"; import TTBReconhecimentoTipoInterface from "../../_interfaces/TTBReconhecimentoTipoInterface"; interface TTBReconhecimentoTipoTableProps { - data: TTBReconhecimentoTipoInterface[]; - onEdit: (item: TTBReconhecimentoTipoInterface, isEditingFormStatus: boolean) => void; - onDelete: (item: TTBReconhecimentoTipoInterface, isEditingFormStatus: boolean) => void; + data: TTBReconhecimentoTipoInterface[]; + onEdit: ( + item: TTBReconhecimentoTipoInterface, + isEditingFormStatus: boolean, + ) => void; + onDelete: ( + item: TTBReconhecimentoTipoInterface, + isEditingFormStatus: boolean, + ) => void; } /** * Renderiza o badge de situação */ function StatusBadge({ situacao }: { situacao: string }) { - const isActive = situacao === "A"; + const isActive = situacao === "A"; - const baseClasses = - "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; + const baseClasses = "text-xs font-medium px-2.5 py-0.5 rounded-sm me-2"; - const activeClasses = - "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; + const activeClasses = + "bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300"; - const inactiveClasses = - "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; + const inactiveClasses = + "bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300"; - return ( - - {isActive ? "Ativo" : "Inativo"} - - ); + return ( + + {isActive ? "Ativo" : "Inativo"} + + ); } export default function TTBReconhecimentoTipoTable({ - data, - onEdit, - onDelete + data, + onEdit, + onDelete, }: TTBReconhecimentoTipoTableProps) { - return ( - - - - # - Situação - Descrição - Ações - - + return ( +
+ + + # + Situação + Descrição + Ações + + - - {data.map((item) => ( - + {data.map((item) => ( + + + {item.tb_reconhecimentotipo_id} + + + + + + + {item.descricao} + + + + + + + + + + onEdit(item, true)} > - - {item.tb_reconhecimentotipo_id} - + + Editar + - - - + - {item.descricao} - - - - - - - - - - onEdit(item, true)} - > - - Editar - - - - - onDelete(item, true)} - > - - Remover - - - - - - - ))} - -
- ); + onDelete(item, true)} + > + + Remover + + + + + + + ))} + + + ); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeIndexData.ts index d22d3c3..082c32f 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeIndexData.ts @@ -2,85 +2,80 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function GCidadeIndexData() { - - return Promise.resolve({ - status: 200, - message: "Dados localizados", - data: [ - { - "cidade_id": 1, - "uf": "AC", - "cidade_nome": "Acrelândia", - "codigo_ibge": null, - "codigo_gyn": null - }, - { - "cidade_id": 2, - "uf": "AC", - "cidade_nome": "Assis Brasil", - "codigo_ibge": null, - "codigo_gyn": null - }, - { - "cidade_id": 3, - "uf": "AC", - "cidade_nome": "Brasiléia", - "codigo_ibge": null, - "codigo_gyn": null - }, - { - "cidade_id": 4, - "uf": "AC", - "cidade_nome": "Bujari", - "codigo_ibge": null, - "codigo_gyn": null - }, - { - "cidade_id": 5, - "uf": "AC", - "cidade_nome": "Capixaba", - "codigo_ibge": null, - "codigo_gyn": null - }, - { - "cidade_id": 6, - "uf": "AC", - "cidade_nome": "Cruzeiro do Sul", - "codigo_ibge": null, - "codigo_gyn": null - }, - { - "cidade_id": 7, - "uf": "AC", - "cidade_nome": "Epitaciolândia", - "codigo_ibge": null, - "codigo_gyn": null - }, - { - "cidade_id": 8, - "uf": "AC", - "cidade_nome": "Feijó", - "codigo_ibge": null, - "codigo_gyn": null - }, - { - "cidade_id": 9, - "uf": "AC", - "cidade_nome": "Jordão", - "codigo_ibge": null, - "codigo_gyn": null - }, - { - "cidade_id": 10, - "uf": "AC", - "cidade_nome": "Mâncio Lima", - "codigo_ibge": null, - "codigo_gyn": null - } - ] - - }); - + return Promise.resolve({ + status: 200, + message: "Dados localizados", + data: [ + { + cidade_id: 1, + uf: "AC", + cidade_nome: "Acrelândia", + codigo_ibge: null, + codigo_gyn: null, + }, + { + cidade_id: 2, + uf: "AC", + cidade_nome: "Assis Brasil", + codigo_ibge: null, + codigo_gyn: null, + }, + { + cidade_id: 3, + uf: "AC", + cidade_nome: "Brasiléia", + codigo_ibge: null, + codigo_gyn: null, + }, + { + cidade_id: 4, + uf: "AC", + cidade_nome: "Bujari", + codigo_ibge: null, + codigo_gyn: null, + }, + { + cidade_id: 5, + uf: "AC", + cidade_nome: "Capixaba", + codigo_ibge: null, + codigo_gyn: null, + }, + { + cidade_id: 6, + uf: "AC", + cidade_nome: "Cruzeiro do Sul", + codigo_ibge: null, + codigo_gyn: null, + }, + { + cidade_id: 7, + uf: "AC", + cidade_nome: "Epitaciolândia", + codigo_ibge: null, + codigo_gyn: null, + }, + { + cidade_id: 8, + uf: "AC", + cidade_nome: "Feijó", + codigo_ibge: null, + codigo_gyn: null, + }, + { + cidade_id: 9, + uf: "AC", + cidade_nome: "Jordão", + codigo_ibge: null, + codigo_gyn: null, + }, + { + cidade_id: 10, + uf: "AC", + cidade_nome: "Mâncio Lima", + codigo_ibge: null, + codigo_gyn: null, + }, + ], + }); } - - diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeRemoveData.ts index f035c60..8be7582 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeRemoveData.ts @@ -3,13 +3,9 @@ import { Methods } from "@/services/api/enums/ApiMethodEnum"; import GCidadeInterface from "../../_interfaces/GCidadeInterface"; export default async function GCidadeRemoveData(data: GCidadeInterface) { - - return Promise.resolve({ - status: 200, - message: "Dados removidos", - data: null - }); - + return Promise.resolve({ + status: 200, + message: "Dados removidos", + data: null, + }); } - - diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeSaveData.ts index 15d94be..8cbfebc 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GCidade/GCidadeSaveData.ts @@ -4,13 +4,12 @@ import GCidadeInterface from "../../_interfaces/GCidadeInterface"; // Função assíncrona responsável por salvar dados de cidades export default async function GCidadeSaveData(data: GCidadeInterface) { + // Log para indicar que a função foi chamada + console.log("chegou"); - // Log para indicar que a função foi chamada - console.log("chegou"); - - // Retorna uma Promise resolvida simulando resposta da API - return Promise.resolve({ - status: 200, // Código de status fictício - message: "Dados salvos" // Mensagem de sucesso - }); + // Retorna uma Promise resolvida simulando resposta da API + return Promise.resolve({ + status: 200, // Código de status fictício + message: "Dados salvos", // Mensagem de sucesso + }); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoIndexData.ts index 1e289f8..b447851 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoIndexData.ts @@ -3,11 +3,13 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; async function executeGMedidaTipoIndexData() { - const api = new API(); - return await api.send({ - method: Methods.GET, - endpoint: `administrativo/g_medida_tipo/` - }); + const api = new API(); + return await api.send({ + method: Methods.GET, + endpoint: `administrativo/g_medida_tipo/`, + }); } -export const GMedidaTipoIndexData = withClientErrorHandler(executeGMedidaTipoIndexData) \ No newline at end of file +export const GMedidaTipoIndexData = withClientErrorHandler( + executeGMedidaTipoIndexData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoRemoveData.ts index eccb06c..b82190b 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoRemoveData.ts @@ -4,14 +4,14 @@ import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeGMedidaTipoRemoveData(data: GMedidaTipoInterface) { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/g_medida_tipo/${data.medida_tipo_id}` - }); - + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/g_medida_tipo/${data.medida_tipo_id}`, + }); } -export const GMedidaTipoRemoveData = withClientErrorHandler(executeGMedidaTipoRemoveData) \ No newline at end of file +export const GMedidaTipoRemoveData = withClientErrorHandler( + executeGMedidaTipoRemoveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoSaveData.ts index 17636e3..cb87b7f 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GMedidoTipo/GMedidaTipoSaveData.ts @@ -4,17 +4,17 @@ import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeGMedidaTipoSaveData(data: GMedidaTipoInterface) { + const isUpdate = Boolean(data.medida_tipo_id); - const isUpdate = Boolean(data.medida_tipo_id); - - const api = new API(); - - return await api.send({ - method: isUpdate ? Methods.PUT : Methods.POST, - endpoint: `administrativo/g_medida_tipo/${data.medida_tipo_id || ''}`, - body: data - }); + const api = new API(); + return await api.send({ + method: isUpdate ? Methods.PUT : Methods.POST, + endpoint: `administrativo/g_medida_tipo/${data.medida_tipo_id || ""}`, + body: data, + }); } -export const GMedidaTipoSaveData = withClientErrorHandler(executeGMedidaTipoSaveData) \ No newline at end of file +export const GMedidaTipoSaveData = withClientErrorHandler( + executeGMedidaTipoSaveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroIndexData.ts index 16fd886..9d2c86d 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroIndexData.ts @@ -3,16 +3,16 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; async function executeGTBBairroIndexData() { + const api = new API(); - const api = new API(); - - const dados = await api.send({ - method: Methods.GET, - endpoint: `administrativo/g_tb_bairro/` - }); - - return dados + const dados = await api.send({ + method: Methods.GET, + endpoint: `administrativo/g_tb_bairro/`, + }); + return dados; } -export const GTBBairroIndexData = withClientErrorHandler(executeGTBBairroIndexData) \ No newline at end of file +export const GTBBairroIndexData = withClientErrorHandler( + executeGTBBairroIndexData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroRemoveData.ts index 241962b..ff12667 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroRemoveData.ts @@ -4,14 +4,14 @@ import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeGTBBairroRemoveData(data: GTBBairroInterface) { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/g_tb_bairro/${data.tb_bairro_id}` - }); - + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/g_tb_bairro/${data.tb_bairro_id}`, + }); } -export const GTBBairroRemoveData = withClientErrorHandler(executeGTBBairroRemoveData) \ No newline at end of file +export const GTBBairroRemoveData = withClientErrorHandler( + executeGTBBairroRemoveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroSaveData.ts index 917de22..691ccff 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBBairro/GTBBairroSaveData.ts @@ -4,17 +4,17 @@ import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeGTBBairroSaveData(data: GTBBairroInterface) { + const isUpdate = Boolean(data.tb_bairro_id); - const isUpdate = Boolean(data.tb_bairro_id); - - const api = new API(); - - return await api.send({ - method: isUpdate ? Methods.PUT : Methods.POST, - endpoint: `administrativo/g_tb_bairro/${data.tb_bairro_id || ''}`, - body: data - }); + const api = new API(); + return await api.send({ + method: isUpdate ? Methods.PUT : Methods.POST, + endpoint: `administrativo/g_tb_bairro/${data.tb_bairro_id || ""}`, + body: data, + }); } -export const GTBBairroSaveData = withClientErrorHandler(executeGTBBairroSaveData) \ No newline at end of file +export const GTBBairroSaveData = withClientErrorHandler( + executeGTBBairroSaveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilIndexData.ts index 47e9a9c..724e00f 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilIndexData.ts @@ -2,16 +2,15 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; - async function executeGTBEstadoCivilIndexData() { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.GET, - endpoint: `administrativo/g_tb_estado_civil/` - }); - + return await api.send({ + method: Methods.GET, + endpoint: `administrativo/g_tb_estado_civil/`, + }); } -export const GTBEstadoCivilIndexData = withClientErrorHandler(executeGTBEstadoCivilIndexData) \ No newline at end of file +export const GTBEstadoCivilIndexData = withClientErrorHandler( + executeGTBEstadoCivilIndexData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilRemoveData.ts index cfcd994..eafc42e 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilRemoveData.ts @@ -4,14 +4,14 @@ import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeGTBEstadoCivilRemoveData(data: GTBEstadoCivilInterface) { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/g_tb_bairro/${data.tb_estadocivil_id}` - }); - + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/g_tb_bairro/${data.tb_estadocivil_id}`, + }); } -export const GTBEstadoCivilRemoveData = withClientErrorHandler(executeGTBEstadoCivilRemoveData) \ No newline at end of file +export const GTBEstadoCivilRemoveData = withClientErrorHandler( + executeGTBEstadoCivilRemoveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilSaveData.ts index f48410e..8246d26 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBEstadoCivil/GTBEstadoCivilSaveData.ts @@ -4,17 +4,17 @@ import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeGTBEstadoCivilSaveData(data: GTBEstadoCivilInterface) { + const isUpdate = Boolean(data.tb_estadocivil_id); - const isUpdate = Boolean(data.tb_estadocivil_id); - - const api = new API(); - - return await api.send({ - method: isUpdate ? Methods.PUT : Methods.POST, - endpoint: `administrativo/g_tb_bairro/${data.tb_estadocivil_id || ''}`, - body: data - }); + const api = new API(); + return await api.send({ + method: isUpdate ? Methods.PUT : Methods.POST, + endpoint: `administrativo/g_tb_bairro/${data.tb_estadocivil_id || ""}`, + body: data, + }); } -export const GTBEstadoCivilSaveData = withClientErrorHandler(executeGTBEstadoCivilSaveData) \ No newline at end of file +export const GTBEstadoCivilSaveData = withClientErrorHandler( + executeGTBEstadoCivilSaveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoIndexData.ts index b1fa9f0..cc5a11f 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoIndexData.ts @@ -2,11 +2,10 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function GTBProfissoesIndexData() { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.GET, - endpoint: `administrativo/g_tb_profissao/` - }); -} \ No newline at end of file + return await api.send({ + method: Methods.GET, + endpoint: `administrativo/g_tb_profissao/`, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoRemoveData.ts index 61f3064..3600b4b 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoRemoveData.ts @@ -2,13 +2,13 @@ import API from "@/services/api/Api"; import GTBProfissaoInterface from "../../_interfaces/GTBProfissaoInterface"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; -export default async function GTBProfissaoRemoveData(data: GTBProfissaoInterface) { +export default async function GTBProfissaoRemoveData( + data: GTBProfissaoInterface, +) { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/g_tb_profissao/${data.tb_profissao_id}` - }); - -} \ No newline at end of file + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/g_tb_profissao/${data.tb_profissao_id}`, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoSaveData.ts index de65818..e7be081 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBProfissao/GTBProfissaoSaveData.ts @@ -2,16 +2,16 @@ import API from "@/services/api/Api"; import GTBProfissaoInterface from "../../_interfaces/GTBProfissaoInterface"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; -export default async function GTBProfissaoSaveData(data: GTBProfissaoInterface) { +export default async function GTBProfissaoSaveData( + data: GTBProfissaoInterface, +) { + const isUpdate = Boolean(data.tb_profissao_id); - const isUpdate = Boolean(data.tb_profissao_id); + const api = new API(); - const api = new API(); - - return await api.send({ - method: isUpdate ? Methods.PUT : Methods.POST, - endpoint: `administrativo/g_tb_profissao/${data.tb_profissao_id || ''}`, - body: data - }); - -} \ No newline at end of file + return await api.send({ + method: isUpdate ? Methods.PUT : Methods.POST, + endpoint: `administrativo/g_tb_profissao/${data.tb_profissao_id || ""}`, + body: data, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensIndexData.ts index c7dda24..87a875b 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensIndexData.ts @@ -2,12 +2,10 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function GTBRegimeBensIndexData() { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.GET, - endpoint: `administrativo/g_tb_regimebens/` - }); - -} \ No newline at end of file + return await api.send({ + method: Methods.GET, + endpoint: `administrativo/g_tb_regimebens/`, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensRemoveData.ts index ebbb985..1f9022e 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensRemoveData.ts @@ -2,13 +2,13 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; import GTBRegimeBensInterface from "../../_interfaces/GTBRegimeBensInterface"; -export default async function GTBRegimeBensRemoveData(data: GTBRegimeBensInterface) { +export default async function GTBRegimeBensRemoveData( + data: GTBRegimeBensInterface, +) { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/g_tb_regimebens/${data.tb_regimebens_id}` - }); - -} \ No newline at end of file + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/g_tb_regimebens/${data.tb_regimebens_id}`, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensSaveData.ts index b469f5b..55f3d9c 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBRegimeBens/GTBRegimeBensSaveData.ts @@ -4,18 +4,19 @@ import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeGTBRegimeBensSaveData(data: GTBRegimeBensInterface) { + throw new Error("Nome e email são obrigatórios"); - throw new Error("Nome e email são obrigatórios"); + const isUpdate = Boolean(data.tb_regimebens_id); - const isUpdate = Boolean(data.tb_regimebens_id); + const api = new API(); - const api = new API(); - - return await api.send({ - method: isUpdate ? Methods.PUT : Methods.POST, - endpoint: `administrativo/g_tb_regimebens/${data.tb_regimebens_id || ''}`, - body: data - }); + return await api.send({ + method: isUpdate ? Methods.PUT : Methods.POST, + endpoint: `administrativo/g_tb_regimebens/${data.tb_regimebens_id || ""}`, + body: data, + }); } -export const GTBRegimeBensSaveData = withClientErrorHandler(executeGTBRegimeBensSaveData); \ No newline at end of file +export const GTBRegimeBensSaveData = withClientErrorHandler( + executeGTBRegimeBensSaveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroIndexData.ts index af9ee24..6544628 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroIndexData.ts @@ -3,14 +3,14 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; async function executeGTBTipoLogradouroIndexData() { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.GET, - endpoint: `administrativo/g_tb_tipologradouro/` - }); - + return await api.send({ + method: Methods.GET, + endpoint: `administrativo/g_tb_tipologradouro/`, + }); } -export const GTBTipoLogradouroIndexData = withClientErrorHandler(executeGTBTipoLogradouroIndexData) \ No newline at end of file +export const GTBTipoLogradouroIndexData = withClientErrorHandler( + executeGTBTipoLogradouroIndexData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroRemoveData.ts index dcac9eb..6a85cd7 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroRemoveData.ts @@ -3,15 +3,17 @@ import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroI import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; -async function executeGTBTipoLogradouroRemoveData(data: GTBTipoLogradouroInterface) { - - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/g_tb_tipologradouro/${data.tb_tipologradouro_id}` - }); +async function executeGTBTipoLogradouroRemoveData( + data: GTBTipoLogradouroInterface, +) { + const api = new API(); + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/g_tb_tipologradouro/${data.tb_tipologradouro_id}`, + }); } -export const GTBTipoLogradouroRemoveData = withClientErrorHandler(executeGTBTipoLogradouroRemoveData) \ No newline at end of file +export const GTBTipoLogradouroRemoveData = withClientErrorHandler( + executeGTBTipoLogradouroRemoveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroSaveData.ts index c19be22..bd276da 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTBTipoLogradouro/GTBTipoLogradouroSaveData.ts @@ -3,18 +3,20 @@ import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroI import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; -async function executeGTBTipoLogradouroSaveData(data: GTBTipoLogradouroInterface) { +async function executeGTBTipoLogradouroSaveData( + data: GTBTipoLogradouroInterface, +) { + const isUpdate = Boolean(data.tb_tipologradouro_id); - const isUpdate = Boolean(data.tb_tipologradouro_id); - - const api = new API(); - - return await api.send({ - method: isUpdate ? Methods.PUT : Methods.POST, - endpoint: `administrativo/g_tb_tipologradouro/${data.tb_tipologradouro_id || ''}`, - body: data - }); + const api = new API(); + return await api.send({ + method: isUpdate ? Methods.PUT : Methods.POST, + endpoint: `administrativo/g_tb_tipologradouro/${data.tb_tipologradouro_id || ""}`, + body: data, + }); } -export const GTBTipoLogradouroSaveData = withClientErrorHandler(executeGTBTipoLogradouroSaveData) \ No newline at end of file +export const GTBTipoLogradouroSaveData = withClientErrorHandler( + executeGTBTipoLogradouroSaveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoIndexData.ts index 4dd3d24..30f20cb 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoIndexData.ts @@ -3,12 +3,10 @@ import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInter import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function GTBRegimeComunhaoIndexData() { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.GET, - endpoint: `administrativo/g_tb_regimecomunhao/` - }); - -} \ No newline at end of file + return await api.send({ + method: Methods.GET, + endpoint: `administrativo/g_tb_regimecomunhao/`, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoRemoveData.ts index c92cb66..92f9248 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoRemoveData.ts @@ -2,13 +2,13 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInterface"; -export default async function GTBRegimeComunhaoRemoveData(data: GTBRegimeComunhaoInterface) { +export default async function GTBRegimeComunhaoRemoveData( + data: GTBRegimeComunhaoInterface, +) { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/g_tb_regimecomunhao/${data.tb_regimecomunhao_id}` - }); - -} \ No newline at end of file + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/g_tb_regimecomunhao/${data.tb_regimecomunhao_id}`, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoSaveData.ts index 51cf575..ae7f6e3 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/GTRegimeComunhao/GTBRegimeComunhaoSaveData.ts @@ -2,15 +2,16 @@ import API from "@/services/api/Api"; import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInterface"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; -export default async function GTBRegimeComunhaoSaveData(data: GTBRegimeComunhaoInterface) { +export default async function GTBRegimeComunhaoSaveData( + data: GTBRegimeComunhaoInterface, +) { + const isUpdate = Boolean(data.tb_regimecomunhao_id); - const isUpdate = Boolean(data.tb_regimecomunhao_id); + const api = new API(); - const api = new API(); - - return await api.send({ - method: isUpdate ? Methods.PUT : Methods.POST, - endpoint: `administrativo/g_tb_regimecomunhao/${data.tb_regimecomunhao_id || ''}`, - body: data - }); -} \ No newline at end of file + return await api.send({ + method: isUpdate ? Methods.PUT : Methods.POST, + endpoint: `administrativo/g_tb_regimecomunhao/${data.tb_regimecomunhao_id || ""}`, + body: data, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecDeleteData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecDeleteData.ts index 0a0dffe..5e6a0ed 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecDeleteData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecDeleteData.ts @@ -4,14 +4,14 @@ import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeTCensecDeleteData(data: TCensecInterface) { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/t_censec/${data.censec_id}`, - }); - + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/t_censec/${data.censec_id}`, + }); } -export const TCensecDeleteData = withClientErrorHandler(executeTCensecDeleteData); \ No newline at end of file +export const TCensecDeleteData = withClientErrorHandler( + executeTCensecDeleteData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecIndexData.ts index d8a5896..e926611 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecIndexData.ts @@ -3,14 +3,12 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; async function executeTCensecIndexData() { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.GET, - endpoint: `administrativo/t_censec/`, - }); - + return await api.send({ + method: Methods.GET, + endpoint: `administrativo/t_censec/`, + }); } -export const TCensecIndexData = withClientErrorHandler(executeTCensecIndexData); \ No newline at end of file +export const TCensecIndexData = withClientErrorHandler(executeTCensecIndexData); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecSaveData.ts index 49804e5..23ba0e7 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TCensec/TCensecSaveData.ts @@ -4,17 +4,15 @@ import TCensecInterface from "../../_interfaces/TCensecInterface"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeTCensecSaveData(data: TCensecInterface) { + const isUpdate = Boolean(data.censec_id); - const isUpdate = Boolean(data.censec_id); - - const api = new API(); - - return await api.send({ - method: isUpdate ? Methods.PUT : Methods.POST, - endpoint: `administrativo/t_censec/${data.censec_id || ''}`, - body: data - }); + const api = new API(); + return await api.send({ + method: isUpdate ? Methods.PUT : Methods.POST, + endpoint: `administrativo/t_censec/${data.censec_id || ""}`, + body: data, + }); } -export const TCensecSaveData = withClientErrorHandler(executeTCensecSaveData); \ No newline at end of file +export const TCensecSaveData = withClientErrorHandler(executeTCensecSaveData); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioIndexData.ts index 1392a1f..1af985c 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioIndexData.ts @@ -3,12 +3,13 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; async function executeTCensecNaturezaLitigioIndexData() { - - const api = new API(); - return await api.send({ - method: Methods.GET, - endpoint: `administrativo/t_censec_naturezalitigio/` - }); + const api = new API(); + return await api.send({ + method: Methods.GET, + endpoint: `administrativo/t_censec_naturezalitigio/`, + }); } -export const TCensecNaturezaLitigioIndexData = withClientErrorHandler(executeTCensecNaturezaLitigioIndexData) \ No newline at end of file +export const TCensecNaturezaLitigioIndexData = withClientErrorHandler( + executeTCensecNaturezaLitigioIndexData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioRemoveData.ts index 1631df7..0aaec01 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioRemoveData.ts @@ -3,15 +3,17 @@ import { TCensecNaturezaLitigioInterface } from "../../_interfaces/TCensecNature import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; -async function executeTCensecNaturezaLitigioRemoveData(data: TCensecNaturezaLitigioInterface) { - - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/t_censec_naturezalitigio/${data.censec_naturezalitigio_id}` - }); +async function executeTCensecNaturezaLitigioRemoveData( + data: TCensecNaturezaLitigioInterface, +) { + const api = new API(); + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/t_censec_naturezalitigio/${data.censec_naturezalitigio_id}`, + }); } -export const TCensecNaturezaLitigioRemoveData = withClientErrorHandler(executeTCensecNaturezaLitigioRemoveData) \ No newline at end of file +export const TCensecNaturezaLitigioRemoveData = withClientErrorHandler( + executeTCensecNaturezaLitigioRemoveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioSaveData.ts index 58b34f4..8d666aa 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioSaveData.ts @@ -3,16 +3,18 @@ import { TCensecNaturezaLitigioInterface } from "../../_interfaces/TCensecNature import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; -async function executeTCensecNaturezaLitigioSaveData(data: TCensecNaturezaLitigioInterface) { - - const api = new API(); - - return await api.send({ - method: data.censec_naturezalitigio_id ? Methods.PUT : Methods.POST, - endpoint: `administrativo/t_censec_naturezalitigio/${data.censec_naturezalitigio_id ? data.censec_naturezalitigio_id : ''}`, - body: data - }); +async function executeTCensecNaturezaLitigioSaveData( + data: TCensecNaturezaLitigioInterface, +) { + const api = new API(); + return await api.send({ + method: data.censec_naturezalitigio_id ? Methods.PUT : Methods.POST, + endpoint: `administrativo/t_censec_naturezalitigio/${data.censec_naturezalitigio_id ? data.censec_naturezalitigio_id : ""}`, + body: data, + }); } -export const TCensecNaturezaLitigioSaveData = withClientErrorHandler(executeTCensecNaturezaLitigioSaveData) \ No newline at end of file +export const TCensecNaturezaLitigioSaveData = withClientErrorHandler( + executeTCensecNaturezaLitigioSaveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaIndex.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaIndex.ts index 943191c..2ecf44a 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaIndex.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaIndex.ts @@ -14,7 +14,7 @@ export default async function TMinutaIndex(t_minuta_id: number) { try { const dados = await api.send({ method: Methods.GET, - endpoint: `administrativo/t_minuta/${t_minuta_id}` + endpoint: `administrativo/t_minuta/${t_minuta_id}`, }); return dados; } catch (error) { diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaIndexData.ts index 41908ad..ed34da0 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaIndexData.ts @@ -13,7 +13,7 @@ export default async function TMinutaIndexData() { try { const dados = await api.send({ method: Methods.GET, - endpoint: `administrativo/t_minuta/` + endpoint: `administrativo/t_minuta/`, }); return dados; } catch (error) { diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaRemoveData.ts index 8870452..29a1ef7 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaRemoveData.ts @@ -3,12 +3,10 @@ import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function TMinutaRemoveData(data: TMinutaInterface) { + const api = new API(); - const api = new API(); - - return await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/t_minuta/${data.t_minuta_id}` - }); - -} \ No newline at end of file + return await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/t_minuta/${data.t_minuta_id}`, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaSaveData.ts index c75171b..a6198b1 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/TMinutaSaveData.ts @@ -3,15 +3,13 @@ import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function TMinutaSaveData(data: TMinutaInterface) { + const isUpdate = Boolean(data.t_minuta_id); - const isUpdate = Boolean(data.t_minuta_id); + const api = new API(); - const api = new API(); - - return await api.send({ - method: isUpdate ? Methods.PUT : Methods.POST, - endpoint: `administrativo/t_minuta/${data.t_minuta_id || ''}`, - body: data - }); - -} \ No newline at end of file + return await api.send({ + method: isUpdate ? Methods.PUT : Methods.POST, + endpoint: `administrativo/t_minuta/${data.t_minuta_id || ""}`, + body: data, + }); +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/mockMinuta.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/mockMinuta.ts index 88ae986..b61e8e6 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/mockMinuta.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TMinuta/mockMinuta.ts @@ -1,33 +1,37 @@ // Função para pegar todos os dados (usada em TMinutaIndexData) -import { textoEscrituraCompraEVenda, textoEscrituraPartilhaAmigavel, textoProcuracaoAdJudicia } from "./MinutaTexto"; +import { + textoEscrituraCompraEVenda, + textoEscrituraPartilhaAmigavel, + textoProcuracaoAdJudicia, +} from "./MinutaTexto"; export default async function MinutaMockDeDados() { return Promise.resolve({ status: 200, - message: 'Dados localizados', + message: "Dados localizados", data: [ { t_minuta_id: 1, natureza_id: 1, - descricao: 'Escritura de Compra e Venda', - situacao: 'A', + descricao: "Escritura de Compra e Venda", + situacao: "A", texto: textoEscrituraCompraEVenda, }, { t_minuta_id: 2, natureza_id: 1, - descricao: 'Escritura de Partilha Amigável', - situacao: 'A', + descricao: "Escritura de Partilha Amigável", + situacao: "A", texto: textoEscrituraPartilhaAmigavel, }, { t_minuta_id: 3, natureza_id: 2, - descricao: 'Procuração Ad Judicia', - situacao: 'A', + descricao: "Procuração Ad Judicia", + situacao: "A", texto: textoProcuracaoAdJudicia, }, - ] + ], }); } @@ -35,7 +39,7 @@ export async function MinutaMockDeDadosPorId(t_minuta_id: number) { const allData = await MinutaMockDeDados(); return Promise.resolve({ status: 200, - message: 'Dados localizados', - data: allData.data.find((item) => item.t_minuta_id === t_minuta_id) || null + message: "Dados localizados", + data: allData.data.find((item) => item.t_minuta_id === t_minuta_id) || null, }); } diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoIndexData.ts index 3865338..f637d54 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoIndexData.ts @@ -1,17 +1,15 @@ -'use server' +"use server"; import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function TTBAndamentoServicoIndexData() { + const api = new API(); - const api = new API(); + const response = await api.send({ + method: Methods.GET, + endpoint: `administrativo/t_tb_andamentoservico/`, + }); - const response = await api.send({ - 'method': Methods.GET, - 'endpoint': `administrativo/t_tb_andamentoservico/` - }); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoRemoveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoRemoveData.ts index 5ad8fc9..6c5e61d 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoRemoveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoRemoveData.ts @@ -1,18 +1,18 @@ -'use server' +"use server"; import API from "@/services/api/Api"; import TTBAndamentoServicoInteface from "../../_interfaces/TTBAndamentoServicoInterface"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; -export default async function TTBAndamentoServicoRemoveData(tTBAndamentoServico: TTBAndamentoServicoInteface) { +export default async function TTBAndamentoServicoRemoveData( + tTBAndamentoServico: TTBAndamentoServicoInteface, +) { + const api = new API(); - const api = new API(); + const response = await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/t_tb_andamentoservico/${tTBAndamentoServico.tb_andamentoservico_id}`, + }); - const response = await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/t_tb_andamentoservico/${tTBAndamentoServico.tb_andamentoservico_id}` - }); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoSaveData.ts index 589ec9b..31d6463 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TTBAndamentoServico/TTBAndamentoServicoSaveData.ts @@ -1,23 +1,25 @@ -'use server' +"use server"; import API from "@/services/api/Api"; import TTBAndamentoServicoInteface from "../../_interfaces/TTBAndamentoServicoInterface"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; -async function executeTTBAndamentoServicoSaveData(data: TTBAndamentoServicoInteface) { +async function executeTTBAndamentoServicoSaveData( + data: TTBAndamentoServicoInteface, +) { + const api = new API(); - const api = new API(); - - const response = await api.send({ - method: data.tb_andamentoservico_id ? Methods.PUT : Methods.POST, - endpoint: `administrativo/t_tb_andamentoservico/${data.tb_andamentoservico_id ? data.tb_andamentoservico_id : ''}`, - body: data - }); - - return response; + const response = await api.send({ + method: data.tb_andamentoservico_id ? Methods.PUT : Methods.POST, + endpoint: `administrativo/t_tb_andamentoservico/${data.tb_andamentoservico_id ? data.tb_andamentoservico_id : ""}`, + body: data, + }); + return response; } // Encapsula a execução da função -export const TTBAndamentoServicoSaveData = withClientErrorHandler(executeTTBAndamentoServicoSaveData); \ No newline at end of file +export const TTBAndamentoServicoSaveData = withClientErrorHandler( + executeTTBAndamentoServicoSaveData, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoDeleteData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoDeleteData.ts index 5f279f9..aea8921 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoDeleteData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoDeleteData.ts @@ -2,15 +2,15 @@ import API from "@/services/api/Api"; import TTBReconhecimentoTipoInterface from "../../_interfaces/TTBReconhecimentoTipoInterface"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; -export default async function TTBReconhecimentoTipoDeleteData(data: TTBReconhecimentoTipoInterface) { +export default async function TTBReconhecimentoTipoDeleteData( + data: TTBReconhecimentoTipoInterface, +) { + const api = new API(); - const api = new API(); + const response = await api.send({ + method: Methods.DELETE, + endpoint: `administrativo/t_tb_reconhecimentotipo/${data.tb_reconhecimentotipo_id}`, + }); - const response = await api.send({ - method: Methods.DELETE, - endpoint: `administrativo/t_tb_reconhecimentotipo/${data.tb_reconhecimentotipo_id}` - }); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoIndexData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoIndexData.ts index 7d7995e..01fbe00 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoIndexData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoIndexData.ts @@ -1,17 +1,15 @@ -'use server' +"use server"; -import API from "@/services/api/Api" +import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; export default async function TTBReconhecimentoTipoIndexData() { + const api = new API(); - const api = new API(); + const response = await api.send({ + method: Methods.GET, + endpoint: `administrativo/t_tb_reconhecimentotipo`, + }); - const response = await api.send({ - method: Methods.GET, - endpoint: `administrativo/t_tb_reconhecimentotipo` - }); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoSaveData.ts b/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoSaveData.ts index e045e65..f48c231 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoSaveData.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoSaveData.ts @@ -2,16 +2,16 @@ import API from "@/services/api/Api"; import { Methods } from "@/services/api/enums/ApiMethodEnum"; import TTBReconhecimentoTipoInterface from "../../_interfaces/TTBReconhecimentoTipoInterface"; -export default async function TTBReconhecimentoTipoSaveData(data: TTBReconhecimentoTipoInterface) { +export default async function TTBReconhecimentoTipoSaveData( + data: TTBReconhecimentoTipoInterface, +) { + const api = new API(); - const api = new API(); + const response = await api.send({ + method: data.tb_reconhecimentotipo_id ? Methods.PUT : Methods.POST, + endpoint: `administrativo/t_tb_reconhecimentotipo/${data.tb_reconhecimentotipo_id ? data.tb_reconhecimentotipo_id : ""}`, + body: data, + }); - const response = await api.send({ - method: data.tb_reconhecimentotipo_id ? Methods.PUT : Methods.POST, - endpoint: `administrativo/t_tb_reconhecimentotipo/${data.tb_reconhecimentotipo_id ? data.tb_reconhecimentotipo_id : ''}`, - body: data - }); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeReadHook.ts index 03eb83a..619a9a2 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeReadHook.ts @@ -5,28 +5,27 @@ import GCidadeInterface from "../../_interfaces/GCidadeInterface"; // Interface // Hook customizado para leitura de dados de cidades export const useGCidadeReadHook = () => { + // Hook do contexto de resposta para feedback global (alertas, mensagens etc.) + const { setResponse } = useResponse(); - // Hook do contexto de resposta para feedback global (alertas, mensagens etc.) - const { setResponse } = useResponse(); + // Estado local que armazena a lista de cidades retornada da API + const [gCidade, setGCidade] = useState([]); - // Estado local que armazena a lista de cidades retornada da API - const [gCidade, setGCidade] = useState([]); + // Função assíncrona que busca os dados de cidades + const fetchGCidade = async () => { + // Chama o serviço responsável por consultar a API + const response = await GCidadeIndexService(); - // Função assíncrona que busca os dados de cidades - const fetchGCidade = async () => { - // Chama o serviço responsável por consultar a API - const response = await GCidadeIndexService(); + // Atualiza o estado local com os dados retornados + setGCidade(response.data); - // Atualiza o estado local com os dados retornados - setGCidade(response.data); + // Atualiza o contexto global de resposta + setResponse(response); - // Atualiza o contexto global de resposta - setResponse(response); + // Retorna a resposta para quem chamou o hook + return response; + }; - // Retorna a resposta para quem chamou o hook - return response; - } - - // Retorna os dados e a função de busca para serem usados no componente - return { gCidade, fetchGCidade } -} + // Retorna os dados e a função de busca para serem usados no componente + return { gCidade, fetchGCidade }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeRemoveHook.ts index 0adcb3b..0bee4fc 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeRemoveHook.ts @@ -4,20 +4,18 @@ import GCidadeRemoveData from "../../_data/GCidade/GCidadeRemoveData"; // Funç // Hook customizado para remoção de cidades export const useGCidadeRemoveHook = () => { + // Hook do contexto de resposta para feedback global (alertas, mensagens etc.) + const { setResponse } = useResponse(); - // Hook do contexto de resposta para feedback global (alertas, mensagens etc.) - const { setResponse } = useResponse(); + // Função assíncrona que remove uma cidade + const removeGCidade = async (data: GCidadeInterface) => { + // Chama a função de remoção passando os dados da cidade + const response = await GCidadeRemoveData(data); - // Função assíncrona que remove uma cidade - const removeGCidade = async (data: GCidadeInterface) => { - - // Chama a função de remoção passando os dados da cidade - const response = await GCidadeRemoveData(data); + // Atualiza o contexto global com a resposta da API + setResponse(response); + }; - // Atualiza o contexto global com a resposta da API - setResponse(response); - } - - // Retorna a função de remoção para ser usada no componente - return { removeGCidade } -} + // Retorna a função de remoção para ser usada no componente + return { removeGCidade }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeSaveHook.ts index 0a0c1c4..32e01b1 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_cidade/useGCidadeSaveHook.ts @@ -1,34 +1,30 @@ import { useState } from "react"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import GCidadeInterface from "../../_interfaces/GCidadeInterface"; import { GCidadeSaveService } from "../../_services/g_cidade/GCidadeSaveService"; export const useGCidadeSaveHook = () => { + const { setResponse } = useResponse(); + const [gCidade, setGCidade] = useState(null); - const { setResponse } = useResponse(); - const [gCidade, setGCidade] = useState(null); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveGCidade = async (data: GCidadeInterface) => { + const response = await GCidadeSaveService(data); - const saveGCidade = async (data: GCidadeInterface) => { + // Guardar os dados localizados + setGCidade(response.data); - const response = await GCidadeSaveService(data); + // Manda a resposta para o verificador de resposta + setResponse(response); - // Guardar os dados localizados - setGCidade(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - // Manda a resposta para o verificador de resposta - setResponse(response); + // Retorna os dados imediatamente + return response; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os dados imediatamente - return response; - - } - - return { gCidade, saveGCidade } - -} \ No newline at end of file + return { gCidade, saveGCidade }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoReadHook.ts index a1e1267..68c0ef2 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoReadHook.ts @@ -1,27 +1,23 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { GMedidaTipoInterface } from "../../_interfaces/GMedidaTipoInterface"; import { GMedidaTipoIndexService } from "../../_services/g_medidatipo/GMedidaTipoIndexService"; export const useGMedidaTipoReadHook = () => { + const { setResponse } = useResponse(); + const [gMedidaTipo, setGMedidaTipo] = useState([]); - const { setResponse } = useResponse(); - const [gMedidaTipo, setGMedidaTipo] = useState([]); + const fetchGMedidaTipo = async () => { + try { + const response = await GMedidaTipoIndexService(); - const fetchGMedidaTipo = async () => { - - try { - const response = await GMedidaTipoIndexService(); - - setGMedidaTipo(response.data); - - setResponse(response); - } catch (error) { - console.log(error) - } + setGMedidaTipo(response.data); + setResponse(response); + } catch (error) { + console.log(error); } + }; - return { gMedidaTipo, fetchGMedidaTipo } - -} \ No newline at end of file + return { gMedidaTipo, fetchGMedidaTipo }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoRemoveHook.ts index f6d141b..1585600 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoRemoveHook.ts @@ -1,19 +1,15 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { GMedidaTipoInterface } from "../../_interfaces/GMedidaTipoInterface"; import { GMedidaTipoRemoveService } from "../../_services/g_medidatipo/GMedidaTipoRemoveService"; export const useGMedidaTipoRemoveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const removeGMedidaTipo = async (data: GMedidaTipoInterface) => { + const response = await GMedidaTipoRemoveService(data); - const removeGMedidaTipo = async (data: GMedidaTipoInterface) => { + setResponse(response); + }; - const response = await GMedidaTipoRemoveService(data); - - setResponse(response); - - } - - return { removeGMedidaTipo } - -} \ No newline at end of file + return { removeGMedidaTipo }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoSaveHook.ts index 45871ca..7297878 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_medidatipo/useGMedidaTipoSaveHook.ts @@ -1,31 +1,29 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { GMedidaTipoInterface } from "../../_interfaces/GMedidaTipoInterface"; import { GMedidaTipoSaveService } from "../../_services/g_medidatipo/GMedidaTipoSaveService"; export const useGMedidaTipoSaveHook = () => { + const { setResponse } = useResponse(); + const [gMedidaTipo, setGMedidaTipo] = useState( + null, + ); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - const { setResponse } = useResponse(); - const [gMedidaTipo, setGMedidaTipo] = useState(null); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveGMedidaTipo = async (data: GMedidaTipoInterface) => { + const response = await GMedidaTipoSaveService(data); - const saveGMedidaTipo = async (data: GMedidaTipoInterface) => { + setGMedidaTipo(response.data); - const response = await GMedidaTipoSaveService(data); + setResponse(response); - setGMedidaTipo(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - setResponse(response); + // Retorna os dados imediatamente + return response; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os dados imediatamente - return response; - - } - - return { gMedidaTipo, saveGMedidaTipo } - -} \ No newline at end of file + return { gMedidaTipo, saveGMedidaTipo }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroReadHook.ts index 816efde..21e4d69 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroReadHook.ts @@ -1,30 +1,26 @@ -'use client' +"use client"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { use, useState } from "react"; import { GTBBairroInterface } from "../../_interfaces/GTBBairroInterface"; import { GTBBairroIndexService } from "../../_services/g_tb_bairro/GTBBairroIndexService"; export const useGTBBairroReadHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + // Controle dos dados obtidos via API + const [gTBBairro, setGTBBairro] = useState([]); - // Controle dos dados obtidos via API - const [gTBBairro, setGTBBairro] = useState([]); + const fetchGTBBairro = async () => { + // Realiza a requisição para a api + const response = await GTBBairroIndexService(); - const fetchGTBBairro = async () => { + // Armazena os dados da resposta + setGTBBairro(response.data); - // Realiza a requisição para a api - const response = await GTBBairroIndexService(); + // Envia os dados da resposta para ser tratado + setResponse(response); + }; - // Armazena os dados da resposta - setGTBBairro(response.data); - - // Envia os dados da resposta para ser tratado - setResponse(response); - - } - - return { gTBBairro, fetchGTBBairro } - -} \ No newline at end of file + return { gTBBairro, fetchGTBBairro }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroRemoveHook.ts index d50f468..a270f04 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroRemoveHook.ts @@ -1,19 +1,15 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { GTBBairroInterface } from "../../_interfaces/GTBBairroInterface"; import { GTBBairroRemoveService } from "../../_services/g_tb_bairro/GTBBairroRemoveService"; export const useGTBBairroRemoveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const removeGTBBairro = async (data: GTBBairroInterface) => { + const response = await GTBBairroRemoveService(data); - const removeGTBBairro = async (data: GTBBairroInterface) => { + setResponse(response); + }; - const response = await GTBBairroRemoveService(data); - - setResponse(response); - - } - - return { removeGTBBairro } - -} \ No newline at end of file + return { removeGTBBairro }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroSaveHook.ts index 3b6653f..48e4291 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_bairro/useGTBBairroSaveHook.ts @@ -1,32 +1,28 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { GTBBairroInterface } from "../../_interfaces/GTBBairroInterface"; import { GTBBairroSaveService } from "../../_services/g_tb_bairro/GTBBairroSaveService"; export const useGTBBairroSaveHook = () => { + const { setResponse } = useResponse(); + const [gTBBairro, setGTBBairro] = useState(null); - const { setResponse } = useResponse(); - const [gTBBairro, setGTBBairro] = useState(null); - - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - const saveGTBBairro = async (data: GTBBairroInterface) => { + const saveGTBBairro = async (data: GTBBairroInterface) => { + const response = await GTBBairroSaveService(data); - const response = await GTBBairroSaveService(data); + setGTBBairro(response.data); - setGTBBairro(response.data); + setResponse(response); - setResponse(response); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - // Fecha o formulário automaticamente após salvar - setIsOpen(false); + // Retorna os dados imediatamente + return response; + }; - // Retorna os dados imediatamente - return response; - - } - - return { gTBBairro, saveGTBBairro } - -} \ No newline at end of file + return { gTBBairro, saveGTBBairro }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilReadHook.ts index 952dbab..6da96dd 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilReadHook.ts @@ -1,27 +1,25 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { GTBEstadoCivilInterface } from "../../_interfaces/GTBEstadoCivilInterface"; import { GTBEstadoCivilIndexService } from "../../_services/g_tb_estadocivil/GTBEstadoCivilIndexService"; export const useGTBEstadoCivilReadHook = () => { + const { setResponse } = useResponse(); + const [gTBEstadoCivil, setGTBEstadoCivil] = useState< + GTBEstadoCivilInterface[] + >([]); - const { setResponse } = useResponse(); - const [gTBEstadoCivil, setGTBEstadoCivil] = useState([]); + const fetchGTBEstadoCivil = async () => { + try { + const response = await GTBEstadoCivilIndexService(); - const fetchGTBEstadoCivil = async () => { - - try { - const response = await GTBEstadoCivilIndexService(); - - setGTBEstadoCivil(response.data); - - setResponse(response); - } catch (error) { - console.log(error) - } + setGTBEstadoCivil(response.data); + setResponse(response); + } catch (error) { + console.log(error); } + }; - return { gTBEstadoCivil, fetchGTBEstadoCivil } - -} \ No newline at end of file + return { gTBEstadoCivil, fetchGTBEstadoCivil }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilRemoveHook.ts index 66042c5..c581fb2 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilRemoveHook.ts @@ -1,19 +1,15 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { GTBEstadoCivilInterface } from "../../_interfaces/GTBEstadoCivilInterface"; import { GTBEstadoCivilRemoveService } from "../../_services/g_tb_estadocivil/GTBEstadoCivilRemoveService"; export const useGTBEstadoCivilRemoveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const removeGTBEstadoCivil = async (data: GTBEstadoCivilInterface) => { + const response = await GTBEstadoCivilRemoveService(data); - const removeGTBEstadoCivil = async (data: GTBEstadoCivilInterface) => { + setResponse(response); + }; - const response = await GTBEstadoCivilRemoveService(data); - - setResponse(response); - - } - - return { removeGTBEstadoCivil } - -} \ No newline at end of file + return { removeGTBEstadoCivil }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilSaveHook.ts index 60f895d..fa9b01c 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_estadocivil/useGTBEstadoCivilSaveHook.ts @@ -1,31 +1,28 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { GTBEstadoCivilInterface } from "../../_interfaces/GTBEstadoCivilInterface"; import { GTBEstadoCivilSaveService } from "../../_services/g_tb_estadocivil/GTBEstadoCivilSaveService"; export const useGTBEstadoCivilSaveHook = () => { + const { setResponse } = useResponse(); + const [gTBEstadoCivil, setGTBEstadoCivil] = + useState(null); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - const { setResponse } = useResponse(); - const [gTBEstadoCivil, setGTBEstadoCivil] = useState(null); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveGTBEstadoCivil = async (data: GTBEstadoCivilInterface) => { + const response = await GTBEstadoCivilSaveService(data); - const saveGTBEstadoCivil = async (data: GTBEstadoCivilInterface) => { + setGTBEstadoCivil(response.data); - const response = await GTBEstadoCivilSaveService(data); + setResponse(response); - setGTBEstadoCivil(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - setResponse(response); + // Retorna os dados imediatamente + return response; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os dados imediatamente - return response; - - } - - return { gTBEstadoCivil, saveGTBEstadoCivil } - -} \ No newline at end of file + return { gTBEstadoCivil, saveGTBEstadoCivil }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoReadHook.ts index 6bd2c60..5f681c8 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoReadHook.ts @@ -1,23 +1,19 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import GTBProfissaoInterface from "../../_interfaces/GTBProfissaoInterface"; import GTBProfissaoIndexService from "../../_services/g_tb_profissao/GTBProfissaoIndexService"; export const useGTBProfissaoReadHook = () => { + const { setResponse } = useResponse(); + const [gTBProfissao, setGTBProfissao] = useState([]); - const { setResponse } = useResponse(); - const [gTBProfissao, setGTBProfissao] = useState([]); + const fetchGTBProfissao = async () => { + const response = await GTBProfissaoIndexService(); - const fetchGTBProfissao = async () => { + setGTBProfissao(response.data); - const response = await GTBProfissaoIndexService(); + setResponse(response); + }; - setGTBProfissao(response.data); - - setResponse(response); - - } - - return { gTBProfissao, fetchGTBProfissao } - -} \ No newline at end of file + return { gTBProfissao, fetchGTBProfissao }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoRemoveHook.ts index 421c186..d52aa36 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoRemoveHook.ts @@ -1,19 +1,15 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import GTBProfissaoInterface from "../../_interfaces/GTBProfissaoInterface"; import GTBProfissaoRemoveService from "../../_services/g_tb_profissao/GTBProfissaoRemoveService"; export const useGTBProfissaoRemoveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const removeGTBProfissao = async (data: GTBProfissaoInterface) => { + const response = await GTBProfissaoRemoveService(data); - const removeGTBProfissao = async (data: GTBProfissaoInterface) => { + setResponse(response); + }; - const response = await GTBProfissaoRemoveService(data); - - setResponse(response); - - } - - return { removeGTBProfissao } - -} \ No newline at end of file + return { removeGTBProfissao }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoSaveHook.ts index 74b9dd5..74d70b5 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_profissao/useGTBProfissaoSaveHook.ts @@ -1,31 +1,28 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import GTBProfissaoInterface from "../../_interfaces/GTBProfissaoInterface"; import GTBProfissaoSaveService from "../../_services/g_tb_profissao/GTBProfissaoSaveService"; export const useGTBProfissaoSaveHook = () => { + const { setResponse } = useResponse(); + const [gTBProfissao, setGTBProfissao] = + useState(null); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - const { setResponse } = useResponse(); - const [gTBProfissao, setGTBProfissao] = useState(null); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveGTBProfissao = async (data: GTBProfissaoInterface) => { + const response = await GTBProfissaoSaveService(data); - const saveGTBProfissao = async (data: GTBProfissaoInterface) => { + setGTBProfissao(response.data); - const response = await GTBProfissaoSaveService(data); + setResponse(response); - setGTBProfissao(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - setResponse(response); + // Retorna os dados imediatamente + return response; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os dados imediatamente - return response; - - } - - return { gTBProfissao, saveGTBProfissao } - -} \ No newline at end of file + return { gTBProfissao, saveGTBProfissao }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensReadHook.ts index 9294db5..d9496ad 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensReadHook.ts @@ -1,25 +1,23 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import GTBRegimeBensIndexService from "../../_services/g_tb_regimebens/GTBRegimeBensIndexService"; import GTBRegimeBensInterface from "../../_interfaces/GTBRegimeBensInterface"; export const useGTBRegimeBensReadHook = () => { + const { setResponse } = useResponse(); + const [gTBRegimeBens, setGTBRegimeBens] = useState( + [], + ); - const { setResponse } = useResponse(); - const [gTBRegimeBens, setGTBRegimeBens] = useState([]); + const fetchGTBRegimeBens = async () => { + const response = await GTBRegimeBensIndexService(); - const fetchGTBRegimeBens = async () => { + setGTBRegimeBens(response.data); - const response = await GTBRegimeBensIndexService(); + setResponse(response); - setGTBRegimeBens(response.data); + return response; + }; - setResponse(response); - - return response; - - } - - return { gTBRegimeBens, fetchGTBRegimeBens } - -} \ No newline at end of file + return { gTBRegimeBens, fetchGTBRegimeBens }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensRemoveHook.ts index 748313e..48424ea 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensRemoveHook.ts @@ -1,19 +1,15 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import GTBRegimeBensInterface from "../../_interfaces/GTBRegimeBensInterface"; import GTBRegimeBensRemoveData from "../../_data/GTBRegimeBens/GTBRegimeBensRemoveData"; export const useGTBRegimeBensRemoveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const removeGTBRegimeComunhao = async (data: GTBRegimeBensInterface) => { + const response = await GTBRegimeBensRemoveData(data); - const removeGTBRegimeComunhao = async (data: GTBRegimeBensInterface) => { + setResponse(response); + }; - const response = await GTBRegimeBensRemoveData(data); - - setResponse(response); - - } - - return { removeGTBRegimeComunhao } - -} \ No newline at end of file + return { removeGTBRegimeComunhao }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensSaveHook.ts index 4941f94..37b0633 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimebens/useGTBRegimeBensSaveHook.ts @@ -1,34 +1,31 @@ import { useState } from "react"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import GTBRegimeBensInterface from "../../_interfaces/GTBRegimeBensInterface"; import { GTBRegimeBensSaveService } from "../../_services/g_tb_regimebens/GTBRegimeBensSaveService"; export const useGTBRegimeBensSaveHook = () => { + const { setResponse } = useResponse(); + const [gTBRegimeComunhao, setGTBRegimeComunhao] = + useState(null); - const { setResponse } = useResponse(); - const [gTBRegimeComunhao, setGTBRegimeComunhao] = useState(null); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveGTBRegimeComunhao = async (data: GTBRegimeBensInterface) => { + const response = await GTBRegimeBensSaveService(data); - const saveGTBRegimeComunhao = async (data: GTBRegimeBensInterface) => { + // Guardar os dados localizados + setGTBRegimeComunhao(response.data); - const response = await GTBRegimeBensSaveService(data); + // Manda a resposta para o verificador de resposta + setResponse(response); - // Guardar os dados localizados - setGTBRegimeComunhao(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - // Manda a resposta para o verificador de resposta - setResponse(response); + // Retorna os dados imediatamente + return response; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os dados imediatamente - return response; - - } - - return { gTBRegimeComunhao, saveGTBRegimeComunhao } - -} \ No newline at end of file + return { gTBRegimeComunhao, saveGTBRegimeComunhao }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoReadHook.ts index 412de89..7f5a6fc 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoReadHook.ts @@ -1,23 +1,21 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInterface"; import { GTBRegimeComunhaoIndexService } from "../../_services/g_tb_regimecomunhao/GTBRegimeComunhaoIndexService"; export const useGTBRegimeComunhaoReadHook = () => { + const { setResponse } = useResponse(); + const [gTBRegimeComunhao, setGTBRegimeComunhao] = useState< + GTBRegimeComunhaoInterface[] + >([]); - const { setResponse } = useResponse(); - const [gTBRegimeComunhao, setGTBRegimeComunhao] = useState([]); + const fetchGTBRegimeComunhao = async () => { + const response = await GTBRegimeComunhaoIndexService(); - const fetchGTBRegimeComunhao = async () => { + setGTBRegimeComunhao(response.data); - const response = await GTBRegimeComunhaoIndexService(); + setResponse(response); + }; - setGTBRegimeComunhao(response.data); - - setResponse(response); - - } - - return { gTBRegimeComunhao, fetchGTBRegimeComunhao } - -} \ No newline at end of file + return { gTBRegimeComunhao, fetchGTBRegimeComunhao }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoRemoveHook.ts index 99a38fa..84b184a 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoRemoveHook.ts @@ -1,19 +1,15 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInterface"; -import {GTBRegimeComunhaoRemoveService} from "../../_services/g_tb_regimecomunhao/GTBRegimeComunhaoRemoveService"; +import { GTBRegimeComunhaoRemoveService } from "../../_services/g_tb_regimecomunhao/GTBRegimeComunhaoRemoveService"; export const useGTBRegimeComunhaoRemoveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const removeGTBRegimeComunhao = async (data: GTBRegimeComunhaoInterface) => { + const response = await GTBRegimeComunhaoRemoveService(data); - const removeGTBRegimeComunhao = async (data: GTBRegimeComunhaoInterface) => { + setResponse(response); + }; - const response = await GTBRegimeComunhaoRemoveService(data); - - setResponse(response); - - } - - return { removeGTBRegimeComunhao } - -} \ No newline at end of file + return { removeGTBRegimeComunhao }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoSaveHook.ts index b37b082..4081770 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_regimecomunhao/useGTBRegimeComunhaoSaveHook.ts @@ -1,33 +1,30 @@ import { useState } from "react"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInterface"; import { GTBRegimeComunhaoSaveService } from "../../_services/g_tb_regimecomunhao/GTBRegimeComunhaoSaveService"; export const useGTBRegimeComunhaoSaveHook = () => { + const { setResponse } = useResponse(); + const [gTBRegimeComunhao, setGTBRegimeComunhao] = + useState(null); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - const { setResponse } = useResponse(); - const [gTBRegimeComunhao, setGTBRegimeComunhao] = useState(null); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveGTBRegimeComunhao = async (data: GTBRegimeComunhaoInterface) => { + const response = await GTBRegimeComunhaoSaveService(data); - const saveGTBRegimeComunhao = async (data: GTBRegimeComunhaoInterface) => { + // Guardar os dados localizados + setGTBRegimeComunhao(response.data); - const response = await GTBRegimeComunhaoSaveService(data); + // Manda a resposta para o verificador de resposta + setResponse(response); - // Guardar os dados localizados - setGTBRegimeComunhao(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - // Manda a resposta para o verificador de resposta - setResponse(response); + // Retorna os dados imediatamente + return response; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os dados imediatamente - return response; - - } - - return { gTBRegimeComunhao, saveGTBRegimeComunhao } - -} \ No newline at end of file + return { gTBRegimeComunhao, saveGTBRegimeComunhao }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroReadHook.ts index c5bdb76..d084c0d 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroReadHook.ts @@ -1,27 +1,25 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroInterface"; import { GTBTipoLogradouroIndexService } from "../../_services/g_tb_tipologradouro/GTBTipoLogradouroIndexService"; export const useGTBTipoLogradouroReadHook = () => { + const { setResponse } = useResponse(); + const [gTBTipoLogradouro, setGTBTipoLogradouro] = useState< + GTBTipoLogradouroInterface[] + >([]); - const { setResponse } = useResponse(); - const [gTBTipoLogradouro, setGTBTipoLogradouro] = useState([]); + const fetchGTBTipoLogradouro = async () => { + try { + const response = await GTBTipoLogradouroIndexService(); - const fetchGTBTipoLogradouro = async () => { - - try { - const response = await GTBTipoLogradouroIndexService(); - - setGTBTipoLogradouro(response.data); - - setResponse(response); - } catch (error) { - console.log(error) - } + setGTBTipoLogradouro(response.data); + setResponse(response); + } catch (error) { + console.log(error); } + }; - return { gTBTipoLogradouro, fetchGTBTipoLogradouro } - -} \ No newline at end of file + return { gTBTipoLogradouro, fetchGTBTipoLogradouro }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroRemoveHook.ts index d2d9ea3..b1ac8dc 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroRemoveHook.ts @@ -1,19 +1,15 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroInterface"; import { GTBTipoLogradouroRemoveService } from "../../_services/g_tb_tipologradouro/GTBTipoLogradouroRemoveService"; export const useGTBTipoLogradouroRemoveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const removeGTBTipoLogradouro = async (data: GTBTipoLogradouroInterface) => { + const response = await GTBTipoLogradouroRemoveService(data); - const removeGTBTipoLogradouro = async (data: GTBTipoLogradouroInterface) => { + setResponse(response); + }; - const response = await GTBTipoLogradouroRemoveService(data); - - setResponse(response); - - } - - return { removeGTBTipoLogradouro } - -} \ No newline at end of file + return { removeGTBTipoLogradouro }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroSaveHook.ts index 25797a2..88d196f 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/g_tb_tipologradouro/useGTBTipoLogradouroSaveHook.ts @@ -1,31 +1,28 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroInterface"; import { GTBTipoLogradouroSaveService } from "../../_services/g_tb_tipologradouro/GTBTipoLogradouroSaveService"; export const useGTBTipoLogradouroSaveHook = () => { + const { setResponse } = useResponse(); + const [gTBTipoLogradouro, setGTBTipoLogradouro] = + useState(null); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - const { setResponse } = useResponse(); - const [gTBTipoLogradouro, setGTBTipoLogradouro] = useState(null); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveGTBTipoLogradouro = async (data: GTBTipoLogradouroInterface) => { + const response = await GTBTipoLogradouroSaveService(data); - const saveGTBTipoLogradouro = async (data: GTBTipoLogradouroInterface) => { + setGTBTipoLogradouro(response.data); - const response = await GTBTipoLogradouroSaveService(data); + setResponse(response); - setGTBTipoLogradouro(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - setResponse(response); + // Retorna os dados imediatamente + return response; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os dados imediatamente - return response; - - } - - return { gTBTipoLogradouro, saveGTBTipoLogradouro } - -} \ No newline at end of file + return { gTBTipoLogradouro, saveGTBTipoLogradouro }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecDeleteHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecDeleteHook.ts index 1ac288a..7b127d1 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecDeleteHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecDeleteHook.ts @@ -1,19 +1,15 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import TCensecInterface from "../../_interfaces/TCensecInterface"; import { TCensecDeleteService } from "../../_services/t_censec/TCensecDeleteService"; export const useTCensecDeleteHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const deleteTCensec = async (data: TCensecInterface) => { + const response = await TCensecDeleteService(data); - const deleteTCensec = async (data: TCensecInterface) => { + setResponse(response); + }; - const response = await TCensecDeleteService(data); - - setResponse(response); - - } - - return { deleteTCensec } - -} \ No newline at end of file + return { deleteTCensec }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecReadHook.ts index 3fd4148..782cbf6 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecReadHook.ts @@ -1,24 +1,20 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { TCensecIndexService } from "../../_services/t_censec/TCensecIndexService"; import { useState } from "react"; import TCensecInterface from "../../_interfaces/TCensecInterface"; export const useTCensecReadHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [tCensec, setTCensec] = useState([]); - const [tCensec, setTCensec] = useState([]); + const fetchTCensec = async () => { + const response = await TCensecIndexService(); - const fetchTCensec = async () => { + setTCensec(response.data); - const response = await TCensecIndexService(); + setResponse(response); + }; - setTCensec(response.data); - - setResponse(response); - - } - - return { tCensec, fetchTCensec } - -} \ No newline at end of file + return { tCensec, fetchTCensec }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecSaveHook.ts index 7efbb56..23cce89 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censec/useTCensecSaveHook.ts @@ -1,37 +1,33 @@ -'use client' +"use client"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import TCensecInterface from "../../_interfaces/TCensecInterface"; import { TCensecSaveService } from "../../_services/t_censec/TCensecSaveService"; export const useTCensecSaveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [tCensec, setTCensec] = useState(); - const [tCensec, setTCensec] = useState(); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveTCensec = async (data: TCensecInterface) => { + const response = await TCensecSaveService(data); - const saveTCensec = async (data: TCensecInterface) => { + // Armazena os dados da repsota + setTCensec(response.data); - const response = await TCensecSaveService(data); + // Define os dados da respota(toast, modal, etc) + setResponse(response); - // Armazena os dados da repsota - setTCensec(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - // Define os dados da respota(toast, modal, etc) - setResponse(response); + // Retorna os valores de forma imediata + return response.data; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os valores de forma imediata - return response.data; - - } - - return { tCensec, saveTCensec } - -} \ No newline at end of file + return { tCensec, saveTCensec }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioReadHook.ts index 017f492..f9831a3 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioReadHook.ts @@ -1,29 +1,27 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { TCensecNaturezaLitigioInterface } from "../../_interfaces/TCensecNaturezaLitigioInterface"; import { TCensecNaturezaLitigioIndexService } from "../../_services/t_censecnaturezalitigio/TCensecNaturezaLitigioIndexService"; export const useTCensecNaturezaLitigioReadHook = () => { + const { setResponse } = useResponse(); + const [tCensecNaturezaLitigio, setTCensecNaturezaLitigio] = useState< + TCensecNaturezaLitigioInterface[] + >([]); - const { setResponse } = useResponse(); - const [tCensecNaturezaLitigio, setTCensecNaturezaLitigio] = useState([]); + const fetchTCensecNaturezaLitigio = async () => { + try { + const response = await TCensecNaturezaLitigioIndexService(); - const fetchTCensecNaturezaLitigio = async () => { + setTCensecNaturezaLitigio(response.data); - try { - const response = await TCensecNaturezaLitigioIndexService(); - - setTCensecNaturezaLitigio(response.data); - - console.log(response) - - setResponse(response); - } catch (error) { - console.log(error) - } + console.log(response); + setResponse(response); + } catch (error) { + console.log(error); } + }; - return { tCensecNaturezaLitigio, fetchTCensecNaturezaLitigio } - -} \ No newline at end of file + return { tCensecNaturezaLitigio, fetchTCensecNaturezaLitigio }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioRemoveHook.ts index a9ddc22..95f7411 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioRemoveHook.ts @@ -1,24 +1,23 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { TCensecNaturezaLitigioInterface } from "../../_interfaces/TCensecNaturezaLitigioInterface"; import { useState } from "react"; import { TCensecNaturezaLitigioRemoveData } from "../../_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioRemoveData"; export const useTCensecNaturezaLitigioRemoveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [tCensecNaturezaLitigio, setTCensecNaturezaLitigio] = + useState(); - const [tCensecNaturezaLitigio, setTCensecNaturezaLitigio] = useState() + const removeTCensecNaturezaLitigio = async ( + data: TCensecNaturezaLitigioInterface, + ) => { + const response = await TCensecNaturezaLitigioRemoveData(data); - const removeTCensecNaturezaLitigio = async (data: TCensecNaturezaLitigioInterface) => { + setTCensecNaturezaLitigio(data); - const response = await TCensecNaturezaLitigioRemoveData(data); + setResponse(response); + }; - setTCensecNaturezaLitigio(data) - - setResponse(response); - - } - - return { tCensecNaturezaLitigio, removeTCensecNaturezaLitigio } - -} \ No newline at end of file + return { tCensecNaturezaLitigio, removeTCensecNaturezaLitigio }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioSaveHook.ts index 084a215..9b28f69 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_censecnaturezalitigio/useTCensecNaturezaLitigioSaveHook.ts @@ -1,31 +1,30 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { TCensecNaturezaLitigioInterface } from "../../_interfaces/TCensecNaturezaLitigioInterface"; import { TCensecNaturezaLitigioSaveService } from "../../_services/t_censecnaturezalitigio/TCensecNaturezaLitigioSaveService"; export const useTCensecNaturezaLitigioSaveHook = () => { + const { setResponse } = useResponse(); + const [TCensecNaturezaLitigio, setTCensecNaturezaLitigio] = + useState(null); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - const { setResponse } = useResponse(); - const [TCensecNaturezaLitigio, setTCensecNaturezaLitigio] = useState(null); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveTCensecNaturezaLitigio = async ( + data: TCensecNaturezaLitigioInterface, + ) => { + const response = await TCensecNaturezaLitigioSaveService(data); - const saveTCensecNaturezaLitigio = async (data: TCensecNaturezaLitigioInterface) => { + setTCensecNaturezaLitigio(response.data); - const response = await TCensecNaturezaLitigioSaveService(data); + setResponse(response); - setTCensecNaturezaLitigio(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - setResponse(response); + // Retorna os dados imediatamente + return response; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os dados imediatamente - return response; - - } - - return { TCensecNaturezaLitigio, saveTCensecNaturezaLitigio } - -} \ No newline at end of file + return { TCensecNaturezaLitigio, saveTCensecNaturezaLitigio }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaIndexHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaIndexHook.ts index 2354ec6..de36ba6 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaIndexHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaIndexHook.ts @@ -1,27 +1,23 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; import TMinutaIndex from "../../_services/t_minuta/TMinutaIndex"; export const useTMinutaIndexHook = () => { + const { setResponse } = useResponse(); + const [tMinuta, setTMinuta] = useState([]); - const { setResponse } = useResponse(); - const [tMinuta, setTMinuta] = useState([]); + const fetchTMinuta = async () => { + try { + const response = await TMinutaIndex(); - const fetchTMinuta = async () => { - - try { - const response = await TMinutaIndex(); - - setTMinuta(response.data); - - setResponse(response); - } catch (error) { - console.log(error) - } + setTMinuta(response.data); + setResponse(response); + } catch (error) { + console.log(error); } + }; - return { tMinuta, fetchTMinuta } - -} \ No newline at end of file + return { tMinuta, fetchTMinuta }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaReadHook.ts index dd8de75..cd704cd 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaReadHook.ts @@ -1,28 +1,24 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; import TMinutaIndexService from "../../_services/t_minuta/TMinutaIndexService"; export const useTMinutaReadHook = () => { + const { setResponse } = useResponse(); + const [tMinuta, setTMinuta] = useState(); - const { setResponse } = useResponse(); - const [tMinuta, setTMinuta] = useState(); + const fetchTMinuta = async (tMinuta: TMinutaInterface) => { + try { + const response = await TMinutaIndexService(tMinuta.t_minuta_id); + console.log("read hook", response.data); - const fetchTMinuta = async (tMinuta: TMinutaInterface) => { - - try { - const response = await TMinutaIndexService(tMinuta.t_minuta_id); - console.log("read hook",response.data) - - setTMinuta(response.data); - - setResponse(response); - } catch (error) { - console.log(error) - } + setTMinuta(response.data); + setResponse(response); + } catch (error) { + console.log(error); } + }; - return { tMinuta, fetchTMinuta } - -} \ No newline at end of file + return { tMinuta, fetchTMinuta }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaRemoveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaRemoveHook.ts index 240a2a4..98ba419 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaRemoveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaRemoveHook.ts @@ -1,19 +1,15 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; import TMinutaRemoveService from "../../_services/t_minuta/TMinutaRemoveService"; export const useTMinutaRemoveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const removeTMinuta = async (data: TMinutaInterface) => { + const response = await TMinutaRemoveService(data); - const removeTMinuta = async (data: TMinutaInterface) => { + setResponse(response); + }; - const response = await TMinutaRemoveService(data); - - setResponse(response); - - } - - return { removeTMinuta } - -} \ No newline at end of file + return { removeTMinuta }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaSaveHook.ts index d1a817a..1645711 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_minuta/useTMinutaSaveHook.ts @@ -1,31 +1,27 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; import TMinutaSaveService from "../../_services/t_minuta/TMinutaSaveService"; export const useTMinutaSaveHook = () => { + const { setResponse } = useResponse(); + const [tMinuta, setTMinuta] = useState(); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - const { setResponse } = useResponse(); - const [tMinuta, setTMinuta] = useState(); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveTMinuta = async (data: any) => { + const response = await TMinutaSaveService(data); - const saveTMinuta = async (data: any) => { + setTMinuta(response.data); - const response = await TMinutaSaveService(data); + setResponse(response); - setTMinuta(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - setResponse(response); + // Retorna os dados imediatamente + return response; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os dados imediatamente - return response; - - } - - return { tMinuta, saveTMinuta } - -} \ No newline at end of file + return { tMinuta, saveTMinuta }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoDeleteHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoDeleteHook.ts index c3407ee..a2a5cc8 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoDeleteHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoDeleteHook.ts @@ -1,24 +1,23 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import TTBAndamentoServicoInteface from "../../_interfaces/TTBAndamentoServicoInterface"; import TTBAndamentoServicoRemoveData from "../../_data/TTBAndamentoServico/TTBAndamentoServicoRemoveData"; export const useTTBAndamentoServicoDeleteHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [tTBAndamentoServico, setTTBAndamentoServico] = + useState(); - const [tTBAndamentoServico, setTTBAndamentoServico] = useState(); + const deleteTTBAndamentoServico = async ( + data: TTBAndamentoServicoInteface, + ) => { + const response = await TTBAndamentoServicoRemoveData(data); - const deleteTTBAndamentoServico = async (data: TTBAndamentoServicoInteface) => { + setTTBAndamentoServico(data); - const response = await TTBAndamentoServicoRemoveData(data); + setResponse(response); + }; - setTTBAndamentoServico(data); - - setResponse(response); - - } - - return { tTBAndamentoServico, deleteTTBAndamentoServico } - -} \ No newline at end of file + return { tTBAndamentoServico, deleteTTBAndamentoServico }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoReadHook.ts index bc0d99c..3d8bcb8 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoReadHook.ts @@ -1,36 +1,38 @@ -'use client' +"use client"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import TTBAndamentoServicoInteface from "../../_interfaces/TTBAndamentoServicoInterface"; import TTBAndamentoServicoIndexData from "../../_data/TTBAndamentoServico/TTBAndamentoServicoIndexData"; export const useTTBAndamentoServicoReadHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [tTBAndamentosServicos, setTTBAndamentosServicos] = useState< + TTBAndamentoServicoInteface[] | null + >(null); - const [tTBAndamentosServicos, setTTBAndamentosServicos] = useState(null); + const fetchTTBAndamentoServico = async () => { + const response = await TTBAndamentoServicoIndexData(); - const fetchTTBAndamentoServico = async () => { + console.log(response); - const response = await TTBAndamentoServicoIndexData(); + // Armazena os dados consultados + setTTBAndamentosServicos(response.data); - console.log(response) + // Define os dados do componente de resposta (toast, modal, etc) + setResponse(response); + }; - // Armazena os dados consultados - setTTBAndamentosServicos(response.data); + function addTTBAndamentoServico( + tTTBAndamentoServico: TTBAndamentoServicoInteface, + ) { + setTTBAndamentosServicos((prev) => [...(prev || []), tTTBAndamentoServico]); + } - // Define os dados do componente de resposta (toast, modal, etc) - setResponse(response); - - } - - function addTTBAndamentoServico(tTTBAndamentoServico: TTBAndamentoServicoInteface) { - - setTTBAndamentosServicos(prev => [...(prev || []), tTTBAndamentoServico]); - - } - - return { tTBAndamentosServicos, fetchTTBAndamentoServico, addTTBAndamentoServico } - -} \ No newline at end of file + return { + tTBAndamentosServicos, + fetchTTBAndamentoServico, + addTTBAndamentoServico, + }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoSaveHook.ts index 863b8d1..95ecafb 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_andamentoservico/useTTBAndamentoServicoSaveHook.ts @@ -1,37 +1,34 @@ -'use client' +"use client"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; import TTBAndamentoServicoInteface from "../../_interfaces/TTBAndamentoServicoInterface"; import { TTBAndamentoServicoSaveData } from "../../_data/TTBAndamentoServico/TTBAndamentoServicoSaveData"; export const useTTBAndamentoServicoSaveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [tTBAndamentoServico, setTTBAndamentoServico] = + useState(); - const [tTBAndamentoServico, setTTBAndamentoServico] = useState(); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveTTBAndamentoServico = async (data: TTBAndamentoServicoInteface) => { + const response = await TTBAndamentoServicoSaveData(data); - const saveTTBAndamentoServico = async (data: TTBAndamentoServicoInteface) => { + // Armazena os dados da repsota + setTTBAndamentoServico(response.data); - const response = await TTBAndamentoServicoSaveData(data); + // Define os dados da respota(toast, modal, etc) + setResponse(response); - // Armazena os dados da repsota - setTTBAndamentoServico(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - // Define os dados da respota(toast, modal, etc) - setResponse(response); + // Retorna os valores de forma imediata + return response.data; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os valores de forma imediata - return response.data; - - } - - return { tTBAndamentoServico, saveTTBAndamentoServico } - -} \ No newline at end of file + return { tTBAndamentoServico, saveTTBAndamentoServico }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoDeleteHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoDeleteHook.ts index eb926e7..c76a136 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoDeleteHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoDeleteHook.ts @@ -1,19 +1,17 @@ -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import TTBReconhecimentoTipoInterface from "../../_interfaces/TTBReconhecimentoTipoInterface"; import TTBReconhecimentoTipoDeleteData from "../../_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoDeleteData"; export const useTTBReconhecimentoTipoDeleteHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const deleteTTBReconhecimentoTipo = async ( + data: TTBReconhecimentoTipoInterface, + ) => { + const response = await TTBReconhecimentoTipoDeleteData(data); - const deleteTTBReconhecimentoTipo = async (data: TTBReconhecimentoTipoInterface) => { + setResponse(response); + }; - const response = await TTBReconhecimentoTipoDeleteData(data); - - setResponse(response); - - } - - return { deleteTTBReconhecimentoTipo } - -} \ No newline at end of file + return { deleteTTBReconhecimentoTipo }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoReadHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoReadHook.ts index 5817953..c506055 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoReadHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoReadHook.ts @@ -1,26 +1,24 @@ -'use client' +"use client"; -import ITTTBReconhecimentoTipo from '../../_interfaces/TTBReconhecimentoTipoInterface' -import { useResponse } from "@/app/_response/ResponseContext" +import ITTTBReconhecimentoTipo from "../../_interfaces/TTBReconhecimentoTipoInterface"; +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; -import TTBReconhecimentoTipoIndexData from '../../_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoIndexData'; +import TTBReconhecimentoTipoIndexData from "../../_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoIndexData"; export const useTTBReconhecimentoTipoReadHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [tTBReconhecimentosTipos, setReconhecimenntosTipos] = useState< + ITTTBReconhecimentoTipo[] + >([]); - const [tTBReconhecimentosTipos, setReconhecimenntosTipos] = useState([]); + const fetchTTBReconhecimentosTipos = async () => { + const response = await TTBReconhecimentoTipoIndexData(); - const fetchTTBReconhecimentosTipos = async () => { + setReconhecimenntosTipos(response.data); - const response = await TTBReconhecimentoTipoIndexData(); + setResponse(response); + }; - setReconhecimenntosTipos(response.data); - - setResponse(response); - - } - - return { tTBReconhecimentosTipos, fetchTTBReconhecimentosTipos } - -} \ No newline at end of file + return { tTBReconhecimentosTipos, fetchTTBReconhecimentosTipos }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoSaveHook.ts b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoSaveHook.ts index 88a88df..8ed97cd 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoSaveHook.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_hooks/t_tb_reconhecimentotipo/useTTBReconhecimentoTipoSaveHook.ts @@ -1,35 +1,34 @@ -'use client' +"use client"; -import { useResponse } from "@/app/_response/ResponseContext" +import { useResponse } from "@/app/_response/ResponseContext"; import { useState } from "react"; -import ITTTBReconhecimentoTipo from '../../_interfaces/TTBReconhecimentoTipoInterface' +import ITTTBReconhecimentoTipo from "../../_interfaces/TTBReconhecimentoTipoInterface"; import TTBReconhecimentoTipoSaveData from "../../_data/TTBReconhecimentoTipo/TTBReconhecimentoTipoSaveData"; export const useTTBReconhecimentoTipoSaveHook = () => { + const { setResponse } = useResponse(); - const { setResponse } = useResponse(); + const [tTBReconhecimentoTipo, setTTBReconhcimentoTipo] = + useState(); - const [tTBReconhecimentoTipo, setTTBReconhcimentoTipo] = useState(); + // controla se o formulário está aberto ou fechado + const [isOpen, setIsOpen] = useState(false); - // controla se o formulário está aberto ou fechado - const [isOpen, setIsOpen] = useState(false); + const saveTTBReconhecimentoTipo = async ( + reconhecimentoTipo: ITTTBReconhecimentoTipo, + ) => { + const response = await TTBReconhecimentoTipoSaveData(reconhecimentoTipo); - const saveTTBReconhecimentoTipo = async (reconhecimentoTipo: ITTTBReconhecimentoTipo) => { + saveTTBReconhecimentoTipo(response.data); - const response = await TTBReconhecimentoTipoSaveData(reconhecimentoTipo); + setResponse(response); - saveTTBReconhecimentoTipo(response.data); + // Fecha o formulário automaticamente após salvar + setIsOpen(false); - setResponse(response); + // Retorna os valores de forma imediata + return response.data; + }; - // Fecha o formulário automaticamente após salvar - setIsOpen(false); - - // Retorna os valores de forma imediata - return response.data; - - } - - return { tTBReconhecimentoTipo, saveTTBReconhecimentoTipo } - -} \ No newline at end of file + return { tTBReconhecimentoTipo, saveTTBReconhecimentoTipo }; +}; diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GCidadeInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GCidadeInterface.ts index 537f03a..3c5ebbe 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GCidadeInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GCidadeInterface.ts @@ -1,9 +1,7 @@ export default interface GCidadeInterface { - - cidade_id?: number, - uf: string, - cidade_nome: string, - codigo_ibge?: string, - codigo_gyn?: string - + cidade_id?: number; + uf: string; + cidade_nome: string; + codigo_ibge?: string; + codigo_gyn?: string; } diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GMedidaTipoInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GMedidaTipoInterface.ts index f351f54..70f63f5 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GMedidaTipoInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GMedidaTipoInterface.ts @@ -1,5 +1,5 @@ export interface GMedidaTipoInterface { - medida_tipo_id: number; - sigla: string; - descricao: string; -} \ No newline at end of file + medida_tipo_id: number; + sigla: string; + descricao: string; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBBairroInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBBairroInterface.ts index 10f70c9..e0f87bf 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBBairroInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBBairroInterface.ts @@ -5,4 +5,4 @@ export interface GTBBairroInterface { tb_bairro_id: number; descricao: string; situacao: SituacoesEnum; -} \ No newline at end of file +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBEstadoCivilInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBEstadoCivilInterface.ts index 12f1cf5..e16a946 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBEstadoCivilInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBEstadoCivilInterface.ts @@ -1,6 +1,6 @@ export interface GTBEstadoCivilInterface { - tb_estadocivil_id: number; - sistema_id: number; - descricao: string; - situacao: 'A' | 'I'; -} \ No newline at end of file + tb_estadocivil_id: number; + sistema_id: number; + descricao: string; + situacao: "A" | "I"; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBProfissaoInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBProfissaoInterface.ts index 0d86edf..b15de72 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBProfissaoInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBProfissaoInterface.ts @@ -1,9 +1,6 @@ - export default interface GTBProfissaoInterface { - - tb_profissao_id?: number, - descricao: string, - situacao: string, - cod_cbo?: string - -} \ No newline at end of file + tb_profissao_id?: number; + descricao: string; + situacao: string; + cod_cbo?: string; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBRegimeBensInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBRegimeBensInterface.ts index 767bc50..0e94093 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBRegimeBensInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBRegimeBensInterface.ts @@ -1,6 +1,5 @@ - export default interface GTBRegimeBensInterface { - tb_regimebens_id?: number, - descricao: string, - situacao: string, -} \ No newline at end of file + tb_regimebens_id?: number; + descricao: string; + situacao: string; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBRegimeComunhaoInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBRegimeComunhaoInterface.ts index 5d4a9be..dad8681 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBRegimeComunhaoInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBRegimeComunhaoInterface.ts @@ -1,7 +1,7 @@ export default interface GTBRegimeComunhaoInterface { - tb_regimecomunhao_id?: number, - tb_regimebens_id: number, - descricao: string, - texto: string, - situacao: string, -} \ No newline at end of file + tb_regimecomunhao_id?: number; + tb_regimebens_id: number; + descricao: string; + texto: string; + situacao: string; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBTipoLogradouroInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBTipoLogradouroInterface.ts index c7c3a80..9f5fe7c 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBTipoLogradouroInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/GTBTipoLogradouroInterface.ts @@ -3,6 +3,6 @@ export interface GTBTipoLogradouroInterface { tb_tipologradouro_id: number; situacao_id: number | null; descricao: string; - situacao: 'A' | 'I'; + situacao: "A" | "I"; onr_tipo_logradouro_id: number; -} \ No newline at end of file +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TCensecInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TCensecInterface.ts index 2fbf58a..3a6b196 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TCensecInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TCensecInterface.ts @@ -1,6 +1,5 @@ - export default interface TCensecInterface { - censec_id?: number - descricao: string - situacao: string -} \ No newline at end of file + censec_id?: number; + descricao: string; + situacao: string; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TCensecNaturezaLitigioInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TCensecNaturezaLitigioInterface.ts index 5190b85..3dab177 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TCensecNaturezaLitigioInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TCensecNaturezaLitigioInterface.ts @@ -1,5 +1,5 @@ export interface TCensecNaturezaLitigioInterface { censec_naturezalitigio_id?: number; descricao: string; - situacao: 'A' | 'I'; -} \ No newline at end of file + situacao: "A" | "I"; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TMinutaInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TMinutaInterface.ts index 8c3ec07..cdac825 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TMinutaInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TMinutaInterface.ts @@ -2,6 +2,6 @@ export interface TMinutaInterface { t_minuta_id: number; natureza_id: number; descricao: string; - situacao: 'A' | 'I'; + situacao: "A" | "I"; texto: string; } diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TTBAndamentoServicoInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TTBAndamentoServicoInterface.ts index 26ad9e2..83a09cb 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TTBAndamentoServicoInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TTBAndamentoServicoInterface.ts @@ -1,16 +1,16 @@ export default interface TTBAndamentoServicoInteface { - tb_andamentoservico_id?: number, - descricao: string, - situacao: string, - tipo: tipoEnum, - usa_email: string + tb_andamentoservico_id?: number; + descricao: string; + situacao: string; + tipo: tipoEnum; + usa_email: string; } export enum tipoEnum { - CANCELADO = "C", - ESTORNADO = "E", - PROTOCOLADO = "PT", - PEDIDO = "PD", - NAO_CONSTA = "NC", - OUTROS = "O", -} \ No newline at end of file + CANCELADO = "C", + ESTORNADO = "E", + PROTOCOLADO = "PT", + PEDIDO = "PD", + NAO_CONSTA = "NC", + OUTROS = "O", +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TTBReconhecimentoTipoInterface.ts b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TTBReconhecimentoTipoInterface.ts index 46daae9..419e0bb 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_interfaces/TTBReconhecimentoTipoInterface.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_interfaces/TTBReconhecimentoTipoInterface.ts @@ -1,12 +1,10 @@ export default interface TTBReconhecimentoTipoInterface { - tb_reconhecimentotipo_id?: number, - descricao: string, - situacao: situacaoEnum, + tb_reconhecimentotipo_id?: number; + descricao: string; + situacao: situacaoEnum; } export enum situacaoEnum { - - ATIVO = 'A', - INATIVO = 'I', - -} \ No newline at end of file + ATIVO = "A", + INATIVO = "I", +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/GCidadeSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/GCidadeSchema.ts index 3aaa189..edaadfe 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/GCidadeSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/GCidadeSchema.ts @@ -1,11 +1,12 @@ import z from "zod"; export const GCidadeSchema = z.object({ - - cidade_id: z.number().optional(), - uf: z.string().min(1, "A UF é obrigatória").max(2, "A UF deve ter no máximo 2 caracteres"), - cidade_nome: z.string().min(1, "O nome da cidade é obrigatório"), - codigo_ibge: z.string().optional(), - codigo_gyn: z.string().optional() - -}) \ No newline at end of file + cidade_id: z.number().optional(), + uf: z + .string() + .min(1, "A UF é obrigatória") + .max(2, "A UF deve ter no máximo 2 caracteres"), + cidade_nome: z.string().min(1, "O nome da cidade é obrigatório"), + codigo_ibge: z.string().optional(), + codigo_gyn: z.string().optional(), +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/GMedidaTipoSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/GMedidaTipoSchema.ts index 12bc46e..0357d66 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/GMedidaTipoSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/GMedidaTipoSchema.ts @@ -1,7 +1,7 @@ -import { z } from 'zod'; +import { z } from "zod"; export const GMedidaTipoSchema = z.object({ medida_tipo_id: z.number(), sigla: z.string(), descricao: z.string(), -}); \ No newline at end of file +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBBairroSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBBairroSchema.ts index c4a67d5..bee1769 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBBairroSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBBairroSchema.ts @@ -1,9 +1,9 @@ -import { SituacoesEnum } from '@/enums/SituacoesEnum'; -import { z } from 'zod'; +import { SituacoesEnum } from "@/enums/SituacoesEnum"; +import { z } from "zod"; export const GTBBairroSchema = z.object({ tb_bairro_id: z.number(), sistema_id: z.number().nullable(), - descricao: z.string().min(1, 'O campo deve ser preenchido'), + descricao: z.string().min(1, "O campo deve ser preenchido"), situacao: z.enum(SituacoesEnum), -}); \ No newline at end of file +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBEstadoCivilSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBEstadoCivilSchema.ts index 88cb617..536937b 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBEstadoCivilSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBEstadoCivilSchema.ts @@ -1,8 +1,8 @@ -import { z } from 'zod'; +import { z } from "zod"; export const GTBEstadoCivilSchema = z.object({ tb_estadocivil_id: z.number(), sistema_id: z.number(), descricao: z.string(), - situacao: z.enum(['A', 'I']), -}); \ No newline at end of file + situacao: z.enum(["A", "I"]), +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBProfissaoSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBProfissaoSchema.ts index 9d11ff2..cec9d69 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBProfissaoSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBProfissaoSchema.ts @@ -1,8 +1,8 @@ import { z } from "zod"; export const GTBProfissaoSchema = z.object({ - tb_profissao_id: z.number().optional(), - descricao: z.string(), - situacao: z.string(), - cod_cbo: z.string().optional() -}); \ No newline at end of file + tb_profissao_id: z.number().optional(), + descricao: z.string(), + situacao: z.string(), + cod_cbo: z.string().optional(), +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBRegimeBensSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBRegimeBensSchema.ts index 49637f0..6b4f70b 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBRegimeBensSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBRegimeBensSchema.ts @@ -1,7 +1,7 @@ import z from "zod"; export const GTBRegimeBensSchema = z.object({ - tb_regimebens_id: z.number().optional(), - descricao: z.string(), - situacao: z.string(), -}); \ No newline at end of file + tb_regimebens_id: z.number().optional(), + descricao: z.string(), + situacao: z.string(), +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBRegimeComunhaoSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBRegimeComunhaoSchema.ts index e47c098..55338c8 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBRegimeComunhaoSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBRegimeComunhaoSchema.ts @@ -1,9 +1,9 @@ import z from "zod"; export const GTBRegimeComunhaoSchema = z.object({ - tb_regimecomunhao_id: z.number().optional(), - tb_regimebens_id: z.number(), - descricao: z.string(), - texto: z.string(), - situacao: z.string(), -}); \ No newline at end of file + tb_regimecomunhao_id: z.number().optional(), + tb_regimebens_id: z.number(), + descricao: z.string(), + texto: z.string(), + situacao: z.string(), +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBTipoLogradouroSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBTipoLogradouroSchema.ts index 92204bd..53fbcd2 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBTipoLogradouroSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/GTBTipoLogradouroSchema.ts @@ -1,10 +1,10 @@ -import { z } from 'zod'; +import { z } from "zod"; export const GTBTipoLogradouroSchema = z.object({ sistema_id: z.number().int().nullable(), tb_tipologradouro_id: z.number().int(), situacao_id: z.number().nullable(), descricao: z.string(), - situacao: z.enum(['A', 'I']), + situacao: z.enum(["A", "I"]), onr_tipo_logradouro_id: z.number(), -}); \ No newline at end of file +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/TCensecNaturezaLitigioSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/TCensecNaturezaLitigioSchema.ts index e6bd8b3..d405d28 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/TCensecNaturezaLitigioSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/TCensecNaturezaLitigioSchema.ts @@ -1,7 +1,7 @@ -import { z } from 'zod'; +import { z } from "zod"; export const TCensecNaturezaLitigioSchema = z.object({ censec_naturezalitigio_id: z.number().optional(), - descricao: z.string().min(1, 'O campo deve ser preenchido'), - situacao: z.enum(['A', 'I']), -}); \ No newline at end of file + descricao: z.string().min(1, "O campo deve ser preenchido"), + situacao: z.enum(["A", "I"]), +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/TCensecSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/TCensecSchema.ts index a9d0aa4..6181d9d 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/TCensecSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/TCensecSchema.ts @@ -1,7 +1,13 @@ import z from "zod"; export const TCensecSchema = z.object({ - censec_id: z.number().optional(), - descricao: z.string().min(1, "O campo deve ser preenchido").max(60, "O campo excedeu o limite de 60 caracteres"), - situacao: z.string().min(1, "O campo deve ser preenchido").max(10, "O campo excedeu o limite de 10 caracteres"), -}); \ No newline at end of file + censec_id: z.number().optional(), + descricao: z + .string() + .min(1, "O campo deve ser preenchido") + .max(60, "O campo excedeu o limite de 60 caracteres"), + situacao: z + .string() + .min(1, "O campo deve ser preenchido") + .max(10, "O campo excedeu o limite de 10 caracteres"), +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/TTBAndamentoServicoSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/TTBAndamentoServicoSchema.ts index 4677fdf..36f3c16 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/TTBAndamentoServicoSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/TTBAndamentoServicoSchema.ts @@ -1,12 +1,10 @@ -import { z } from 'zod'; -import { tipoEnum } from '../_interfaces/TTBAndamentoServicoInterface'; +import { z } from "zod"; +import { tipoEnum } from "../_interfaces/TTBAndamentoServicoInterface"; export const TTBAndamentoServicoSchema = z.object({ - - tb_andamentoservico_id: z.number().optional(), - descricao: z.string().min(1, "Descrição Obrigatória"), - situacao: z.string().min(1, "Situação Obrigatória"), - tipo: z.nativeEnum(tipoEnum, { message: "Tipo inválido" }), - usa_email: z.string().min(1, "Email Obrigatória"), - -}); \ No newline at end of file + tb_andamentoservico_id: z.number().optional(), + descricao: z.string().min(1, "Descrição Obrigatória"), + situacao: z.string().min(1, "Situação Obrigatória"), + tipo: z.nativeEnum(tipoEnum, { message: "Tipo inválido" }), + usa_email: z.string().min(1, "Email Obrigatória"), +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_schemas/TTBReconhecimentoTipoSchema.ts b/src/app/(protected)/(cadastros)/cadastros/_schemas/TTBReconhecimentoTipoSchema.ts index f9c8f27..cc9a6f3 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_schemas/TTBReconhecimentoTipoSchema.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_schemas/TTBReconhecimentoTipoSchema.ts @@ -1,8 +1,8 @@ -import { z } from 'zod'; -import { situacaoEnum } from '../_interfaces/TTBReconhecimentoTipoInterface'; +import { z } from "zod"; +import { situacaoEnum } from "../_interfaces/TTBReconhecimentoTipoInterface"; export const TTBReconhecimentoTipoSchema = z.object({ - tb_reconhecimentotipo_id: z.number().optional(), - descricao: z.string().min(1, "Campo descrição deve ser preenchido"), - situacao: z.nativeEnum(situacaoEnum, { message: "Tipo inválido" }), -}); \ No newline at end of file + tb_reconhecimentotipo_id: z.number().optional(), + descricao: z.string().min(1, "Campo descrição deve ser preenchido"), + situacao: z.nativeEnum(situacaoEnum, { message: "Tipo inválido" }), +}); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeIndexService.ts index c42a22f..4b800fe 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeIndexService.ts @@ -1,16 +1,18 @@ -import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; +import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; // Função que envolve qualquer ação assíncrona para capturar e tratar erros do cliente -import GCidadeIndexData from "../../_data/GCidade/GCidadeIndexData"; +import GCidadeIndexData from "../../_data/GCidade/GCidadeIndexData"; // Função que retorna os dados da lista de cidades (chamada à API ou mock) // Função assíncrona que executa a chamada para buscar os dados de cidades async function executeGCidadeIndexService() { - // Chama a função que retorna os dados da cidade - const response = await GCidadeIndexData(); - - // Retorna a resposta para o chamador - return response; + // Chama a função que retorna os dados da cidade + const response = await GCidadeIndexData(); + + // Retorna a resposta para o chamador + return response; } // Exporta o serviço de índice de cidades já encapsulado com tratamento de erros -export const GCidadeIndexService = withClientErrorHandler(executeGCidadeIndexService); +export const GCidadeIndexService = withClientErrorHandler( + executeGCidadeIndexService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeRemoveService.ts index 3a48ead..1a8451a 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeRemoveService.ts @@ -1,18 +1,20 @@ -import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; +import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; // Função que envolve qualquer ação assíncrona para capturar e tratar erros do cliente -import GCidadeRemoveData from "../../_data/GCidade/GCidadeRemoveData"; +import GCidadeRemoveData from "../../_data/GCidade/GCidadeRemoveData"; // Função que remove os dados da cidade via API -import GCidadeInterface from "../../_interfaces/GCidadeInterface"; +import GCidadeInterface from "../../_interfaces/GCidadeInterface"; // Interface tipada da cidade // Função assíncrona que executa a remoção de uma cidade async function executeGCidadeRemoveService(data: GCidadeInterface) { - // Chama a função que remove os dados da cidade - const response = await GCidadeRemoveData(data); + // Chama a função que remove os dados da cidade + const response = await GCidadeRemoveData(data); - // Retorna a resposta da remoção - return response; + // Retorna a resposta da remoção + return response; } // Exporta o serviço de remoção de cidade já encapsulado com tratamento de erros -export const GCidadeRemoveService = withClientErrorHandler(executeGCidadeRemoveService); +export const GCidadeRemoveService = withClientErrorHandler( + executeGCidadeRemoveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeSaveService.ts index d764292..faadca3 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_cidade/GCidadeSaveService.ts @@ -1,18 +1,20 @@ -import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; +import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; // Função que envolve qualquer ação assíncrona para capturar e tratar erros do cliente -import GCidadeSaveData from "../../_data/GCidade/GCidadeSaveData"; +import GCidadeSaveData from "../../_data/GCidade/GCidadeSaveData"; // Função que salva os dados da cidade via API (ou mock) -import GCidadeInterface from "../../_interfaces/GCidadeInterface"; +import GCidadeInterface from "../../_interfaces/GCidadeInterface"; // Interface tipada da cidade // Função assíncrona que executa o salvamento de uma cidade async function executeGCidadeSaveService(data: GCidadeInterface) { - // Chama a função que salva os dados da cidade - const response = await GCidadeSaveData(data); + // Chama a função que salva os dados da cidade + const response = await GCidadeSaveData(data); - // Retorna a resposta do salvamento - return response; + // Retorna a resposta do salvamento + return response; } // Exporta o serviço de salvamento de cidade já encapsulado com tratamento de erros -export const GCidadeSaveService = withClientErrorHandler(executeGCidadeSaveService); +export const GCidadeSaveService = withClientErrorHandler( + executeGCidadeSaveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoIndexService.ts index 7599d71..5712fc9 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoIndexService.ts @@ -2,8 +2,10 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { GMedidaTipoIndexData } from "../../_data/GMedidoTipo/GMedidaTipoIndexData"; async function executeGMedidaTipoIndexService() { - const response = await GMedidaTipoIndexData(); - return response; + const response = await GMedidaTipoIndexData(); + return response; } -export const GMedidaTipoIndexService = withClientErrorHandler(executeGMedidaTipoIndexService) \ No newline at end of file +export const GMedidaTipoIndexService = withClientErrorHandler( + executeGMedidaTipoIndexService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoRemoveService.ts index 273d244..1c55ada 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoRemoveService.ts @@ -3,11 +3,11 @@ import { GMedidaTipoRemoveData } from "../../_data/GMedidoTipo/GMedidaTipoRemove import { GMedidaTipoInterface } from "../../_interfaces/GMedidaTipoInterface"; async function executeGMedidaTipoRemoveService(data: GMedidaTipoInterface) { + const response = await GMedidaTipoRemoveData(data); - const response = await GMedidaTipoRemoveData(data); - - return response; - + return response; } -export const GMedidaTipoRemoveService = withClientErrorHandler(executeGMedidaTipoRemoveService) \ No newline at end of file +export const GMedidaTipoRemoveService = withClientErrorHandler( + executeGMedidaTipoRemoveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoSaveService.ts index f92c548..7dce80a 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_medidatipo/GMedidaTipoSaveService.ts @@ -3,11 +3,11 @@ import { GMedidaTipoSaveData } from "../../_data/GMedidoTipo/GMedidaTipoSaveData import { GMedidaTipoInterface } from "../../_interfaces/GMedidaTipoInterface"; async function executeGMedidaTipoSaveService(data: GMedidaTipoInterface) { + const response = await GMedidaTipoSaveData(data); - const response = await GMedidaTipoSaveData(data); - - return response; - + return response; } -export const GMedidaTipoSaveService = withClientErrorHandler(executeGMedidaTipoSaveService) \ No newline at end of file +export const GMedidaTipoSaveService = withClientErrorHandler( + executeGMedidaTipoSaveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroIndexService.ts index 1059500..733fa90 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroIndexService.ts @@ -2,10 +2,10 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { GTBBairroIndexData } from "../../_data/GTBBairro/GTBBairroIndexData"; async function executeGTBBairroIndexService() { - - const response = await GTBBairroIndexData(); - return response; - + const response = await GTBBairroIndexData(); + return response; } -export const GTBBairroIndexService = withClientErrorHandler(executeGTBBairroIndexService) \ No newline at end of file +export const GTBBairroIndexService = withClientErrorHandler( + executeGTBBairroIndexService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroRemoveService.ts index 4c39577..1e83dd1 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroRemoveService.ts @@ -3,11 +3,11 @@ import { GTBBairroRemoveData } from "../../_data/GTBBairro/GTBBairroRemoveData"; import { GTBBairroInterface } from "../../_interfaces/GTBBairroInterface"; async function executeGTBBairroRemoveService(data: GTBBairroInterface) { + const response = await GTBBairroRemoveData(data); - const response = await GTBBairroRemoveData(data); - - return response; - + return response; } -export const GTBBairroRemoveService = withClientErrorHandler(executeGTBBairroRemoveService) \ No newline at end of file +export const GTBBairroRemoveService = withClientErrorHandler( + executeGTBBairroRemoveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroSaveService.ts index e89d43c..b825df0 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_bairro/GTBBairroSaveService.ts @@ -3,11 +3,11 @@ import { GTBBairroSaveData } from "../../_data/GTBBairro/GTBBairroSaveData"; import { GTBBairroInterface } from "../../_interfaces/GTBBairroInterface"; async function executeGTBBairroSaveService(data: GTBBairroInterface) { + const response = await GTBBairroSaveData(data); - const response = await GTBBairroSaveData(data); - - return response; - + return response; } -export const GTBBairroSaveService = withClientErrorHandler(executeGTBBairroSaveService) \ No newline at end of file +export const GTBBairroSaveService = withClientErrorHandler( + executeGTBBairroSaveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilIndexService.ts index 1ef7dc3..415cfa5 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilIndexService.ts @@ -2,13 +2,14 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { GTBEstadoCivilIndexData } from "../../_data/GTBEstadoCivil/GTBEstadoCivilIndexData"; async function executeGTBEstadoCivilIndexService() { - - try { - const response = await GTBEstadoCivilIndexData(); - return response; - } catch (error) { - return error - } + try { + const response = await GTBEstadoCivilIndexData(); + return response; + } catch (error) { + return error; + } } -export const GTBEstadoCivilIndexService = withClientErrorHandler(executeGTBEstadoCivilIndexService) \ No newline at end of file +export const GTBEstadoCivilIndexService = withClientErrorHandler( + executeGTBEstadoCivilIndexService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilRemoveService.ts index afe7323..a7f8f94 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilRemoveService.ts @@ -2,12 +2,14 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { GTBEstadoCivilSaveData } from "../../_data/GTBEstadoCivil/GTBEstadoCivilSaveData"; import { GTBEstadoCivilInterface } from "../../_interfaces/GTBEstadoCivilInterface"; -async function executeGTBEstadoCivilRemoveService(data: GTBEstadoCivilInterface) { - - const response = await GTBEstadoCivilSaveData(data); - - return response; +async function executeGTBEstadoCivilRemoveService( + data: GTBEstadoCivilInterface, +) { + const response = await GTBEstadoCivilSaveData(data); + return response; } -export const GTBEstadoCivilRemoveService = withClientErrorHandler(executeGTBEstadoCivilRemoveService) \ No newline at end of file +export const GTBEstadoCivilRemoveService = withClientErrorHandler( + executeGTBEstadoCivilRemoveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilSaveService.ts index e9646dc..12608f8 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_estadocivil/GTBEstadoCivilSaveService.ts @@ -3,11 +3,11 @@ import { GTBEstadoCivilSaveData } from "../../_data/GTBEstadoCivil/GTBEstadoCivi import { GTBEstadoCivilInterface } from "../../_interfaces/GTBEstadoCivilInterface"; async function executeGTBEstadoCivilSaveService(data: GTBEstadoCivilInterface) { + const response = await GTBEstadoCivilSaveData(data); - const response = await GTBEstadoCivilSaveData(data); - - return response; - + return response; } -export const GTBEstadoCivilSaveService = withClientErrorHandler(executeGTBEstadoCivilSaveService) \ No newline at end of file +export const GTBEstadoCivilSaveService = withClientErrorHandler( + executeGTBEstadoCivilSaveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoIndexService.ts index 8170fd7..13fa80e 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoIndexService.ts @@ -1,9 +1,7 @@ import GTBProfissoesIndexData from "../../_data/GTBProfissao/GTBProfissaoIndexData"; export default async function GTBProfissaoIndexService() { + const response = await GTBProfissoesIndexData(); - const response = await GTBProfissoesIndexData(); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoRemoveService.ts index 8e2ebb0..70d134e 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoRemoveService.ts @@ -1,10 +1,10 @@ import GTBProfissaoRemoveData from "../../_data/GTBProfissao/GTBProfissaoRemoveData"; import GTBProfissaoInterface from "../../_interfaces/GTBProfissaoInterface"; -export default async function GTBProfissaoRemoveService(data: GTBProfissaoInterface) { +export default async function GTBProfissaoRemoveService( + data: GTBProfissaoInterface, +) { + const response = await GTBProfissaoRemoveData(data); - const response = await GTBProfissaoRemoveData(data); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoSaveService.ts index 4d9e9b9..3c1ce25 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_profissao/GTBProfissaoSaveService.ts @@ -1,12 +1,12 @@ import GTBProfissaoSaveData from "../../_data/GTBProfissao/GTBProfissaoSaveData"; import GTBProfissaoInterface from "../../_interfaces/GTBProfissaoInterface"; -export default async function GTProfissaoSaveService(data: GTBProfissaoInterface) { +export default async function GTProfissaoSaveService( + data: GTBProfissaoInterface, +) { + const response = await GTBProfissaoSaveData(data); - const response = await GTBProfissaoSaveData(data); + console.log("GTBRegimeComunhaoSaveData", response); - console.log('GTBRegimeComunhaoSaveData', response) - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensIndexService.ts index b57f1f1..a281e78 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensIndexService.ts @@ -1,9 +1,7 @@ import GTBRegimeBensIndexData from "../../_data/GTBRegimeBens/GTBRegimeBensIndexData"; export default async function GTBRegimeBensIndexService() { + const response = await GTBRegimeBensIndexData(); - const response = await GTBRegimeBensIndexData(); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensRemoveService.ts index b194991..a65056f 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensRemoveService.ts @@ -1,10 +1,10 @@ import GTBRegimeBensRemoveData from "../../_data/GTBRegimeBens/GTBRegimeBensRemoveData"; import GTBRegimeBensInterface from "../../_interfaces/GTBRegimeBensInterface"; -export default async function GTBRegimeBensRemoveService(data: GTBRegimeBensInterface) { +export default async function GTBRegimeBensRemoveService( + data: GTBRegimeBensInterface, +) { + const response = await GTBRegimeBensRemoveData(data); - const response = await GTBRegimeBensRemoveData(data); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensSaveService.ts index cf8cefa..fcab10b 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimebens/GTBRegimeBensSaveService.ts @@ -3,12 +3,12 @@ import GTBRegimeBensInterface from "../../_interfaces/GTBRegimeBensInterface"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; async function executeGTBRegimeBensSaveService(data: GTBRegimeBensInterface) { + const response = await GTBRegimeBensSaveData(data); - const response = await GTBRegimeBensSaveData(data); - - return response; - + return response; } // Executa a função de forma encapsulada -export const GTBRegimeBensSaveService = withClientErrorHandler(executeGTBRegimeBensSaveService); \ No newline at end of file +export const GTBRegimeBensSaveService = withClientErrorHandler( + executeGTBRegimeBensSaveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoIndexService.ts index 5b72ba6..ee7892a 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoIndexService.ts @@ -2,11 +2,11 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import GTBRegimeComunhaoIndexData from "../../_data/GTRegimeComunhao/GTBRegimeComunhaoIndexData"; async function executeGTBRegimeComunhaoIndexService() { + const response = await GTBRegimeComunhaoIndexData(); - const response = await GTBRegimeComunhaoIndexData(); - - return response; - + return response; } -export const GTBRegimeComunhaoIndexService = withClientErrorHandler(executeGTBRegimeComunhaoIndexService) \ No newline at end of file +export const GTBRegimeComunhaoIndexService = withClientErrorHandler( + executeGTBRegimeComunhaoIndexService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoRemoveService.ts index aa29d35..8cafff9 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoRemoveService.ts @@ -2,12 +2,14 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import GTBRegimeComunhaoRemoveData from "../../_data/GTRegimeComunhao/GTBRegimeComunhaoRemoveData"; import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInterface"; -async function executeGTBRegimeComunhaoRemoveService(data: GTBRegimeComunhaoInterface) { - - const response = await GTBRegimeComunhaoRemoveData(data); - - return response; +async function executeGTBRegimeComunhaoRemoveService( + data: GTBRegimeComunhaoInterface, +) { + const response = await GTBRegimeComunhaoRemoveData(data); + return response; } -export const GTBRegimeComunhaoRemoveService = withClientErrorHandler(executeGTBRegimeComunhaoRemoveService) \ No newline at end of file +export const GTBRegimeComunhaoRemoveService = withClientErrorHandler( + executeGTBRegimeComunhaoRemoveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoSaveService.ts index 9241107..f0a1294 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_regimecomunhao/GTBRegimeComunhaoSaveService.ts @@ -2,12 +2,14 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import GTBRegimeComunhaoSaveData from "../../_data/GTRegimeComunhao/GTBRegimeComunhaoSaveData"; import GTBRegimeComunhaoInterface from "../../_interfaces/GTBRegimeComunhaoInterface"; -async function executeGTBRegimeComunhaoSaveService(data: GTBRegimeComunhaoInterface) { - - const response = await GTBRegimeComunhaoSaveData(data); - - return response; +async function executeGTBRegimeComunhaoSaveService( + data: GTBRegimeComunhaoInterface, +) { + const response = await GTBRegimeComunhaoSaveData(data); + return response; } -export const GTBRegimeComunhaoSaveService = withClientErrorHandler(executeGTBRegimeComunhaoSaveService) \ No newline at end of file +export const GTBRegimeComunhaoSaveService = withClientErrorHandler( + executeGTBRegimeComunhaoSaveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroIndexService.ts index 71140a5..3dda0c5 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroIndexService.ts @@ -2,14 +2,15 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { GTBTipoLogradouroIndexData } from "../../_data/GTBTipoLogradouro/GTBTipoLogradouroIndexData"; async function executeGTBTipoLogradouroIndexService() { - - try { - const response = await GTBTipoLogradouroIndexData(); - return response; - } catch (error) { - console.log(error) - return error - } + try { + const response = await GTBTipoLogradouroIndexData(); + return response; + } catch (error) { + console.log(error); + return error; + } } -export const GTBTipoLogradouroIndexService = withClientErrorHandler(executeGTBTipoLogradouroIndexService) \ No newline at end of file +export const GTBTipoLogradouroIndexService = withClientErrorHandler( + executeGTBTipoLogradouroIndexService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroRemoveService.ts index 49cb957..47650d8 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroRemoveService.ts @@ -2,12 +2,14 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { GTBTipoLogradouroRemoveData } from "../../_data/GTBTipoLogradouro/GTBTipoLogradouroRemoveData"; import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroInterface"; -async function executeGTBTipoLogradouroRemoveService(data: GTBTipoLogradouroInterface) { - - const response = await GTBTipoLogradouroRemoveData(data); - - return response; +async function executeGTBTipoLogradouroRemoveService( + data: GTBTipoLogradouroInterface, +) { + const response = await GTBTipoLogradouroRemoveData(data); + return response; } -export const GTBTipoLogradouroRemoveService = withClientErrorHandler(executeGTBTipoLogradouroRemoveService) \ No newline at end of file +export const GTBTipoLogradouroRemoveService = withClientErrorHandler( + executeGTBTipoLogradouroRemoveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroSaveService.ts index d0b8249..e65e507 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/g_tb_tipologradouro/GTBTipoLogradouroSaveService.ts @@ -2,12 +2,14 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { GTBTipoLogradouroSaveData } from "../../_data/GTBTipoLogradouro/GTBTipoLogradouroSaveData"; import { GTBTipoLogradouroInterface } from "../../_interfaces/GTBTipoLogradouroInterface"; -async function executeGTBTipoLogradouroSaveService(data: GTBTipoLogradouroInterface) { - - const response = await GTBTipoLogradouroSaveData(data); - - return response; +async function executeGTBTipoLogradouroSaveService( + data: GTBTipoLogradouroInterface, +) { + const response = await GTBTipoLogradouroSaveData(data); + return response; } -export const GTBTipoLogradouroSaveService = withClientErrorHandler(executeGTBTipoLogradouroSaveService) \ No newline at end of file +export const GTBTipoLogradouroSaveService = withClientErrorHandler( + executeGTBTipoLogradouroSaveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecDeleteService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecDeleteService.ts index 8a12cad..f2f4e0a 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecDeleteService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecDeleteService.ts @@ -3,11 +3,11 @@ import { TCensecDeleteData } from "../../_data/TCensec/TCensecDeleteData"; import TCensecInterface from "../../_interfaces/TCensecInterface"; async function executeTCensecDeleteService(data: TCensecInterface) { + const response = await TCensecDeleteData(data); - const response = await TCensecDeleteData(data); - - return response; - + return response; } -export const TCensecDeleteService = withClientErrorHandler(executeTCensecDeleteService); \ No newline at end of file +export const TCensecDeleteService = withClientErrorHandler( + executeTCensecDeleteService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecIndexService.ts index 7909527..d2b9983 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecIndexService.ts @@ -2,11 +2,11 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { TCensecIndexData } from "../../_data/TCensec/TCensecIndexData"; export default async function executeTCensecIndexService() { + const response = await TCensecIndexData(); - const response = await TCensecIndexData(); - - return response; - + return response; } -export const TCensecIndexService = withClientErrorHandler(executeTCensecIndexService); \ No newline at end of file +export const TCensecIndexService = withClientErrorHandler( + executeTCensecIndexService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecSaveService.ts index f7d1739..dfaeadf 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_censec/TCensecSaveService.ts @@ -3,11 +3,11 @@ import { TCensecSaveData } from "../../_data/TCensec/TCensecSaveData"; import TCensecInterface from "../../_interfaces/TCensecInterface"; async function executeTCensecSaveService(data: TCensecInterface) { + const response = await TCensecSaveData(data); - const response = await TCensecSaveData(data); - - return response; - + return response; } -export const TCensecSaveService = withClientErrorHandler(executeTCensecSaveService); \ No newline at end of file +export const TCensecSaveService = withClientErrorHandler( + executeTCensecSaveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioIndexService.ts index 88feaf6..d8ea7e3 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioIndexService.ts @@ -2,10 +2,11 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { TCensecNaturezaLitigioIndexData } from "../../_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioIndexData"; async function executeTCensecNaturezaLitigioIndexService() { + const response = await TCensecNaturezaLitigioIndexData(); - const response = await TCensecNaturezaLitigioIndexData(); - - return response; + return response; } -export const TCensecNaturezaLitigioIndexService = withClientErrorHandler(executeTCensecNaturezaLitigioIndexService) \ No newline at end of file +export const TCensecNaturezaLitigioIndexService = withClientErrorHandler( + executeTCensecNaturezaLitigioIndexService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioRemoveService.ts index 2f9e0f0..2da81c6 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioRemoveService.ts @@ -2,12 +2,14 @@ import { TCensecNaturezaLitigioRemoveData } from "../../_data/TCensecNaturezaLit import { TCensecNaturezaLitigioInterface } from "../../_interfaces/TCensecNaturezaLitigioInterface"; import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withClientErrorHandler"; -async function executeTCensecNaturezaLitigioRemoveService(data: TCensecNaturezaLitigioInterface) { - - const response = await TCensecNaturezaLitigioRemoveData(data); - - return response; +async function executeTCensecNaturezaLitigioRemoveService( + data: TCensecNaturezaLitigioInterface, +) { + const response = await TCensecNaturezaLitigioRemoveData(data); + return response; } -export const TCensecNaturezaLitigioRemoveService = withClientErrorHandler(executeTCensecNaturezaLitigioRemoveService) \ No newline at end of file +export const TCensecNaturezaLitigioRemoveService = withClientErrorHandler( + executeTCensecNaturezaLitigioRemoveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioSaveService.ts index 2ee1b16..e6925a2 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_censecnaturezalitigio/TCensecNaturezaLitigioSaveService.ts @@ -2,12 +2,14 @@ import { withClientErrorHandler } from "@/actions/withClientErrorHandler/withCli import { TCensecNaturezaLitigioSaveData } from "../../_data/TCensecNaturezaLitigio/TCensecNaturezaLitigioSaveData"; import { TCensecNaturezaLitigioInterface } from "../../_interfaces/TCensecNaturezaLitigioInterface"; -async function executeTCensecNaturezaLitigioSaveService(data: TCensecNaturezaLitigioInterface) { - - const response = await TCensecNaturezaLitigioSaveData(data); - - return response; +async function executeTCensecNaturezaLitigioSaveService( + data: TCensecNaturezaLitigioInterface, +) { + const response = await TCensecNaturezaLitigioSaveData(data); + return response; } -export const TCensecNaturezaLitigioSaveService = withClientErrorHandler(executeTCensecNaturezaLitigioSaveService) \ No newline at end of file +export const TCensecNaturezaLitigioSaveService = withClientErrorHandler( + executeTCensecNaturezaLitigioSaveService, +); diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaIndex.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaIndex.ts index 5038a30..e735708 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaIndex.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaIndex.ts @@ -2,12 +2,11 @@ import TMinutaIndexData from "../../_data/TMinuta/TMinutaIndexData"; import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; export default async function TMinutaIndex() { - - try { - const response = await TMinutaIndexData(); - return response; - } catch (error) { - console.log(error) - return error - } -} \ No newline at end of file + try { + const response = await TMinutaIndexData(); + return response; + } catch (error) { + console.log(error); + return error; + } +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaIndexService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaIndexService.ts index 00fe3d2..e734b08 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaIndexService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaIndexService.ts @@ -2,20 +2,19 @@ import TMinutaIndex from "../../_data/TMinuta/TMinutaIndex"; import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; export default async function TMinutaIndexService(t_minuta_id: number) { + if (t_minuta_id <= 0) { + return { + code: 400, + message: "Usuário informado inválido", + }; + } - if (t_minuta_id <= 0) { - return { - 'code': 400, - 'message': 'Usuário informado inválido', - } - } - - try { - const response = await TMinutaIndex(t_minuta_id); - console.log("service",response) - return response; - } catch (error) { - console.log(error) - return error - } -} \ No newline at end of file + try { + const response = await TMinutaIndex(t_minuta_id); + console.log("service", response); + return response; + } catch (error) { + console.log(error); + return error; + } +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaRemoveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaRemoveService.ts index 12ed281..d24e7e9 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaRemoveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaRemoveService.ts @@ -2,9 +2,7 @@ import TMinutaRemoveData from "../../_data/TMinuta/TMinutaRemoveData"; import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; export default async function TMinutaRemoveService(data: TMinutaInterface) { + const response = await TMinutaRemoveData(data); - const response = await TMinutaRemoveData(data); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaSaveService.ts b/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaSaveService.ts index 5dfc53f..740ae51 100644 --- a/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaSaveService.ts +++ b/src/app/(protected)/(cadastros)/cadastros/_services/t_minuta/TMinutaSaveService.ts @@ -2,9 +2,7 @@ import TMinutaSaveData from "../../_data/TMinuta/TMinutaSaveData"; import { TMinutaInterface } from "../../_interfaces/TMinutaInterface"; export default async function TMinutaSaveService(data: TMinutaInterface) { + const response = await TMinutaSaveData(data); - const response = await TMinutaSaveData(data); - - return response; - -} \ No newline at end of file + return response; +} diff --git a/src/app/(protected)/(cadastros)/cadastros/pessoas/complementos/page.tsx b/src/app/(protected)/(cadastros)/cadastros/pessoas/complementos/page.tsx index 5dc31bb..c20bbd5 100644 --- a/src/app/(protected)/(cadastros)/cadastros/pessoas/complementos/page.tsx +++ b/src/app/(protected)/(cadastros)/cadastros/pessoas/complementos/page.tsx @@ -1,73 +1,90 @@ -import { FileText, Heart, Briefcase, Scale, Link as LinkIcon, MapPin } from "lucide-react"; +import { + FileText, + Heart, + Briefcase, + Scale, + Link as LinkIcon, + MapPin, +} from "lucide-react"; import { Card, CardContent } from "@/components/ui/card"; import Link from "next/link"; export default function CadastrosPage() { + const items = [ + { + title: "Documentos", + description: + "Gerencie os tipos de documentos aceitos e suas configurações no sistema.", + icon: FileText, + }, + { + title: "Estado Civil", + description: + "Cadastre e mantenha os diferentes estados civis utilizados nos registros.", + icon: Heart, + }, + { + title: "Profissão", + description: + "Gerencie a lista de profissões para utilização em cadastros e registros.", + icon: Briefcase, + }, + { + title: "Regime de Comunhão", + description: + "Defina os regimes de comunhão aplicáveis em matrimônios e registros civis.", + icon: Scale, + }, + { + title: "Vínculo de Sinal Público", + description: + "Controle e cadastre vínculos relacionados a sinais públicos para autenticações.", + icon: LinkIcon, + }, + { + title: "Municípios", + description: + "Gerencie a base de municípios para utilização em endereços e cadastros.", + icon: MapPin, + }, + ]; - const items = [ - { - title: 'Documentos', - description: 'Gerencie os tipos de documentos aceitos e suas configurações no sistema.', - icon: FileText, - }, - { - title: 'Estado Civil', - description: 'Cadastre e mantenha os diferentes estados civis utilizados nos registros.', - icon: Heart, - }, - { - title: 'Profissão', - description: 'Gerencie a lista de profissões para utilização em cadastros e registros.', - icon: Briefcase, - }, - { - title: 'Regime de Comunhão', - description: 'Defina os regimes de comunhão aplicáveis em matrimônios e registros civis.', - icon: Scale, - }, - { - title: 'Vínculo de Sinal Público', - description: 'Controle e cadastre vínculos relacionados a sinais públicos para autenticações.', - icon: LinkIcon, - }, - { - title: 'Municípios', - description: 'Gerencie a base de municípios para utilização em endereços e cadastros.', - icon: MapPin, - }, - ]; - - return ( + return ( +
+
-
-
-

- Complementos de Cadastro pessoal -

-

- Gerencie os cadastros relacionados a regimes, como estado civil, regime de comunhão e outras informações complementares necessárias para o registro de pessoas. -

-
-
-
- {items.map((item, key) => ( - - - - - - -

- {item.title} -

-

- {item.description} -

-
-
- - ))} -
+

+ Complementos de Cadastro pessoal +

+

+ Gerencie os cadastros relacionados a regimes, como estado civil, + regime de comunhão e outras informações complementares necessárias + para o registro de pessoas. +

- ); -} \ No newline at end of file +
+
+ {items.map((item, key) => ( + + + + + + +

+ {item.title} +

+

+ {item.description} +

+
+
+ + ))} +
+
+ ); +} diff --git a/src/app/(protected)/(servicos)/servicos/page.tsx b/src/app/(protected)/(servicos)/servicos/page.tsx index ebfcd9d..a5b5c51 100644 --- a/src/app/(protected)/(servicos)/servicos/page.tsx +++ b/src/app/(protected)/(servicos)/servicos/page.tsx @@ -1,88 +1,114 @@ -'use client' +"use client"; -import { Card, CardAction, CardContent, CardDescription, CardTitle } from "@/components/ui/card" -import { BabyIcon, CrossIcon, FileCheckIcon, FileTextIcon, GavelIcon, GlobeIcon, HeartIcon, PenIcon, ScrollIcon, UsersIcon } from "lucide-react"; +import { + Card, + CardAction, + CardContent, + CardDescription, + CardTitle, +} from "@/components/ui/card"; +import { + BabyIcon, + CrossIcon, + FileCheckIcon, + FileTextIcon, + GavelIcon, + GlobeIcon, + HeartIcon, + PenIcon, + ScrollIcon, + UsersIcon, +} from "lucide-react"; const services = [ - { - title: 'Registro de Nascimento', - description: 'Emissão e registro de certidões de nascimento, garantindo a cidadania e identidade legal do recém-nascido.', - icon: BabyIcon - }, - { - title: 'Registro de Casamento', - description: 'Processo completo para habilitação, registro e emissão da certidão de casamento.', - icon: HeartIcon - }, - { - title: 'Registro de Óbito', - description: 'Lavratura do registro de óbito e emissão da certidão correspondente para fins legais.', - icon: CrossIcon - }, - { - title: 'Reconhecimento de Firma', - description: 'Autenticação da assinatura de documentos, garantindo sua validade jurídica.', - icon: PenIcon - }, - { - title: 'Autenticação de Documentos', - description: 'Confirmação de que cópias estão de acordo com o documento original apresentado.', - icon: FileCheckIcon - }, - { - title: 'Procurações', - description: 'Elaboração e registro de procurações públicas para representação legal de pessoas físicas ou jurídicas.', - icon: ScrollIcon - }, - { - title: 'Testamentos', - description: 'Lavratura e registro de testamentos públicos com segurança jurídica.', - icon: GavelIcon - }, - { - title: 'Divórcio Extrajudicial', - description: 'Formalização do divórcio por via administrativa, de forma rápida e sem processo judicial.', - icon: UsersIcon - }, - { - title: 'Apostilamento de Documentos', - description: 'Apostilamento conforme a Convenção da Haia para validade internacional de documentos.', - icon: GlobeIcon - }, - { - title: 'Certidões e Segunda Via', - description: 'Emissão de segundas vias e certidões de nascimento, casamento e óbito.', - icon: FileTextIcon - } + { + title: "Registro de Nascimento", + description: + "Emissão e registro de certidões de nascimento, garantindo a cidadania e identidade legal do recém-nascido.", + icon: BabyIcon, + }, + { + title: "Registro de Casamento", + description: + "Processo completo para habilitação, registro e emissão da certidão de casamento.", + icon: HeartIcon, + }, + { + title: "Registro de Óbito", + description: + "Lavratura do registro de óbito e emissão da certidão correspondente para fins legais.", + icon: CrossIcon, + }, + { + title: "Reconhecimento de Firma", + description: + "Autenticação da assinatura de documentos, garantindo sua validade jurídica.", + icon: PenIcon, + }, + { + title: "Autenticação de Documentos", + description: + "Confirmação de que cópias estão de acordo com o documento original apresentado.", + icon: FileCheckIcon, + }, + { + title: "Procurações", + description: + "Elaboração e registro de procurações públicas para representação legal de pessoas físicas ou jurídicas.", + icon: ScrollIcon, + }, + { + title: "Testamentos", + description: + "Lavratura e registro de testamentos públicos com segurança jurídica.", + icon: GavelIcon, + }, + { + title: "Divórcio Extrajudicial", + description: + "Formalização do divórcio por via administrativa, de forma rápida e sem processo judicial.", + icon: UsersIcon, + }, + { + title: "Apostilamento de Documentos", + description: + "Apostilamento conforme a Convenção da Haia para validade internacional de documentos.", + icon: GlobeIcon, + }, + { + title: "Certidões e Segunda Via", + description: + "Emissão de segundas vias e certidões de nascimento, casamento e óbito.", + icon: FileTextIcon, + }, ]; export default function ServicosPage() { - return ( -
-
-

Bem-vindo(a)!

-

- Olá, Keven! É um prazer ter você conosco. -

-
-
- {services.map((item: any, index) => ( - - -
- -
+ return ( +
+
+

Bem-vindo(a)!

+

+ Olá, Keven! É um + prazer ter você conosco. +

+
+
+ {services.map((item: any, index) => ( + + +
+ +
- - {item.title} - - - {item.description} - -
-
- ))} -
-
- ) -} \ No newline at end of file + {item.title} + + {item.description} + +
+
+ ))} +
+
+ ); +} diff --git a/src/app/(protected)/layout.tsx b/src/app/(protected)/layout.tsx index 982240e..ca0a037 100644 --- a/src/app/(protected)/layout.tsx +++ b/src/app/(protected)/layout.tsx @@ -2,8 +2,8 @@ import type { Metadata } from "next"; import { Geist, Geist_Mono } from "next/font/google"; import "../globals.css"; -import { ResponseProvider } from '../_response/ResponseContext'; -import { AppSidebar } from "@/components/app-sidebar" +import { ResponseProvider } from "../_response/ResponseContext"; +import { AppSidebar } from "@/components/app-sidebar"; import { Breadcrumb, BreadcrumbItem, @@ -11,13 +11,13 @@ import { BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, -} from "@/components/ui/breadcrumb" -import { Separator } from "@/components/ui/separator" +} from "@/components/ui/breadcrumb"; +import { Separator } from "@/components/ui/separator"; import { SidebarInset, SidebarProvider, SidebarTrigger, -} from "@/components/ui/sidebar" +} from "@/components/ui/sidebar"; import { Toaster } from "@/components/ui/sonner"; import Response from "../_response/response"; diff --git a/src/app/(public)/login/layout.tsx b/src/app/(public)/login/layout.tsx index 8fcba52..d958812 100644 --- a/src/app/(public)/login/layout.tsx +++ b/src/app/(public)/login/layout.tsx @@ -25,7 +25,9 @@ export default function RootLayout({ }>) { return ( - + {children} diff --git a/src/app/(public)/login/page.tsx b/src/app/(public)/login/page.tsx index 30b5d35..2a5a3b5 100644 --- a/src/app/(public)/login/page.tsx +++ b/src/app/(public)/login/page.tsx @@ -1,4 +1,4 @@ -import { LoginForm } from "@/components/login-form" +import { LoginForm } from "@/components/login-form"; export default function LoginPage() { return ( @@ -7,5 +7,5 @@ export default function LoginPage() {
- ) -} \ No newline at end of file + ); +} diff --git a/src/app/_components/confirm_dialog/ConfirmDialog.tsx b/src/app/_components/confirm_dialog/ConfirmDialog.tsx index e24cfd3..d191ad8 100644 --- a/src/app/_components/confirm_dialog/ConfirmDialog.tsx +++ b/src/app/_components/confirm_dialog/ConfirmDialog.tsx @@ -1,43 +1,43 @@ -'use client'; +"use client"; -import React from 'react'; +import React from "react"; // Shadcn UI components import { - AlertDialog, - AlertDialogCancel, - AlertDialogContent, - AlertDialogDescription, - AlertDialogFooter, - AlertDialogHeader, - AlertDialogTitle, - AlertDialogAction, -} from '@/components/ui/alert-dialog'; + AlertDialog, + AlertDialogCancel, + AlertDialogContent, + AlertDialogDescription, + AlertDialogFooter, + AlertDialogHeader, + AlertDialogTitle, + AlertDialogAction, +} from "@/components/ui/alert-dialog"; interface AlertProps { - /** Controla a abertura do modal */ - isOpen: boolean; + /** Controla a abertura do modal */ + isOpen: boolean; - /** Título principal do alerta */ - title: string; + /** Título principal do alerta */ + title: string; - /** Descrição adicional do alerta */ - description?: string; + /** Descrição adicional do alerta */ + description?: string; - /** Mensagem do corpo do alerta */ - message: string; + /** Mensagem do corpo do alerta */ + message: string; - /** Texto do botão de confirmação */ - confirmText?: string; + /** Texto do botão de confirmação */ + confirmText?: string; - /** Texto do botão de cancelamento */ - cancelText?: string; + /** Texto do botão de cancelamento */ + cancelText?: string; - /** Função executada ao confirmar */ - onConfirm: () => void; + /** Função executada ao confirmar */ + onConfirm: () => void; - /** Função executada ao cancelar */ - onCancel: () => void; + /** Função executada ao cancelar */ + onCancel: () => void; } /** @@ -46,36 +46,34 @@ interface AlertProps { * mensagem e botões de ação customizáveis. */ export default function ConfirmDialog({ - isOpen, - title, - description, - message, - confirmText = 'Confirmar', - cancelText = 'Cancelar', - onConfirm, - onCancel, + isOpen, + title, + description, + message, + confirmText = "Confirmar", + cancelText = "Cancelar", + onConfirm, + onCancel, }: AlertProps) { - return ( - - - - {title} - {description && ( - {description} - )} - -
- {message} -
- - - {cancelText} - - - {confirmText} - - -
-
- ); + return ( + + + + {title} + {description && ( + {description} + )} + +
{message}
+ + + {cancelText} + + + {confirmText} + + +
+
+ ); } diff --git a/src/app/_components/confirm_dialog/useConfirmDialog.ts b/src/app/_components/confirm_dialog/useConfirmDialog.ts index 55afbc6..7df063c 100644 --- a/src/app/_components/confirm_dialog/useConfirmDialog.ts +++ b/src/app/_components/confirm_dialog/useConfirmDialog.ts @@ -4,48 +4,51 @@ import { useCallback, useState } from "react"; // Define a interface para opções do hook // Permite que o usuário passe callbacks opcionais para confirmação e cancelamento interface UseConfirmDialogOptions { - onConfirm?: () => void; // Função chamada quando o usuário confirma a ação - onCancel?: () => void; // Função chamada quando o usuário cancela a ação + onConfirm?: () => void; // Função chamada quando o usuário confirma a ação + onCancel?: () => void; // Função chamada quando o usuário cancela a ação } // Declara o hook customizado useConfirmDialog // Recebe um objeto de opções que contém os callbacks onConfirm e onCancel -export function useConfirmDialog({ onConfirm, onCancel }: UseConfirmDialogOptions = {}) { - // Estado interno que controla se o diálogo de confirmação está aberto - const [isOpen, setIsOpen] = useState(false); +export function useConfirmDialog({ + onConfirm, + onCancel, +}: UseConfirmDialogOptions = {}) { + // Estado interno que controla se o diálogo de confirmação está aberto + const [isOpen, setIsOpen] = useState(false); - // Função para abrir o diálogo - // useCallback memoriza a função para que não seja recriada em cada renderização - const openDialog = useCallback(() => setIsOpen(true), []); + // Função para abrir o diálogo + // useCallback memoriza a função para que não seja recriada em cada renderização + const openDialog = useCallback(() => setIsOpen(true), []); - // Função para fechar o diálogo - const closeDialog = useCallback(() => setIsOpen(false), []); + // Função para fechar o diálogo + const closeDialog = useCallback(() => setIsOpen(false), []); - // Função chamada quando o usuário confirma a ação - // Executa o callback onConfirm, se fornecido, e fecha o diálogo - const handleConfirm = useCallback(() => { - onConfirm?.(); // Chama onConfirm somente se ele existir - closeDialog(); // Fecha o diálogo após a confirmação - }, [onConfirm, closeDialog]); + // Função chamada quando o usuário confirma a ação + // Executa o callback onConfirm, se fornecido, e fecha o diálogo + const handleConfirm = useCallback(() => { + onConfirm?.(); // Chama onConfirm somente se ele existir + closeDialog(); // Fecha o diálogo após a confirmação + }, [onConfirm, closeDialog]); - // Função chamada quando o usuário cancela a ação - // Executa o callback onCancel, se fornecido, e fecha o diálogo - const handleCancel = useCallback(() => { - onCancel?.(); // Chama onCancel somente se ele existir - closeDialog(); // Fecha o diálogo após o cancelamento - }, [onCancel, closeDialog]); + // Função chamada quando o usuário cancela a ação + // Executa o callback onCancel, se fornecido, e fecha o diálogo + const handleCancel = useCallback(() => { + onCancel?.(); // Chama onCancel somente se ele existir + closeDialog(); // Fecha o diálogo após o cancelamento + }, [onCancel, closeDialog]); - // Retorna os valores e funções que serão usados pelo componente - // isOpen -> estado do modal - // openDialog -> função para abrir o modal - // closeDialog -> função para fechar o modal - // handleConfirm -> função para confirmar a ação - // handleCancel -> função para cancelar a ação - return { - isOpen, - openDialog, - closeDialog, - handleConfirm, - handleCancel, - }; + // Retorna os valores e funções que serão usados pelo componente + // isOpen -> estado do modal + // openDialog -> função para abrir o modal + // closeDialog -> função para fechar o modal + // handleConfirm -> função para confirmar a ação + // handleCancel -> função para cancelar a ação + return { + isOpen, + openDialog, + closeDialog, + handleConfirm, + handleCancel, + }; } diff --git a/src/app/_components/loading/loading.tsx b/src/app/_components/loading/loading.tsx index 5d20133..863732b 100644 --- a/src/app/_components/loading/loading.tsx +++ b/src/app/_components/loading/loading.tsx @@ -3,16 +3,12 @@ import SkeletonCard from "./skeletonCard"; import SkeletonTable from "./skeletonTable"; export default function Loading({ type }: any) { - - switch (type) { - case 1: - - return ; - break; - case 2: - - return - break; - } - -} \ No newline at end of file + switch (type) { + case 1: + return ; + break; + case 2: + return ; + break; + } +} diff --git a/src/app/_components/loading/skeletonCard.tsx b/src/app/_components/loading/skeletonCard.tsx index 1c3f6cf..3597010 100644 --- a/src/app/_components/loading/skeletonCard.tsx +++ b/src/app/_components/loading/skeletonCard.tsx @@ -1,35 +1,29 @@ - export default function SkeletonCard() { + return ( +
+
+
+
+
- return ( +
+
+
+
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
- -
-
-
-
- -
-
-
-
- -
-
-
-
- - ); - -} \ No newline at end of file +
+
+
+
+ ); +} diff --git a/src/app/_components/loading/skeletonTable.tsx b/src/app/_components/loading/skeletonTable.tsx index a37e42a..610554a 100644 --- a/src/app/_components/loading/skeletonTable.tsx +++ b/src/app/_components/loading/skeletonTable.tsx @@ -1,81 +1,79 @@ - export default function SkeletonTable() { + return ( +
+
+
+ + + + + + + + + + + + + + + + - return ( - -
-
- -
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ + +
+ + +
+ + +
+ + +
+ + + + +
+ + +
+ + +
+ + +
+ + + +
- - ); - -} \ No newline at end of file + + + ); +} diff --git a/src/app/_components/loadingButton/LoadingButton.tsx b/src/app/_components/loadingButton/LoadingButton.tsx index 3c890c4..1837e63 100644 --- a/src/app/_components/loadingButton/LoadingButton.tsx +++ b/src/app/_components/loadingButton/LoadingButton.tsx @@ -1,4 +1,4 @@ -'use client'; +"use client"; import { forwardRef } from "react"; import { Button } from "@/components/ui/button"; @@ -7,28 +7,28 @@ import clsx from "clsx"; import LoadingButtonProps from "./LoadingButtonProps"; const LoadingButton = forwardRef( - ({ text, textLoading, loading = false, className, disabled, ...props }, ref) => { - return ( - - ); - } + ( + { text, textLoading, loading = false, className, disabled, ...props }, + ref, + ) => { + return ( + + ); + }, ); LoadingButton.displayName = "LoadingButton"; -export default LoadingButton; \ No newline at end of file +export default LoadingButton; diff --git a/src/app/_components/loadingButton/LoadingButtonProps.ts b/src/app/_components/loadingButton/LoadingButtonProps.ts index 195f683..2edb649 100644 --- a/src/app/_components/loadingButton/LoadingButtonProps.ts +++ b/src/app/_components/loadingButton/LoadingButtonProps.ts @@ -1,7 +1,8 @@ import { Button } from "@/components/ui/button"; -export default interface LoadingButtonProps extends React.ComponentProps { - text: string; - textLoading: string; - loading?: boolean; -} \ No newline at end of file +export default interface LoadingButtonProps + extends React.ComponentProps { + text: string; + textLoading: string; + loading?: boolean; +} diff --git a/src/app/_components/structure/Header.tsx b/src/app/_components/structure/Header.tsx index c8c02e6..faa1c30 100644 --- a/src/app/_components/structure/Header.tsx +++ b/src/app/_components/structure/Header.tsx @@ -2,32 +2,30 @@ import { Button } from "@/components/ui/button"; import { PlusIcon } from "lucide-react"; interface HeaderProps { + title: string; + description: string; + buttonText: string; + buttonAction: (...args: any[]) => void; +} - title: string, - description: string, - buttonText: string, - buttonAction: (...args: any[]) => void; -}; - -export default function Header({ title, description, buttonText, buttonAction }: HeaderProps) { - - return ( +export default function Header({ + title, + description, + buttonText, + buttonAction, +}: HeaderProps) { + return ( +
+
-
-
-

- {title} -

-

- {description} -

-
- -
+

{title}

+

{description}

- ); - -} \ No newline at end of file + +
+
+ ); +} diff --git a/src/app/_response/ResponseContext.tsx b/src/app/_response/ResponseContext.tsx index b387176..bd2644e 100644 --- a/src/app/_response/ResponseContext.tsx +++ b/src/app/_response/ResponseContext.tsx @@ -1,10 +1,10 @@ -'use client'; +"use client"; -import React, { createContext, useContext, useState, ReactNode } from 'react'; +import React, { createContext, useContext, useState, ReactNode } from "react"; interface ResponseState { message?: string; - type?: 'toast' | 'modal' | 'alert' | null; + type?: "toast" | "modal" | "alert" | null; status?: number; error?: string; detail?: string; @@ -16,13 +16,22 @@ interface ResponseContextProps { clearResponse: () => void; } -const ResponseContext = createContext(undefined); +const ResponseContext = createContext( + undefined, +); -export const ResponseProvider: React.FC<{ children: ReactNode }> = ({ children }) => { - const [response, setResponseState] = useState({ message: '', type: null, status: 0 }); +export const ResponseProvider: React.FC<{ children: ReactNode }> = ({ + children, +}) => { + const [response, setResponseState] = useState({ + message: "", + type: null, + status: 0, + }); const setResponse = (value: ResponseState) => setResponseState(value); - const clearResponse = () => setResponseState({ message: '', type: null, status: 0 }); + const clearResponse = () => + setResponseState({ message: "", type: null, status: 0 }); return ( @@ -33,6 +42,7 @@ export const ResponseProvider: React.FC<{ children: ReactNode }> = ({ children } export const useResponse = () => { const context = useContext(ResponseContext); - if (!context) throw new Error('useResponse must be used within ResponseProvider'); + if (!context) + throw new Error("useResponse must be used within ResponseProvider"); return context; }; diff --git a/src/app/_response/response.tsx b/src/app/_response/response.tsx index fad1bec..1fbd9b9 100644 --- a/src/app/_response/response.tsx +++ b/src/app/_response/response.tsx @@ -1,49 +1,43 @@ // app/src/app/_response/response.tsx "use client"; -import { - useResponse -} from "./ResponseContext"; -import { - useEffect -} from "react"; -import { - toast -} from "sonner"; +import { useResponse } from "./ResponseContext"; +import { useEffect } from "react"; +import { toast } from "sonner"; export default function Response() { - const { - response, - clearResponse - } = useResponse(); + const { response, clearResponse } = useResponse(); useEffect(() => { switch (Number(response?.status)) { - case 201: toast.success(response.message); break; case 422: toast.error(response.error, { - description: response.detail + description: response.detail, }); break; case 400: toast.error(response.error, { - description: response.message + description: response.message, }); break; case 600: toast.error(response.error, { - description: response.message + description: response.message, }); break; default: - if (response.status !== 0 && response.status !== 200 && response.status !== 201) { + if ( + response.status !== 0 && + response.status !== 200 && + response.status !== 201 + ) { toast.warning(JSON.stringify(response)); } break; @@ -51,4 +45,4 @@ export default function Response() { }, [response, clearResponse]); return
; -} \ No newline at end of file +} diff --git a/src/app/globals.css b/src/app/globals.css index 2b6326b..41d3cd9 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -70,18 +70,18 @@ :root { --radius: 0.375rem; - --background: oklch(1.0000 0 0); + --background: oklch(1 0 0); --foreground: oklch(0.2686 0 0); - --card: oklch(1.0000 0 0); + --card: oklch(1 0 0); --card-foreground: oklch(0.2686 0 0); - --popover: oklch(1.0000 0 0); + --popover: oklch(1 0 0); --popover-foreground: oklch(0.2686 0 0); --primary: oklch(0.7686 0.1647 70.0804); --primary-foreground: oklch(0 0 0); - --secondary: oklch(0.9670 0.0029 264.5419); + --secondary: oklch(0.967 0.0029 264.5419); --secondary-foreground: oklch(0.4461 0.0263 256.8018); --muted: oklch(0.9846 0.0017 247.8389); - --muted-foreground: oklch(0.5510 0.0234 264.3637); + --muted-foreground: oklch(0.551 0.0234 264.3637); --accent: oklch(0.9869 0.0214 95.2774); --accent-foreground: oklch(0.4732 0.1247 46.2007); --destructive: oklch(0.6368 0.2078 25.3313); @@ -96,12 +96,12 @@ --sidebar: oklch(0.9846 0.0017 247.8389); --sidebar-foreground: oklch(0.2686 0 0); --sidebar-primary: oklch(0.7686 0.1647 70.0804); - --sidebar-primary-foreground: oklch(1.0000 0 0); + --sidebar-primary-foreground: oklch(1 0 0); --sidebar-accent: oklch(0.9869 0.0214 95.2774); --sidebar-accent-foreground: oklch(0.4732 0.1247 46.2007); --sidebar-border: oklch(0.9276 0.0058 264.5313); --sidebar-ring: oklch(0.7686 0.1647 70.0804); - --destructive-foreground: oklch(1.0000 0 0); + --destructive-foreground: oklch(1 0 0); --font-sans: Inter, sans-serif; --font-serif: Source Serif 4, serif; --font-mono: JetBrains Mono, monospace; @@ -115,11 +115,16 @@ --spacing: 0.25rem; --shadow-2xs: 0px 4px 8px -1px hsl(0 0% 0% / 0.05); --shadow-xs: 0px 4px 8px -1px hsl(0 0% 0% / 0.05); - --shadow-sm: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 1px 2px -2px hsl(0 0% 0% / 0.10); - --shadow: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 1px 2px -2px hsl(0 0% 0% / 0.10); - --shadow-md: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 2px 4px -2px hsl(0 0% 0% / 0.10); - --shadow-lg: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 4px 6px -2px hsl(0 0% 0% / 0.10); - --shadow-xl: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 8px 10px -2px hsl(0 0% 0% / 0.10); + --shadow-sm: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 1px 2px -2px hsl(0 0% 0% / 0.1); + --shadow: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 1px 2px -2px hsl(0 0% 0% / 0.1); + --shadow-md: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 2px 4px -2px hsl(0 0% 0% / 0.1); + --shadow-lg: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 4px 6px -2px hsl(0 0% 0% / 0.1); + --shadow-xl: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 8px 10px -2px hsl(0 0% 0% / 0.1); --shadow-2xl: 0px 4px 8px -1px hsl(0 0% 0% / 0.25); --tracking-normal: 0em; } @@ -151,12 +156,12 @@ --sidebar: oklch(0.1684 0 0); --sidebar-foreground: oklch(0.9219 0 0); --sidebar-primary: oklch(0.7686 0.1647 70.0804); - --sidebar-primary-foreground: oklch(1.0000 0 0); + --sidebar-primary-foreground: oklch(1 0 0); --sidebar-accent: oklch(0.4732 0.1247 46.2007); --sidebar-accent-foreground: oklch(0.9243 0.1151 95.7459); --sidebar-border: oklch(0.3715 0 0); --sidebar-ring: oklch(0.7686 0.1647 70.0804); - --destructive-foreground: oklch(1.0000 0 0); + --destructive-foreground: oklch(1 0 0); --radius: 0.375rem; --font-sans: Inter, sans-serif; --font-serif: Source Serif 4, serif; @@ -171,11 +176,16 @@ --spacing: 0.25rem; --shadow-2xs: 0px 4px 8px -1px hsl(0 0% 0% / 0.05); --shadow-xs: 0px 4px 8px -1px hsl(0 0% 0% / 0.05); - --shadow-sm: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 1px 2px -2px hsl(0 0% 0% / 0.10); - --shadow: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 1px 2px -2px hsl(0 0% 0% / 0.10); - --shadow-md: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 2px 4px -2px hsl(0 0% 0% / 0.10); - --shadow-lg: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 4px 6px -2px hsl(0 0% 0% / 0.10); - --shadow-xl: 0px 4px 8px -1px hsl(0 0% 0% / 0.10), 0px 8px 10px -2px hsl(0 0% 0% / 0.10); + --shadow-sm: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 1px 2px -2px hsl(0 0% 0% / 0.1); + --shadow: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 1px 2px -2px hsl(0 0% 0% / 0.1); + --shadow-md: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 2px 4px -2px hsl(0 0% 0% / 0.1); + --shadow-lg: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 4px 6px -2px hsl(0 0% 0% / 0.1); + --shadow-xl: + 0px 4px 8px -1px hsl(0 0% 0% / 0.1), 0px 8px 10px -2px hsl(0 0% 0% / 0.1); --shadow-2xl: 0px 4px 8px -1px hsl(0 0% 0% / 0.25); } @@ -187,7 +197,7 @@ @apply bg-background text-foreground; letter-spacing: var(--tracking-normal); } - .bg-brand{ - background-color: #1A292F; + .bg-brand { + background-color: #1a292f; } -} \ No newline at end of file +} diff --git a/src/app/loading.tsx b/src/app/loading.tsx index bd1da48..e8a7a84 100644 --- a/src/app/loading.tsx +++ b/src/app/loading.tsx @@ -1,6 +1,4 @@ // components/Loading.tsx export default function Loading() { - return ( - - ) + return ; } diff --git a/src/components/MainEditor.tsx b/src/components/MainEditor.tsx index ab19f59..b345655 100644 --- a/src/components/MainEditor.tsx +++ b/src/components/MainEditor.tsx @@ -1,104 +1,137 @@ -import React from 'react'; -import { Editor } from '@tinymce/tinymce-react'; +import React from "react"; +import { Editor } from "@tinymce/tinymce-react"; // 1. Define as propriedades que nosso componente vai receber interface MainEditorProps { - initialValue: string; - onEditorChange: (content: string) => void; - margins: { - top: string; - bottom: string; - left: string; - right: string; - }; - size: { - width: number; - height: number; - } + initialValue: string; + onEditorChange: (content: string) => void; + margins: { + top: string; + bottom: string; + left: string; + right: string; + }; + size: { + width: number; + height: number; + }; } -const MainEditor: React.FC = ({ initialValue, onEditorChange, margins, size }) => { +const MainEditor: React.FC = ({ + initialValue, + onEditorChange, + margins, + size, +}) => { + return ( +
+ - { - const customTemplates = [ - { - title: 'Qualificação das Partes (Casamento)', - description: 'Insere o bloco de qualificação para contraentes.', - content: `

QUALIFICAÇÃO DOS CONTRAENTES: Ele, brasileiro, solteiro, maior, [Profissão], portador da CI nº [RG], inscrito no CPF sob o nº [CPF], residente e domiciliado em [Endereço]. Ela, brasileira, solteira, maior, [Profissão], portadora da CI nº [RG], inscrita no CPF sob o nº [CPF], residente e domiciliada em [Endereço].


` - }, - { - title: 'Cláusula de Regime de Bens', - description: 'Cláusula padrão de Comunhão Parcial de Bens.', - content: '

O regime de bens adotado é o da Comunhão Parcial de Bens, nos termos dos artigos 1.658 e seguintes do Código Civil brasileiro.


' - }, - { - title: 'Cláusula de Encerramento (Selo)', - description: 'Texto final com espaço para o selo digital.', - content: '

O referido é verdade e dou fé. Emitida nesta data. Selo Digital de Fiscalização: [Número do Selo]

' - } - ]; - editor.ui.registry.addMenuButton('customTemplates', { - text: 'Modelos', // O texto que aparecerá no botão - fetch: (callback: any) => { - const items = customTemplates.map(template => ({ - type: 'menuitem', - text: template.title, - onAction: () => { - // 3. Ação que acontece ao clicar no item do menu: insere o conteúdo - editor.insertContent(template.content); - } - })); - callback(items); - } - }); - }, - quickbars_selection_toolbar: 'bold italic underline | fontfamily | fontsize | quicklink blockquote | quicklink', - quickbars_insert_toolbar: 'bold italic underline fontfamily fontsize quicklink blockquote quicklink quickimage quicktable hr', - quickbars_image_toolbar: 'alignleft aligncenter alignright | rotateleft rotateright | imageoptions', - fontsize_formats: '4pt 5pt 6pt 7pt 8pt 9pt 10pt 12pt 14pt 16pt 18pt 20pt 22pt 24pt 26pt 28pt 30pt 32pt 34pt 36pt', - font_family_formats: ` Times New Roman=Times New Roman, Times, serif; Arial=Arial, Helvetica, sans-serif; Calibri=Calibri, sans-serif; Courier New=Courier New, Courier, monospace; Georgia=Georgia, serif; Verdana=Verdana, Geneva, sans-serif;`, - fullscreen_native: true, - content_style: ` + style_formats: [ + { + title: "Estilos de Borda", + items: [ + { title: "Linha Superior", format: "linhatopo" }, + { title: "Linha Inferior", format: "linhainferior" }, + ], + }, + ], + setup: (editor: any) => { + const customTemplates = [ + { + title: "Qualificação das Partes (Casamento)", + description: "Insere o bloco de qualificação para contraentes.", + content: `

QUALIFICAÇÃO DOS CONTRAENTES: Ele, brasileiro, solteiro, maior, [Profissão], portador da CI nº [RG], inscrito no CPF sob o nº [CPF], residente e domiciliado em [Endereço]. Ela, brasileira, solteira, maior, [Profissão], portadora da CI nº [RG], inscrita no CPF sob o nº [CPF], residente e domiciliada em [Endereço].


`, + }, + { + title: "Cláusula de Regime de Bens", + description: "Cláusula padrão de Comunhão Parcial de Bens.", + content: + "

O regime de bens adotado é o da Comunhão Parcial de Bens, nos termos dos artigos 1.658 e seguintes do Código Civil brasileiro.


", + }, + { + title: "Cláusula de Encerramento (Selo)", + description: "Texto final com espaço para o selo digital.", + content: + "

O referido é verdade e dou fé. Emitida nesta data. Selo Digital de Fiscalização: [Número do Selo]

", + }, + ]; + editor.ui.registry.addMenuButton("customTemplates", { + text: "Modelos", // O texto que aparecerá no botão + fetch: (callback: any) => { + const items = customTemplates.map((template) => ({ + type: "menuitem", + text: template.title, + onAction: () => { + // 3. Ação que acontece ao clicar no item do menu: insere o conteúdo + editor.insertContent(template.content); + }, + })); + callback(items); + }, + }); + }, + quickbars_selection_toolbar: + "bold italic underline | fontfamily | fontsize | quicklink blockquote | quicklink", + quickbars_insert_toolbar: + "bold italic underline fontfamily fontsize quicklink blockquote quicklink quickimage quicktable hr", + quickbars_image_toolbar: + "alignleft aligncenter alignright | rotateleft rotateright | imageoptions", + fontsize_formats: + "4pt 5pt 6pt 7pt 8pt 9pt 10pt 12pt 14pt 16pt 18pt 20pt 22pt 24pt 26pt 28pt 30pt 32pt 34pt 36pt", + font_family_formats: ` Times New Roman=Times New Roman, Times, serif; Arial=Arial, Helvetica, sans-serif; Calibri=Calibri, sans-serif; Courier New=Courier New, Courier, monospace; Georgia=Georgia, serif; Verdana=Verdana, Geneva, sans-serif;`, + fullscreen_native: true, + content_style: ` body { font-family: 'Times New Roman', Times, serif; font-size: 12pt; @@ -122,11 +155,11 @@ const MainEditor: React.FC = ({ initialValue, onEditorChange, m padding-bottom: 5px; margin-bottom: 5px; } - ` - }} - /> -
- ); + `, + }} + /> + + ); }; -export default MainEditor; \ No newline at end of file +export default MainEditor; diff --git a/src/components/app-sidebar.tsx b/src/components/app-sidebar.tsx index 0d82202..e1caec3 100644 --- a/src/components/app-sidebar.tsx +++ b/src/components/app-sidebar.tsx @@ -1,6 +1,6 @@ -"use client" +"use client"; -import * as React from "react" +import * as React from "react"; import { AudioWaveform, BookOpen, @@ -13,11 +13,11 @@ import { PieChart, Settings2, SquareTerminal, -} from "lucide-react" +} from "lucide-react"; -import { NavMain } from "@/components/nav-main" -import { NavProjects } from "@/components/nav-projects" -import { NavUser } from "@/components/nav-user" +import { NavMain } from "@/components/nav-main"; +import { NavProjects } from "@/components/nav-projects"; +import { NavUser } from "@/components/nav-user"; import { Sidebar, SidebarContent, @@ -27,9 +27,9 @@ import { SidebarMenuButton, SidebarMenuItem, SidebarRail, -} from "@/components/ui/sidebar" +} from "@/components/ui/sidebar"; -import useGUsuarioGetJWTHook from "@/hooks/auth/useGUsuarioGetJWTHook" +import useGUsuarioGetJWTHook from "@/hooks/auth/useGUsuarioGetJWTHook"; // This is sample data. const data = { @@ -98,23 +98,23 @@ const data = { }, { title: "Tipos de Logradouros", - url: "/cadastros/tipo-logradouro" + url: "/cadastros/tipo-logradouro", }, { title: "Bairro", - url: "/cadastros/bairro" + url: "/cadastros/bairro", }, { title: "Estado Civil", - url: "/cadastros/estado-civil" + url: "/cadastros/estado-civil", }, { title: "Tipo de Medida", - url: "/cadastros/medida-tipo" + url: "/cadastros/medida-tipo", }, { title: "Natureza Litígio (Censec)", - url: "/cadastros/censec-natureza-litigio" + url: "/cadastros/censec-natureza-litigio", }, { title: "Pessoas", @@ -135,7 +135,7 @@ const data = { { title: "Censec/Centrais", url: "/cadastros/censec/", - } + }, ], }, { @@ -202,78 +202,47 @@ const data = { icon: Map, }, ], -} +}; export function AppSidebar({ ...props }: React.ComponentProps) { - const { userAuthenticated } = useGUsuarioGetJWTHook(); return ( - - - - - - -
- -
+ Orius Tecnologia - - - Orius Tecnologia - - - - - - 25.9.1 - - - + 25.9.1
-
-
-
-
-
- - - {userAuthenticated?.data ? ( ) : ( "Carregando..." )} - -
- - ) + ); } diff --git a/src/components/login-form.tsx b/src/components/login-form.tsx index 724360d..0ab2864 100644 --- a/src/components/login-form.tsx +++ b/src/components/login-form.tsx @@ -1,42 +1,44 @@ -'use client' +"use client"; import Image from "next/image"; -import { cn } from "@/lib/utils" -import { Card, CardContent } from "@/components/ui/card" -import { Input } from "@/components/ui/input" -import z from "zod" -import { zodResolver } from "@hookform/resolvers/zod" -import GUsuarioLoginService from "@/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogin" -import { useForm } from "react-hook-form" -import { useState } from "react" +import { cn } from "@/lib/utils"; +import { Card, CardContent } from "@/components/ui/card"; +import { Input } from "@/components/ui/input"; +import z from "zod"; +import { zodResolver } from "@hookform/resolvers/zod"; +import GUsuarioLoginService from "@/app/(protected)/(administrativo)/_services/g_usuario/GUsuarioLogin"; +import { useForm } from "react-hook-form"; +import { useState } from "react"; import { Form, FormControl, FormField, FormItem, FormLabel, - FormMessage -} from "./ui/form" + FormMessage, +} from "./ui/form"; import LoadingButton from "@/app/_components/loadingButton/LoadingButton"; import { Button } from "./ui/button"; import { GUsuarioLoginSchema } from "@/app/(protected)/(administrativo)/_schemas/GUsuarioLoginSchema"; -type FormValues = z.infer +type FormValues = z.infer; -export function LoginForm({ className, ...props }: React.ComponentProps<"div">) { +export function LoginForm({ + className, + ...props +}: React.ComponentProps<"div">) { const [loading, setLoading] = useState(false); const form = useForm({ resolver: zodResolver(GUsuarioLoginSchema), defaultValues: { - login: '', - senha_api: '' + login: "", + senha_api: "", }, }); // onSubmit agora recebe o evento do form através do handleSubmit const onSubmit = async (values: FormValues) => { - // Ativa o estado de loading do botão setLoading(true); @@ -45,15 +47,17 @@ export function LoginForm({ className, ...props }: React.ComponentProps<"div">) // Removo o estado de loading do botão setLoading(false); - } + }; return (
- - +

Bem vindo de volta!

@@ -90,7 +94,12 @@ export function LoginForm({ className, ...props }: React.ComponentProps<"div">) /> {/* Botão de loading */} - +

@@ -106,7 +115,6 @@ export function LoginForm({ className, ...props }: React.ComponentProps<"div">) Chamar no Local
- @@ -123,8 +131,9 @@ export function LoginForm({ className, ...props }: React.ComponentProps<"div">)
- Ao clicar você concorda com Nossos termos de serviços e Políticas de Privacidade. + Ao clicar você concorda com Nossos termos de serviços e{" "} + Políticas de Privacidade.
- ) + ); } diff --git a/src/components/nav-main.tsx b/src/components/nav-main.tsx index a622c89..21fba63 100644 --- a/src/components/nav-main.tsx +++ b/src/components/nav-main.tsx @@ -1,13 +1,13 @@ -"use client" +"use client"; -import { ChevronRight, type LucideIcon } from "lucide-react" +import { ChevronRight, type LucideIcon } from "lucide-react"; import Link from "next/link"; import { Collapsible, CollapsibleContent, CollapsibleTrigger, -} from "@/components/ui/collapsible" +} from "@/components/ui/collapsible"; import { SidebarGroup, SidebarGroupLabel, @@ -17,102 +17,62 @@ import { SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, -} from "@/components/ui/sidebar" +} from "@/components/ui/sidebar"; export function NavMain({ items, }: { items: { - title: string - url: string - icon?: LucideIcon - isActive?: boolean + title: string; + url: string; + icon?: LucideIcon; + isActive?: boolean; items?: { - title: string - url: string - }[] - }[] + title: string; + url: string; + }[]; + }[]; }) { return ( - - - - - Platform - - + Platform - {items.map((item) => ( - - - - - {item.icon && } - - - {item.title} - - + {item.title} - - - - {item.items?.map((subItem) => ( - - - - - - - {subItem.title} - - - + {subItem.title} - - - ))} - - - - - ))} - - - - ) + ); } diff --git a/src/components/nav-projects.tsx b/src/components/nav-projects.tsx index f50b20d..85abd21 100644 --- a/src/components/nav-projects.tsx +++ b/src/components/nav-projects.tsx @@ -1,4 +1,4 @@ -"use client" +"use client"; import { Folder, @@ -6,7 +6,7 @@ import { MoreHorizontal, Trash2, type LucideIcon, -} from "lucide-react" +} from "lucide-react"; import { DropdownMenu, @@ -14,7 +14,7 @@ import { DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu" +} from "@/components/ui/dropdown-menu"; import { SidebarGroup, SidebarGroupLabel, @@ -23,18 +23,18 @@ import { SidebarMenuButton, SidebarMenuItem, useSidebar, -} from "@/components/ui/sidebar" +} from "@/components/ui/sidebar"; export function NavProjects({ projects, }: { projects: { - name: string - url: string - icon: LucideIcon - }[] + name: string; + url: string; + icon: LucideIcon; + }[]; }) { - const { isMobile } = useSidebar() + const { isMobile } = useSidebar(); return ( @@ -85,5 +85,5 @@ export function NavProjects({ - ) + ); } diff --git a/src/components/nav-user.tsx b/src/components/nav-user.tsx index 6b16114..96c8213 100644 --- a/src/components/nav-user.tsx +++ b/src/components/nav-user.tsx @@ -1,15 +1,7 @@ -"use client" +"use client"; -import { - ChevronsUpDown, - LogOut, - Sparkles, -} from "lucide-react" -import { - Avatar, - AvatarFallback, - AvatarImage, -} from "@/components/ui/avatar" +import { ChevronsUpDown, LogOut, Sparkles } from "lucide-react"; +import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar"; import { DropdownMenu, DropdownMenuContent, @@ -18,29 +10,20 @@ import { DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu" +} from "@/components/ui/dropdown-menu"; import { SidebarMenu, SidebarMenuButton, SidebarMenuItem, useSidebar, -} from "@/components/ui/sidebar" +} from "@/components/ui/sidebar"; -import GUsuarioAuthenticatedInterface from "@/interfaces/GUsuarioAuthenticatedInterface" -import ConfirmDialog from "@/app/_components/confirm_dialog/ConfirmDialog" -import { useGUsuarioLogoutHook } from "@/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioLogoutHook" -import { use, useCallback, useState } from "react" - -export function NavUser({ - - user - -}: { - - user: GUsuarioAuthenticatedInterface - -}) { +import GUsuarioAuthenticatedInterface from "@/interfaces/GUsuarioAuthenticatedInterface"; +import ConfirmDialog from "@/app/_components/confirm_dialog/ConfirmDialog"; +import { useGUsuarioLogoutHook } from "@/app/(protected)/(administrativo)/_hooks/g_usuario/useGUsuarioLogoutHook"; +import { use, useCallback, useState } from "react"; +export function NavUser({ user }: { user: GUsuarioAuthenticatedInterface }) { // Hook para encerrar sessão const { logoutUsuario } = useGUsuarioLogoutHook(); @@ -51,77 +34,47 @@ export function NavUser({ // Manipulação de formulário de confirmação const handleConfirmOpen = useCallback(async () => { - setIsConfirmOpen(true); - }, []); const handleLogoutConfirm = useCallback(async () => { - logoutUsuario(); - }, []); const handleLogoutCancel = useCallback(async () => { - setIsConfirmOpen(false); - - }, []) + }, []); if (!user) { - - return 'Carregando...'; - + return "Carregando..."; } return ( - <> - - - - - - - {user.sigla} - -
+ {user.nome} - - - {user.nome} - - - - - - {user.email} - - - + {user.email}
-
-
- -
- - - {user.sigla} - -
+ {user.nome} - - - {user.nome} - - - - - - {user.email} - - - + {user.email}
-
-
- - - Configurações - - - handleConfirmOpen()}> - + handleConfirmOpen()} + > - Log out - -
-
-
-
{/* Modal de confirmação */} @@ -210,8 +135,6 @@ export function NavUser({ onConfirm={() => handleLogoutConfirm()} onCancel={() => handleLogoutCancel()} /> - - - ) + ); } diff --git a/src/components/team-switcher.tsx b/src/components/team-switcher.tsx index 083e9ec..b366d5f 100644 --- a/src/components/team-switcher.tsx +++ b/src/components/team-switcher.tsx @@ -1,7 +1,7 @@ -"use client" +"use client"; -import * as React from "react" -import { ChevronsUpDown, Plus } from "lucide-react" +import * as React from "react"; +import { ChevronsUpDown, Plus } from "lucide-react"; import { DropdownMenu, @@ -11,28 +11,28 @@ import { DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu" +} from "@/components/ui/dropdown-menu"; import { SidebarMenu, SidebarMenuButton, SidebarMenuItem, useSidebar, -} from "@/components/ui/sidebar" +} from "@/components/ui/sidebar"; export function TeamSwitcher({ teams, }: { teams: { - name: string - logo: React.ElementType - plan: string - }[] + name: string; + logo: React.ElementType; + plan: string; + }[]; }) { - const { isMobile } = useSidebar() - const [activeTeam, setActiveTeam] = React.useState(teams[0]) + const { isMobile } = useSidebar(); + const [activeTeam, setActiveTeam] = React.useState(teams[0]); if (!activeTeam) { - return null + return null; } return ( @@ -87,5 +87,5 @@ export function TeamSwitcher({ - ) + ); } diff --git a/src/components/ui/alert-dialog.tsx b/src/components/ui/alert-dialog.tsx index 0863e40..c37e0cf 100644 --- a/src/components/ui/alert-dialog.tsx +++ b/src/components/ui/alert-dialog.tsx @@ -1,15 +1,15 @@ -"use client" +"use client"; -import * as React from "react" -import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog" +import * as React from "react"; +import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog"; -import { cn } from "@/lib/utils" -import { buttonVariants } from "@/components/ui/button" +import { cn } from "@/lib/utils"; +import { buttonVariants } from "@/components/ui/button"; function AlertDialog({ ...props }: React.ComponentProps) { - return + return ; } function AlertDialogTrigger({ @@ -17,7 +17,7 @@ function AlertDialogTrigger({ }: React.ComponentProps) { return ( - ) + ); } function AlertDialogPortal({ @@ -25,7 +25,7 @@ function AlertDialogPortal({ }: React.ComponentProps) { return ( - ) + ); } function AlertDialogOverlay({ @@ -37,11 +37,11 @@ function AlertDialogOverlay({ data-slot="alert-dialog-overlay" className={cn( "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50", - className + className, )} {...props} /> - ) + ); } function AlertDialogContent({ @@ -55,12 +55,12 @@ function AlertDialogContent({ data-slot="alert-dialog-content" className={cn( "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg", - className + className, )} {...props} /> - ) + ); } function AlertDialogHeader({ @@ -73,7 +73,7 @@ function AlertDialogHeader({ className={cn("flex flex-col gap-2 text-center sm:text-left", className)} {...props} /> - ) + ); } function AlertDialogFooter({ @@ -85,11 +85,11 @@ function AlertDialogFooter({ data-slot="alert-dialog-footer" className={cn( "flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", - className + className, )} {...props} /> - ) + ); } function AlertDialogTitle({ @@ -102,7 +102,7 @@ function AlertDialogTitle({ className={cn("text-lg font-semibold", className)} {...props} /> - ) + ); } function AlertDialogDescription({ @@ -115,7 +115,7 @@ function AlertDialogDescription({ className={cn("text-muted-foreground text-sm", className)} {...props} /> - ) + ); } function AlertDialogAction({ @@ -127,7 +127,7 @@ function AlertDialogAction({ className={cn(buttonVariants(), className)} {...props} /> - ) + ); } function AlertDialogCancel({ @@ -139,7 +139,7 @@ function AlertDialogCancel({ className={cn(buttonVariants({ variant: "outline" }), className)} {...props} /> - ) + ); } export { @@ -154,4 +154,4 @@ export { AlertDialogDescription, AlertDialogAction, AlertDialogCancel, -} +}; diff --git a/src/components/ui/avatar.tsx b/src/components/ui/avatar.tsx index 71e428b..c4475c2 100644 --- a/src/components/ui/avatar.tsx +++ b/src/components/ui/avatar.tsx @@ -1,9 +1,9 @@ -"use client" +"use client"; -import * as React from "react" -import * as AvatarPrimitive from "@radix-ui/react-avatar" +import * as React from "react"; +import * as AvatarPrimitive from "@radix-ui/react-avatar"; -import { cn } from "@/lib/utils" +import { cn } from "@/lib/utils"; function Avatar({ className, @@ -14,11 +14,11 @@ function Avatar({ data-slot="avatar" className={cn( "relative flex size-8 shrink-0 overflow-hidden rounded-full", - className + className, )} {...props} /> - ) + ); } function AvatarImage({ @@ -31,7 +31,7 @@ function AvatarImage({ className={cn("aspect-square size-full", className)} {...props} /> - ) + ); } function AvatarFallback({ @@ -43,11 +43,11 @@ function AvatarFallback({ data-slot="avatar-fallback" className={cn( "bg-muted flex size-full items-center justify-center rounded-full", - className + className, )} {...props} /> - ) + ); } -export { Avatar, AvatarImage, AvatarFallback } +export { Avatar, AvatarImage, AvatarFallback }; diff --git a/src/components/ui/breadcrumb.tsx b/src/components/ui/breadcrumb.tsx index eb88f32..f63ae19 100644 --- a/src/components/ui/breadcrumb.tsx +++ b/src/components/ui/breadcrumb.tsx @@ -1,11 +1,11 @@ -import * as React from "react" -import { Slot } from "@radix-ui/react-slot" -import { ChevronRight, MoreHorizontal } from "lucide-react" +import * as React from "react"; +import { Slot } from "@radix-ui/react-slot"; +import { ChevronRight, MoreHorizontal } from "lucide-react"; -import { cn } from "@/lib/utils" +import { cn } from "@/lib/utils"; function Breadcrumb({ ...props }: React.ComponentProps<"nav">) { - return
- ) + ); } function Sidebar({ @@ -159,11 +159,11 @@ function Sidebar({ children, ...props }: React.ComponentProps<"div"> & { - side?: "left" | "right" - variant?: "sidebar" | "floating" | "inset" - collapsible?: "offcanvas" | "icon" | "none" + side?: "left" | "right"; + variant?: "sidebar" | "floating" | "inset"; + collapsible?: "offcanvas" | "icon" | "none"; }) { - const { isMobile, state, openMobile, setOpenMobile } = useSidebar() + const { isMobile, state, openMobile, setOpenMobile } = useSidebar(); if (collapsible === "none") { return ( @@ -171,13 +171,13 @@ function Sidebar({ data-slot="sidebar" className={cn( "bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col", - className + className, )} {...props} > {children} - ) + ); } if (isMobile) { @@ -202,7 +202,7 @@ function Sidebar({
{children}
- ) + ); } return ( @@ -223,7 +223,7 @@ function Sidebar({ "group-data-[side=right]:rotate-180", variant === "floating" || variant === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" - : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)" + : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)", )} />
@@ -250,7 +250,7 @@ function Sidebar({
- ) + ); } function SidebarTrigger({ @@ -258,7 +258,7 @@ function SidebarTrigger({ onClick, ...props }: React.ComponentProps) { - const { toggleSidebar } = useSidebar() + const { toggleSidebar } = useSidebar(); return ( - ) + ); } function SidebarRail({ className, ...props }: React.ComponentProps<"button">) { - const { toggleSidebar } = useSidebar() + const { toggleSidebar } = useSidebar(); return (