diff --git a/package-lock.json b/package-lock.json index 2ced226..314b4b9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "1.0.0", "license": "ISC", "dependencies": { - "dotenv": "^16.3.1", + "dotenv": "^16.4.0", "express-expeditious": "^4.0.0", "mongoose": "^8.1.0", "morgan": "^1.10.0" @@ -631,9 +631,9 @@ } }, "node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "version": "16.4.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.0.tgz", + "integrity": "sha512-WvImr5kpN5NGNn7KaDjJnLTh5rDVLZiDf/YLA8T1ZEZEBZNEDOE+mnkS0PVjPax8ZxBP5zC5SLMB3/9VV5de9g==", "engines": { "node": ">=12" }, diff --git a/package.json b/package.json index f1b4c5a..e129cac 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "typescript": "^5.3.3" }, "dependencies": { - "dotenv": "^16.3.1", + "dotenv": "^16.4.0", "express-expeditious": "^4.0.0", "mongoose": "^8.1.0", "morgan": "^1.10.0" diff --git a/src/config/mongo.config.ts b/src/config/mongo.config.ts new file mode 100644 index 0000000..4a5a76a --- /dev/null +++ b/src/config/mongo.config.ts @@ -0,0 +1,13 @@ +import mongoose from "mongoose"; + +const db = process.env.URI + +const connection = async () => { + try { + await mongoose.connect(db) + } catch (error) { + console.error(error) + } +} + +export default connection \ No newline at end of file diff --git a/src/index.ts b/src/index.ts index 1396a7c..88beefb 100644 --- a/src/index.ts +++ b/src/index.ts @@ -2,8 +2,10 @@ import express, { Express } from "express"; import morgan from "morgan"; import cors from "cors"; import dotenv from "dotenv" +import connection from "./config/mongo.config"; dotenv.config() +connection() const app: Express = express(); const port = process.env.PORT; diff --git a/src/model/user.model.ts b/src/model/user.model.ts new file mode 100644 index 0000000..2cbe1ae --- /dev/null +++ b/src/model/user.model.ts @@ -0,0 +1,45 @@ +import mongoose from "mongoose"; + +const user = new mongoose.Schema({ + username: { + type: String, + require: true, + maxLength: 40, + }, + + lastName: { + type: String, + require: true, + maxLength: 40, + }, + + city: { + type: String, + require: true, + maxLenght: 20, + }, + + mountPrestamo: { + type: Number, + require: true, + }, + + totalInteres: { + type: Number, + }, + + totalSumadoInteres: { + type: Number, + }, + + mount: { + type: Number, + }, +}); + +export const userModel = mongoose.model("users", user); +// Javascript -> tipado dinamico +// example const username = "jafete" + +// TypeScript -> tipado fuerte +// example -> const username: string = "jafete"