diff --git a/apps/cart-e2e/project.json b/apps/cart-e2e/project.json new file mode 100644 index 0000000..91631ef --- /dev/null +++ b/apps/cart-e2e/project.json @@ -0,0 +1,28 @@ +{ + "root": "apps/cart-e2e", + "sourceRoot": "apps/cart-e2e/src", + "projectType": "application", + "targets": { + "e2e": { + "executor": "@nrwl/cypress:cypress", + "options": { + "cypressConfig": "apps/cart-e2e/cypress.json", + "tsConfig": "apps/cart-e2e/tsconfig.e2e.json", + "devServerTarget": "cart:serve" + }, + "configurations": { + "production": { + "devServerTarget": "cart:serve:production" + } + } + }, + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": ["apps/cart-e2e/**/*.{ts,tsx,js,jsx}"] + } + } + }, + "tags": ["scope:cart", "type:e2e"], + "implicitDependencies": ["cart"] +} diff --git a/apps/cart/project.json b/apps/cart/project.json new file mode 100644 index 0000000..0000d71 --- /dev/null +++ b/apps/cart/project.json @@ -0,0 +1,102 @@ +{ + "root": "apps/cart", + "sourceRoot": "apps/cart/src", + "projectType": "application", + "generators": {}, + "targets": { + "build": { + "executor": "@nrwl/web:build", + "options": { + "outputPath": "dist/apps/cart", + "webpackConfig": "@nrwl/react/plugins/webpack", + "index": "apps/cart/src/index.html", + "main": "apps/cart/src/main.tsx", + "polyfills": "apps/cart/src/polyfills.ts", + "tsConfig": "apps/cart/tsconfig.app.json", + "assets": [ + "apps/cart/src/_redirects", + { + "input": "libs/shared/assets/src/assets", + "glob": "**/*", + "output": "assets" + }, + { + "input": "libs/shared/assets/src", + "glob": "favicon.ico", + "output": "" + } + ], + "maxWorkers": 8, + "styles": [ + "libs/shared/styles/src/index.scss", + "libs/shared/header/index.scss", + "node_modules/normalize.css/normalize.css" + ], + "scripts": [], + "buildLibsFromSource": true + }, + "configurations": { + "production": { + "fileReplacements": [ + { + "replace": "apps/cart/src/environments/environment.ts", + "with": "apps/cart/src/environments/environment.prod.ts" + } + ], + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "extractLicenses": true, + "vendorChunk": false, + "budgets": [ + { + "type": "initial", + "maximumWarning": "2mb", + "maximumError": "5mb" + } + ] + } + }, + "outputs": ["{options.outputPath}"] + }, + "serve": { + "executor": "@nrwl/web:dev-server", + "options": { + "buildTarget": "cart:build" + }, + "configurations": { + "production": { + "buildTarget": "cart:build:production" + } + } + }, + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": ["apps/cart/**/*.{ts,tsx,js,jsx}"] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "options": { + "jestConfig": "apps/cart/jest.config.js", + "passWithNoTests": true + }, + "outputs": ["coverage/apps/cart"] + }, + "deploy": { + "executor": "@nrwl/workspace:run-commands", + "options": { + "commands": [ + { + "command": "npx ts-node --project tools/tsconfig.tools.json tools/scripts/deploy --siteName nrwl-nx-examples-cart --outputPath dist/apps/cart" + } + ] + } + } + }, + "tags": ["type:app", "scope:cart"], + "implicitDependencies": ["shared-assets", "shared-styles"] +} diff --git a/apps/products-e2e/project.json b/apps/products-e2e/project.json new file mode 100644 index 0000000..7593f85 --- /dev/null +++ b/apps/products-e2e/project.json @@ -0,0 +1,28 @@ +{ + "root": "apps/products-e2e", + "sourceRoot": "apps/products-e2e/src", + "projectType": "application", + "targets": { + "e2e": { + "executor": "@nrwl/cypress:cypress", + "options": { + "cypressConfig": "apps/products-e2e/cypress.json", + "tsConfig": "apps/products-e2e/tsconfig.e2e.json", + "devServerTarget": "products:serve" + }, + "configurations": { + "production": { + "devServerTarget": "products:serve:production" + } + } + }, + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": ["apps/products-e2e/**/*.{js,ts}"] + } + } + }, + "tags": ["scope:products", "type:e2e"], + "implicitDependencies": ["products"] +} diff --git a/apps/products/project.json b/apps/products/project.json new file mode 100644 index 0000000..d717d59 --- /dev/null +++ b/apps/products/project.json @@ -0,0 +1,119 @@ +{ + "projectType": "application", + "generators": { + "@nrwl/workspace:component": { + "style": "scss" + } + }, + "root": "apps/products", + "sourceRoot": "apps/products/src", + "prefix": "nx-example", + "targets": { + "build": { + "executor": "@angular-devkit/build-angular:browser", + "options": { + "aot": true, + "outputPath": "dist/apps/products", + "index": "apps/products/src/index.html", + "main": "apps/products/src/main.ts", + "polyfills": "apps/products/src/polyfills.ts", + "tsConfig": "apps/products/tsconfig.app.json", + "assets": [ + "apps/products/src/_redirects", + { + "input": "libs/shared/assets/src/assets", + "glob": "**/*", + "output": "assets" + }, + { + "input": "libs/shared/assets/src", + "glob": "favicon.ico", + "output": "." + } + ], + "styles": [ + "libs/shared/styles/src/index.scss", + "libs/shared/header/index.scss", + "node_modules/normalize.css/normalize.css" + ], + "scripts": [] + }, + "configurations": { + "production": { + "fileReplacements": [ + { + "replace": "apps/products/src/environments/environment.ts", + "with": "apps/products/src/environments/environment.prod.ts" + } + ], + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "namedChunks": false, + "aot": true, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true, + "budgets": [ + { + "type": "initial", + "maximumWarning": "2mb", + "maximumError": "5mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "6kb" + } + ] + } + }, + "outputs": ["{options.outputPath}"] + }, + "serve": { + "executor": "@angular-devkit/build-angular:dev-server", + "options": { + "browserTarget": "products:build" + }, + "configurations": { + "production": { + "browserTarget": "products:build:production" + } + } + }, + "extract-i18n": { + "executor": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "products:build" + } + }, + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "apps/products/src/**/*.ts", + "apps/products/src/**/*.html" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "options": { + "jestConfig": "apps/products/jest.config.js", + "passWithNoTests": true + }, + "outputs": ["coverage/apps/products"] + }, + "deploy": { + "executor": "@nrwl/workspace:run-commands", + "options": { + "commands": [ + { + "command": "npx ts-node --project tools/tsconfig.tools.json tools/scripts/deploy --siteName nrwl-nx-examples-products --outputPath dist/apps/products" + } + ] + } + } + }, + "tags": ["type:app", "scope:products"], + "implicitDependencies": ["shared-assets", "shared-styles"] +} diff --git a/libs/cart/cart-page/project.json b/libs/cart/cart-page/project.json new file mode 100644 index 0000000..e3f3650 --- /dev/null +++ b/libs/cart/cart-page/project.json @@ -0,0 +1,26 @@ +{ + "root": "libs/cart/cart-page", + "sourceRoot": "libs/cart/cart-page/src", + "projectType": "library", + "generators": {}, + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/cart/cart-page/src/**/*.ts", + "libs/cart/cart-page/src/**/*.html" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/cart/cart-page/jest.config.js", + "passWithNoTests": true + }, + "outputs": ["coverage/libs/cart/cart-page"] + } + }, + "tags": ["scope:cart", "type:feature"] +} diff --git a/libs/products/home-page/project.json b/libs/products/home-page/project.json new file mode 100644 index 0000000..2dda6b1 --- /dev/null +++ b/libs/products/home-page/project.json @@ -0,0 +1,31 @@ +{ + "projectType": "library", + "root": "libs/products/home-page", + "sourceRoot": "libs/products/home-page/src", + "prefix": "nx-example", + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/products/home-page/src/**/*.ts", + "libs/products/home-page/src/**/*.html" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/products/home-page/jest.config.js", + "passWithNoTests": true + }, + "outputs": ["coverage/libs/products/home-page"] + } + }, + "generators": { + "@nrwl/angular:component": { + "styleext": "scss" + } + }, + "tags": ["scope:products", "type:feature"] +} diff --git a/libs/products/product-detail-page/project.json b/libs/products/product-detail-page/project.json new file mode 100644 index 0000000..e701a42 --- /dev/null +++ b/libs/products/product-detail-page/project.json @@ -0,0 +1,31 @@ +{ + "projectType": "library", + "root": "libs/products/product-detail-page", + "sourceRoot": "libs/products/product-detail-page/src", + "prefix": "nx-example", + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/products/product-detail-page/src/**/*.ts", + "libs/products/product-detail-page/src/**/*.html" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/products/product-detail-page/jest.config.js", + "passWithNoTests": true + }, + "outputs": ["coverage/libs/products/product-detail-page"] + } + }, + "generators": { + "@nrwl/angular:component": { + "styleext": "scss" + } + }, + "tags": ["type:feature", "scope:products"] +} diff --git a/libs/shared/assets/project.json b/libs/shared/assets/project.json new file mode 100644 index 0000000..ed3a576 --- /dev/null +++ b/libs/shared/assets/project.json @@ -0,0 +1,8 @@ +{ + "root": "libs/shared/assets", + "sourceRoot": "libs/shared/assets/src", + "projectType": "library", + "generators": {}, + "targets": {}, + "tags": ["type:assets", "scope:shared"] +} diff --git a/libs/shared/cart/state/project.json b/libs/shared/cart/state/project.json new file mode 100644 index 0000000..73557ae --- /dev/null +++ b/libs/shared/cart/state/project.json @@ -0,0 +1,31 @@ +{ + "projectType": "library", + "root": "libs/shared/cart/state", + "sourceRoot": "libs/shared/cart/state/src", + "prefix": "nx-example", + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/cart/state/src/**/*.ts", + "libs/shared/cart/state/src/**/*.html" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/shared/cart/state/jest.config.js", + "passWithNoTests": true + }, + "outputs": ["coverage/libs/shared/cart/state"] + } + }, + "generators": { + "@nrwl/angular:component": { + "styleext": "scss" + } + }, + "tags": ["scope:shared", "type:state"] +} diff --git a/libs/shared/e2e-utils/project.json b/libs/shared/e2e-utils/project.json new file mode 100644 index 0000000..1ab5a52 --- /dev/null +++ b/libs/shared/e2e-utils/project.json @@ -0,0 +1,18 @@ +{ + "root": "libs/shared/e2e-utils", + "sourceRoot": "libs/shared/e2e-utils/src", + "projectType": "library", + "generators": {}, + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/e2e-utils/src/**/*.ts", + "libs/shared/e2e-utils/src/**/*.html" + ] + } + } + }, + "tags": ["scope:shared", "type:e2e-utils"] +} diff --git a/libs/shared/header/project.json b/libs/shared/header/project.json new file mode 100644 index 0000000..a99a3d0 --- /dev/null +++ b/libs/shared/header/project.json @@ -0,0 +1,26 @@ +{ + "root": "libs/shared/header", + "sourceRoot": "libs/shared/header/src", + "projectType": "library", + "generators": {}, + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/header/src/**/*.ts", + "libs/shared/header/src/**/*.html" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/shared/header/jest.config.js", + "passWithNoTests": true + }, + "outputs": ["coverage/libs/shared/header"] + } + }, + "tags": ["scope:shared", "type:ui"] +} diff --git a/libs/shared/jsxify/project.json b/libs/shared/jsxify/project.json new file mode 100644 index 0000000..4366bfa --- /dev/null +++ b/libs/shared/jsxify/project.json @@ -0,0 +1,18 @@ +{ + "root": "libs/shared/jsxify", + "sourceRoot": "libs/shared/jsxify/src", + "projectType": "library", + "generators": {}, + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/jsxify/src/**/*.ts", + "libs/shared/jsxify/src/**/*.html" + ] + } + } + }, + "tags": ["scope:shared", "type:types"] +} diff --git a/libs/shared/product/data/project.json b/libs/shared/product/data/project.json new file mode 100644 index 0000000..7d1d238 --- /dev/null +++ b/libs/shared/product/data/project.json @@ -0,0 +1,18 @@ +{ + "root": "libs/shared/product/data", + "sourceRoot": "libs/shared/product/data/src", + "projectType": "library", + "generators": {}, + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/product/data/src/**/*.ts", + "libs/shared/product/data/src/**/*.html" + ] + } + } + }, + "tags": ["type:data", "scope:shared"] +} diff --git a/libs/shared/product/state/project.json b/libs/shared/product/state/project.json new file mode 100644 index 0000000..5d4d16d --- /dev/null +++ b/libs/shared/product/state/project.json @@ -0,0 +1,31 @@ +{ + "projectType": "library", + "root": "libs/shared/product/state", + "sourceRoot": "libs/shared/product/state/src", + "prefix": "nx-example", + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/product/state/src/**/*.ts", + "libs/shared/product/state/src/**/*.html" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/shared/product/state/jest.config.js", + "passWithNoTests": true + }, + "outputs": ["coverage/libs/shared/product/state"] + } + }, + "generators": { + "@nrwl/angular:component": { + "styleext": "scss" + } + }, + "tags": ["scope:shared", "type:state"] +} diff --git a/libs/shared/product/types/project.json b/libs/shared/product/types/project.json new file mode 100644 index 0000000..dbf107a --- /dev/null +++ b/libs/shared/product/types/project.json @@ -0,0 +1,18 @@ +{ + "root": "libs/shared/product/types", + "sourceRoot": "libs/shared/product/types/src", + "projectType": "library", + "generators": {}, + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/product/types/src/**/*.ts", + "libs/shared/product/types/src/**/*.html" + ] + } + } + }, + "tags": ["type:types", "scope:shared"] +} diff --git a/libs/shared/product/ui/project.json b/libs/shared/product/ui/project.json new file mode 100644 index 0000000..67ae63d --- /dev/null +++ b/libs/shared/product/ui/project.json @@ -0,0 +1,26 @@ +{ + "root": "libs/shared/product/ui", + "sourceRoot": "libs/shared/product/ui/src", + "projectType": "library", + "generators": {}, + "targets": { + "lint": { + "executor": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/product/ui/src/**/*.ts", + "libs/shared/product/ui/src/**/*.html" + ] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/shared/product/ui/jest.config.js", + "passWithNoTests": true + }, + "outputs": ["coverage/libs/shared/product/ui"] + } + }, + "tags": ["scope:shared", "type:ui"] +} diff --git a/libs/shared/styles/project.json b/libs/shared/styles/project.json new file mode 100644 index 0000000..b5a6f58 --- /dev/null +++ b/libs/shared/styles/project.json @@ -0,0 +1,8 @@ +{ + "root": "libs/shared/styles", + "sourceRoot": "libs/shared/styles/src", + "projectType": "library", + "generators": {}, + "targets": {}, + "tags": ["scope:shared", "type:styles"] +} diff --git a/nx.json b/nx.json index 787f406..6bae485 100644 --- a/nx.json +++ b/nx.json @@ -19,63 +19,7 @@ } } }, - "projects": { - "cart": { - "tags": ["type:app", "scope:cart"], - "implicitDependencies": ["shared-assets", "shared-styles"] - }, - "cart-cart-page": { - "tags": ["scope:cart", "type:feature"] - }, - "cart-e2e": { - "tags": ["scope:cart", "type:e2e"], - "implicitDependencies": ["cart"] - }, - "products": { - "tags": ["type:app", "scope:products"], - "implicitDependencies": ["shared-assets", "shared-styles"] - }, - "products-e2e": { - "tags": ["scope:products", "type:e2e"], - "implicitDependencies": ["products"] - }, - "products-home-page": { - "tags": ["scope:products", "type:feature"] - }, - "products-product-detail-page": { - "tags": ["type:feature", "scope:products"] - }, - "shared-assets": { - "tags": ["type:assets", "scope:shared"] - }, - "shared-cart-state": { - "tags": ["scope:shared", "type:state"] - }, - "shared-e2e-utils": { - "tags": ["scope:shared", "type:e2e-utils"] - }, - "shared-header": { - "tags": ["scope:shared", "type:ui"] - }, - "shared-jsxify": { - "tags": ["scope:shared", "type:types"] - }, - "shared-product-data": { - "tags": ["type:data", "scope:shared"] - }, - "shared-product-state": { - "tags": ["scope:shared", "type:state"] - }, - "shared-product-types": { - "tags": ["type:types", "scope:shared"] - }, - "shared-product-ui": { - "tags": ["scope:shared", "type:ui"] - }, - "shared-styles": { - "tags": ["scope:shared", "type:styles"] - } - }, + "projects": {}, "targetDependencies": { "build": [ { diff --git a/workspace.json b/workspace.json index 54afe19..fac0597 100644 --- a/workspace.json +++ b/workspace.json @@ -24,551 +24,22 @@ } }, "projects": { - "cart": { - "root": "apps/cart", - "sourceRoot": "apps/cart/src", - "projectType": "application", - "generators": {}, - "targets": { - "build": { - "executor": "@nrwl/web:build", - "options": { - "outputPath": "dist/apps/cart", - "webpackConfig": "@nrwl/react/plugins/webpack", - "index": "apps/cart/src/index.html", - "main": "apps/cart/src/main.tsx", - "polyfills": "apps/cart/src/polyfills.ts", - "tsConfig": "apps/cart/tsconfig.app.json", - "assets": [ - "apps/cart/src/_redirects", - { - "input": "libs/shared/assets/src/assets", - "glob": "**/*", - "output": "assets" - }, - { - "input": "libs/shared/assets/src", - "glob": "favicon.ico", - "output": "" - } - ], - "maxWorkers": 8, - "styles": [ - "libs/shared/styles/src/index.scss", - "libs/shared/header/index.scss", - "node_modules/normalize.css/normalize.css" - ], - "scripts": [], - "buildLibsFromSource": true - }, - "configurations": { - "production": { - "fileReplacements": [ - { - "replace": "apps/cart/src/environments/environment.ts", - "with": "apps/cart/src/environments/environment.prod.ts" - } - ], - "optimization": true, - "outputHashing": "all", - "sourceMap": false, - "extractCss": true, - "namedChunks": false, - "extractLicenses": true, - "vendorChunk": false, - "budgets": [ - { - "type": "initial", - "maximumWarning": "2mb", - "maximumError": "5mb" - } - ] - } - }, - "outputs": ["{options.outputPath}"] - }, - "serve": { - "executor": "@nrwl/web:dev-server", - "options": { - "buildTarget": "cart:build" - }, - "configurations": { - "production": { - "buildTarget": "cart:build:production" - } - } - }, - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": ["apps/cart/**/*.{ts,tsx,js,jsx}"] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "options": { - "jestConfig": "apps/cart/jest.config.js", - "passWithNoTests": true - }, - "outputs": ["coverage/apps/cart"] - }, - "deploy": { - "executor": "@nrwl/workspace:run-commands", - "options": { - "commands": [ - { - "command": "npx ts-node --project tools/tsconfig.tools.json tools/scripts/deploy --siteName nrwl-nx-examples-cart --outputPath dist/apps/cart" - } - ] - } - } - } - }, - "cart-cart-page": { - "root": "libs/cart/cart-page", - "sourceRoot": "libs/cart/cart-page/src", - "projectType": "library", - "generators": {}, - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/cart/cart-page/src/**/*.ts", - "libs/cart/cart-page/src/**/*.html" - ] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/cart/cart-page/jest.config.js", - "passWithNoTests": true - }, - "outputs": ["coverage/libs/cart/cart-page"] - } - } - }, - "cart-e2e": { - "root": "apps/cart-e2e", - "sourceRoot": "apps/cart-e2e/src", - "projectType": "application", - "targets": { - "e2e": { - "executor": "@nrwl/cypress:cypress", - "options": { - "cypressConfig": "apps/cart-e2e/cypress.json", - "tsConfig": "apps/cart-e2e/tsconfig.e2e.json", - "devServerTarget": "cart:serve" - }, - "configurations": { - "production": { - "devServerTarget": "cart:serve:production" - } - } - }, - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": ["apps/cart-e2e/**/*.{ts,tsx,js,jsx}"] - } - } - } - }, - "products": { - "projectType": "application", - "generators": { - "@nrwl/workspace:component": { - "style": "scss" - } - }, - "root": "apps/products", - "sourceRoot": "apps/products/src", - "prefix": "nx-example", - "targets": { - "build": { - "executor": "@angular-devkit/build-angular:browser", - "options": { - "aot": true, - "outputPath": "dist/apps/products", - "index": "apps/products/src/index.html", - "main": "apps/products/src/main.ts", - "polyfills": "apps/products/src/polyfills.ts", - "tsConfig": "apps/products/tsconfig.app.json", - "assets": [ - "apps/products/src/_redirects", - { - "input": "libs/shared/assets/src/assets", - "glob": "**/*", - "output": "assets" - }, - { - "input": "libs/shared/assets/src", - "glob": "favicon.ico", - "output": "." - } - ], - "styles": [ - "libs/shared/styles/src/index.scss", - "libs/shared/header/index.scss", - "node_modules/normalize.css/normalize.css" - ], - "scripts": [] - }, - "configurations": { - "production": { - "fileReplacements": [ - { - "replace": "apps/products/src/environments/environment.ts", - "with": "apps/products/src/environments/environment.prod.ts" - } - ], - "optimization": true, - "outputHashing": "all", - "sourceMap": false, - "namedChunks": false, - "aot": true, - "extractLicenses": true, - "vendorChunk": false, - "buildOptimizer": true, - "budgets": [ - { - "type": "initial", - "maximumWarning": "2mb", - "maximumError": "5mb" - }, - { - "type": "anyComponentStyle", - "maximumWarning": "6kb" - } - ] - } - }, - "outputs": ["{options.outputPath}"] - }, - "serve": { - "executor": "@angular-devkit/build-angular:dev-server", - "options": { - "browserTarget": "products:build" - }, - "configurations": { - "production": { - "browserTarget": "products:build:production" - } - } - }, - "extract-i18n": { - "executor": "@angular-devkit/build-angular:extract-i18n", - "options": { - "browserTarget": "products:build" - } - }, - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "apps/products/src/**/*.ts", - "apps/products/src/**/*.html" - ] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "options": { - "jestConfig": "apps/products/jest.config.js", - "passWithNoTests": true - }, - "outputs": ["coverage/apps/products"] - }, - "deploy": { - "executor": "@nrwl/workspace:run-commands", - "options": { - "commands": [ - { - "command": "npx ts-node --project tools/tsconfig.tools.json tools/scripts/deploy --siteName nrwl-nx-examples-products --outputPath dist/apps/products" - } - ] - } - } - } - }, - "products-e2e": { - "root": "apps/products-e2e", - "sourceRoot": "apps/products-e2e/src", - "projectType": "application", - "targets": { - "e2e": { - "executor": "@nrwl/cypress:cypress", - "options": { - "cypressConfig": "apps/products-e2e/cypress.json", - "tsConfig": "apps/products-e2e/tsconfig.e2e.json", - "devServerTarget": "products:serve" - }, - "configurations": { - "production": { - "devServerTarget": "products:serve:production" - } - } - }, - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": ["apps/products-e2e/**/*.{js,ts}"] - } - } - } - }, - "products-home-page": { - "projectType": "library", - "root": "libs/products/home-page", - "sourceRoot": "libs/products/home-page/src", - "prefix": "nx-example", - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/products/home-page/src/**/*.ts", - "libs/products/home-page/src/**/*.html" - ] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/products/home-page/jest.config.js", - "passWithNoTests": true - }, - "outputs": ["coverage/libs/products/home-page"] - } - }, - "generators": { - "@nrwl/angular:component": { - "styleext": "scss" - } - } - }, - "products-product-detail-page": { - "projectType": "library", - "root": "libs/products/product-detail-page", - "sourceRoot": "libs/products/product-detail-page/src", - "prefix": "nx-example", - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/products/product-detail-page/src/**/*.ts", - "libs/products/product-detail-page/src/**/*.html" - ] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/products/product-detail-page/jest.config.js", - "passWithNoTests": true - }, - "outputs": ["coverage/libs/products/product-detail-page"] - } - }, - "generators": { - "@nrwl/angular:component": { - "styleext": "scss" - } - } - }, - "shared-assets": { - "root": "libs/shared/assets", - "sourceRoot": "libs/shared/assets/src", - "projectType": "library", - "generators": {}, - "targets": {} - }, - "shared-cart-state": { - "projectType": "library", - "root": "libs/shared/cart/state", - "sourceRoot": "libs/shared/cart/state/src", - "prefix": "nx-example", - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/cart/state/src/**/*.ts", - "libs/shared/cart/state/src/**/*.html" - ] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/shared/cart/state/jest.config.js", - "passWithNoTests": true - }, - "outputs": ["coverage/libs/shared/cart/state"] - } - }, - "generators": { - "@nrwl/angular:component": { - "styleext": "scss" - } - } - }, - "shared-e2e-utils": { - "root": "libs/shared/e2e-utils", - "sourceRoot": "libs/shared/e2e-utils/src", - "projectType": "library", - "generators": {}, - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/e2e-utils/src/**/*.ts", - "libs/shared/e2e-utils/src/**/*.html" - ] - } - } - } - }, - "shared-header": { - "root": "libs/shared/header", - "sourceRoot": "libs/shared/header/src", - "projectType": "library", - "generators": {}, - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/header/src/**/*.ts", - "libs/shared/header/src/**/*.html" - ] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/shared/header/jest.config.js", - "passWithNoTests": true - }, - "outputs": ["coverage/libs/shared/header"] - } - } - }, - "shared-jsxify": { - "root": "libs/shared/jsxify", - "sourceRoot": "libs/shared/jsxify/src", - "projectType": "library", - "generators": {}, - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/jsxify/src/**/*.ts", - "libs/shared/jsxify/src/**/*.html" - ] - } - } - } - }, - "shared-product-data": { - "root": "libs/shared/product/data", - "sourceRoot": "libs/shared/product/data/src", - "projectType": "library", - "generators": {}, - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/product/data/src/**/*.ts", - "libs/shared/product/data/src/**/*.html" - ] - } - } - } - }, - "shared-product-state": { - "projectType": "library", - "root": "libs/shared/product/state", - "sourceRoot": "libs/shared/product/state/src", - "prefix": "nx-example", - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/product/state/src/**/*.ts", - "libs/shared/product/state/src/**/*.html" - ] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/shared/product/state/jest.config.js", - "passWithNoTests": true - }, - "outputs": ["coverage/libs/shared/product/state"] - } - }, - "generators": { - "@nrwl/angular:component": { - "styleext": "scss" - } - } - }, - "shared-product-types": { - "root": "libs/shared/product/types", - "sourceRoot": "libs/shared/product/types/src", - "projectType": "library", - "generators": {}, - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/product/types/src/**/*.ts", - "libs/shared/product/types/src/**/*.html" - ] - } - } - } - }, - "shared-product-ui": { - "root": "libs/shared/product/ui", - "sourceRoot": "libs/shared/product/ui/src", - "projectType": "library", - "generators": {}, - "targets": { - "lint": { - "executor": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/product/ui/src/**/*.ts", - "libs/shared/product/ui/src/**/*.html" - ] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/shared/product/ui/jest.config.js", - "passWithNoTests": true - }, - "outputs": ["coverage/libs/shared/product/ui"] - } - } - }, - "shared-styles": { - "root": "libs/shared/styles", - "sourceRoot": "libs/shared/styles/src", - "projectType": "library", - "generators": {}, - "targets": {} - } + "cart": "apps/cart", + "cart-cart-page": "libs/cart/cart-page", + "cart-e2e": "apps/cart-e2e", + "products": "apps/products", + "products-e2e": "apps/products-e2e", + "products-home-page": "libs/products/home-page", + "products-product-detail-page": "libs/products/product-detail-page", + "shared-assets": "libs/shared/assets", + "shared-cart-state": "libs/shared/cart/state", + "shared-e2e-utils": "libs/shared/e2e-utils", + "shared-header": "libs/shared/header", + "shared-jsxify": "libs/shared/jsxify", + "shared-product-data": "libs/shared/product/data", + "shared-product-state": "libs/shared/product/state", + "shared-product-types": "libs/shared/product/types", + "shared-product-ui": "libs/shared/product/ui", + "shared-styles": "libs/shared/styles" } }