From 37c7087f33f569dfbf3d9cb95cd55d3427c030db Mon Sep 17 00:00:00 2001 From: marcus-sa Date: Mon, 11 Sep 2023 14:12:47 +0200 Subject: [PATCH] build(type-angular): migrate to nx --- packages/type-angular/.eslintrc.json | 28 ++ packages/type-angular/.npmignore | 1 - packages/type-angular/dist/.gitkeep | 0 packages/type-angular/jest.config.ts | 12 + packages/type-angular/package-lock.json | 412 -------------------- packages/type-angular/package.json | 23 +- packages/type-angular/project.json | 52 +++ packages/type-angular/{ => src}/index.ts | 2 +- packages/type-angular/src/{ => lib}/form.ts | 0 packages/type-angular/tsconfig.json | 34 +- packages/type-angular/tsconfig.lib.json | 11 + packages/type-angular/tsconfig.spec.json | 18 + tsconfig.base.json | 1 + 13 files changed, 132 insertions(+), 462 deletions(-) create mode 100644 packages/type-angular/.eslintrc.json delete mode 100644 packages/type-angular/.npmignore delete mode 100644 packages/type-angular/dist/.gitkeep create mode 100644 packages/type-angular/jest.config.ts delete mode 100644 packages/type-angular/package-lock.json create mode 100644 packages/type-angular/project.json rename packages/type-angular/{ => src}/index.ts (89%) rename packages/type-angular/src/{ => lib}/form.ts (100%) create mode 100644 packages/type-angular/tsconfig.lib.json create mode 100644 packages/type-angular/tsconfig.spec.json diff --git a/packages/type-angular/.eslintrc.json b/packages/type-angular/.eslintrc.json new file mode 100644 index 000000000..6f380577a --- /dev/null +++ b/packages/type-angular/.eslintrc.json @@ -0,0 +1,28 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "parserOptions": { + "project": ["packages/type-angular/tsconfig.*?.json"] + }, + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.json"], + "parser": "jsonc-eslint-parser", + "rules": { + "@nx/dependency-checks": "error" + } + } + ] +} diff --git a/packages/type-angular/.npmignore b/packages/type-angular/.npmignore deleted file mode 100644 index 2b29f2764..000000000 --- a/packages/type-angular/.npmignore +++ /dev/null @@ -1 +0,0 @@ -tests diff --git a/packages/type-angular/dist/.gitkeep b/packages/type-angular/dist/.gitkeep deleted file mode 100644 index e69de29bb..000000000 diff --git a/packages/type-angular/jest.config.ts b/packages/type-angular/jest.config.ts new file mode 100644 index 000000000..fabb0dde4 --- /dev/null +++ b/packages/type-angular/jest.config.ts @@ -0,0 +1,12 @@ +import type { Config } from 'jest'; + +export default { + displayName: 'type-angular', + preset: '../../jest.preset.js', + testEnvironment: 'node', + transform: { + '^.+\\.[tj]s$': ['ts-jest', { tsconfig: '/tsconfig.spec.json' }], + }, + moduleFileExtensions: ['ts', 'js', 'html'], + coverageDirectory: '../../coverage/packages/type-angular', +} as Config; diff --git a/packages/type-angular/package-lock.json b/packages/type-angular/package-lock.json deleted file mode 100644 index 1fde6fbd1..000000000 --- a/packages/type-angular/package-lock.json +++ /dev/null @@ -1,412 +0,0 @@ -{ - "name": "@deepkit/type-angular", - "version": "1.0.1-alpha.97", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "@deepkit/type-angular", - "version": "1.0.1-alpha.93", - "license": "MIT", - "devDependencies": { - "@angular/core": "^15.0.0", - "@angular/forms": "^15.0.0", - "rxjs": "~7.5.0" - }, - "peerDependencies": { - "@deepkit/core": "^1.0.1-alpha.19", - "@deepkit/type": "^1.0.1-alpha.19" - } - }, - "node_modules/@angular/common": { - "version": "15.1.5", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-15.1.5.tgz", - "integrity": "sha512-52Ut/IeoM3avzV3Ts/ISkq7cc1FlA6dhLUq+L3ebY+Z8zZskCWjJWu4UgLGyVdtgSuAItyQm9CoZd+DrPLYtDA==", - "dev": true, - "peer": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.20.0 || ^16.13.0 || >=18.10.0" - }, - "peerDependencies": { - "@angular/core": "15.1.5", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/core": { - "version": "15.1.5", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-15.1.5.tgz", - "integrity": "sha512-JCbhGVaskqrstLB8CJoPtMQKH4gryhuLFUVL5cwbVy3UJGGNmc3Gzvk+9I7zDf/D08vKyXGGmBNBVx2J65SJgw==", - "dev": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.20.0 || ^16.13.0 || >=18.10.0" - }, - "peerDependencies": { - "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.11.4 || ~0.12.0" - } - }, - "node_modules/@angular/forms": { - "version": "15.1.5", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-15.1.5.tgz", - "integrity": "sha512-FnuEdyYs1o/DJepLpTsY2/GwKTEXJ7sZlQb+NKkRWOoGpA0E4nSbhn3aCUic++MTgbZyHO0rmFKnD8TI2yyJDA==", - "dev": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.20.0 || ^16.13.0 || >=18.10.0" - }, - "peerDependencies": { - "@angular/common": "15.1.5", - "@angular/core": "15.1.5", - "@angular/platform-browser": "15.1.5", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "node_modules/@angular/platform-browser": { - "version": "15.1.5", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-15.1.5.tgz", - "integrity": "sha512-epeESrWEt41W6i2NqIbGKNE0Oa1JfeDtKfMXtcjUNCgT76qS3zmC0G6irO8BOVbrwpA/YI4yYx1B9vTDUXYbEg==", - "dev": true, - "peer": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^14.20.0 || ^16.13.0 || >=18.10.0" - }, - "peerDependencies": { - "@angular/animations": "15.1.5", - "@angular/common": "15.1.5", - "@angular/core": "15.1.5" - }, - "peerDependenciesMeta": { - "@angular/animations": { - "optional": true - } - } - }, - "node_modules/@deepkit/core": { - "version": "1.0.1-alpha.65", - "resolved": "https://registry.npmjs.org/@deepkit/core/-/core-1.0.1-alpha.65.tgz", - "integrity": "sha512-L52r3uSGu+kEjsq/9vVoora2fIWDFi/wmwkGtDJjbpbW1oY02jGYy73ImM7jeKeTfFen+3bw6Fk+tTVH4EChRg==", - "peer": true, - "dependencies": { - "dot-prop": "^5.1.1", - "to-fast-properties": "^3.0.1" - } - }, - "node_modules/@deepkit/type": { - "version": "1.0.1-alpha.71", - "resolved": "https://registry.npmjs.org/@deepkit/type/-/type-1.0.1-alpha.71.tgz", - "integrity": "sha512-/fGp3qCus+lY/G2AUyb5rPI72SyFvA5f+X3djKXgfk0QAB7pxNPjBLNBHXD+yupzl0im+YEL9K1AL+KNLF9m0w==", - "peer": true, - "dependencies": { - "@deepkit/type-spec": "^1.0.1-alpha.71", - "@types/uuid": "^8.3.0", - "buffer": "^5.2.1", - "uuid": "^8.3.2" - }, - "peerDependencies": { - "@deepkit/core": "^1.0.1-alpha.13" - } - }, - "node_modules/@deepkit/type-spec": { - "version": "1.0.1-alpha.71", - "resolved": "https://registry.npmjs.org/@deepkit/type-spec/-/type-spec-1.0.1-alpha.71.tgz", - "integrity": "sha512-Xug9GrBMMyZPyW4WLIVFd3wg126mNoViJpQaWZUbyDFTZWMIh+YCWbtsCSXTxOxk6QBZoB8Tq0OuUvrp+3crRg==", - "peer": true - }, - "node_modules/@types/uuid": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz", - "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==", - "peer": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peer": true - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peer": true, - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "peer": true, - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peer": true - }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/rxjs": { - "version": "7.5.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.7.tgz", - "integrity": "sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==", - "dev": true, - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/to-fast-properties": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-3.0.1.tgz", - "integrity": "sha512-/wtNi1tW1F3nf0OL6AqVxGw9Tr1ET70InMhJuVxPwFdGqparF0nQ4UWGLf2DsoI2bFDtthlBnALncZpUzOnsUw==", - "peer": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", - "dev": true - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "peer": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/zone.js": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.12.0.tgz", - "integrity": "sha512-XtC+I5dXU14HrzidAKBNMqneIVUykLEAA1x+v4KVrd6AUPWlwYORF8KgsVqvgdHiKZ4BkxxjvYi/ksEixTPR0Q==", - "dev": true, - "peer": true, - "dependencies": { - "tslib": "^2.3.0" - } - } - }, - "dependencies": { - "@angular/common": { - "version": "15.1.5", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-15.1.5.tgz", - "integrity": "sha512-52Ut/IeoM3avzV3Ts/ISkq7cc1FlA6dhLUq+L3ebY+Z8zZskCWjJWu4UgLGyVdtgSuAItyQm9CoZd+DrPLYtDA==", - "dev": true, - "peer": true, - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/core": { - "version": "15.1.5", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-15.1.5.tgz", - "integrity": "sha512-JCbhGVaskqrstLB8CJoPtMQKH4gryhuLFUVL5cwbVy3UJGGNmc3Gzvk+9I7zDf/D08vKyXGGmBNBVx2J65SJgw==", - "dev": true, - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/forms": { - "version": "15.1.5", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-15.1.5.tgz", - "integrity": "sha512-FnuEdyYs1o/DJepLpTsY2/GwKTEXJ7sZlQb+NKkRWOoGpA0E4nSbhn3aCUic++MTgbZyHO0rmFKnD8TI2yyJDA==", - "dev": true, - "requires": { - "tslib": "^2.3.0" - } - }, - "@angular/platform-browser": { - "version": "15.1.5", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-15.1.5.tgz", - "integrity": "sha512-epeESrWEt41W6i2NqIbGKNE0Oa1JfeDtKfMXtcjUNCgT76qS3zmC0G6irO8BOVbrwpA/YI4yYx1B9vTDUXYbEg==", - "dev": true, - "peer": true, - "requires": { - "tslib": "^2.3.0" - } - }, - "@deepkit/core": { - "version": "1.0.1-alpha.65", - "resolved": "https://registry.npmjs.org/@deepkit/core/-/core-1.0.1-alpha.65.tgz", - "integrity": "sha512-L52r3uSGu+kEjsq/9vVoora2fIWDFi/wmwkGtDJjbpbW1oY02jGYy73ImM7jeKeTfFen+3bw6Fk+tTVH4EChRg==", - "peer": true, - "requires": { - "dot-prop": "^5.1.1", - "to-fast-properties": "^3.0.1" - } - }, - "@deepkit/type": { - "version": "1.0.1-alpha.71", - "resolved": "https://registry.npmjs.org/@deepkit/type/-/type-1.0.1-alpha.71.tgz", - "integrity": "sha512-/fGp3qCus+lY/G2AUyb5rPI72SyFvA5f+X3djKXgfk0QAB7pxNPjBLNBHXD+yupzl0im+YEL9K1AL+KNLF9m0w==", - "peer": true, - "requires": { - "@deepkit/type-spec": "^1.0.1-alpha.71", - "@types/uuid": "^8.3.0", - "buffer": "^5.2.1", - "uuid": "^8.3.2" - } - }, - "@deepkit/type-spec": { - "version": "1.0.1-alpha.71", - "resolved": "https://registry.npmjs.org/@deepkit/type-spec/-/type-spec-1.0.1-alpha.71.tgz", - "integrity": "sha512-Xug9GrBMMyZPyW4WLIVFd3wg126mNoViJpQaWZUbyDFTZWMIh+YCWbtsCSXTxOxk6QBZoB8Tq0OuUvrp+3crRg==", - "peer": true - }, - "@types/uuid": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz", - "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==", - "peer": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "peer": true - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "peer": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "peer": true, - "requires": { - "is-obj": "^2.0.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "peer": true - }, - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "peer": true - }, - "rxjs": { - "version": "7.5.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.7.tgz", - "integrity": "sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==", - "dev": true, - "requires": { - "tslib": "^2.1.0" - } - }, - "to-fast-properties": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-3.0.1.tgz", - "integrity": "sha512-/wtNi1tW1F3nf0OL6AqVxGw9Tr1ET70InMhJuVxPwFdGqparF0nQ4UWGLf2DsoI2bFDtthlBnALncZpUzOnsUw==", - "peer": true - }, - "tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", - "dev": true - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "peer": true - }, - "zone.js": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.12.0.tgz", - "integrity": "sha512-XtC+I5dXU14HrzidAKBNMqneIVUykLEAA1x+v4KVrd6AUPWlwYORF8KgsVqvgdHiKZ4BkxxjvYi/ksEixTPR0Q==", - "dev": true, - "peer": true, - "requires": { - "tslib": "^2.3.0" - } - } - } -} diff --git a/packages/type-angular/package.json b/packages/type-angular/package.json index 2284cc029..7e5389198 100644 --- a/packages/type-angular/package.json +++ b/packages/type-angular/package.json @@ -2,9 +2,6 @@ "name": "@deepkit/type-angular", "version": "1.0.1-alpha.97", "description": "Types angular forms", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "type": "module", "sideEffects": false, "publishConfig": { "access": "public" @@ -16,23 +13,5 @@ "@deepkit/core": "^1.0.1-alpha.19", "@deepkit/type": "^1.0.1-alpha.19" }, - "devDependencies": { - "@angular/core": "^15.0.0", - "@angular/forms": "^15.0.0", - "@deepkit/core": "^1.0.1-alpha.97", - "@deepkit/type": "^1.0.1-alpha.97", - "rxjs": "~7.5.0" - }, - "jest": { - "transform": { - "^.+\\.(ts|tsx)$": "ts-jest" - }, - "moduleNameMapper": { - "(.+)\\.js": "$1" - }, - "testMatch": [ - "**/tests/**/*.spec.ts" - ] - }, - "gitHead": "56081823b559bb68b77a8781957af5d9c2e019a7" + "types": "./src/index.d.ts" } diff --git a/packages/type-angular/project.json b/packages/type-angular/project.json new file mode 100644 index 000000000..a69722196 --- /dev/null +++ b/packages/type-angular/project.json @@ -0,0 +1,52 @@ +{ + "name": "type-angular", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "packages/type-angular/src", + "projectType": "library", + "targets": { + "build": { + "executor": "@nx/rollup:rollup", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/{projectRoot}", + "main": "{projectRoot}/src/index.ts", + "tsConfig": "{projectRoot}/tsconfig.lib.json", + "rollupConfig": "packages/rollup.config.js", + "project": "{projectRoot}/package.json", + "format": ["esm", "cjs"], + "generateExportsField": true, + "external": "all", + "compiler": "tsc" + } + }, + "release": { + "command": "release-it --config={projectRoot}/.release-it.json" + }, + "lint": { + "executor": "@nx/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": [ + "packages/type-angular/**/*.ts", + "packages/type-angular/package.json" + ] + } + }, + "test": { + "executor": "@nx/jest:jest", + "outputs": ["{workspaceRoot}/coverage/{projectRoot}"], + "options": { + "jestConfig": "packages/type-angular/jest.config.ts", + "passWithNoTests": true + }, + "configurations": { + "ci": { + "ci": true, + "codeCoverage": true + } + } + } + }, + "implicitDependencies": ["core"], + "tags": ["type-angular"] +} diff --git a/packages/type-angular/index.ts b/packages/type-angular/src/index.ts similarity index 89% rename from packages/type-angular/index.ts rename to packages/type-angular/src/index.ts index cb9c36833..9141a0724 100644 --- a/packages/type-angular/index.ts +++ b/packages/type-angular/src/index.ts @@ -8,4 +8,4 @@ * You should have received a copy of the MIT License along with this program. */ -export * from './src/form.js'; +export * from './lib/form.js'; diff --git a/packages/type-angular/src/form.ts b/packages/type-angular/src/lib/form.ts similarity index 100% rename from packages/type-angular/src/form.ts rename to packages/type-angular/src/lib/form.ts diff --git a/packages/type-angular/tsconfig.json b/packages/type-angular/tsconfig.json index 478216ffc..23332504d 100644 --- a/packages/type-angular/tsconfig.json +++ b/packages/type-angular/tsconfig.json @@ -1,32 +1,14 @@ { - "compilerOptions": { - "forceConsistentCasingInFileNames": true, - "strict": true, - "noImplicitReturns": true, - "noFallthroughCasesInSwitch": true, - "sourceMap": true, - "experimentalDecorators": true, - "emitDecoratorMetadata": true, - "moduleResolution": "node", - "target": "es2018", - "module": "es2020", - "esModuleInterop": true, - "baseUrl": ".", - "outDir": "./dist", - "declaration": true, - "composite": true - }, - "include": [ - "src", - "tests", - "index.ts" - ], + "extends": "../../tsconfig.base.json", + "files": [], + "include": [], "references": [ { - "path": "../core/tsconfig.json" + "path": "./tsconfig.lib.json" }, { - "path": "../type/tsconfig.json" + "path": "./tsconfig.spec.json" } - ] -} \ No newline at end of file + ], + "reflection": true +} diff --git a/packages/type-angular/tsconfig.lib.json b/packages/type-angular/tsconfig.lib.json new file mode 100644 index 000000000..3b8173e63 --- /dev/null +++ b/packages/type-angular/tsconfig.lib.json @@ -0,0 +1,11 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "declaration": true, + "types": ["node"] + }, + "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"], + "include": ["src/**/*.ts"], + "reflection": true +} diff --git a/packages/type-angular/tsconfig.spec.json b/packages/type-angular/tsconfig.spec.json new file mode 100644 index 000000000..36659485a --- /dev/null +++ b/packages/type-angular/tsconfig.spec.json @@ -0,0 +1,18 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.d.ts", + "tests/**/*.test.ts", + "tests/**/*.spec.ts", + "tests/**/*.d.ts" + ], + "reflection": true +} diff --git a/tsconfig.base.json b/tsconfig.base.json index 610681fa1..14c529bc6 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -57,6 +57,7 @@ "@deepkit/template": ["packages/template/src/index.ts"], "@deepkit/topsort": ["packages/topsort/src/index.ts"], "@deepkit/type": ["packages/type/src/index.ts"], + "@deepkit/type-angular": ["packages/type-angular/src/index.ts"], "@deepkit/type-compiler": ["packages/type-compiler/src/index.ts"], "@deepkit/type-spec": ["packages/type-spec/src/index.ts"], "@deepkit/ui-library": ["packages/ui-library/src/index.ts"]