diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d1b438a4a42..53f031c6c56 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -38,6 +38,25 @@ However, it might be easier to develop against your ZITADEL Cloud instance if you don't have docker installed or have limited resources on your local machine. +### Testing + +You can execute the following commands in the following directories: + +- apps/login +- packages/zitadel-client +- packages/zitadel-server +- packages/zitadel-react +- packages/zitadel-next +- The projects root directory: all tests in the project are executed + +```sh +# Run unit and integration tests once +pnpm run test -- --passWithNoTests + +# Rerun unit and integration tests on file changes +pnpm run test:watch -- --passWithNoTests +``` + ### Developing Against Your Local ZITADEL Instance ```sh diff --git a/README.md b/README.md index da0a803d57e..efbe2fd7bab 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,8 @@ Each package and app is 100% [TypeScript](https://www.typescriptlang.org/). - `pnpm generate` - Build proto stubs for server and client package - `pnpm build` - Build all packages and the login app +- `pnpm test` - Test all packages and the login app +- `pnpm test:watch` - Rerun tests on file change - `pnpm dev` - Develop all packages and the login app - `pnpm lint` - Lint all packages - `pnpm changeset` - Generate a changeset diff --git a/apps/login/jest.config.ts b/apps/login/jest.config.ts new file mode 100644 index 00000000000..fadf29ddd00 --- /dev/null +++ b/apps/login/jest.config.ts @@ -0,0 +1,8 @@ +import type { JestConfigWithTsJest } from 'ts-jest' + +const jestConfig: JestConfigWithTsJest = { + preset: 'ts-jest', + testEnvironment: 'node' +} + +export default jestConfig \ No newline at end of file diff --git a/apps/login/package.json b/apps/login/package.json index 8bd13f74e9b..73d2362828a 100644 --- a/apps/login/package.json +++ b/apps/login/package.json @@ -2,13 +2,14 @@ "name": "@zitadel/login", "private": true, "scripts": { + "test": "jest", + "test:watch": "jest --watch", "build": "next build", "dev": "next dev", "lint": "next lint && prettier --check .", "lint:fix": "prettier --write .", "lint-staged": "lint-staged", "start": "next start", - "test": "yarn prettier:check &nexarn lint", "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf .next" }, "git": { @@ -58,8 +59,9 @@ "prettier-plugin-tailwindcss": "0.1.13", "tailwindcss": "3.2.4", "ts-jest": "^29.1.0", + "ts-node": "^10.9.1", "ts-proto": "^1.139.0", "typescript": "4.8.4", "zitadel-tailwind-config": "workspace:*" } -} +} \ No newline at end of file diff --git a/package.json b/package.json index d3de0176f1f..376ad156fdc 100755 --- a/package.json +++ b/package.json @@ -1,16 +1,18 @@ { "private": true, "scripts": { + "generate": "turbo run generate", + "prebuild": "turbo run generate", "build": "turbo run build", + "test": "turbo run test", + "test:watch": "turbo run test:watch", "dev": "turbo run dev --no-cache --continue", "lint": "turbo run lint", "clean": "turbo run clean && rm -rf node_modules", "format": "prettier --write \"**/*.{ts,tsx,md}\"", "changeset": "changeset", "version-packages": "changeset version", - "release": "turbo run build --filter=login^... && changeset publish", - "prebuild": "turbo run generate", - "generate": "turbo run generate" + "release": "turbo run build --filter=login^... && changeset publish" }, "devDependencies": { "@changesets/cli": "^2.22.0", @@ -20,4 +22,4 @@ "turbo": "^1.9.8" }, "packageManager": "pnpm@7.15.0" -} +} \ No newline at end of file diff --git a/packages/zitadel-client/jest.config.ts b/packages/zitadel-client/jest.config.ts new file mode 100644 index 00000000000..fadf29ddd00 --- /dev/null +++ b/packages/zitadel-client/jest.config.ts @@ -0,0 +1,8 @@ +import type { JestConfigWithTsJest } from 'ts-jest' + +const jestConfig: JestConfigWithTsJest = { + preset: 'ts-jest', + testEnvironment: 'node' +} + +export default jestConfig \ No newline at end of file diff --git a/packages/zitadel-client/package.json b/packages/zitadel-client/package.json index 3ef55ccac1d..8e48385e885 100644 --- a/packages/zitadel-client/package.json +++ b/packages/zitadel-client/package.json @@ -10,11 +10,14 @@ "dist/**" ], "scripts": { + "generate": "buf generate https://github.com/zitadel/zitadel.git --path ./proto/zitadel", + "prebuild": "pnpm run generate", "build": "tsup src/index.ts --format esm,cjs --dts", + "test": "jest", + "test:watch": "jest --watch", "dev": "tsup src/index.ts --format esm,cjs --watch --dts", "lint": "eslint \"src/**/*.ts*\"", - "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist", - "generate": "buf generate https://github.com/zitadel/zitadel.git --path ./proto/zitadel" + "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist" }, "devDependencies": { "@bufbuild/buf": "^1.14.0", @@ -24,6 +27,7 @@ "eslint-config-zitadel": "workspace:*", "jest": "^29.5.0", "ts-jest": "^29.1.0", + "ts-node": "^10.9.1", "ts-proto": "^1.139.0", "tsup": "^5.10.1", "typescript": "^4.9.3" @@ -36,4 +40,4 @@ "nice-grpc-web": "^3.2.3", "protobufjs": "^7.2.3" } -} +} \ No newline at end of file diff --git a/packages/zitadel-next/jest.config.ts b/packages/zitadel-next/jest.config.ts new file mode 100644 index 00000000000..fadf29ddd00 --- /dev/null +++ b/packages/zitadel-next/jest.config.ts @@ -0,0 +1,8 @@ +import type { JestConfigWithTsJest } from 'ts-jest' + +const jestConfig: JestConfigWithTsJest = { + preset: 'ts-jest', + testEnvironment: 'node' +} + +export default jestConfig \ No newline at end of file diff --git a/packages/zitadel-next/package.json b/packages/zitadel-next/package.json index b2a42d1bd9e..2139b49897b 100644 --- a/packages/zitadel-next/package.json +++ b/packages/zitadel-next/package.json @@ -11,6 +11,8 @@ ], "scripts": { "build": "tsup src/index.tsx --format esm,cjs --dts --external react", + "test": "jest", + "test:watch": "jest --watch", "dev": "tsup src/index.tsx --format esm,cjs --watch --dts --external react", "lint": "eslint \"src/**/*.ts*\"", "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist" @@ -22,6 +24,7 @@ "eslint-config-zitadel": "workspace:*", "jest": "^29.5.0", "ts-jest": "^29.1.0", + "ts-node": "^10.9.1", "tsup": "^5.10.1", "typescript": "^4.9.3" }, @@ -31,4 +34,4 @@ "publishConfig": { "access": "public" } -} +} \ No newline at end of file diff --git a/packages/zitadel-react/jest.config.ts b/packages/zitadel-react/jest.config.ts new file mode 100644 index 00000000000..fadf29ddd00 --- /dev/null +++ b/packages/zitadel-react/jest.config.ts @@ -0,0 +1,8 @@ +import type { JestConfigWithTsJest } from 'ts-jest' + +const jestConfig: JestConfigWithTsJest = { + preset: 'ts-jest', + testEnvironment: 'node' +} + +export default jestConfig \ No newline at end of file diff --git a/packages/zitadel-react/package.json b/packages/zitadel-react/package.json index a2d5d55c11a..b987e6db0b4 100644 --- a/packages/zitadel-react/package.json +++ b/packages/zitadel-react/package.json @@ -13,6 +13,8 @@ }, "scripts": { "build": "tsup", + "test": "jest", + "test:watch": "jest --watch", "dev": "tsup --watch", "lint": "eslint \"src/**/*.ts*\"", "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist", @@ -31,6 +33,7 @@ "sass": "^1.62.0", "tailwindcss": "3.2.4", "ts-jest": "^29.1.0", + "ts-node": "^10.9.1", "tsup": "^5.10.1", "typescript": "^4.9.3", "zitadel-tailwind-config": "workspace:*" @@ -41,4 +44,4 @@ "peerDependencies": { "react": "18.2.0" } -} +} \ No newline at end of file diff --git a/packages/zitadel-server/jest.config.ts b/packages/zitadel-server/jest.config.ts new file mode 100644 index 00000000000..fadf29ddd00 --- /dev/null +++ b/packages/zitadel-server/jest.config.ts @@ -0,0 +1,8 @@ +import type { JestConfigWithTsJest } from 'ts-jest' + +const jestConfig: JestConfigWithTsJest = { + preset: 'ts-jest', + testEnvironment: 'node' +} + +export default jestConfig \ No newline at end of file diff --git a/packages/zitadel-server/package.json b/packages/zitadel-server/package.json index d33edd801d8..5a09b41bb93 100644 --- a/packages/zitadel-server/package.json +++ b/packages/zitadel-server/package.json @@ -11,12 +11,14 @@ "dist/**" ], "scripts": { + "generate": "buf generate https://github.com/zitadel/zitadel.git --path ./proto/zitadel", + "prebuild": "pnpm run generate", "build": "tsup --dts", + "test": "jest", + "test:watch": "jest --watch", "dev": "tsup --dts --watch", "lint": "eslint \"src/**/*.ts*\"", - "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist", - "prebuild": "pnpm run generate", - "generate": "buf generate https://github.com/zitadel/zitadel.git --path ./proto/zitadel" + "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist" }, "devDependencies": { "@bufbuild/buf": "^1.14.0", @@ -26,6 +28,7 @@ "eslint-config-zitadel": "workspace:*", "jest": "^29.5.0", "ts-jest": "^29.1.0", + "ts-node": "^10.9.1", "ts-proto": "^1.139.0", "tsup": "^5.10.1", "typescript": "^4.9.3" @@ -40,4 +43,4 @@ "nice-grpc-common": "^2.0.2", "protobufjs": "^7.2.3" } -} +} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 90b68a0b256..1f0de1f11f2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -118,7 +118,7 @@ importers: version: 1.11.3 jest: specifier: ^29.5.0 - version: 29.5.0(@types/node@18.11.9) + version: 29.5.0(@types/node@18.11.9)(ts-node@10.9.1) lint-staged: specifier: 13.0.3 version: 13.0.3 @@ -133,10 +133,13 @@ importers: version: 0.1.13(prettier@2.8.0) tailwindcss: specifier: 3.2.4 - version: 3.2.4(postcss@8.4.21) + version: 3.2.4(postcss@8.4.21)(ts-node@10.9.1) ts-jest: specifier: ^29.1.0 version: 29.1.0(@babel/core@7.21.8)(esbuild@0.14.54)(jest@29.5.0)(typescript@4.9.3) + ts-node: + specifier: ^10.9.1 + version: 10.9.1(@types/node@18.11.9)(typescript@4.8.4) ts-proto: specifier: ^1.139.0 version: 1.146.0 @@ -191,16 +194,19 @@ importers: version: link:../eslint-config-zitadel jest: specifier: ^29.5.0 - version: 29.5.0(@types/node@18.11.9) + version: 29.5.0(@types/node@18.11.9)(ts-node@10.9.1) ts-jest: specifier: ^29.1.0 version: 29.1.0(@babel/core@7.21.8)(esbuild@0.14.54)(jest@29.5.0)(typescript@4.9.3) + ts-node: + specifier: ^10.9.1 + version: 10.9.1(@types/node@18.11.9)(typescript@4.9.3) ts-proto: specifier: ^1.139.0 version: 1.146.0 tsup: specifier: ^5.10.1 - version: 5.12.9(postcss@8.4.21)(typescript@4.9.3) + version: 5.12.9(postcss@8.4.21)(ts-node@10.9.1)(typescript@4.9.3) typescript: specifier: ^4.9.3 version: 4.9.3 @@ -225,13 +231,16 @@ importers: version: link:../eslint-config-zitadel jest: specifier: ^29.5.0 - version: 29.5.0(@types/node@18.11.9) + version: 29.5.0(@types/node@18.11.9)(ts-node@10.9.1) ts-jest: specifier: ^29.1.0 version: 29.1.0(@babel/core@7.21.8)(esbuild@0.14.54)(jest@29.5.0)(typescript@4.9.3) + ts-node: + specifier: ^10.9.1 + version: 10.9.1(@types/node@18.11.9)(typescript@4.9.3) tsup: specifier: ^5.10.1 - version: 5.12.9(postcss@8.4.21)(typescript@4.9.3) + version: 5.12.9(postcss@8.4.21)(ts-node@10.9.1)(typescript@4.9.3) typescript: specifier: ^4.9.3 version: 4.9.3 @@ -265,7 +274,7 @@ importers: version: link:../eslint-config-zitadel jest: specifier: ^29.5.0 - version: 29.5.0(@types/node@18.11.9) + version: 29.5.0(@types/node@18.11.9)(ts-node@10.9.1) postcss: specifier: 8.4.21 version: 8.4.21 @@ -274,13 +283,16 @@ importers: version: 1.62.0 tailwindcss: specifier: 3.2.4 - version: 3.2.4(postcss@8.4.21) + version: 3.2.4(postcss@8.4.21)(ts-node@10.9.1) ts-jest: specifier: ^29.1.0 version: 29.1.0(@babel/core@7.21.8)(esbuild@0.14.54)(jest@29.5.0)(typescript@4.9.3) + ts-node: + specifier: ^10.9.1 + version: 10.9.1(@types/node@18.11.9)(typescript@4.9.3) tsup: specifier: ^5.10.1 - version: 5.12.9(postcss@8.4.21)(typescript@4.9.3) + version: 5.12.9(postcss@8.4.21)(ts-node@10.9.1)(typescript@4.9.3) typescript: specifier: ^4.9.3 version: 4.9.3 @@ -323,16 +335,19 @@ importers: version: link:../eslint-config-zitadel jest: specifier: ^29.5.0 - version: 29.5.0(@types/node@18.11.9) + version: 29.5.0(@types/node@18.11.9)(ts-node@10.9.1) ts-jest: specifier: ^29.1.0 version: 29.1.0(@babel/core@7.21.8)(esbuild@0.14.54)(jest@29.5.0)(typescript@4.9.3) + ts-node: + specifier: ^10.9.1 + version: 10.9.1(@types/node@18.11.9)(typescript@4.9.3) ts-proto: specifier: ^1.139.0 version: 1.146.0 tsup: specifier: ^5.10.1 - version: 5.12.9(postcss@8.4.21)(typescript@4.9.3) + version: 5.12.9(postcss@8.4.21)(ts-node@10.9.1)(typescript@4.9.3) typescript: specifier: ^4.9.3 version: 4.9.3 @@ -344,7 +359,7 @@ importers: version: 0.5.3(tailwindcss@3.2.4) tailwindcss: specifier: ^3.2.4 - version: 3.2.4(postcss@8.4.21) + version: 3.2.4(postcss@8.4.21)(ts-node@10.9.1) packages/zitadel-tsconfig: {} @@ -939,6 +954,12 @@ packages: prettier: 2.8.0 dev: true + /@cspotcode/source-map-support@0.8.1: + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} + dependencies: + '@jridgewell/trace-mapping': 0.3.9 + /@esbuild/linux-loong64@0.14.54: resolution: {integrity: sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==} engines: {node: '>=12'} @@ -1045,7 +1066,7 @@ packages: slash: 3.0.0 dev: true - /@jest/core@29.5.0: + /@jest/core@29.5.0(ts-node@10.9.1): resolution: {integrity: sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: @@ -1066,7 +1087,7 @@ packages: exit: 0.1.2 graceful-fs: 4.2.10 jest-changed-files: 29.5.0 - jest-config: 29.5.0(@types/node@18.11.9) + jest-config: 29.5.0(@types/node@18.11.9)(ts-node@10.9.1) jest-haste-map: 29.5.0 jest-message-util: 29.5.0 jest-regex-util: 29.4.3 @@ -1274,6 +1295,12 @@ packages: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.4.14 + /@jridgewell/trace-mapping@0.3.9: + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + dependencies: + '@jridgewell/resolve-uri': 3.1.0 + '@jridgewell/sourcemap-codec': 1.4.15 + /@manypkg/find-root@1.1.0: resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} dependencies: @@ -1625,7 +1652,19 @@ packages: tailwindcss: '>=3.0.0 || >= 3.0.0-alpha.1' dependencies: mini-svg-data-uri: 1.4.4 - tailwindcss: 3.2.4(postcss@8.4.21) + tailwindcss: 3.2.4(postcss@8.4.21)(ts-node@10.9.1) + + /@tsconfig/node10@1.0.9: + resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} + + /@tsconfig/node12@1.0.11: + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + + /@tsconfig/node14@1.0.3: + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + + /@tsconfig/node16@1.0.4: + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} /@types/babel__core@7.20.0: resolution: {integrity: sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==} @@ -1884,11 +1923,20 @@ packages: resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} engines: {node: '>=0.4.0'} + /acorn-walk@8.2.0: + resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} + engines: {node: '>=0.4.0'} + /acorn@7.4.1: resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} engines: {node: '>=0.4.0'} hasBin: true + /acorn@8.8.2: + resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} + engines: {node: '>=0.4.0'} + hasBin: true + /agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} @@ -1995,6 +2043,9 @@ packages: readable-stream: 3.6.2 dev: true + /arg@4.1.3: + resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + /arg@5.0.2: resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} @@ -2491,6 +2542,9 @@ packages: requiresBuild: true dev: false + /create-require@1.1.1: + resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + /cross-spawn@5.1.0: resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} dependencies: @@ -2700,6 +2754,10 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dev: true + /diff@4.0.2: + resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} + engines: {node: '>=0.3.1'} + /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -4111,7 +4169,7 @@ packages: - supports-color dev: true - /jest-cli@29.5.0(@types/node@18.11.9): + /jest-cli@29.5.0(@types/node@18.11.9)(ts-node@10.9.1): resolution: {integrity: sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -4121,14 +4179,14 @@ packages: node-notifier: optional: true dependencies: - '@jest/core': 29.5.0 + '@jest/core': 29.5.0(ts-node@10.9.1) '@jest/test-result': 29.5.0 '@jest/types': 29.5.0 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.10 import-local: 3.1.0 - jest-config: 29.5.0(@types/node@18.11.9) + jest-config: 29.5.0(@types/node@18.11.9)(ts-node@10.9.1) jest-util: 29.5.0 jest-validate: 29.5.0 prompts: 2.4.2 @@ -4139,7 +4197,7 @@ packages: - ts-node dev: true - /jest-config@29.5.0(@types/node@18.11.9): + /jest-config@29.5.0(@types/node@18.11.9)(ts-node@10.9.1): resolution: {integrity: sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: @@ -4174,6 +4232,7 @@ packages: pretty-format: 29.5.0 slash: 3.0.0 strip-json-comments: 3.1.1 + ts-node: 10.9.1(@types/node@18.11.9)(typescript@4.9.3) transitivePeerDependencies: - supports-color dev: true @@ -4464,7 +4523,7 @@ packages: supports-color: 8.1.1 dev: true - /jest@29.5.0(@types/node@18.11.9): + /jest@29.5.0(@types/node@18.11.9)(ts-node@10.9.1): resolution: {integrity: sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -4474,10 +4533,10 @@ packages: node-notifier: optional: true dependencies: - '@jest/core': 29.5.0 + '@jest/core': 29.5.0(ts-node@10.9.1) '@jest/types': 29.5.0 import-local: 3.1.0 - jest-cli: 29.5.0(@types/node@18.11.9) + jest-cli: 29.5.0(@types/node@18.11.9)(ts-node@10.9.1) transitivePeerDependencies: - '@types/node' - supports-color @@ -4754,7 +4813,6 @@ packages: /make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - dev: true /makeerror@1.0.12: resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} @@ -5393,7 +5451,7 @@ packages: camelcase-css: 2.0.1 postcss: 8.4.21 - /postcss-load-config@3.1.4(postcss@8.4.21): + /postcss-load-config@3.1.4(postcss@8.4.21)(ts-node@10.9.1): resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} engines: {node: '>= 10'} peerDependencies: @@ -5407,6 +5465,7 @@ packages: dependencies: lilconfig: 2.0.6 postcss: 8.4.21 + ts-node: 10.9.1(@types/node@18.11.9)(typescript@4.8.4) yaml: 1.10.2 /postcss-nested@6.0.0(postcss@8.4.21): @@ -6181,7 +6240,7 @@ packages: string-width: 4.2.3 strip-ansi: 6.0.1 - /tailwindcss@3.2.4(postcss@8.4.21): + /tailwindcss@3.2.4(postcss@8.4.21)(ts-node@10.9.1): resolution: {integrity: sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==} engines: {node: '>=12.13.0'} hasBin: true @@ -6205,7 +6264,7 @@ packages: postcss: 8.4.21 postcss-import: 14.1.0(postcss@8.4.21) postcss-js: 4.0.1(postcss@8.4.21) - postcss-load-config: 3.1.4(postcss@8.4.21) + postcss-load-config: 3.1.4(postcss@8.4.21)(ts-node@10.9.1) postcss-nested: 6.0.0(postcss@8.4.21) postcss-selector-parser: 6.0.11 postcss-value-parser: 4.2.0 @@ -6355,7 +6414,7 @@ packages: bs-logger: 0.2.6 esbuild: 0.14.54 fast-json-stable-stringify: 2.1.0 - jest: 29.5.0(@types/node@18.11.9) + jest: 29.5.0(@types/node@18.11.9)(ts-node@10.9.1) jest-util: 29.5.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -6365,6 +6424,67 @@ packages: yargs-parser: 21.1.1 dev: true + /ts-node@10.9.1(@types/node@18.11.9)(typescript@4.8.4): + resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.9 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 18.11.9 + acorn: 8.8.2 + acorn-walk: 8.2.0 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 4.8.4 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + + /ts-node@10.9.1(@types/node@18.11.9)(typescript@4.9.3): + resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.9 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 18.11.9 + acorn: 8.8.2 + acorn-walk: 8.2.0 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 4.9.3 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + dev: true + /ts-poet@6.4.1: resolution: {integrity: sha512-AjZEs4h2w4sDfwpHMxQKHrTlNh2wRbM5NRXmLz0RiH+yPGtSQFbe9hBpNocU8vqVNgfh0BIOiXR80xDz3kKxUQ==} dependencies: @@ -6407,7 +6527,7 @@ packages: /tslib@2.4.1: resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==} - /tsup@5.12.9(postcss@8.4.21)(typescript@4.9.3): + /tsup@5.12.9(postcss@8.4.21)(ts-node@10.9.1)(typescript@4.9.3): resolution: {integrity: sha512-dUpuouWZYe40lLufo64qEhDpIDsWhRbr2expv5dHEMjwqeKJS2aXA/FPqs1dxO4T6mBojo7rvo3jP9NNzaKyDg==} hasBin: true peerDependencies: @@ -6431,7 +6551,7 @@ packages: globby: 11.1.0 joycon: 3.1.1 postcss: 8.4.21 - postcss-load-config: 3.1.4(postcss@8.4.21) + postcss-load-config: 3.1.4(postcss@8.4.21)(ts-node@10.9.1) resolve-from: 5.0.0 rollup: 2.79.1 source-map: 0.8.0-beta.0 @@ -6572,7 +6692,6 @@ packages: resolution: {integrity: sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==} engines: {node: '>=4.2.0'} hasBin: true - dev: true /typescript@4.9.3: resolution: {integrity: sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==} @@ -6610,6 +6729,9 @@ packages: /util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + /v8-compile-cache-lib@3.0.1: + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + /v8-compile-cache@2.3.0: resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} @@ -6841,6 +6963,10 @@ packages: yargs-parser: 21.1.1 dev: true + /yn@3.1.1: + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} + /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} diff --git a/turbo.json b/turbo.json index 82fcf3b6a8d..28bc2b25761 100644 --- a/turbo.json +++ b/turbo.json @@ -2,16 +2,25 @@ "$schema": "https://turbo.build/schema.json", "pipeline": { "generate": { - "outputs": ["src/proto/**"], + "outputs": [ + "src/proto/**" + ], "cache": true }, "build": { - "outputs": ["dist/**", ".next/**", "!.next/cache/**"], - "dependsOn": ["generate", "^build"] + "outputs": [ + "dist/**", + ".next/**", + "!.next/cache/**" + ], + "dependsOn": [ + "generate", + "^build" + ] }, - "test": { - "outputs": ["coverage/**"], - "dependsOn": [] + "test": {}, + "test:watch": { + "cache": false }, "lint": {}, "dev": { @@ -22,6 +31,11 @@ "cache": false } }, - "globalDependencies": ["**/.env.*local"], - "globalEnv": ["ZITADEL_API_URL", "ZITADEL_SERVICE_USER_TOKEN"] -} + "globalDependencies": [ + "**/.env.*local" + ], + "globalEnv": [ + "ZITADEL_API_URL", + "ZITADEL_SERVICE_USER_TOKEN" + ] +} \ No newline at end of file