diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 64cc34d..4876bb8 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -25,6 +25,9 @@ jobs: - name: Install deps run: npm ci + - name: Build + run: npm run build + - name: Generate TS Protobuf run: npm run generate diff --git a/package-lock.json b/package-lock.json index bc59c6e..02bc837 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,16 +1,20 @@ { "name": "@lendry-erp/contracts", - "version": "1.0.0", + "version": "1.0.6", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@lendry-erp/contracts", - "version": "1.0.0", + "version": "1.0.6", "dependencies": { "@nestjs/microservices": "^11.1.17", "rxjs": "^7.8.2", "ts-proto": "^2.11.6" + }, + "devDependencies": { + "@types/node": "^25.5.0", + "typescript": "^6.0.2" } }, "node_modules/@borewit/text-codec": { @@ -214,6 +218,16 @@ "license": "MIT", "peer": true }, + "node_modules/@types/node": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.5.0.tgz", + "integrity": "sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~7.18.0" + } + }, "node_modules/case-anything": { "version": "2.1.13", "resolved": "https://registry.npmjs.org/case-anything/-/case-anything-2.1.13.tgz", @@ -460,6 +474,20 @@ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "license": "0BSD" }, + "node_modules/typescript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.2.tgz", + "integrity": "sha512-bGdAIrZ0wiGDo5l8c++HWtbaNCWTS4UTv7RaTH/ThVIgjkveJt83m74bBHMJkuCbslY8ixgLBVZJIOiQlQTjfQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, "node_modules/uid": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/uid/-/uid-2.0.2.tgz", @@ -485,6 +513,13 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } + }, + "node_modules/undici-types": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", + "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==", + "dev": true, + "license": "MIT" } } } diff --git a/package.json b/package.json index 8fd3fa0..9e8e90b 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,12 @@ { "name": "@lendry-erp/contracts", - "version": "1.0.6", + "version": "1.0.7", "description": "Protobuf definitions and generated TypeScript types", "type": "commonjs", + "main": "./dist/index.js", + "types": "./dist/index.d.ts", "scripts": { + "build": "tsc -p tsconfig.build.json", "generate": "protoc -I ./proto ./proto/*.proto --ts_proto_out=./gen --ts_proto_opt=nestJs=true,package=omit" }, "files": [ @@ -17,5 +20,9 @@ "@nestjs/microservices": "^11.1.17", "rxjs": "^7.8.2", "ts-proto": "^2.11.6" + }, + "devDependencies": { + "@types/node": "^25.5.0", + "typescript": "^6.0.2" } } diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..a2da32c --- /dev/null +++ b/src/index.ts @@ -0,0 +1 @@ +export * from "./proto"; diff --git a/src/proto/index.ts b/src/proto/index.ts new file mode 100644 index 0000000..7fb7882 --- /dev/null +++ b/src/proto/index.ts @@ -0,0 +1 @@ +export * from "./paths"; diff --git a/src/proto/paths.ts b/src/proto/paths.ts new file mode 100644 index 0000000..43ccd49 --- /dev/null +++ b/src/proto/paths.ts @@ -0,0 +1,5 @@ +import { join } from "path"; + +export const PROTO_PATHS = { + AUTH: join(__dirname, "../../proto/auth.proto"), +} as const; diff --git a/tsconfig.build.json b/tsconfig.build.json new file mode 100644 index 0000000..7ae49c1 --- /dev/null +++ b/tsconfig.build.json @@ -0,0 +1,11 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "declaration": true, + "outDir": "./dist", + "rootDir": "./src", + "types": ["node"] + }, + "include": ["src/**/*"], + "exclude": ["node_module", "dist", "test"] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..1d8e5ae --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,11 @@ +{ + "compilerOptions": { + "module": "commonjs", + "target": "es2024", + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "strictNullChecks": false + } +}