diff --git a/catDataMocking/package.json b/catDataMocking/package.json new file mode 100644 index 0000000..0d16fb0 --- /dev/null +++ b/catDataMocking/package.json @@ -0,0 +1,21 @@ +{ + "scripts": { + "build": "tsc", + "start:dev": "tsc-watch --onSuccess \"node dist/app.js\"", + "prestart": "npm run build", + "start": "node dist/app.js" + }, + "devDependencies": { + "@types/cors": "^2.8.18", + "@types/express": "^5.0.2", + "@types/node": "^15.3.0", + "prettier": "^2.2.1", + "tsc": "^2.0.3", + "tsc-watch": "^4.2.9", + "typescript": "^4.3.4" + }, + "dependencies": { + "cors": "^2.8.5", + "express": "^5.1.0" + } +} diff --git a/catDataMocking/src/app.model.ts b/catDataMocking/src/app.model.ts new file mode 100644 index 0000000..2f892d9 --- /dev/null +++ b/catDataMocking/src/app.model.ts @@ -0,0 +1,84 @@ +export type CatType = { + id: string; + + name: string; + + age: number; + + species: string; + + isCute: boolean; + + friends: string[]; +}; + +export const Cat: CatType[] = [ + { + id: "fsduifh", + name: "blue", + + age: 8, + + species: "Russian Blue", + + isCute: true, + + friends: ["asdfhj29009", "WE09tju2j"], + }, + + { + id: "iohf2309q4hr", + + name: "som", + + age: 4, + + species: "Sphynx cat", + + isCute: true, + + friends: ["weju0fj20qj", "asdfhj29009", "weju0fj20qj"], + }, + + { + id: "WE09tju2j", + + name: "lean", + + age: 6, + + species: "Munchkin", + + isCute: false, + + friends: [], + }, + + { + id: "asdfhj29009", + + name: "star", + + age: 10, + + species: "Scottish Fold", + + isCute: true, + + friends: ["weju0fj20qj"], + }, + + { + id: "weju0fj20qj", + + name: "red", + + age: 2, + + species: "Sharm", + + isCute: false, + + friends: [], + }, +]; diff --git a/catDataMocking/src/app.ts b/catDataMocking/src/app.ts new file mode 100644 index 0000000..cdd4bb6 --- /dev/null +++ b/catDataMocking/src/app.ts @@ -0,0 +1,18 @@ +import * as express from "express"; +import * as cors from "cors"; + +import { CatType, Cat } from "./app.model"; + +const app: express.Express = express(); +const port: number = 8000; + +app.use(cors()); + +app.get("/", (req: express.Request, res: express.Response) => { + console.log(req); + res.send({ cats: Cat }); +}); + +app.listen(port, () => { + console.log(`server is on ${port}`); +}); diff --git a/catDataMocking/tsconfig.json b/catDataMocking/tsconfig.json new file mode 100644 index 0000000..9c7d8ec --- /dev/null +++ b/catDataMocking/tsconfig.json @@ -0,0 +1,20 @@ +//* https://www.staging-typescript.org/tsconfig + +{ + "compilerOptions": { + "strict": true, + "module": "commonjs", + "declaration": true, + "removeComments": true, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "allowSyntheticDefaultImports": true, + "target": "ES5", + "sourceMap": true, + "outDir": "./dist", + "baseUrl": "./src", + "incremental": true + }, + "include": ["src/**/*"] + } + \ No newline at end of file diff --git a/letsStart/package.json b/letsStart/package.json index 9ce32b1..0d16fb0 100644 --- a/letsStart/package.json +++ b/letsStart/package.json @@ -6,6 +6,7 @@ "start": "node dist/app.js" }, "devDependencies": { + "@types/cors": "^2.8.18", "@types/express": "^5.0.2", "@types/node": "^15.3.0", "prettier": "^2.2.1", @@ -14,6 +15,7 @@ "typescript": "^4.3.4" }, "dependencies": { + "cors": "^2.8.5", "express": "^5.1.0" } } diff --git a/letsStart/src/app.ts b/letsStart/src/app.ts index bf6242c..cd9a2ed 100644 --- a/letsStart/src/app.ts +++ b/letsStart/src/app.ts @@ -1,13 +1,20 @@ import * as express from "express"; +import * as cors from "cors"; const app: express.Express = express(); const port: number = 8000; -app.get("/", (req: express.Request, res: express.Response) => { +app.use(cors()); + +app.get("/test", (req: express.Request, res: express.Response) => { console.log(req); res.send("Hello World!"); }); +app.post("/test", (req, res) => { + res.send({ person: "Test" }); +}); + app.listen(port, () => { console.log(`Example app listening at http://localhost:${port}`); });