diff --git a/package-lock.json b/package-lock.json index 20c668a..2aed529 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,7 +18,8 @@ "@nestjs/platform-express": "^11.1.6", "@nestjs/schedule": "^6.0.0", "@nestjs/swagger": "^11.2.0", - "@prisma/client": "^6.18.0", + "@prisma/adapter-mariadb": "^7.3.0", + "@prisma/client": "^7.3.0", "@quixo3/prisma-session-store": "^3.1.13", "axios": "^1.13.2", "bullmq": "^5.58.0", @@ -51,13 +52,14 @@ "@types/passport-jwt": "^4.0.1", "@types/passport-openidconnect": "^0.1.3", "@types/supertest": "^6.0.2", + "dotenv": "^17.2.3", "eslint": "^9.18.0", "eslint-config-prettier": "^10.0.1", "eslint-plugin-prettier": "^5.2.2", "globals": "^16.0.0", "jest": "^29.7.0", "prettier": "^3.4.2", - "prisma": "^6.18.0", + "prisma": "^7.3.0", "source-map-support": "^0.5.21", "supertest": "^7.0.0", "ts-jest": "^29.2.5", @@ -705,6 +707,43 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, + "node_modules/@chevrotain/cst-dts-gen": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@chevrotain/cst-dts-gen/-/cst-dts-gen-10.5.0.tgz", + "integrity": "sha512-lhmC/FyqQ2o7pGK4Om+hzuDrm9rhFYIJ/AXoQBeongmn870Xeb0L6oGEiuR8nohFNL5sMaQEJWCxr1oIVIVXrw==", + "devOptional": true, + "license": "Apache-2.0", + "dependencies": { + "@chevrotain/gast": "10.5.0", + "@chevrotain/types": "10.5.0", + "lodash": "4.17.21" + } + }, + "node_modules/@chevrotain/gast": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@chevrotain/gast/-/gast-10.5.0.tgz", + "integrity": "sha512-pXdMJ9XeDAbgOWKuD1Fldz4ieCs6+nLNmyVhe2gZVqoO7v8HXuHYs5OV2EzUtbuai37TlOAQHrTDvxMnvMJz3A==", + "devOptional": true, + "license": "Apache-2.0", + "dependencies": { + "@chevrotain/types": "10.5.0", + "lodash": "4.17.21" + } + }, + "node_modules/@chevrotain/types": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@chevrotain/types/-/types-10.5.0.tgz", + "integrity": "sha512-f1MAia0x/pAVPWH/T73BJVyO2XU5tI4/iE7cnxb7tqdNTNhQI3Uq3XkqcoteTmD4t1aM0LbHCJOhgIDn07kl2A==", + "devOptional": true, + "license": "Apache-2.0" + }, + "node_modules/@chevrotain/utils": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@chevrotain/utils/-/utils-10.5.0.tgz", + "integrity": "sha512-hBzuU5+JjB2cqNZyszkDHZgOSrUUT8V3dhgRl8Q9Gp6dAj/H5+KILGjbhDpc3Iy9qmqlm/akuOI2ut9VUtzJxQ==", + "devOptional": true, + "license": "Apache-2.0" + }, "node_modules/@colors/colors": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", @@ -737,6 +776,36 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@electric-sql/pglite": { + "version": "0.3.15", + "resolved": "https://registry.npmjs.org/@electric-sql/pglite/-/pglite-0.3.15.tgz", + "integrity": "sha512-Cj++n1Mekf9ETfdc16TlDi+cDDQF0W7EcbyRHYOAeZdsAe8M/FJg18itDTSwyHfar2WIezawM9o0EKaRGVKygQ==", + "devOptional": true, + "license": "Apache-2.0" + }, + "node_modules/@electric-sql/pglite-socket": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/@electric-sql/pglite-socket/-/pglite-socket-0.0.20.tgz", + "integrity": "sha512-J5nLGsicnD9wJHnno9r+DGxfcZWh+YJMCe0q/aCgtG6XOm9Z7fKeite8IZSNXgZeGltSigM9U/vAWZQWdgcSFg==", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "pglite-server": "dist/scripts/server.js" + }, + "peerDependencies": { + "@electric-sql/pglite": "0.3.15" + } + }, + "node_modules/@electric-sql/pglite-tools": { + "version": "0.2.20", + "resolved": "https://registry.npmjs.org/@electric-sql/pglite-tools/-/pglite-tools-0.2.20.tgz", + "integrity": "sha512-BK50ZnYa3IG7ztXhtgYf0Q7zijV32Iw1cYS8C+ThdQlwx12V5VZ9KRJ42y82Hyb4PkTxZQklVQA9JHyUlex33A==", + "devOptional": true, + "license": "Apache-2.0", + "peerDependencies": { + "@electric-sql/pglite": "0.3.15" + } + }, "node_modules/@emnapi/runtime": { "version": "1.4.5", "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.5.tgz", @@ -1305,6 +1374,19 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, + "node_modules/@hono/node-server": { + "version": "1.19.9", + "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.9.tgz", + "integrity": "sha512-vHL6w3ecZsky+8P5MD+eFfaGTyCeOHUIFYMGpQGbrBTSmNNoxv0if69rEZ5giu36weC5saFuznL411gRX7bJDw==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=18.14.1" + }, + "peerDependencies": { + "hono": "^4" + } + }, "node_modules/@humanfs/core": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", @@ -2607,6 +2689,20 @@ "integrity": "sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==", "license": "MIT" }, + "node_modules/@mrleebo/prisma-ast": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@mrleebo/prisma-ast/-/prisma-ast-0.13.1.tgz", + "integrity": "sha512-XyroGQXcHrZdvmrGJvsA9KNeOOgGMg1Vg9OlheUsBOSKznLMDl+YChxbkboRHvtFYJEMRYmlV3uoo/njCw05iw==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "chevrotain": "^10.5.0", + "lilconfig": "^2.1.0" + }, + "engines": { + "node": ">=16" + } + }, "node_modules/@msgpackr-extract/msgpackr-extract-darwin-arm64": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.3.tgz", @@ -3081,6 +3177,18 @@ "rxjs": "^7.1.0" } }, + "node_modules/@nestjs/config/node_modules/dotenv": { + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/@nestjs/core": { "version": "11.1.7", "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-11.1.7.tgz", @@ -3286,9 +3394,9 @@ } }, "node_modules/@nestjs/swagger": { - "version": "11.2.3", - "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-11.2.3.tgz", - "integrity": "sha512-a0xFfjeqk69uHIUpP8u0ryn4cKuHdra2Ug96L858i0N200Hxho+n3j+TlQXyOF4EstLSGjTfxI1Xb2E1lUxeNg==", + "version": "11.2.5", + "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-11.2.5.tgz", + "integrity": "sha512-wCykbEybMqiYcvkyzPW4SbXKcwra9AGdajm0MvFgKR3W+gd1hfeKlo67g/s9QCRc/mqUU4KOE5Qtk7asMeFuiA==", "license": "MIT", "dependencies": { "@microsoft/tsdoc": "0.16.0", @@ -3296,10 +3404,10 @@ "js-yaml": "4.1.1", "lodash": "4.17.21", "path-to-regexp": "8.3.0", - "swagger-ui-dist": "5.30.2" + "swagger-ui-dist": "5.31.0" }, "peerDependencies": { - "@fastify/static": "^8.0.0", + "@fastify/static": "^8.0.0 || ^9.0.0", "@nestjs/common": "^11.0.1", "@nestjs/core": "^11.0.1", "class-transformer": "*", @@ -3426,17 +3534,30 @@ "url": "https://opencollective.com/pkgr" } }, + "node_modules/@prisma/adapter-mariadb": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/adapter-mariadb/-/adapter-mariadb-7.3.0.tgz", + "integrity": "sha512-cZaNZqdnm255Di8+0ztWDVdg40zRburNEMqHN2AIP98SO0Xbo9UDqHKC7sYkmm5Rqy9fNVxMjBJnoiZJ4Ae+tw==", + "license": "Apache-2.0", + "dependencies": { + "@prisma/driver-adapter-utils": "7.3.0", + "mariadb": "3.4.5" + } + }, "node_modules/@prisma/client": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/@prisma/client/-/client-6.18.0.tgz", - "integrity": "sha512-jnL2I9gDnPnw4A+4h5SuNn8Gc+1mL1Z79U/3I9eE2gbxJG1oSA+62ByPW4xkeDgwE0fqMzzpAZ7IHxYnLZ4iQA==", - "hasInstallScript": true, + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/client/-/client-7.3.0.tgz", + "integrity": "sha512-FXBIxirqQfdC6b6HnNgxGmU7ydCPEPk7maHMOduJJfnTP+MuOGa15X4omjR/zpPUUpm8ef/mEFQjJudOGkXFcQ==", + "license": "Apache-2.0", + "dependencies": { + "@prisma/client-runtime-utils": "7.3.0" + }, "engines": { - "node": ">=18.18" + "node": "^20.19 || ^22.12 || >=24.0" }, "peerDependencies": { "prisma": "*", - "typescript": ">=5.1.0" + "typescript": ">=5.4.0" }, "peerDependenciesMeta": { "prisma": { @@ -3447,11 +3568,18 @@ } } }, + "node_modules/@prisma/client-runtime-utils": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/client-runtime-utils/-/client-runtime-utils-7.3.0.tgz", + "integrity": "sha512-dG/ceD9c+tnXATPk8G+USxxYM9E6UdMTnQeQ+1SZUDxTz7SgQcfxEqafqIQHcjdlcNK/pvmmLfSwAs3s2gYwUw==", + "license": "Apache-2.0" + }, "node_modules/@prisma/config": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/@prisma/config/-/config-6.18.0.tgz", - "integrity": "sha512-rgFzspCpwsE+q3OF/xkp0fI2SJ3PfNe9LLMmuSVbAZ4nN66WfBiKqJKo/hLz3ysxiPQZf8h1SMf2ilqPMeWATQ==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/config/-/config-7.3.0.tgz", + "integrity": "sha512-QyMV67+eXF7uMtKxTEeQqNu/Be7iH+3iDZOQZW5ttfbSwBamCSdwPszA0dum+Wx27I7anYTPLmRmMORKViSW1A==", "devOptional": true, + "license": "Apache-2.0", "dependencies": { "c12": "3.1.0", "deepmerge-ts": "7.1.5", @@ -3460,48 +3588,133 @@ } }, "node_modules/@prisma/debug": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-6.18.0.tgz", - "integrity": "sha512-PMVPMmxPj0ps1VY75DIrT430MoOyQx9hmm174k6cmLZpcI95rAPXOQ+pp8ANQkJtNyLVDxnxVJ0QLbrm/ViBcg==", - "devOptional": true + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-7.3.0.tgz", + "integrity": "sha512-yh/tHhraCzYkffsI1/3a7SHX8tpgbJu1NPnuxS4rEpJdWAUDHUH25F1EDo6PPzirpyLNkgPPZdhojQK804BGtg==", + "license": "Apache-2.0" + }, + "node_modules/@prisma/dev": { + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/@prisma/dev/-/dev-0.20.0.tgz", + "integrity": "sha512-ovlBYwWor0OzG+yH4J3Ot+AneD818BttLA+Ii7wjbcLHUrnC4tbUPVGyNd3c/+71KETPKZfjhkTSpdS15dmXNQ==", + "devOptional": true, + "license": "ISC", + "dependencies": { + "@electric-sql/pglite": "0.3.15", + "@electric-sql/pglite-socket": "0.0.20", + "@electric-sql/pglite-tools": "0.2.20", + "@hono/node-server": "1.19.9", + "@mrleebo/prisma-ast": "0.13.1", + "@prisma/get-platform": "7.2.0", + "@prisma/query-plan-executor": "7.2.0", + "foreground-child": "3.3.1", + "get-port-please": "3.2.0", + "hono": "4.11.4", + "http-status-codes": "2.3.0", + "pathe": "2.0.3", + "proper-lockfile": "4.1.2", + "remeda": "2.33.4", + "std-env": "3.10.0", + "valibot": "1.2.0", + "zeptomatch": "2.1.0" + } + }, + "node_modules/@prisma/driver-adapter-utils": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/driver-adapter-utils/-/driver-adapter-utils-7.3.0.tgz", + "integrity": "sha512-Wdlezh1ck0Rq2dDINkfSkwbR53q53//Eo1vVqVLwtiZ0I6fuWDGNPxwq+SNAIHnsU+FD/m3aIJKevH3vF13U3w==", + "license": "Apache-2.0", + "dependencies": { + "@prisma/debug": "7.3.0" + } }, "node_modules/@prisma/engines": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-6.18.0.tgz", - "integrity": "sha512-i5RzjGF/ex6AFgqEe2o1IW8iIxJGYVQJVRau13kHPYEL1Ck8Zvwuzamqed/1iIljs5C7L+Opiz5TzSsUebkriA==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-7.3.0.tgz", + "integrity": "sha512-cWRQoPDXPtR6stOWuWFZf9pHdQ/o8/QNWn0m0zByxf5Kd946Q875XdEJ52pEsX88vOiXUmjuPG3euw82mwQNMg==", "devOptional": true, "hasInstallScript": true, + "license": "Apache-2.0", "dependencies": { - "@prisma/debug": "6.18.0", - "@prisma/engines-version": "6.18.0-8.34b5a692b7bd79939a9a2c3ef97d816e749cda2f", - "@prisma/fetch-engine": "6.18.0", - "@prisma/get-platform": "6.18.0" + "@prisma/debug": "7.3.0", + "@prisma/engines-version": "7.3.0-16.9d6ad21cbbceab97458517b147a6a09ff43aa735", + "@prisma/fetch-engine": "7.3.0", + "@prisma/get-platform": "7.3.0" } }, "node_modules/@prisma/engines-version": { - "version": "6.18.0-8.34b5a692b7bd79939a9a2c3ef97d816e749cda2f", - "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-6.18.0-8.34b5a692b7bd79939a9a2c3ef97d816e749cda2f.tgz", - "integrity": "sha512-T7Af4QsJQnSgWN1zBbX+Cha5t4qjHRxoeoWpK4JugJzG/ipmmDMY5S+O0N1ET6sCBNVkf6lz+Y+ZNO9+wFU8pQ==", - "devOptional": true + "version": "7.3.0-16.9d6ad21cbbceab97458517b147a6a09ff43aa735", + "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-7.3.0-16.9d6ad21cbbceab97458517b147a6a09ff43aa735.tgz", + "integrity": "sha512-IH2va2ouUHihyiTTRW889LjKAl1CusZOvFfZxCDNpjSENt7g2ndFsK0vdIw/72v7+jCN6YgkHmdAP/BI7SDgyg==", + "devOptional": true, + "license": "Apache-2.0" + }, + "node_modules/@prisma/engines/node_modules/@prisma/get-platform": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-7.3.0.tgz", + "integrity": "sha512-N7c6m4/I0Q6JYmWKP2RCD/sM9eWiyCPY98g5c0uEktObNSZnugW2U/PO+pwL0UaqzxqTXt7gTsYsb0FnMnJNbg==", + "devOptional": true, + "license": "Apache-2.0", + "dependencies": { + "@prisma/debug": "7.3.0" + } }, "node_modules/@prisma/fetch-engine": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/@prisma/fetch-engine/-/fetch-engine-6.18.0.tgz", - "integrity": "sha512-TdaBvTtBwP3IoqVYoGIYpD4mWlk0pJpjTJjir/xLeNWlwog7Sl3bD2J0jJ8+5+q/6RBg+acb9drsv5W6lqae7A==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/fetch-engine/-/fetch-engine-7.3.0.tgz", + "integrity": "sha512-Mm0F84JMqM9Vxk70pzfNpGJ1lE4hYjOeLMu7nOOD1i83nvp8MSAcFYBnHqLvEZiA6onUR+m8iYogtOY4oPO5lQ==", "devOptional": true, + "license": "Apache-2.0", "dependencies": { - "@prisma/debug": "6.18.0", - "@prisma/engines-version": "6.18.0-8.34b5a692b7bd79939a9a2c3ef97d816e749cda2f", - "@prisma/get-platform": "6.18.0" + "@prisma/debug": "7.3.0", + "@prisma/engines-version": "7.3.0-16.9d6ad21cbbceab97458517b147a6a09ff43aa735", + "@prisma/get-platform": "7.3.0" + } + }, + "node_modules/@prisma/fetch-engine/node_modules/@prisma/get-platform": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-7.3.0.tgz", + "integrity": "sha512-N7c6m4/I0Q6JYmWKP2RCD/sM9eWiyCPY98g5c0uEktObNSZnugW2U/PO+pwL0UaqzxqTXt7gTsYsb0FnMnJNbg==", + "devOptional": true, + "license": "Apache-2.0", + "dependencies": { + "@prisma/debug": "7.3.0" } }, "node_modules/@prisma/get-platform": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-6.18.0.tgz", - "integrity": "sha512-uXNJCJGhxTCXo2B25Ta91Rk1/Nmlqg9p7G9GKh8TPhxvAyXCvMNQoogj4JLEUy+3ku8g59cpyQIKFhqY2xO2bg==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-7.2.0.tgz", + "integrity": "sha512-k1V0l0Td1732EHpAfi2eySTezyllok9dXb6UQanajkJQzPUGi3vO2z7jdkz67SypFTdmbnyGYxvEvYZdZsMAVA==", "devOptional": true, + "license": "Apache-2.0", "dependencies": { - "@prisma/debug": "6.18.0" + "@prisma/debug": "7.2.0" + } + }, + "node_modules/@prisma/get-platform/node_modules/@prisma/debug": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-7.2.0.tgz", + "integrity": "sha512-YSGTiSlBAVJPzX4ONZmMotL+ozJwQjRmZweQNIq/ER0tQJKJynNkRB3kyvt37eOfsbMCXk3gnLF6J9OJ4QWftw==", + "devOptional": true, + "license": "Apache-2.0" + }, + "node_modules/@prisma/query-plan-executor": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@prisma/query-plan-executor/-/query-plan-executor-7.2.0.tgz", + "integrity": "sha512-EOZmNzcV8uJ0mae3DhTsiHgoNCuu1J9mULQpGCh62zN3PxPTd+qI9tJvk5jOst8WHKQNwJWR3b39t0XvfBB0WQ==", + "devOptional": true, + "license": "Apache-2.0" + }, + "node_modules/@prisma/studio-core": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@prisma/studio-core/-/studio-core-0.13.1.tgz", + "integrity": "sha512-agdqaPEePRHcQ7CexEfkX1RvSH9uWDb6pXrZnhCRykhDFAV0/0P3d07WtfiY8hZWb7oRU4v+NkT4cGFHkQJIPg==", + "devOptional": true, + "license": "Apache-2.0", + "peerDependencies": { + "@types/react": "^18.0.0 || ^19.0.0", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" } }, "node_modules/@quixo3/prisma-session-store": { @@ -3584,10 +3797,11 @@ } }, "node_modules/@standard-schema/spec": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.0.0.tgz", - "integrity": "sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==", - "devOptional": true + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", + "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", + "devOptional": true, + "license": "MIT" }, "node_modules/@swc/cli": { "version": "0.6.0", @@ -4052,6 +4266,12 @@ "@types/express": "*" } }, + "node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", + "license": "MIT" + }, "node_modules/@types/graceful-fs": { "version": "4.1.9", "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", @@ -4225,6 +4445,17 @@ "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", "dev": true }, + "node_modules/@types/react": { + "version": "19.2.10", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.10.tgz", + "integrity": "sha512-WPigyYuGhgZ/cTPRXB2EwUw+XvsRA3GqHlsP4qteqrnnjDrApbS7MxcGr/hke5iUoeB7E/gQtrs9I37zAJ0Vjw==", + "devOptional": true, + "license": "MIT", + "peer": true, + "dependencies": { + "csstype": "^3.2.2" + } + }, "node_modules/@types/send": { "version": "0.17.5", "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.5.tgz", @@ -5489,6 +5720,16 @@ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, + "node_modules/aws-ssl-profiles": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/aws-ssl-profiles/-/aws-ssl-profiles-1.1.2.tgz", + "integrity": "sha512-NZKeq9AfyQvEeNlN0zSYAaWrmBffJh3IELMZfRpJVWgrpEbtEpnjvzqBPf+mxoI287JohRDoa+/nsfqqiZmF6g==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 6.0.0" + } + }, "node_modules/axios": { "version": "1.13.2", "resolved": "https://registry.npmjs.org/axios/-/axios-1.13.2.tgz", @@ -5895,6 +6136,7 @@ "resolved": "https://registry.npmjs.org/c12/-/c12-3.1.0.tgz", "integrity": "sha512-uWoS8OU1MEIsOv8p/5a82c3H31LsWVR5qiyXVfBNOzfffjUWtPnhAb4BYI2uG2HfGmZmFjCtui5XNWaps+iFuw==", "devOptional": true, + "license": "MIT", "dependencies": { "chokidar": "^4.0.3", "confbox": "^0.2.2", @@ -5923,6 +6165,7 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", "devOptional": true, + "license": "BSD-2-Clause", "engines": { "node": ">=12" }, @@ -6055,6 +6298,21 @@ "dev": true, "license": "MIT" }, + "node_modules/chevrotain": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-10.5.0.tgz", + "integrity": "sha512-Pkv5rBY3+CsHOYfV5g/Vs5JY9WTHHDEKOlohI2XeygaZhUeqhAlldZ8Hz9cRmxu709bvS08YzxHdTPHhffc13A==", + "devOptional": true, + "license": "Apache-2.0", + "dependencies": { + "@chevrotain/cst-dts-gen": "10.5.0", + "@chevrotain/gast": "10.5.0", + "@chevrotain/types": "10.5.0", + "@chevrotain/utils": "10.5.0", + "lodash": "4.17.21", + "regexp-to-ast": "0.5.0" + } + }, "node_modules/chokidar": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", @@ -6099,6 +6357,7 @@ "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.6.tgz", "integrity": "sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==", "devOptional": true, + "license": "MIT", "dependencies": { "consola": "^3.2.3" } @@ -6344,7 +6603,8 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz", "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/consola": { "version": "3.4.2", @@ -6500,7 +6760,7 @@ "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, + "devOptional": true, "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -6510,6 +6770,14 @@ "node": ">= 8" } }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "devOptional": true, + "license": "MIT", + "peer": true + }, "node_modules/debug": { "version": "4.4.3", "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", @@ -6588,6 +6856,7 @@ "resolved": "https://registry.npmjs.org/deepmerge-ts/-/deepmerge-ts-7.1.5.tgz", "integrity": "sha512-HOJkrhaYsweh+W+e74Yn7YStZOilkoPb6fycpwNLKzSPtruFs48nYis0zy5yJz1+ktUhHxoRDJ27RQAWLIJVJw==", "devOptional": true, + "license": "BSD-3-Clause", "engines": { "node": ">=16.0.0" } @@ -6617,7 +6886,8 @@ "version": "6.1.4", "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/delayed-stream": { "version": "1.0.0", @@ -6647,7 +6917,8 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.5.tgz", "integrity": "sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/detect-libc": { "version": "2.0.4", @@ -6677,10 +6948,11 @@ } }, "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.4.tgz", + "integrity": "sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" } @@ -6695,9 +6967,11 @@ } }, "node_modules/dotenv": { - "version": "16.4.7", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", - "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", + "version": "17.2.3", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.3.tgz", + "integrity": "sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==", + "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=12" }, @@ -6719,6 +6993,18 @@ "url": "https://dotenvx.com" } }, + "node_modules/dotenv-expand/node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/dunder-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", @@ -6750,6 +7036,7 @@ "resolved": "https://registry.npmjs.org/effect/-/effect-3.18.4.tgz", "integrity": "sha512-b1LXQJLe9D11wfnOKAk3PKxuqYshQ0Heez+y5pnkd3jLj1yx9QhM72zZ9uUrOQyNvrs2GZZd/3maL0ZV18YuDA==", "devOptional": true, + "license": "MIT", "dependencies": { "@standard-schema/spec": "^1.0.0", "fast-check": "^3.23.1" @@ -6800,6 +7087,7 @@ "resolved": "https://registry.npmjs.org/empathic/-/empathic-2.0.0.tgz", "integrity": "sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==", "devOptional": true, + "license": "MIT", "engines": { "node": ">=14" } @@ -7317,10 +7605,11 @@ } }, "node_modules/exsolve": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.7.tgz", - "integrity": "sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==", - "devOptional": true + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.8.tgz", + "integrity": "sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==", + "devOptional": true, + "license": "MIT" }, "node_modules/ext-list": { "version": "2.2.2", @@ -7362,6 +7651,7 @@ "url": "https://opencollective.com/fast-check" } ], + "license": "MIT", "dependencies": { "pure-rand": "^6.1.0" }, @@ -7655,6 +7945,23 @@ } } }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "devOptional": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/fork-ts-checker-webpack-plugin": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-9.1.0.tgz", @@ -7807,6 +8114,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/generate-function": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", + "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "is-property": "^1.0.2" + } + }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -7857,6 +8174,13 @@ "node": ">=8.0.0" } }, + "node_modules/get-port-please": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.2.0.tgz", + "integrity": "sha512-I9QVvBw5U/hw3RmWpYKRumUeaDgxTPd401x364rLmWBJcOQ753eov1eTgzDqRG9bqFIfDc7gfzcQEWrUri3o1A==", + "devOptional": true, + "license": "MIT" + }, "node_modules/get-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", @@ -7898,6 +8222,7 @@ "resolved": "https://registry.npmjs.org/giget/-/giget-2.0.0.tgz", "integrity": "sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA==", "devOptional": true, + "license": "MIT", "dependencies": { "citty": "^0.1.6", "consola": "^3.4.0", @@ -8014,7 +8339,14 @@ "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true + "devOptional": true + }, + "node_modules/grammex": { + "version": "3.1.12", + "resolved": "https://registry.npmjs.org/grammex/-/grammex-3.1.12.tgz", + "integrity": "sha512-6ufJOsSA7LcQehIJNCO7HIBykfM7DXQual0Ny780/DEcJIpBlHRvcqEBWGPYd7hrXL2GJ3oJI1MIhaXjWmLQOQ==", + "devOptional": true, + "license": "MIT" }, "node_modules/graphemer": { "version": "1.4.0", @@ -8022,6 +8354,12 @@ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, + "node_modules/graphmatch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/graphmatch/-/graphmatch-1.1.0.tgz", + "integrity": "sha512-0E62MaTW5rPZVRLyIJZG/YejmdA/Xr1QydHEw3Vt+qOKkMIOE8WDLc9ZX2bmAjtJFZcId4lEdrdmASsEy7D1QA==", + "devOptional": true + }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -8076,6 +8414,16 @@ "node": ">= 0.4" } }, + "node_modules/hono": { + "version": "4.11.4", + "resolved": "https://registry.npmjs.org/hono/-/hono-4.11.4.tgz", + "integrity": "sha512-U7tt8JsyrxSRKspfhtLET79pU8K+tInj5QZXs1jSugO1Vq5dFj3kmZsRldo29mTBfcjDRVRXrEZ6LS63Cog9ZA==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=16.9.0" + } + }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -8108,6 +8456,13 @@ "url": "https://opencollective.com/express" } }, + "node_modules/http-status-codes": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/http-status-codes/-/http-status-codes-2.3.0.tgz", + "integrity": "sha512-RJ8XvFvpPM/Dmc5SV+dC4y5PCeOhT3x1Hq0NU3rjGeg5a/CqlhZ7uudknPwZFz4aeAXDcbAyaeP7GAo9lvngtA==", + "devOptional": true, + "license": "MIT" + }, "node_modules/http2-wrapper": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.1.tgz", @@ -8366,6 +8721,13 @@ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==" }, + "node_modules/is-property": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", + "integrity": "sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==", + "devOptional": true, + "license": "MIT" + }, "node_modules/is-stream": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", @@ -8394,7 +8756,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "devOptional": true }, "node_modules/istanbul-lib-coverage": { "version": "3.2.2", @@ -9313,6 +9675,16 @@ "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.12.10.tgz", "integrity": "sha512-E91vHJD61jekHHR/RF/E83T/CMoaLXT7cwYA75T4gim4FZjnM6hbJjVIGg7chqlSqRsSvQ3izGmOjHy1SQzcGQ==" }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -9444,6 +9816,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/long": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz", + "integrity": "sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==", + "devOptional": true, + "license": "Apache-2.0" + }, "node_modules/lowercase-keys": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz", @@ -9465,6 +9844,22 @@ "yallist": "^3.0.2" } }, + "node_modules/lru.min": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lru.min/-/lru.min-1.1.4.tgz", + "integrity": "sha512-DqC6n3QQ77zdFpCMASA1a3Jlb64Hv2N2DciFGkO/4L9+q/IpIAuRlKOvCXabtRW6cQf8usbmM6BE/TOPysCdIA==", + "devOptional": true, + "license": "MIT", + "engines": { + "bun": ">=1.0.0", + "deno": ">=1.30.0", + "node": ">=8.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wellwelwel" + } + }, "node_modules/luxon": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.7.2.tgz", @@ -9512,6 +9907,55 @@ "tmpl": "1.0.5" } }, + "node_modules/mariadb": { + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/mariadb/-/mariadb-3.4.5.tgz", + "integrity": "sha512-gThTYkhIS5rRqkVr+Y0cIdzr+GRqJ9sA2Q34e0yzmyhMCwyApf3OKAC1jnF23aSlIOqJuyaUFUcj7O1qZslmmQ==", + "license": "LGPL-2.1-or-later", + "dependencies": { + "@types/geojson": "^7946.0.16", + "@types/node": "^24.0.13", + "denque": "^2.1.0", + "iconv-lite": "^0.6.3", + "lru-cache": "^10.4.3" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/mariadb/node_modules/@types/node": { + "version": "24.10.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.10.tgz", + "integrity": "sha512-+0/4J266CBGPUq/ELg7QUHhN25WYjE0wYTPSQJn1xeu8DOlIOPxXxrNGiLmfAWl7HMMgWFWXpt9IDjMWrF5Iow==", + "license": "MIT", + "dependencies": { + "undici-types": "~7.16.0" + } + }, + "node_modules/mariadb/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mariadb/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "license": "ISC" + }, + "node_modules/mariadb/node_modules/undici-types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "license": "MIT" + }, "node_modules/math-intrinsics": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", @@ -9798,6 +10242,40 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/mysql2": { + "version": "3.15.3", + "resolved": "https://registry.npmjs.org/mysql2/-/mysql2-3.15.3.tgz", + "integrity": "sha512-FBrGau0IXmuqg4haEZRBfHNWB5mUARw6hNwPDXXGg0XzVJ50mr/9hb267lvpVMnhZ1FON3qNd4Xfcez1rbFwSg==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "aws-ssl-profiles": "^1.1.1", + "denque": "^2.1.0", + "generate-function": "^2.3.1", + "iconv-lite": "^0.7.0", + "long": "^5.2.1", + "lru.min": "^1.0.0", + "named-placeholders": "^1.1.3", + "seq-queue": "^0.0.5", + "sqlstring": "^2.3.2" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/named-placeholders": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.6.tgz", + "integrity": "sha512-Tz09sEL2EEuv5fFowm419c1+a/jSMiBjI9gHxVLrVdbUkkNUUfjsVYs9pVZu5oCon/kmRh9TfLEObFtkVxmY0w==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "lru.min": "^1.1.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -9836,7 +10314,8 @@ "version": "1.6.7", "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.7.tgz", "integrity": "sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/node-gyp-build-optional-packages": { "version": "5.2.2", @@ -9899,24 +10378,30 @@ } }, "node_modules/nypm": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.6.2.tgz", - "integrity": "sha512-7eM+hpOtrKrBDCh7Ypu2lJ9Z7PNZBdi/8AT3AX8xoCj43BBVHD0hPSTEvMtkMpfs8FCqBGhxB+uToIQimA111g==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.6.4.tgz", + "integrity": "sha512-1TvCKjZyyklN+JJj2TS3P4uSQEInrM/HkkuSXsEzm1ApPgBffOn8gFguNnZf07r/1X6vlryfIqMUkJKQMzlZiw==", "devOptional": true, + "license": "MIT", "dependencies": { - "citty": "^0.1.6", - "consola": "^3.4.2", + "citty": "^0.2.0", "pathe": "^2.0.3", - "pkg-types": "^2.3.0", - "tinyexec": "^1.0.1" + "tinyexec": "^1.0.2" }, "bin": { "nypm": "dist/cli.mjs" }, "engines": { - "node": "^14.16.0 || >=16.10.0" + "node": ">=18" } }, + "node_modules/nypm/node_modules/citty": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/citty/-/citty-0.2.0.tgz", + "integrity": "sha512-8csy5IBFI2ex2hTVpaHN2j+LNE199AgiI7y4dMintrr8i0lQiFn+0AWMZrWdHKIgMOer65f8IThysYhoReqjWA==", + "devOptional": true, + "license": "MIT" + }, "node_modules/oauth": { "version": "0.10.2", "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.10.2.tgz", @@ -9946,7 +10431,8 @@ "version": "2.0.11", "resolved": "https://registry.npmjs.org/ohash/-/ohash-2.0.11.tgz", "integrity": "sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/on-finished": { "version": "2.4.1", @@ -10190,7 +10676,7 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, + "devOptional": true, "engines": { "node": ">=8" } @@ -10250,7 +10736,8 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/pause": { "version": "0.0.1", @@ -10280,7 +10767,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", - "devOptional": true + "devOptional": true, + "license": "MIT" }, "node_modules/picocolors": { "version": "1.1.1", @@ -10387,6 +10875,7 @@ "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.3.0.tgz", "integrity": "sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==", "devOptional": true, + "license": "MIT", "dependencies": { "confbox": "^0.2.2", "exsolve": "^1.0.7", @@ -10402,6 +10891,20 @@ "node": ">=4" } }, + "node_modules/postgres": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/postgres/-/postgres-3.4.7.tgz", + "integrity": "sha512-Jtc2612XINuBjIl/QTWsV5UvE8UHuNblcO3vVADSrKsrc6RqGX6lOW1cEo3CM2v0XG4Nat8nI+YM7/f26VxXLw==", + "devOptional": true, + "license": "Unlicense", + "engines": { + "node": ">=12" + }, + "funding": { + "type": "individual", + "url": "https://github.com/sponsors/porsager" + } + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -10465,25 +10968,34 @@ } }, "node_modules/prisma": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/prisma/-/prisma-6.18.0.tgz", - "integrity": "sha512-bXWy3vTk8mnRmT+SLyZBQoC2vtV9Z8u7OHvEu+aULYxwiop/CPiFZ+F56KsNRNf35jw+8wcu8pmLsjxpBxAO9g==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/prisma/-/prisma-7.3.0.tgz", + "integrity": "sha512-ApYSOLHfMN8WftJA+vL6XwAPOh/aZ0BgUyyKPwUFgjARmG6EBI9LzDPf6SWULQMSAxydV9qn5gLj037nPNlg2w==", "devOptional": true, "hasInstallScript": true, + "license": "Apache-2.0", "dependencies": { - "@prisma/config": "6.18.0", - "@prisma/engines": "6.18.0" + "@prisma/config": "7.3.0", + "@prisma/dev": "0.20.0", + "@prisma/engines": "7.3.0", + "@prisma/studio-core": "0.13.1", + "mysql2": "3.15.3", + "postgres": "3.4.7" }, "bin": { "prisma": "build/index.js" }, "engines": { - "node": ">=18.18" + "node": "^20.19 || ^22.12 || >=24.0" }, "peerDependencies": { - "typescript": ">=5.1.0" + "better-sqlite3": ">=9.0.0", + "typescript": ">=5.4.0" }, "peerDependenciesMeta": { + "better-sqlite3": { + "optional": true + }, "typescript": { "optional": true } @@ -10502,6 +11014,25 @@ "node": ">= 6" } }, + "node_modules/proper-lockfile": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz", + "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "retry": "^0.12.0", + "signal-exit": "^3.0.2" + } + }, + "node_modules/proper-lockfile/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "devOptional": true, + "license": "ISC" + }, "node_modules/proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -10546,9 +11077,10 @@ ] }, "node_modules/qs": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", - "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", + "version": "6.14.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.1.tgz", + "integrity": "sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==", + "license": "BSD-3-Clause", "dependencies": { "side-channel": "^1.1.0" }, @@ -10637,11 +11169,37 @@ "resolved": "https://registry.npmjs.org/rc9/-/rc9-2.1.2.tgz", "integrity": "sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==", "devOptional": true, + "license": "MIT", "dependencies": { "defu": "^6.1.4", "destr": "^2.0.3" } }, + "node_modules/react": { + "version": "19.2.4", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", + "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", + "devOptional": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "19.2.4", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz", + "integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==", + "devOptional": true, + "license": "MIT", + "peer": true, + "dependencies": { + "scheduler": "^0.27.0" + }, + "peerDependencies": { + "react": "^19.2.4" + } + }, "node_modules/react-is": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", @@ -10698,6 +11256,23 @@ "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz", "integrity": "sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==" }, + "node_modules/regexp-to-ast": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.5.0.tgz", + "integrity": "sha512-tlbJqcMHnPKI9zSrystikWKwHkBqu2a/Sgw01h3zFjvYrMxEDYHzzoMZnUrbIfpTFEsoRnnviOXNCzFiSc54Qw==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/remeda": { + "version": "2.33.4", + "resolved": "https://registry.npmjs.org/remeda/-/remeda-2.33.4.tgz", + "integrity": "sha512-ygHswjlc/opg2VrtiYvUOPLjxjtdKvjGz1/plDhkG66hjNjFr1xmfrs2ClNFo/E6TyUFiwYNh53bKV26oBoMGQ==", + "devOptional": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/remeda" + } + }, "node_modules/repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", @@ -10833,6 +11408,16 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, "node_modules/reusify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", @@ -10913,6 +11498,14 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, + "node_modules/scheduler": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", + "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==", + "devOptional": true, + "license": "MIT", + "peer": true + }, "node_modules/schema-utils": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", @@ -11012,6 +11605,12 @@ "node": ">= 18" } }, + "node_modules/seq-queue": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz", + "integrity": "sha512-hr3Wtp/GZIc/6DAGPDcV4/9WoZhjrkXsi5B/07QgX8tsdc6ilr7BFM6PM6rbdAX1kFSDYeZGLipIZZKyQP0O5Q==", + "devOptional": true + }, "node_modules/serialize-javascript": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", @@ -11085,7 +11684,7 @@ "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, + "devOptional": true, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -11097,7 +11696,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, + "devOptional": true, "engines": { "node": ">=8" } @@ -11174,7 +11773,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, + "devOptional": true, "license": "ISC", "engines": { "node": ">=14" @@ -11269,6 +11868,16 @@ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, + "node_modules/sqlstring": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.3.tgz", + "integrity": "sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/stack-utils": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", @@ -11303,6 +11912,13 @@ "node": ">= 0.8" } }, + "node_modules/std-env": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz", + "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", + "devOptional": true, + "license": "MIT" + }, "node_modules/streamsearch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", @@ -11485,9 +12101,9 @@ } }, "node_modules/swagger-ui-dist": { - "version": "5.30.2", - "resolved": "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-5.30.2.tgz", - "integrity": "sha512-HWCg1DTNE/Nmapt+0m2EPXFwNKNeKK4PwMjkwveN/zn1cV2Kxi9SURd+m0SpdcSgWEK/O64sf8bzXdtUhigtHA==", + "version": "5.31.0", + "resolved": "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-5.31.0.tgz", + "integrity": "sha512-zSUTIck02fSga6rc0RZP3b7J7wgHXwLea8ZjgLA3Vgnb8QeOl3Wou2/j5QkzSGeoz6HusP/coYuJl33aQxQZpg==", "license": "Apache-2.0", "dependencies": { "@scarf/scarf": "=1.4.0" @@ -11751,10 +12367,14 @@ "dev": true }, "node_modules/tinyexec": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.1.tgz", - "integrity": "sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==", - "devOptional": true + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.2.tgz", + "integrity": "sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=18" + } }, "node_modules/tmpl": { "version": "1.0.5", @@ -12248,6 +12868,21 @@ "node": ">=10.12.0" } }, + "node_modules/valibot": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/valibot/-/valibot-1.2.0.tgz", + "integrity": "sha512-mm1rxUsmOxzrwnX5arGS+U4T25RdvpPjPN4yR0u9pUBov9+zGVtO84tif1eY4r6zWxVxu3KzIyknJy3rxfRZZg==", + "devOptional": true, + "license": "MIT", + "peerDependencies": { + "typescript": ">=5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "node_modules/validator": { "version": "13.15.23", "resolved": "https://registry.npmjs.org/validator/-/validator-13.15.23.tgz", @@ -12497,7 +13132,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, + "devOptional": true, "dependencies": { "isexe": "^2.0.0" }, @@ -12653,6 +13288,17 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } + }, + "node_modules/zeptomatch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/zeptomatch/-/zeptomatch-2.1.0.tgz", + "integrity": "sha512-KiGErG2J0G82LSpniV0CtIzjlJ10E04j02VOudJsPyPwNZgGnRKQy7I1R7GMyg/QswnE4l7ohSGrQbQbjXPPDA==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "grammex": "^3.1.11", + "graphmatch": "^1.1.0" + } } } } diff --git a/package.json b/package.json index 5195085..8c930f4 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,8 @@ "@nestjs/platform-express": "^11.1.6", "@nestjs/schedule": "^6.0.0", "@nestjs/swagger": "^11.2.0", - "@prisma/client": "^6.18.0", + "@prisma/adapter-mariadb": "^7.3.0", + "@prisma/client": "^7.3.0", "@quixo3/prisma-session-store": "^3.1.13", "axios": "^1.13.2", "bullmq": "^5.58.0", @@ -67,13 +68,14 @@ "@types/passport-jwt": "^4.0.1", "@types/passport-openidconnect": "^0.1.3", "@types/supertest": "^6.0.2", + "dotenv": "^17.2.3", "eslint": "^9.18.0", "eslint-config-prettier": "^10.0.1", "eslint-plugin-prettier": "^5.2.2", "globals": "^16.0.0", "jest": "^29.7.0", "prettier": "^3.4.2", - "prisma": "^6.18.0", + "prisma": "^7.3.0", "source-map-support": "^0.5.21", "supertest": "^7.0.0", "ts-jest": "^29.2.5", diff --git a/prisma.config.ts b/prisma.config.ts new file mode 100644 index 0000000..b0ee8db --- /dev/null +++ b/prisma.config.ts @@ -0,0 +1,22 @@ + +import { PrismaMariaDb } from "@prisma/adapter-mariadb"; +import 'dotenv/config' +import { defineConfig } from 'prisma/config' + +export default defineConfig({ + schema: "prisma/", + migrations: { + path: "prisma/postgres/migrations", + }, + datasource: { + url: process.env["DATABASE_URL"], + }, +}); + +export const adapter = new PrismaMariaDb({ + host: process.env.DATABASE_HOST, + user: process.env.DATABASE_USER, + password: process.env.DATABASE_PASSWORD, + database: process.env.DATABASE_NAME, + connectionLimit: 5, +}); \ No newline at end of file diff --git a/prisma/mariadb/prisma.module.ts b/prisma/mariadb/prisma.module.ts new file mode 100644 index 0000000..e69de29 diff --git a/prisma/mariadb/prisma.service.ts b/prisma/mariadb/prisma.service.ts new file mode 100644 index 0000000..e69de29 diff --git a/prisma/mariadb/schema.prisma b/prisma/mariadb/schema.prisma new file mode 100644 index 0000000..e69de29 diff --git a/prisma/READMEprisma.md b/prisma/postgres/READMEprisma.md similarity index 100% rename from prisma/READMEprisma.md rename to prisma/postgres/READMEprisma.md diff --git a/prisma/migrations/20250717164330_dev_v1/migration.sql b/prisma/postgres/migrations/20250717164330_dev_v1/migration.sql similarity index 100% rename from prisma/migrations/20250717164330_dev_v1/migration.sql rename to prisma/postgres/migrations/20250717164330_dev_v1/migration.sql diff --git a/prisma/migrations/20250723195927_add_expense_expense_codes_models/migration.sql b/prisma/postgres/migrations/20250723195927_add_expense_expense_codes_models/migration.sql similarity index 100% rename from prisma/migrations/20250723195927_add_expense_expense_codes_models/migration.sql rename to prisma/postgres/migrations/20250723195927_add_expense_expense_codes_models/migration.sql diff --git a/prisma/migrations/20250724141128_added_comment_to_shifts_and_minor_expenses_fix/migration.sql b/prisma/postgres/migrations/20250724141128_added_comment_to_shifts_and_minor_expenses_fix/migration.sql similarity index 100% rename from prisma/migrations/20250724141128_added_comment_to_shifts_and_minor_expenses_fix/migration.sql rename to prisma/postgres/migrations/20250724141128_added_comment_to_shifts_and_minor_expenses_fix/migration.sql diff --git a/prisma/migrations/20250724191659_create_pay_period_view/migration.sql b/prisma/postgres/migrations/20250724191659_create_pay_period_view/migration.sql similarity index 100% rename from prisma/migrations/20250724191659_create_pay_period_view/migration.sql rename to prisma/postgres/migrations/20250724191659_create_pay_period_view/migration.sql diff --git a/prisma/migrations/20250728181507_archive_and_minor_fixes/migration.sql b/prisma/postgres/migrations/20250728181507_archive_and_minor_fixes/migration.sql similarity index 100% rename from prisma/migrations/20250728181507_archive_and_minor_fixes/migration.sql rename to prisma/postgres/migrations/20250728181507_archive_and_minor_fixes/migration.sql diff --git a/prisma/migrations/20250729165951_fix_employees_crew_and_default_now_in_shifts_archive/migration.sql b/prisma/postgres/migrations/20250729165951_fix_employees_crew_and_default_now_in_shifts_archive/migration.sql similarity index 100% rename from prisma/migrations/20250729165951_fix_employees_crew_and_default_now_in_shifts_archive/migration.sql rename to prisma/postgres/migrations/20250729165951_fix_employees_crew_and_default_now_in_shifts_archive/migration.sql diff --git a/prisma/migrations/20250730171515_consolidate_bank_codes/migration.sql b/prisma/postgres/migrations/20250730171515_consolidate_bank_codes/migration.sql similarity index 100% rename from prisma/migrations/20250730171515_consolidate_bank_codes/migration.sql rename to prisma/postgres/migrations/20250730171515_consolidate_bank_codes/migration.sql diff --git a/prisma/migrations/20250730183752_fix_bank_codes_relations/migration.sql b/prisma/postgres/migrations/20250730183752_fix_bank_codes_relations/migration.sql similarity index 100% rename from prisma/migrations/20250730183752_fix_bank_codes_relations/migration.sql rename to prisma/postgres/migrations/20250730183752_fix_bank_codes_relations/migration.sql diff --git a/prisma/migrations/20250804192610_rename_o_auth_table/migration.sql b/prisma/postgres/migrations/20250804192610_rename_o_auth_table/migration.sql similarity index 100% rename from prisma/migrations/20250804192610_rename_o_auth_table/migration.sql rename to prisma/postgres/migrations/20250804192610_rename_o_auth_table/migration.sql diff --git a/prisma/migrations/20250804192837_added_sid_column_to_o_auth_sessions/migration.sql b/prisma/postgres/migrations/20250804192837_added_sid_column_to_o_auth_sessions/migration.sql similarity index 100% rename from prisma/migrations/20250804192837_added_sid_column_to_o_auth_sessions/migration.sql rename to prisma/postgres/migrations/20250804192837_added_sid_column_to_o_auth_sessions/migration.sql diff --git a/prisma/migrations/20250806151558_adding_validation_status_to_shifts_enum_wedding_added/migration.sql b/prisma/postgres/migrations/20250806151558_adding_validation_status_to_shifts_enum_wedding_added/migration.sql similarity index 100% rename from prisma/migrations/20250806151558_adding_validation_status_to_shifts_enum_wedding_added/migration.sql rename to prisma/postgres/migrations/20250806151558_adding_validation_status_to_shifts_enum_wedding_added/migration.sql diff --git a/prisma/migrations/20250812154355_init/migration.sql b/prisma/postgres/migrations/20250812154355_init/migration.sql similarity index 100% rename from prisma/migrations/20250812154355_init/migration.sql rename to prisma/postgres/migrations/20250812154355_init/migration.sql diff --git a/prisma/migrations/20250813192639_added_job_title_to_employees_archive_tables/migration.sql b/prisma/postgres/migrations/20250813192639_added_job_title_to_employees_archive_tables/migration.sql similarity index 100% rename from prisma/migrations/20250813192639_added_job_title_to_employees_archive_tables/migration.sql rename to prisma/postgres/migrations/20250813192639_added_job_title_to_employees_archive_tables/migration.sql diff --git a/prisma/migrations/20250818121137_attachments_minimal/migration.sql b/prisma/postgres/migrations/20250818121137_attachments_minimal/migration.sql similarity index 100% rename from prisma/migrations/20250818121137_attachments_minimal/migration.sql rename to prisma/postgres/migrations/20250818121137_attachments_minimal/migration.sql diff --git a/prisma/migrations/20250818121746_/migration.sql b/prisma/postgres/migrations/20250818121746_/migration.sql similarity index 100% rename from prisma/migrations/20250818121746_/migration.sql rename to prisma/postgres/migrations/20250818121746_/migration.sql diff --git a/prisma/migrations/20250818135721_column_naming_fixes_for_attachments/migration.sql b/prisma/postgres/migrations/20250818135721_column_naming_fixes_for_attachments/migration.sql similarity index 100% rename from prisma/migrations/20250818135721_column_naming_fixes_for_attachments/migration.sql rename to prisma/postgres/migrations/20250818135721_column_naming_fixes_for_attachments/migration.sql diff --git a/prisma/migrations/20250818154612_added_is_supevisor_boolean_to_employee/migration.sql b/prisma/postgres/migrations/20250818154612_added_is_supevisor_boolean_to_employee/migration.sql similarity index 100% rename from prisma/migrations/20250818154612_added_is_supevisor_boolean_to_employee/migration.sql rename to prisma/postgres/migrations/20250818154612_added_is_supevisor_boolean_to_employee/migration.sql diff --git a/prisma/migrations/20250818193726_minor_naming_fix/migration.sql b/prisma/postgres/migrations/20250818193726_minor_naming_fix/migration.sql similarity index 100% rename from prisma/migrations/20250818193726_minor_naming_fix/migration.sql rename to prisma/postgres/migrations/20250818193726_minor_naming_fix/migration.sql diff --git a/prisma/migrations/20250825173419_attachment_variants_model/migration.sql b/prisma/postgres/migrations/20250825173419_attachment_variants_model/migration.sql similarity index 100% rename from prisma/migrations/20250825173419_attachment_variants_model/migration.sql rename to prisma/postgres/migrations/20250825173419_attachment_variants_model/migration.sql diff --git a/prisma/migrations/20250826165409_changed_phone_type_to_string/migration.sql b/prisma/postgres/migrations/20250826165409_changed_phone_type_to_string/migration.sql similarity index 100% rename from prisma/migrations/20250826165409_changed_phone_type_to_string/migration.sql rename to prisma/postgres/migrations/20250826165409_changed_phone_type_to_string/migration.sql diff --git a/prisma/migrations/20250828175750_changed_phone_number_type_to_string/migration.sql b/prisma/postgres/migrations/20250828175750_changed_phone_number_type_to_string/migration.sql similarity index 100% rename from prisma/migrations/20250828175750_changed_phone_number_type_to_string/migration.sql rename to prisma/postgres/migrations/20250828175750_changed_phone_number_type_to_string/migration.sql diff --git a/prisma/migrations/20250829152939_timesheet_week_unique/migration.sql b/prisma/postgres/migrations/20250829152939_timesheet_week_unique/migration.sql similarity index 100% rename from prisma/migrations/20250829152939_timesheet_week_unique/migration.sql rename to prisma/postgres/migrations/20250829152939_timesheet_week_unique/migration.sql diff --git a/prisma/migrations/20250908192545_added_is_remote_to_shifts/migration.sql b/prisma/postgres/migrations/20250908192545_added_is_remote_to_shifts/migration.sql similarity index 100% rename from prisma/migrations/20250908192545_added_is_remote_to_shifts/migration.sql rename to prisma/postgres/migrations/20250908192545_added_is_remote_to_shifts/migration.sql diff --git a/prisma/migrations/20250909132655_refactor_description_to_comment_for_shifts_and_expenses/migration.sql b/prisma/postgres/migrations/20250909132655_refactor_description_to_comment_for_shifts_and_expenses/migration.sql similarity index 100% rename from prisma/migrations/20250909132655_refactor_description_to_comment_for_shifts_and_expenses/migration.sql rename to prisma/postgres/migrations/20250909132655_refactor_description_to_comment_for_shifts_and_expenses/migration.sql diff --git a/prisma/migrations/20251001193437_link_expense_attachments/migration.sql b/prisma/postgres/migrations/20251001193437_link_expense_attachments/migration.sql similarity index 100% rename from prisma/migrations/20251001193437_link_expense_attachments/migration.sql rename to prisma/postgres/migrations/20251001193437_link_expense_attachments/migration.sql diff --git a/prisma/migrations/20251003151925_added_preferences_table/migration.sql b/prisma/postgres/migrations/20251003151925_added_preferences_table/migration.sql similarity index 100% rename from prisma/migrations/20251003151925_added_preferences_table/migration.sql rename to prisma/postgres/migrations/20251003151925_added_preferences_table/migration.sql diff --git a/prisma/migrations/20251008152226_added_schedule_presets_and_schedule_preset_shifts_tables_and_weekday_enm/migration.sql b/prisma/postgres/migrations/20251008152226_added_schedule_presets_and_schedule_preset_shifts_tables_and_weekday_enm/migration.sql similarity index 100% rename from prisma/migrations/20251008152226_added_schedule_presets_and_schedule_preset_shifts_tables_and_weekday_enm/migration.sql rename to prisma/postgres/migrations/20251008152226_added_schedule_presets_and_schedule_preset_shifts_tables_and_weekday_enm/migration.sql diff --git a/prisma/migrations/20251009141338_change_type_mileage/migration.sql b/prisma/postgres/migrations/20251009141338_change_type_mileage/migration.sql similarity index 100% rename from prisma/migrations/20251009141338_change_type_mileage/migration.sql rename to prisma/postgres/migrations/20251009141338_change_type_mileage/migration.sql diff --git a/prisma/migrations/20251010124650_changed_boolean_to_int_for_table_preferences/migration.sql b/prisma/postgres/migrations/20251010124650_changed_boolean_to_int_for_table_preferences/migration.sql similarity index 100% rename from prisma/migrations/20251010124650_changed_boolean_to_int_for_table_preferences/migration.sql rename to prisma/postgres/migrations/20251010124650_changed_boolean_to_int_for_table_preferences/migration.sql diff --git a/prisma/migrations/20251014124848_added_list_displays_to_preferences_table/migration.sql b/prisma/postgres/migrations/20251014124848_added_list_displays_to_preferences_table/migration.sql similarity index 100% rename from prisma/migrations/20251014124848_added_list_displays_to_preferences_table/migration.sql rename to prisma/postgres/migrations/20251014124848_added_list_displays_to_preferences_table/migration.sql diff --git a/prisma/migrations/20251119155820_init_staging_db/migration.sql b/prisma/postgres/migrations/20251119155820_init_staging_db/migration.sql similarity index 100% rename from prisma/migrations/20251119155820_init_staging_db/migration.sql rename to prisma/postgres/migrations/20251119155820_init_staging_db/migration.sql diff --git a/prisma/migrations/20251119185059_preparation_to_get_the_staging_db_ready/migration.sql b/prisma/postgres/migrations/20251119185059_preparation_to_get_the_staging_db_ready/migration.sql similarity index 100% rename from prisma/migrations/20251119185059_preparation_to_get_the_staging_db_ready/migration.sql rename to prisma/postgres/migrations/20251119185059_preparation_to_get_the_staging_db_ready/migration.sql diff --git a/prisma/migrations/20251121194224_unique_keys_added_to_shifts_and_expenses_for_migration_from_old_db/migration.sql b/prisma/postgres/migrations/20251121194224_unique_keys_added_to_shifts_and_expenses_for_migration_from_old_db/migration.sql similarity index 100% rename from prisma/migrations/20251121194224_unique_keys_added_to_shifts_and_expenses_for_migration_from_old_db/migration.sql rename to prisma/postgres/migrations/20251121194224_unique_keys_added_to_shifts_and_expenses_for_migration_from_old_db/migration.sql diff --git a/prisma/migrations/20251127150919_small_preference_fix/migration.sql b/prisma/postgres/migrations/20251127150919_small_preference_fix/migration.sql similarity index 100% rename from prisma/migrations/20251127150919_small_preference_fix/migration.sql rename to prisma/postgres/migrations/20251127150919_small_preference_fix/migration.sql diff --git a/prisma/migrations/20251201162936_added_autoincrements_to_payroll_id/migration.sql b/prisma/postgres/migrations/20251201162936_added_autoincrements_to_payroll_id/migration.sql similarity index 100% rename from prisma/migrations/20251201162936_added_autoincrements_to_payroll_id/migration.sql rename to prisma/postgres/migrations/20251201162936_added_autoincrements_to_payroll_id/migration.sql diff --git a/prisma/migrations/20251203192130_added_the_option_of_null_to_is_dark_mode/migration.sql b/prisma/postgres/migrations/20251203192130_added_the_option_of_null_to_is_dark_mode/migration.sql similarity index 100% rename from prisma/migrations/20251203192130_added_the_option_of_null_to_is_dark_mode/migration.sql rename to prisma/postgres/migrations/20251203192130_added_the_option_of_null_to_is_dark_mode/migration.sql diff --git a/prisma/migrations/20251203210621_removed_autoincrements_from_external_payroll_id/migration.sql b/prisma/postgres/migrations/20251203210621_removed_autoincrements_from_external_payroll_id/migration.sql similarity index 100% rename from prisma/migrations/20251203210621_removed_autoincrements_from_external_payroll_id/migration.sql rename to prisma/postgres/migrations/20251203210621_removed_autoincrements_from_external_payroll_id/migration.sql diff --git a/prisma/migrations/20251204135338_schedule_presets_ajustments/migration.sql b/prisma/postgres/migrations/20251204135338_schedule_presets_ajustments/migration.sql similarity index 100% rename from prisma/migrations/20251204135338_schedule_presets_ajustments/migration.sql rename to prisma/postgres/migrations/20251204135338_schedule_presets_ajustments/migration.sql diff --git a/prisma/migrations/20251205163040_add_session_table/migration.sql b/prisma/postgres/migrations/20251205163040_add_session_table/migration.sql similarity index 100% rename from prisma/migrations/20251205163040_add_session_table/migration.sql rename to prisma/postgres/migrations/20251205163040_add_session_table/migration.sql diff --git a/prisma/migrations/20260106124750_added_paid_time_off/migration.sql b/prisma/postgres/migrations/20260106124750_added_paid_time_off/migration.sql similarity index 100% rename from prisma/migrations/20260106124750_added_paid_time_off/migration.sql rename to prisma/postgres/migrations/20260106124750_added_paid_time_off/migration.sql diff --git a/prisma/migrations/20260108160639_added_banked_hours_to_paid_off_time_and_switched_int_to_decimal/migration.sql b/prisma/postgres/migrations/20260108160639_added_banked_hours_to_paid_off_time_and_switched_int_to_decimal/migration.sql similarity index 100% rename from prisma/migrations/20260108160639_added_banked_hours_to_paid_off_time_and_switched_int_to_decimal/migration.sql rename to prisma/postgres/migrations/20260108160639_added_banked_hours_to_paid_off_time_and_switched_int_to_decimal/migration.sql diff --git a/prisma/migrations/20260108163644_ajusted_typing_of_paid_time_off_table/migration.sql b/prisma/postgres/migrations/20260108163644_ajusted_typing_of_paid_time_off_table/migration.sql similarity index 100% rename from prisma/migrations/20260108163644_ajusted_typing_of_paid_time_off_table/migration.sql rename to prisma/postgres/migrations/20260108163644_ajusted_typing_of_paid_time_off_table/migration.sql diff --git a/prisma/migrations/20260114205737_prod_db_setup_v1/migration.sql b/prisma/postgres/migrations/20260114205737_prod_db_setup_v1/migration.sql similarity index 100% rename from prisma/migrations/20260114205737_prod_db_setup_v1/migration.sql rename to prisma/postgres/migrations/20260114205737_prod_db_setup_v1/migration.sql diff --git a/prisma/migrations/migration_lock.toml b/prisma/postgres/migrations/migration_lock.toml similarity index 100% rename from prisma/migrations/migration_lock.toml rename to prisma/postgres/migrations/migration_lock.toml diff --git a/prisma/postgres/prisma-postgres.module.ts b/prisma/postgres/prisma-postgres.module.ts new file mode 100644 index 0000000..af56e18 --- /dev/null +++ b/prisma/postgres/prisma-postgres.module.ts @@ -0,0 +1,9 @@ +import { Global, Module } from '@nestjs/common'; +import { PrismaPostgresService } from './prisma-postgres.service'; + +@Global() +@Module({ + providers: [PrismaPostgresService], + exports: [PrismaPostgresService], +}) +export class PrismaPostgresModule {} diff --git a/src/prisma/prisma.service.ts b/prisma/postgres/prisma-postgres.service.ts similarity index 91% rename from src/prisma/prisma.service.ts rename to prisma/postgres/prisma-postgres.service.ts index 0e4c877..e346266 100644 --- a/src/prisma/prisma.service.ts +++ b/prisma/postgres/prisma-postgres.service.ts @@ -4,7 +4,7 @@ import { PrismaClient } from '@prisma/client'; //Gestion des connections à la DB @Injectable() -export class PrismaService +export class PrismaPostgresService extends PrismaClient implements OnModuleInit, OnModuleDestroy { diff --git a/prisma/schema.prisma b/prisma/postgres/schema.prisma similarity index 99% rename from prisma/schema.prisma rename to prisma/postgres/schema.prisma index 01d5eba..e9107a4 100644 --- a/prisma/schema.prisma +++ b/prisma/postgres/schema.prisma @@ -5,7 +5,6 @@ generator client { datasource db { provider = "postgresql" - url = env("DATABASE_URL") } model Users { diff --git a/prisma/views/public/PayPeriods.sql b/prisma/postgres/views/public/PayPeriods.sql similarity index 100% rename from prisma/views/public/PayPeriods.sql rename to prisma/postgres/views/public/PayPeriods.sql diff --git a/src/app.module.ts b/src/app.module.ts index 93c4836..0f9610e 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -2,7 +2,7 @@ import { BadRequestException, Module, ValidationPipe } from '@nestjs/common'; import { AppController } from './app.controller'; import { AppService } from './app.service'; import { NotificationsModule } from './shared/notifications/notifications.module'; -import { PrismaModule } from './prisma/prisma.module'; +import { PrismaPostgresModule } from '../prisma/postgres/prisma-postgres.module'; import { ScheduleModule } from '@nestjs/schedule'; import { ConfigModule } from '@nestjs/config'; import { APP_FILTER, APP_PIPE } from '@nestjs/core'; @@ -20,7 +20,7 @@ import { ChatbotModule } from 'src/chatbot/chatbot.module'; ConfigModule.forRoot({ isGlobal: true }), ScheduleModule.forRoot(), //cronjobs NotificationsModule, - PrismaModule, + PrismaPostgresModule, PrismaLegacyModule, TimeAndAttendanceModule, IdentityAndAccountModule, diff --git a/src/common/mappers/bank-type-id.mapper.ts b/src/common/mappers/bank-type-id.mapper.ts index be35579..32d60d2 100644 --- a/src/common/mappers/bank-type-id.mapper.ts +++ b/src/common/mappers/bank-type-id.mapper.ts @@ -1,7 +1,7 @@ import { Injectable, NotFoundException } from "@nestjs/common"; import { LeaveTypes, Prisma, PrismaClient } from "@prisma/client"; import { Result } from "src/common/errors/result-error.factory"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; type Tx = Prisma.TransactionClient | PrismaClient; diff --git a/src/common/mappers/email-id.mapper.ts b/src/common/mappers/email-id.mapper.ts index eccdcfb..a9c4c1a 100644 --- a/src/common/mappers/email-id.mapper.ts +++ b/src/common/mappers/email-id.mapper.ts @@ -1,5 +1,5 @@ import { Prisma, PrismaClient } from "@prisma/client"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; diff --git a/src/common/mappers/full-name.mapper.ts b/src/common/mappers/full-name.mapper.ts index e193e03..10ed1b9 100644 --- a/src/common/mappers/full-name.mapper.ts +++ b/src/common/mappers/full-name.mapper.ts @@ -1,7 +1,7 @@ import { Injectable } from "@nestjs/common"; import { Prisma, PrismaClient } from "@prisma/client"; import { Result } from "src/common/errors/result-error.factory"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; type Tx = Prisma.TransactionClient | PrismaClient; diff --git a/src/common/mappers/shifts-id.mapper.ts b/src/common/mappers/shifts-id.mapper.ts index c50d703..8b4bcca 100644 --- a/src/common/mappers/shifts-id.mapper.ts +++ b/src/common/mappers/shifts-id.mapper.ts @@ -1,5 +1,5 @@ import { Prisma, PrismaClient } from "@prisma/client"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Result } from "src/common/errors/result-error.factory"; type Tx = Prisma.TransactionClient | PrismaClient; diff --git a/src/common/mappers/timesheet.mapper.ts b/src/common/mappers/timesheet.mapper.ts index da77f82..28f324e 100644 --- a/src/common/mappers/timesheet.mapper.ts +++ b/src/common/mappers/timesheet.mapper.ts @@ -1,6 +1,6 @@ import { Injectable, NotFoundException } from "@nestjs/common"; import { Prisma, PrismaClient } from "@prisma/client"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { EmailToIdResolver } from "./email-id.mapper"; import { Result } from "src/common/errors/result-error.factory"; import { weekStartSunday } from "src/common/utils/date-utils"; diff --git a/src/common/shared/base-approval.service.ts b/src/common/shared/base-approval.service.ts index ab44a0d..23a2908 100644 --- a/src/common/shared/base-approval.service.ts +++ b/src/common/shared/base-approval.service.ts @@ -1,7 +1,7 @@ import { NotFoundException } from "@nestjs/common"; import { Prisma } from "@prisma/client"; import { PrismaClientKnownRequestError } from "@prisma/client/runtime/library"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; type UpdatableDelegate = { diff --git a/src/identity-and-account/employees/services/employees-create.service.ts b/src/identity-and-account/employees/services/employees-create.service.ts index 60c24da..a008256 100644 --- a/src/identity-and-account/employees/services/employees-create.service.ts +++ b/src/identity-and-account/employees/services/employees-create.service.ts @@ -5,7 +5,7 @@ import { toDateFromString } from "src/common/utils/date-utils"; import { EmployeeDetailedDto } from "src/identity-and-account/employees/employee-detailed.dto"; import { toCompanyCodeFromString } from "src/identity-and-account/employees/employee.utils"; import { toBooleanFromString } from "src/identity-and-account/employees/services/employees-get.service"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class EmployeesCreateService { diff --git a/src/identity-and-account/employees/services/employees-get.service.ts b/src/identity-and-account/employees/services/employees-get.service.ts index fdbc9a3..aef6e57 100644 --- a/src/identity-and-account/employees/services/employees-get.service.ts +++ b/src/identity-and-account/employees/services/employees-get.service.ts @@ -1,5 +1,5 @@ import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { module_list, Modules } from "src/common/mappers/module-access.mapper"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; diff --git a/src/identity-and-account/employees/services/employees-update.service.ts b/src/identity-and-account/employees/services/employees-update.service.ts index b7ba2ee..ce829d7 100644 --- a/src/identity-and-account/employees/services/employees-update.service.ts +++ b/src/identity-and-account/employees/services/employees-update.service.ts @@ -1,5 +1,5 @@ import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; import { toDateFromString } from "src/common/utils/date-utils"; diff --git a/src/identity-and-account/help/help-page.service.ts b/src/identity-and-account/help/help-page.service.ts index acaa516..6cd0c3a 100644 --- a/src/identity-and-account/help/help-page.service.ts +++ b/src/identity-and-account/help/help-page.service.ts @@ -1,7 +1,7 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class HomePageService { diff --git a/src/identity-and-account/preferences/preferences.service.ts b/src/identity-and-account/preferences/preferences.service.ts index a40b1d3..cbc2395 100644 --- a/src/identity-and-account/preferences/preferences.service.ts +++ b/src/identity-and-account/preferences/preferences.service.ts @@ -1,5 +1,5 @@ import { DisplayLanguage, PreferencesDto } from "./preferences.dto"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; diff --git a/src/identity-and-account/user-module-access/services/module-access-get.service.ts b/src/identity-and-account/user-module-access/services/module-access-get.service.ts index 92121e1..f3d46a7 100644 --- a/src/identity-and-account/user-module-access/services/module-access-get.service.ts +++ b/src/identity-and-account/user-module-access/services/module-access-get.service.ts @@ -2,7 +2,7 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; import { ModuleAccess } from "src/identity-and-account/user-module-access/module-acces.dto"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() diff --git a/src/identity-and-account/user-module-access/services/module-access-update.service.ts b/src/identity-and-account/user-module-access/services/module-access-update.service.ts index a545cbb..1aad3d4 100644 --- a/src/identity-and-account/user-module-access/services/module-access-update.service.ts +++ b/src/identity-and-account/user-module-access/services/module-access-update.service.ts @@ -2,7 +2,7 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; import { ModuleAccess } from "src/identity-and-account/user-module-access/module-acces.dto"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class AccessUpdateService { diff --git a/src/identity-and-account/users-management/services/abstract-user.service.ts b/src/identity-and-account/users-management/services/abstract-user.service.ts index d577e6e..ef30a3e 100644 --- a/src/identity-and-account/users-management/services/abstract-user.service.ts +++ b/src/identity-and-account/users-management/services/abstract-user.service.ts @@ -1,7 +1,7 @@ import { Injectable, NotFoundException } from '@nestjs/common'; import { Modules, Users } from '@prisma/client'; import { toKeysFromBoolean } from 'src/common/utils/boolean-utils'; -import { PrismaService } from 'src/prisma/prisma.service'; +import { PrismaService } from 'prisma/postgres/prisma-postgres.service'; @Injectable() export abstract class AbstractUserService { diff --git a/src/identity-and-account/users-management/services/users.service.ts b/src/identity-and-account/users-management/services/users.service.ts index cdac03d..a693163 100644 --- a/src/identity-and-account/users-management/services/users.service.ts +++ b/src/identity-and-account/users-management/services/users.service.ts @@ -1,5 +1,5 @@ import { Injectable } from '@nestjs/common'; -import { PrismaService } from 'src/prisma/prisma.service'; +import { PrismaService } from 'prisma/postgres/prisma-postgres.service'; import { AbstractUserService } from './abstract-user.service'; @Injectable() diff --git a/src/identity-and-account/users-management/users.module.ts b/src/identity-and-account/users-management/users.module.ts index 2fa3917..b370638 100644 --- a/src/identity-and-account/users-management/users.module.ts +++ b/src/identity-and-account/users-management/users.module.ts @@ -1,6 +1,6 @@ import { Module } from '@nestjs/common'; import { UsersService } from './services/users.service'; -import { PrismaModule } from 'src/prisma/prisma.module'; +import { PrismaModule } from 'prisma/postgres/prisma-postgres.module'; @Module({ imports: [PrismaModule], diff --git a/src/main.ts b/src/main.ts index 70c84b6..2c6732d 100644 --- a/src/main.ts +++ b/src/main.ts @@ -12,7 +12,7 @@ import { ModulesGuard } from './common/guards/modules.guard'; // import { writeFileSync } from 'fs'; import * as session from 'express-session'; import * as passport from 'passport'; -import { PrismaService } from 'src/prisma/prisma.service'; +import { PrismaService } from 'prisma/postgres/prisma-postgres.service'; import { PrismaSessionStore } from '@quixo3/prisma-session-store'; // import { initSupervisor } from 'scripts/init-supervisor'; // import { initializePaidTimeOff } from 'scripts/init-paid-time-off'; diff --git a/src/prisma/prisma.module.ts b/src/prisma/prisma.module.ts deleted file mode 100644 index 7207426..0000000 --- a/src/prisma/prisma.module.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { Global, Module } from '@nestjs/common'; -import { PrismaService } from './prisma.service'; - -@Global() -@Module({ - providers: [PrismaService], - exports: [PrismaService], -}) -export class PrismaModule {} diff --git a/src/time-and-attendance/attachments/services/attachment-archival.service.ts b/src/time-and-attendance/attachments/services/attachment-archival.service.ts index 83bc099..f8ad1ae 100644 --- a/src/time-and-attendance/attachments/services/attachment-archival.service.ts +++ b/src/time-and-attendance/attachments/services/attachment-archival.service.ts @@ -1,7 +1,7 @@ import { Injectable } from "@nestjs/common"; import { Cron } from "@nestjs/schedule"; import { startOfYear } from "src/time-and-attendance/attachments/cas.util"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class AttachmentArchivalService { diff --git a/src/time-and-attendance/attachments/services/attachment-delete.service.ts b/src/time-and-attendance/attachments/services/attachment-delete.service.ts index c79d74d..522c521 100644 --- a/src/time-and-attendance/attachments/services/attachment-delete.service.ts +++ b/src/time-and-attendance/attachments/services/attachment-delete.service.ts @@ -1,6 +1,6 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class AttachmentDeleteService { diff --git a/src/time-and-attendance/attachments/services/attachment-get.service.ts b/src/time-and-attendance/attachments/services/attachment-get.service.ts index 2815a57..72d70a2 100644 --- a/src/time-and-attendance/attachments/services/attachment-get.service.ts +++ b/src/time-and-attendance/attachments/services/attachment-get.service.ts @@ -1,7 +1,7 @@ import { Injectable } from "@nestjs/common"; import { Response } from "express"; import { AdminSearchDto } from "src/time-and-attendance/attachments/dtos/search-filters.dto"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { resolveAttachmentsRoot } from "src/time-and-attendance/attachments/config/attachment.config"; import * as path from 'node:path'; import { promises as fsp } from 'node:fs'; diff --git a/src/time-and-attendance/attachments/services/attachment-upload.service.ts b/src/time-and-attendance/attachments/services/attachment-upload.service.ts index b06b2ad..b262249 100644 --- a/src/time-and-attendance/attachments/services/attachment-upload.service.ts +++ b/src/time-and-attendance/attachments/services/attachment-upload.service.ts @@ -2,7 +2,7 @@ import { Injectable } from "@nestjs/common"; import { allowedMimes } from "src/time-and-attendance/attachments/upload.config"; import { UploadMetaAttachmentsDto } from "src/time-and-attendance/attachments/dtos/upload-meta-attachments.dto"; import { Readable } from "node:stream"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { fileTypeFromBuffer } from "file-type"; import { Result } from "src/common/errors/result-error.factory"; import { DiskStorageService } from "src/time-and-attendance/attachments/services/disk-storage.service"; diff --git a/src/time-and-attendance/attachments/services/garbage-collector.service.ts b/src/time-and-attendance/attachments/services/garbage-collector.service.ts index 0c814fb..309393c 100644 --- a/src/time-and-attendance/attachments/services/garbage-collector.service.ts +++ b/src/time-and-attendance/attachments/services/garbage-collector.service.ts @@ -1,6 +1,6 @@ import { Injectable, Logger } from "@nestjs/common"; import { Cron } from "@nestjs/schedule"; -import { PrismaService } from 'src/prisma/prisma.service'; +import { PrismaService } from 'prisma/postgres/prisma-postgres.service'; import * as path from 'node:path'; import { promises as fsp } from 'node:fs'; import { resolveAttachmentsRoot } from "src/time-and-attendance/attachments/config/attachment.config"; diff --git a/src/time-and-attendance/bank-codes/bank-codes.module.ts b/src/time-and-attendance/bank-codes/bank-codes.module.ts index 8ea7522..6310979 100644 --- a/src/time-and-attendance/bank-codes/bank-codes.module.ts +++ b/src/time-and-attendance/bank-codes/bank-codes.module.ts @@ -1,5 +1,5 @@ import { Module } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { BankCodesControllers } from "src/time-and-attendance/bank-codes/bank-codes.controller"; import { BankCodesService } from "src/time-and-attendance/bank-codes/bank-codes.service"; diff --git a/src/time-and-attendance/bank-codes/bank-codes.service.ts b/src/time-and-attendance/bank-codes/bank-codes.service.ts index 0b130a0..0a37830 100644 --- a/src/time-and-attendance/bank-codes/bank-codes.service.ts +++ b/src/time-and-attendance/bank-codes/bank-codes.service.ts @@ -1,6 +1,6 @@ import { Injectable } from "@nestjs/common"; import { Prisma } from "@prisma/client"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Result } from "src/common/errors/result-error.factory"; @Injectable() diff --git a/src/time-and-attendance/domains/services/banking-hours.service.ts b/src/time-and-attendance/domains/services/banking-hours.service.ts index a336b93..fd9b19f 100644 --- a/src/time-and-attendance/domains/services/banking-hours.service.ts +++ b/src/time-and-attendance/domains/services/banking-hours.service.ts @@ -1,6 +1,6 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class BankedHoursService { diff --git a/src/time-and-attendance/domains/services/holiday.service.ts b/src/time-and-attendance/domains/services/holiday.service.ts index 1f322b7..3007038 100644 --- a/src/time-and-attendance/domains/services/holiday.service.ts +++ b/src/time-and-attendance/domains/services/holiday.service.ts @@ -1,6 +1,6 @@ import { Injectable } from "@nestjs/common"; import { computeHours, getWeekStart } from "src/common/utils/date-utils"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; import { MS_PER_WEEK } from "src/common/utils/constants.utils"; import { Result } from "src/common/errors/result-error.factory"; diff --git a/src/time-and-attendance/domains/services/mileage.service.ts b/src/time-and-attendance/domains/services/mileage.service.ts index 799af07..9f974ec 100644 --- a/src/time-and-attendance/domains/services/mileage.service.ts +++ b/src/time-and-attendance/domains/services/mileage.service.ts @@ -1,6 +1,6 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class MileageService { diff --git a/src/time-and-attendance/domains/services/overtime.service.ts b/src/time-and-attendance/domains/services/overtime.service.ts index 71ba5a5..586a985 100644 --- a/src/time-and-attendance/domains/services/overtime.service.ts +++ b/src/time-and-attendance/domains/services/overtime.service.ts @@ -1,7 +1,7 @@ import { Injectable } from '@nestjs/common'; import { Prisma, PrismaClient } from '@prisma/client'; import { getWeekStart, getWeekEnd, computeHours } from 'src/common/utils/date-utils'; -import { PrismaService } from 'src/prisma/prisma.service'; +import { PrismaService } from 'prisma/postgres/prisma-postgres.service'; import { DAILY_LIMIT_HOURS, WEEKLY_LIMIT_HOURS } from 'src/common/utils/constants.utils'; import { Result } from 'src/common/errors/result-error.factory'; diff --git a/src/time-and-attendance/domains/services/sick-leave.service.ts b/src/time-and-attendance/domains/services/sick-leave.service.ts index b7f17ea..eb98bde 100644 --- a/src/time-and-attendance/domains/services/sick-leave.service.ts +++ b/src/time-and-attendance/domains/services/sick-leave.service.ts @@ -1,6 +1,6 @@ import { getYearStart, roundToQuarterHour } from "src/common/utils/date-utils"; import { Injectable, Logger } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Result } from "src/common/errors/result-error.factory"; import { Prisma } from "@prisma/client"; diff --git a/src/time-and-attendance/domains/services/vacation.service.ts b/src/time-and-attendance/domains/services/vacation.service.ts index e16390b..ad5bf78 100644 --- a/src/time-and-attendance/domains/services/vacation.service.ts +++ b/src/time-and-attendance/domains/services/vacation.service.ts @@ -1,7 +1,7 @@ import { BadRequestException, Injectable, Logger, NotFoundException } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class VacationService { diff --git a/src/time-and-attendance/expenses/services/expense-create.service.ts b/src/time-and-attendance/expenses/services/expense-create.service.ts index 6222c83..f6be997 100644 --- a/src/time-and-attendance/expenses/services/expense-create.service.ts +++ b/src/time-and-attendance/expenses/services/expense-create.service.ts @@ -3,7 +3,7 @@ import { Result } from "src/common/errors/result-error.factory"; import { BankCodesResolver } from "src/common/mappers/bank-type-id.mapper"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; import { toStringFromDate, weekStartSunday } from "src/common/utils/date-utils"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { ExpenseDto } from "src/time-and-attendance/expenses/expense-create.dto"; import { normalizeAndParseExpenseDto } from "src/time-and-attendance/expenses/expense.utils"; import { expense_select } from "src/time-and-attendance/utils/selects.utils"; diff --git a/src/time-and-attendance/expenses/services/expense-delete.service.ts b/src/time-and-attendance/expenses/services/expense-delete.service.ts index 9ad7dd8..0b6a557 100644 --- a/src/time-and-attendance/expenses/services/expense-delete.service.ts +++ b/src/time-and-attendance/expenses/services/expense-delete.service.ts @@ -1,6 +1,6 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class ExpenseDeleteService { diff --git a/src/time-and-attendance/expenses/services/expense-update.service.ts b/src/time-and-attendance/expenses/services/expense-update.service.ts index 3f2e1e5..53c248f 100644 --- a/src/time-and-attendance/expenses/services/expense-update.service.ts +++ b/src/time-and-attendance/expenses/services/expense-update.service.ts @@ -1,7 +1,7 @@ import { weekStartSunday, toStringFromDate, toDateFromString } from "src/common/utils/date-utils"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; import { expense_select, timesheet_select } from "src/time-and-attendance/utils/selects.utils"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; import { BankCodesResolver } from "src/common/mappers/bank-type-id.mapper"; diff --git a/src/time-and-attendance/exports/services/csv-exports.service.ts b/src/time-and-attendance/exports/services/csv-exports.service.ts index 85cd6af..8c7d83e 100644 --- a/src/time-and-attendance/exports/services/csv-exports.service.ts +++ b/src/time-and-attendance/exports/services/csv-exports.service.ts @@ -1,4 +1,4 @@ -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { BadRequestException, Injectable, NotFoundException } from "@nestjs/common"; import { Filters, CsvRow, InternalCsvRow } from "src/time-and-attendance/exports/export-csv-options.dto"; import { computeHours } from "src/common/utils/date-utils"; diff --git a/src/time-and-attendance/leave-requests/services/leave-request.service.ts b/src/time-and-attendance/leave-requests/services/leave-request.service.ts index 2a5b1cf..f8e3a42 100644 --- a/src/time-and-attendance/leave-requests/services/leave-request.service.ts +++ b/src/time-and-attendance/leave-requests/services/leave-request.service.ts @@ -2,7 +2,7 @@ import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; import { BankCodesResolver } from "src/common/mappers/bank-type-id.mapper"; import { LeaveApprovalStatus, LeaveRequests, LeaveTypes, Prisma, Shifts } from "@prisma/client"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Result } from "src/common/errors/result-error.factory"; import { Injectable } from "@nestjs/common"; import { LeaveRequestDto } from "src/time-and-attendance/leave-requests/leave-request.dto"; diff --git a/src/time-and-attendance/leave-requests/utils/leave-request.util.ts b/src/time-and-attendance/leave-requests/utils/leave-request.util.ts index 7d169d9..d18bdf8 100644 --- a/src/time-and-attendance/leave-requests/utils/leave-request.util.ts +++ b/src/time-and-attendance/leave-requests/utils/leave-request.util.ts @@ -1,6 +1,6 @@ import { BadRequestException, Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { LeaveTypes } from "@prisma/client"; import { toDateFromString, toStringFromDate } from "src/common/utils/date-utils"; @Injectable() diff --git a/src/time-and-attendance/paid-time-off/paid-time-off.module.ts b/src/time-and-attendance/paid-time-off/paid-time-off.module.ts index f814c79..b0150ae 100644 --- a/src/time-and-attendance/paid-time-off/paid-time-off.module.ts +++ b/src/time-and-attendance/paid-time-off/paid-time-off.module.ts @@ -1,6 +1,6 @@ import { Module } from "@nestjs/common"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { BankedHoursService } from "src/time-and-attendance/domains/services/banking-hours.service"; import { SickLeaveService } from "src/time-and-attendance/domains/services/sick-leave.service"; import { VacationService } from "src/time-and-attendance/domains/services/vacation.service"; diff --git a/src/time-and-attendance/paid-time-off/paid-time-off.service.ts b/src/time-and-attendance/paid-time-off/paid-time-off.service.ts index 2e05fd0..6b8880f 100644 --- a/src/time-and-attendance/paid-time-off/paid-time-off.service.ts +++ b/src/time-and-attendance/paid-time-off/paid-time-off.service.ts @@ -1,7 +1,7 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; import { computeHours } from "src/common/utils/date-utils"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { BankedHoursService } from "src/time-and-attendance/domains/services/banking-hours.service"; import { SickLeaveService } from "src/time-and-attendance/domains/services/sick-leave.service"; import { VacationService } from "src/time-and-attendance/domains/services/vacation.service"; diff --git a/src/time-and-attendance/pay-period/services/pay-periods-build-overview.service.ts b/src/time-and-attendance/pay-period/services/pay-periods-build-overview.service.ts index e0153e1..b860ab3 100644 --- a/src/time-and-attendance/pay-period/services/pay-periods-build-overview.service.ts +++ b/src/time-and-attendance/pay-period/services/pay-periods-build-overview.service.ts @@ -2,7 +2,7 @@ import { Injectable } from "@nestjs/common"; import { Prisma } from "@prisma/client"; import { Result } from "src/common/errors/result-error.factory"; import { computeHours, computePeriod, sevenDaysFrom, toDateFromString, toStringFromDate } from "src/common/utils/date-utils"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { EmployeePeriodOverviewDto, Overview, PayPeriodOverviewDto } from "src/time-and-attendance/pay-period/dtos/overview-pay-period.dto"; diff --git a/src/time-and-attendance/pay-period/services/pay-periods-command.service.ts b/src/time-and-attendance/pay-period/services/pay-periods-command.service.ts index b15d89e..bd1043b 100644 --- a/src/time-and-attendance/pay-period/services/pay-periods-command.service.ts +++ b/src/time-and-attendance/pay-period/services/pay-periods-command.service.ts @@ -1,5 +1,5 @@ import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Result } from "src/common/errors/result-error.factory"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; import { Prisma } from "@prisma/client"; diff --git a/src/time-and-attendance/pay-period/services/pay-periods-query.service.ts b/src/time-and-attendance/pay-period/services/pay-periods-query.service.ts index 90bd0a9..0693c1e 100644 --- a/src/time-and-attendance/pay-period/services/pay-periods-query.service.ts +++ b/src/time-and-attendance/pay-period/services/pay-periods-query.service.ts @@ -1,5 +1,5 @@ import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { computePeriod, listPayYear, payYearOfDate } from "src/common/utils/date-utils"; import { PayPeriodDto } from "../dtos/overview-pay-period.dto"; import { Result } from "src/common/errors/result-error.factory"; diff --git a/src/time-and-attendance/schedule-presets/services/schedule-presets-apply.service.ts b/src/time-and-attendance/schedule-presets/services/schedule-presets-apply.service.ts index 668418a..a199de8 100644 --- a/src/time-and-attendance/schedule-presets/services/schedule-presets-apply.service.ts +++ b/src/time-and-attendance/schedule-presets/services/schedule-presets-apply.service.ts @@ -1,5 +1,5 @@ import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { is_same_week_day, sevenDaysFrom, toDateFromString, toStringFromDate, toStringFromHHmm } from "src/common/utils/date-utils"; import { BankCodesResolver } from "src/common/mappers/bank-type-id.mapper"; diff --git a/src/time-and-attendance/schedule-presets/services/schedule-presets-create.service.ts b/src/time-and-attendance/schedule-presets/services/schedule-presets-create.service.ts index 456a903..5c12c97 100644 --- a/src/time-and-attendance/schedule-presets/services/schedule-presets-create.service.ts +++ b/src/time-and-attendance/schedule-presets/services/schedule-presets-create.service.ts @@ -1,6 +1,6 @@ import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { SchedulePresetsDto } from "src/time-and-attendance/schedule-presets/schedule-presets.dto"; diff --git a/src/time-and-attendance/schedule-presets/services/schedule-presets-delete.service.ts b/src/time-and-attendance/schedule-presets/services/schedule-presets-delete.service.ts index 20b650a..2491cc5 100644 --- a/src/time-and-attendance/schedule-presets/services/schedule-presets-delete.service.ts +++ b/src/time-and-attendance/schedule-presets/services/schedule-presets-delete.service.ts @@ -1,6 +1,6 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; @Injectable() export class SchedulePresetDeleteService { diff --git a/src/time-and-attendance/schedule-presets/services/schedule-presets-get.service.ts b/src/time-and-attendance/schedule-presets/services/schedule-presets-get.service.ts index af8efe9..d2d4733 100644 --- a/src/time-and-attendance/schedule-presets/services/schedule-presets-get.service.ts +++ b/src/time-and-attendance/schedule-presets/services/schedule-presets-get.service.ts @@ -1,6 +1,6 @@ import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { SchedulePresetsDto, SchedulePresetShiftsDto } from "../schedule-presets.dto"; diff --git a/src/time-and-attendance/schedule-presets/services/schedule-presets-update.service.ts b/src/time-and-attendance/schedule-presets/services/schedule-presets-update.service.ts index 57998c5..55afedb 100644 --- a/src/time-and-attendance/schedule-presets/services/schedule-presets-update.service.ts +++ b/src/time-and-attendance/schedule-presets/services/schedule-presets-update.service.ts @@ -1,5 +1,5 @@ import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { SchedulePresetsDto } from "src/time-and-attendance/schedule-presets/schedule-presets.dto"; diff --git a/src/time-and-attendance/shifts/services/shifts-create.service.ts b/src/time-and-attendance/shifts/services/shifts-create.service.ts index 9482525..3a7d930 100644 --- a/src/time-and-attendance/shifts/services/shifts-create.service.ts +++ b/src/time-and-attendance/shifts/services/shifts-create.service.ts @@ -3,7 +3,7 @@ import { Injectable } from "@nestjs/common"; import { timesheet_select } from "src/time-and-attendance/utils/selects.utils"; import { BankCodesResolver } from "src/common/mappers/bank-type-id.mapper"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Result } from "src/common/errors/result-error.factory"; import { toStringFromHHmm, toStringFromDate, toDateFromString, overlaps, toDateFromHHmm, computeHours } from "src/common/utils/date-utils"; import { ShiftDto } from "src/time-and-attendance/shifts/shift.dto"; diff --git a/src/time-and-attendance/shifts/services/shifts-delete.service.ts b/src/time-and-attendance/shifts/services/shifts-delete.service.ts index a0c161b..f1f5cf5 100644 --- a/src/time-and-attendance/shifts/services/shifts-delete.service.ts +++ b/src/time-and-attendance/shifts/services/shifts-delete.service.ts @@ -1,7 +1,7 @@ import { Injectable } from "@nestjs/common"; import { Result } from "src/common/errors/result-error.factory"; import { computeHours } from "src/common/utils/date-utils"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { PaidTimeOFfBankHoursService } from "src/time-and-attendance/paid-time-off/paid-time-off.service"; @Injectable() diff --git a/src/time-and-attendance/shifts/services/shifts-update.service.ts b/src/time-and-attendance/shifts/services/shifts-update.service.ts index 2c9f0fc..9e188d8 100644 --- a/src/time-and-attendance/shifts/services/shifts-update.service.ts +++ b/src/time-and-attendance/shifts/services/shifts-update.service.ts @@ -1,6 +1,6 @@ import { toDateFromString, toStringFromHHmm, toStringFromDate, toDateFromHHmm, overlaps, computeHours } from "src/common/utils/date-utils"; import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { EmployeeTimesheetResolver } from "src/common/mappers/timesheet.mapper"; import { BankCodesResolver } from "src/common/mappers/bank-type-id.mapper"; diff --git a/src/time-and-attendance/timesheets/services/timesheet-approval.service.ts b/src/time-and-attendance/timesheets/services/timesheet-approval.service.ts index 82f9c18..6ba4aec 100644 --- a/src/time-and-attendance/timesheets/services/timesheet-approval.service.ts +++ b/src/time-and-attendance/timesheets/services/timesheet-approval.service.ts @@ -1,6 +1,6 @@ import { BaseApprovalService } from "src/common/shared/base-approval.service"; import { Prisma, Timesheets } from "@prisma/client"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaService } from "prisma/postgres/prisma-postgres.service"; import { Injectable, NotFoundException } from "@nestjs/common"; import { timesheet_select } from "src/time-and-attendance/utils/selects.utils"; diff --git a/src/time-and-attendance/timesheets/services/timesheet-employee-overview.service.ts b/src/time-and-attendance/timesheets/services/timesheet-employee-overview.service.ts index 17dd885..746d2cf 100644 --- a/src/time-and-attendance/timesheets/services/timesheet-employee-overview.service.ts +++ b/src/time-and-attendance/timesheets/services/timesheet-employee-overview.service.ts @@ -1,7 +1,7 @@ import { NUMBER_OF_TIMESHEETS_TO_RETURN } from "src/common/utils/constants.utils"; import { Injectable } from "@nestjs/common"; -import { PrismaService } from "src/prisma/prisma.service"; +import { PrismaPostgresService } from "prisma/postgres/prisma-postgres.service"; import { EmailToIdResolver } from "src/common/mappers/email-id.mapper"; import { Timesheet, Timesheets } from "src/time-and-attendance/timesheets/timesheet.dto"; import { Result } from "src/common/errors/result-error.factory"; @@ -12,7 +12,7 @@ import { mapOneTimesheet } from "src/time-and-attendance/timesheets/timesheet.ma @Injectable() export class GetTimesheetsOverviewService { constructor( - private readonly prisma: PrismaService, + private readonly prisma: PrismaPostgresService, private readonly emailResolver: EmailToIdResolver, ) { }