diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 00000000..8b89d021 --- /dev/null +++ b/.eslintignore @@ -0,0 +1 @@ +jest.setup.js diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 00000000..9a299605 --- /dev/null +++ b/.eslintrc @@ -0,0 +1,3 @@ +{ + "extends": "@myunisoft/eslint-config" +} \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..ccb2c800 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +node_modules/ +package-lock.json \ No newline at end of file diff --git a/jest.config.js b/jest.config.js new file mode 100644 index 00000000..023e2ce4 --- /dev/null +++ b/jest.config.js @@ -0,0 +1,20 @@ +module.exports = { + preset: "ts-jest", + testEnvironment: "node", + maxWorkers: 1, + moduleNameMapper: { + "^#src/(.*)$": "/src/$1" + }, + setupFiles: ["dotenv/config"], + setupFilesAfterEnv: [ + "./jest.setup.js" + ], + collectCoverage: true, + collectCoverageFrom: [ + "**/src/**/*.ts" + ], + testMatch: [ + "**/test/**/*.spec.ts" + ], + globalSetup: "./start-container.js" +}; diff --git a/jest.setup.js b/jest.setup.js new file mode 100644 index 00000000..3b0a327e --- /dev/null +++ b/jest.setup.js @@ -0,0 +1,6 @@ +const dotenv = require("dotenv"); +dotenv.config(); + +require("@myunisoft/utils").CONSTANTS.DEBUG = false; + +jest.setTimeout(30000); diff --git a/package.json b/package.json new file mode 100644 index 00000000..efd4ae6c --- /dev/null +++ b/package.json @@ -0,0 +1,35 @@ +{ + "name": "@myunisoft/events", + "version": "1.0.0", + "description": "MyUnisoft Events validation", + "main": "dist/index.js", + "types": "dist/index.d.ts", + "scripts": { + "build": "tsc", + "test": "jest" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/MyUnisoft/Events.git" + }, + "publishConfig": { + "@myunisoft:registry": "https://registry.npmjs.org/" + }, + "files": [ + "dist" + ], + "author": "HALLAERT Nicolas ", + "license": "MIT", + "bugs": { + "url": "https://github.com/MyUnisoft/Events/issues" + }, + "dependencies": { + "ajv": "^8.11.0" + }, + "devDependencies": { + "jest": "^27.5.1", + "@types/jest": "^27.4.1", + "ts-jest": "^27.1.4", + "typescript": "^4.6.3" + } +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 00000000..34a2785d --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "target": "ES2020", + "module": "commonjs", + "strict": false, + "outDir": "./dist", + "moduleResolution": "node", + "resolveJsonModule": true, + "baseUrl": "./src", + "declaration": true, + "paths": { + "#src/*": ["./src/*"] + }, + "typeRoots": ["node_modules/@types", "./types"], + "types": ["jest", "node"], + "esModuleInterop": true + }, + "include": [ + "src/**/**/*.ts", + "./types" + ], + "exclude": ["node_modules"] +}