Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,9 @@ Thumbs.db
.nx/workspace-data
.angular
.dev.env
.env.local

vite.config.*.timestamp*
vitest.config.*.timestamp*
.cursor/rules/nx-rules.mdc
.github/instructions/nx.instructions.md
23 changes: 23 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Debug json-api-server with Nx",
"runtimeExecutable": "npx",
"runtimeArgs": ["nx", "serve", "json-api-server"],
"env": {
"NODE_OPTIONS": "--inspect=9229"
},
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen",
"skipFiles": ["<node_internals>/**"],
"sourceMaps": true,
"outFiles": [
"${workspaceFolder}/apps/json-api-server/dist/**/*.(m|c|)js",
"!**/node_modules/**"
]
}
]
}
3 changes: 3 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"eslint.validate": ["json"]
}
22 changes: 0 additions & 22 deletions apps/json-api-front/jest.config.ts

This file was deleted.

7 changes: 4 additions & 3 deletions apps/json-api-front/project.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"prefix": "nestjs-json-api",
"sourceRoot": "apps/json-api-front/src",
"tags": [],
"implicitDependencies": ["json-api-nestjs-sdk"],
"targets": {
"build": {
"executor": "@angular-devkit/build-angular:application",
Expand Down Expand Up @@ -60,14 +61,14 @@
"buildTarget": "json-api-front:build:development"
}
},
"defaultConfiguration": "development"
"defaultConfiguration": "development",
"dependsOn": ["json-api-server:serve"]
},
"extract-i18n": {
"executor": "@angular-devkit/build-angular:extract-i18n",
"options": {
"buildTarget": "json-api-front:build"
}
}
},
"implicitDependencies": ["json-api-nestjs-sdk"]
}
}
4 changes: 4 additions & 0 deletions apps/json-api-front/proxy.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,9 @@
"target": "http://localhost:3000",
"secure": false,
"ws": true
},
"/json-api-server-api": {
"target": "http://localhost:3000",
"secure": false
}
}
8 changes: 0 additions & 8 deletions apps/json-api-front/src/test-setup.ts

This file was deleted.

2 changes: 1 addition & 1 deletion apps/json-api-front/tsconfig.app.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@
},
"files": ["src/main.ts"],
"include": ["src/**/*.d.ts"],
"exclude": ["jest.config.ts", "src/**/*.test.ts", "src/**/*.spec.ts"]
"exclude": ["src/**/*.test.ts", "src/**/*.spec.ts"]
}
2 changes: 1 addition & 1 deletion apps/json-api-front/tsconfig.editor.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
"extends": "./tsconfig.json",
"include": ["src/**/*.ts"],
"compilerOptions": {
"types": ["jest", "node"]
"types": ["node"]
}
}
16 changes: 0 additions & 16 deletions apps/json-api-front/tsconfig.spec.json

This file was deleted.

32 changes: 0 additions & 32 deletions apps/json-api-server-e2e/jest.config.ts

This file was deleted.

14 changes: 7 additions & 7 deletions apps/json-api-server-e2e/project.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "json-api-server-e2e",
"$schema": "../../node_modules/nx/schemas/project-schema.json",
"implicitDependencies": [
"json-api-server"
"json-api-server", "json-api-nestjs-sdk"
],
"projectType": "application",
"targets": {
Expand All @@ -12,14 +12,14 @@
"target": "build",
"params": "ignore"
}],
"executor": "@nx/jest:jest",
"executor": "@nx/vite:test",
"outputs": [
"{workspaceRoot}/coverage/{e2eProjectRoot}"
],
"options": {
"jestConfig": "apps/json-api-server-e2e/jest.config.ts",
"config": "apps/json-api-server-e2e/vite.config.mts",
"passWithNoTests": true,
"parallel": 1
"reportsDirectory": "../../coverage/apps/json-api-server-e2e"
}
},
"e2e-micro": {
Expand All @@ -28,14 +28,14 @@
"target": "build",
"params": "ignore"
}],
"executor": "@nx/jest:jest",
"executor": "@nx/vite:test",
"outputs": [
"{workspaceRoot}/coverage/{e2eProjectRoot}"
],
"options": {
"jestConfig": "apps/json-api-server-e2e/jest.config.ts",
"config": "apps/json-api-server-e2e/vite.config.mts",
"passWithNoTests": true,
"parallel": 1
"reportsDirectory": "../../coverage/apps/json-api-server-e2e"
}
}
}
Expand Down
6 changes: 2 additions & 4 deletions apps/json-api-server-e2e/src/support/global-setup.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
/* eslint-disable */
var __TEARDOWN_MESSAGE__: string;

module.exports = async function() {
export default async function() {
// Start services that that the app needs to run (e.g. database, docker-compose, etc.).
console.log('\nSetting up...\n');

// Hint: Use `globalThis` to pass variables to global teardown.
globalThis.__TEARDOWN_MESSAGE__ = '\nTearing down...\n';
};
}

4 changes: 2 additions & 2 deletions apps/json-api-server-e2e/src/support/global-teardown.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* eslint-disable */

module.exports = async function() {
export default async function() {
// Put clean up logic here (e.g. stopping services, docker-compose, etc.).
// Hint: `globalThis` is shared between setup and teardown.
console.log(globalThis.__TEARDOWN_MESSAGE__);
};
}
56 changes: 48 additions & 8 deletions apps/json-api-server-e2e/tsconfig.spec.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,60 @@
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outDir": "../../dist/out-tsc",
"module": "commonjs",
"types": ["jest", "node"],
"outDir": "../../../dist/out-tsc",
"module": "ES2022",
"moduleResolution": "node10",
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"target": "es2021",
"strictBindCallApply": true,
"strictNullChecks": true,
"noImplicitAny": true,
"strictBindCallApply": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"allowJs": true
"types": [
"vitest/globals",
"vitest/importMeta",
"vite/client",
"node",
"vitest"
],
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"paths": {
"@nestjs-json-api/microorm-database": [
"libs/microorm-database/src/index.ts"
],
"@nestjs-json-api/type-for-rpc": ["libs/type-for-rpc/src/index.ts"],
"@nestjs-json-api/typeorm-database": ["libs/typeorm-database/src/index.ts"],
"@klerick/json-api-nestjs": ["dist/libs/json-api/json-api-nestjs"],
"@klerick/json-api-nestjs-microorm": [
"dist/libs/json-api/json-api-nestjs-microorm"
],
"@klerick/json-api-nestjs-sdk": ["dist/libs/json-api/json-api-nestjs-sdk"],
"@klerick/json-api-nestjs-shared": [
"dist/libs/json-api/json-api-nestjs-shared"
],
"@klerick/json-api-nestjs-typeorm": [
"dist/libs/json-api/json-api-nestjs-typeorm"
],
"@klerick/nestjs-json-rpc": [
"libs/json-rpc/nestjs-json-rpc/src/index.ts"
],
"@klerick/nestjs-json-rpc-sdk": [
"libs/json-rpc/nestjs-json-rpc-sdk/src/index.ts"
],
"@klerick/nestjs-json-rpc-sdk/ngModule": [
"libs/json-rpc/nestjs-json-rpc-sdk/src/ngModule.ts"
]
}
},
"include": [
"jest.config.ts",
"src/**/*.ts"
"vite.config.ts",
"vite.config.mts",
"vitest.config.ts",
"vitest.config.mts",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.d.ts"
]
}
85 changes: 85 additions & 0 deletions apps/json-api-server-e2e/vite.config.mts
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
/// <reference types='vitest' />
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';

import swc from 'unplugin-swc';
import { defineConfig } from 'vite';
import path from 'node:path';

export default defineConfig(() => ({
root: __dirname,
cacheDir: '../../node_modules/.vite/apps/json-api-server-e2e',
// resolve: {
// alias: {
// '@klerick/json-api-nestjs': path.resolve(
// __dirname,
// '../../dist/libs/json-api/json-api-nestjs'
// ),
// '@klerick/json-api-nestjs-microorm': path.resolve(
// __dirname,
// '../../dist/libs/json-api/json-api-nestjs-microorm'
// ),
// '@klerick/json-api-nestjs-shared': path.resolve(
// __dirname,
// '../../dist/libs/json-api/json-api-nestjs-shared'
// ),
// '@klerick/json-api-nestjs-typeorm': path.resolve(
// __dirname,
// '../../dist/libs/json-api/json-api-nestjs-typeorm'
// ),
// '@klerick/json-api-nestjs-sdk': path.resolve(
// __dirname,
// '../../dist/libs/json-api/json-api-nestjs-sdk'
// ),
// },
// },
plugins: [
nxViteTsPaths(),
swc.vite({
module: { type: 'es6' },
jsc: {
target: 'es2022',
parser: {
syntax: 'typescript',
decorators: true,
},
transform: {
decoratorMetadata: true,
legacyDecorator: true,
},
keepClassNames: true,
externalHelpers: true,
loose: true,
},
}),
],
test: {
name: 'json-api-server-e2e',
watch: false,
globals: true,
environment: 'node',
include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
setupFiles: ['src/support/test-setup.ts'],
globalSetup: ['src/support/global-setup.ts'],
globalTeardown: ['src/support/global-teardown.ts'],
reporters: ['default'],
coverage: {
enabled: true,
reporter: ['json'],
reportsDirectory: '../../coverage/json-api-server-e2e',
provider: 'v8' as const,
},
fileParallelism: false,
pool: 'threads',
singleThread: true,
sequence: {
concurrent: false,
shuffle: false,
},
maxWorkers: 1,
minWorkers: 1,
env: {
VITEST: 'true',
NODE_ENV: 'test',
},
},
}));
Loading