diff --git a/.gitignore b/.gitignore index ae11281..b078901 100644 --- a/.gitignore +++ b/.gitignore @@ -43,3 +43,5 @@ Thumbs.db # SonarQube /.scannerwork + +.angular diff --git a/.vscode/extensions.json b/.vscode/extensions.json index f792b00..f139dc7 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,12 +1,12 @@ { - "recommendations": [ - "nrwl.angular-console", - "angular.ng-template", - "esbenp.prettier-vscode", - "dt.ghlink", - "prisma.prisma", - "gruntfuggly.todo-tree", - "humao.rest-client", - "firsttris.vscode-jest-runner" - ] + "recommendations": [ + "nrwl.angular-console", + "angular.ng-template", + "esbenp.prettier-vscode", + "dt.ghlink", + "prisma.prisma", + "gruntfuggly.todo-tree", + "humao.rest-client", + "firsttris.vscode-jest-runner" + ] } diff --git a/angular.json b/angular.json index b3e260e..80471af 100644 --- a/angular.json +++ b/angular.json @@ -1,708 +1,740 @@ { - "version": 1, - "projects": { - "flowers": { - "projectType": "application", - "root": "apps/flowers", - "sourceRoot": "apps/flowers/src", - "prefix": "s", - "i18n": { - "sourceLocale": "en", - "locales": { - "ru": { - "translation": "i18n/locale/source.ru.xlf", - "baseHref": "/ru/" - } - } - }, - "architect": { - "build": { - "builder": "@angular-devkit/build-angular:browser", - "options": { - "outputPath": "dist/apps/flowers", - "resourcesOutputPath": "resources", - "baseHref": "/", - "index": "apps/flowers/src/index.html", - "main": "apps/flowers/src/main.ts", - "polyfills": "apps/flowers/src/polyfills.ts", - "tsConfig": "apps/flowers/tsconfig.app.json", - "localize": ["en", "ru"], - "aot": true, - "buildOptimizer": true, - "optimization": false, - "budgets": [ - { - "type": "initial", - "maximumWarning": "2mb", - "maximumError": "5mb" - }, - { - "type": "anyComponentStyle", - "maximumWarning": "6kb", - "maximumError": "10kb" - } - ], - "assets": [ - { - "glob": "**/*", - "input": "assets/default", - "output": "assets" - } - ], - "stylePreprocessorOptions": { - "includePaths": ["libs/theme/src/lib/-mixins", "libs/theme/src/lib/default"] + "version": 1, + "projects": { + "flowers": { + "projectType": "application", + "root": "apps/flowers", + "sourceRoot": "apps/flowers/src", + "prefix": "s", + "i18n": { + "sourceLocale": "en", + "locales": { + "ru": { + "translation": "i18n/locale/source.ru.xlf", + "baseHref": "/ru/" + } + } }, - "styles": ["libs/theme/src/lib/theme.styles.less"], - "scripts": [], - "vendorChunk": true, - "extractLicenses": false, - "sourceMap": true, - "namedChunks": true - }, - "configurations": { - "production": { - "localize": ["en"], - "optimization": true, - "extractLicenses": true, - "outputHashing": "all", - "sourceMap": false, - "namedChunks": false, - "fileReplacements": [ - { - "replace": "apps/flowers/src/environments/environment.ts", - "with": "apps/flowers/src/environments/environment.prod.ts" + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist/apps/flowers", + "resourcesOutputPath": "resources", + "baseHref": "/", + "index": "apps/flowers/src/index.html", + "main": "apps/flowers/src/main.ts", + "polyfills": "apps/flowers/src/polyfills.ts", + "tsConfig": "apps/flowers/tsconfig.app.json", + "localize": ["en", "ru"], + "aot": true, + "buildOptimizer": true, + "optimization": false, + "budgets": [ + { + "type": "initial", + "maximumWarning": "2mb", + "maximumError": "5mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "6kb", + "maximumError": "10kb" + } + ], + "assets": [ + { + "glob": "**/*", + "input": "assets/default", + "output": "assets" + } + ], + "stylePreprocessorOptions": { + "includePaths": [ + "libs/theme/src/lib/-mixins", + "libs/theme/src/lib/default" + ] + }, + "styles": ["libs/theme/src/lib/theme.styles.less"], + "scripts": [], + "vendorChunk": true, + "extractLicenses": false, + "sourceMap": true, + "namedChunks": true + }, + "configurations": { + "production": { + "localize": ["en"], + "optimization": true, + "extractLicenses": true, + "outputHashing": "all", + "sourceMap": false, + "namedChunks": false, + "fileReplacements": [ + { + "replace": "apps/flowers/src/environments/environment.ts", + "with": "apps/flowers/src/environments/environment.prod.ts" + } + ] + }, + "development": { + "localize": ["en"] + } + }, + "defaultConfiguration": "development" + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "configurations": { + "production": { + "browserTarget": "flowers:build:production" + }, + "development": { + "browserTarget": "flowers:build:development" + } + }, + "defaultConfiguration": "development" + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "flowers:build", + "outputPath": "i18n", + "outFile": "source.xlf" + } + }, + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "apps/flowers/src/**/*.ts", + "apps/flowers/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "apps/flowers/jest.config.ts", + "passWithNoTests": true + }, + "outputs": ["coverage/apps/flowers"] } - ] }, - "development": { - "localize": ["en"] - } - }, - "defaultConfiguration": "development" + "tags": [] }, - "serve": { - "builder": "@angular-devkit/build-angular:dev-server", - "configurations": { - "production": { - "browserTarget": "flowers:build:production" + "flowers-e2e": { + "projectType": "application", + "root": "apps/flowers-e2e", + "sourceRoot": "apps/flowers-e2e/src", + "architect": { + "e2e": { + "builder": "@nrwl/cypress:cypress", + "options": { + "cypressConfig": "apps/flowers-e2e/cypress.json", + "tsConfig": "apps/flowers-e2e/tsconfig.e2e.json", + "devServerTarget": "flowers:serve" + }, + "configurations": { + "production": { + "devServerTarget": "flowers:serve:production" + } + } + }, + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": ["apps/flowers-e2e/**/*.{js,ts}"] + } + } }, - "development": { - "browserTarget": "flowers:build:development" - } - }, - "defaultConfiguration": "development" - }, - "extract-i18n": { - "builder": "@angular-devkit/build-angular:extract-i18n", - "options": { - "browserTarget": "flowers:build", - "outputPath": "i18n", - "outFile": "source.xlf" - } - }, - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": ["apps/flowers/src/**/*.ts", "apps/flowers/src/**/*.html"] - } + "tags": [], + "implicitDependencies": ["flowers"] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "apps/flowers/jest.config.ts", - "passWithNoTests": true - }, - "outputs": ["coverage/apps/flowers"] - } - }, - "tags": [] - }, - "flowers-e2e": { - "projectType": "application", - "root": "apps/flowers-e2e", - "sourceRoot": "apps/flowers-e2e/src", - "architect": { - "e2e": { - "builder": "@nrwl/cypress:cypress", - "options": { - "cypressConfig": "apps/flowers-e2e/cypress.json", - "tsConfig": "apps/flowers-e2e/tsconfig.e2e.json", - "devServerTarget": "flowers:serve" - }, - "configurations": { - "production": { - "devServerTarget": "flowers:serve:production" - } - } - }, - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": ["apps/flowers-e2e/**/*.{js,ts}"] - } - } - }, - "tags": [], - "implicitDependencies": ["flowers"] - }, - "api": { - "projectType": "application", - "root": "apps/api", - "sourceRoot": "apps/api/src", - "prefix": "api", - "architect": { - "build": { - "builder": "@nrwl/node:webpack", - "outputs": ["{options.outputPath}"], - "options": { - "outputPath": "dist/apps/api", - "baseHref": "/", - "main": "apps/api/src/main.ts", - "tsConfig": "apps/api/tsconfig.app.json", - "optimization": false, - "assets": [ - { - "glob": "**/*", - "input": "assets/default", - "output": "assets" - } - ] - }, - "configurations": { - "production": { - "optimization": true, - "extractLicenses": true, - "inspect": false, - "fileReplacements": [ - { - "replace": "apps/api/src/environments/environment.ts", - "with": "apps/api/src/environments/environment.prod.ts" + "api": { + "projectType": "application", + "root": "apps/api", + "sourceRoot": "apps/api/src", + "prefix": "api", + "architect": { + "build": { + "builder": "@nrwl/node:webpack", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/apps/api", + "resourcesOutputPath": "resources", + "baseHref": "/", + "main": "apps/api/src/main.ts", + "tsConfig": "apps/api/tsconfig.app.json", + "optimization": false, + "assets": [ + { + "glob": "**/*", + "input": "assets/default", + "output": "assets" + } + ] + }, + "configurations": { + "production": { + "optimization": true, + "extractLicenses": true, + "inspect": false, + "fileReplacements": [ + { + "replace": "apps/api/src/environments/environment.ts", + "with": "apps/api/src/environments/environment.prod.ts" + } + ] + }, + "development": {} + } + }, + "serve": { + "builder": "@nrwl/node:node", + "options": { + "buildTarget": "api:build" + } + }, + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": ["apps/api/**/*.ts"] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "apps/api/jest.config.ts", + "passWithNoTests": true + }, + "outputs": ["coverage/apps/api"] } - ] }, - "development": {} - } - }, - "serve": { - "builder": "@nrwl/node:node", - "options": { - "buildTarget": "api:build" - } + "tags": [] }, - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": ["apps/api/**/*.ts"] - } + "theme": { + "projectType": "library", + "root": "libs/theme", + "sourceRoot": "libs/theme/src", + "prefix": "s", + "architect": {}, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "apps/api/jest.config.ts", - "passWithNoTests": true - }, - "outputs": ["coverage/apps/api"] - } - }, - "tags": [] - }, - "theme": { - "projectType": "library", - "root": "libs/theme", - "sourceRoot": "libs/theme/src", - "prefix": "s", - "architect": {}, - "tags": [] - }, - "ui": { - "projectType": "library", - "root": "libs/ui", - "sourceRoot": "libs/ui/src", - "prefix": "s", - "architect": { - "storybook": { - "builder": "@nrwl/storybook:storybook", - "options": { - "uiFramework": "@storybook/angular", - "port": 4400, - "config": { - "configFolder": "libs/ui/.storybook" - } - }, - "configurations": { - "ci": { - "quiet": true - } - } + "ui": { + "projectType": "library", + "root": "libs/ui", + "sourceRoot": "libs/ui/src", + "prefix": "s", + "architect": { + "storybook": { + "builder": "@nrwl/storybook:storybook", + "options": { + "uiFramework": "@storybook/angular", + "port": 4400, + "config": { + "configFolder": "libs/ui/.storybook" + } + }, + "configurations": { + "ci": { + "quiet": true + } + } + }, + "build-storybook": { + "builder": "@nrwl/storybook:build", + "outputs": ["{options.outputPath}"], + "options": { + "uiFramework": "@storybook/angular", + "outputPath": "dist/storybook/ui", + "config": { + "configFolder": "libs/ui/.storybook" + } + }, + "configurations": { + "ci": { + "quiet": true + } + } + } + }, + "tags": [] }, - "build-storybook": { - "builder": "@nrwl/storybook:build", - "outputs": ["{options.outputPath}"], - "options": { - "uiFramework": "@storybook/angular", - "outputPath": "dist/storybook/ui", - "config": { - "configFolder": "libs/ui/.storybook" - } - }, - "configurations": { - "ci": { - "quiet": true - } - } - } - }, - "tags": [] - }, - "flowers-pages-feature-about": { - "projectType": "library", - "root": "libs/flowers/pages/feature-about", - "sourceRoot": "libs/flowers/pages/feature-about/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/flowers/pages/feature-about/src/**/*.ts", - "libs/flowers/pages/feature-about/src/**/*.html" - ] - } + "flowers-pages-feature-about": { + "projectType": "library", + "root": "libs/flowers/pages/feature-about", + "sourceRoot": "libs/flowers/pages/feature-about/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/flowers/pages/feature-about/src/**/*.ts", + "libs/flowers/pages/feature-about/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/flowers/pages/feature-about/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/flowers/pages/feature-about/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "flowers-pages-feature-dashboard": { - "projectType": "library", - "root": "libs/flowers/pages/feature-dashboard", - "sourceRoot": "libs/flowers/pages/feature-dashboard/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/flowers/pages/feature-dashboard/src/**/*.ts", - "libs/flowers/pages/feature-dashboard/src/**/*.html" - ] - } + "flowers-pages-feature-dashboard": { + "projectType": "library", + "root": "libs/flowers/pages/feature-dashboard", + "sourceRoot": "libs/flowers/pages/feature-dashboard/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/flowers/pages/feature-dashboard/src/**/*.ts", + "libs/flowers/pages/feature-dashboard/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/flowers/pages/feature-dashboard/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/flowers/pages/feature-dashboard/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "flowers-pages-feature-delivery-confirmed": { - "projectType": "library", - "root": "libs/flowers/pages/feature-delivery-confirmed", - "sourceRoot": "libs/flowers/pages/feature-delivery-confirmed/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/flowers/pages/feature-delivery-confirmed/src/**/*.ts", - "libs/flowers/pages/feature-delivery-confirmed/src/**/*.html" - ] - } + "flowers-pages-feature-delivery-confirmed": { + "projectType": "library", + "root": "libs/flowers/pages/feature-delivery-confirmed", + "sourceRoot": "libs/flowers/pages/feature-delivery-confirmed/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/flowers/pages/feature-delivery-confirmed/src/**/*.ts", + "libs/flowers/pages/feature-delivery-confirmed/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/flowers/pages/feature-delivery-confirmed/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/flowers/pages/feature-delivery-confirmed/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "flowers-pages-feature-delivery-reschedule-confirmed": { - "projectType": "library", - "root": "libs/flowers/pages/feature-delivery-reschedule-confirmed", - "sourceRoot": "libs/flowers/pages/feature-delivery-reschedule-confirmed/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/flowers/pages/feature-delivery-reschedule-confirmed/src/**/*.ts", - "libs/flowers/pages/feature-delivery-reschedule-confirmed/src/**/*.html" - ] - } + "flowers-pages-feature-delivery-reschedule-confirmed": { + "projectType": "library", + "root": "libs/flowers/pages/feature-delivery-reschedule-confirmed", + "sourceRoot": "libs/flowers/pages/feature-delivery-reschedule-confirmed/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/flowers/pages/feature-delivery-reschedule-confirmed/src/**/*.ts", + "libs/flowers/pages/feature-delivery-reschedule-confirmed/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/flowers/pages/feature-delivery-reschedule-confirmed/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/flowers/pages/feature-delivery-reschedule-confirmed/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "flowers-pages-feature-home": { - "projectType": "library", - "root": "libs/flowers/pages/feature-home", - "sourceRoot": "libs/flowers/pages/feature-home/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/flowers/pages/feature-home/src/**/*.ts", - "libs/flowers/pages/feature-home/src/**/*.html" - ] - } + "flowers-pages-feature-home": { + "projectType": "library", + "root": "libs/flowers/pages/feature-home", + "sourceRoot": "libs/flowers/pages/feature-home/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/flowers/pages/feature-home/src/**/*.ts", + "libs/flowers/pages/feature-home/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/flowers/pages/feature-home/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/flowers/pages/feature-home/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "flowers-pages-feature-order": { - "projectType": "library", - "root": "libs/flowers/pages/feature-order", - "sourceRoot": "libs/flowers/pages/feature-order/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/flowers/pages/feature-order/src/**/*.ts", - "libs/flowers/pages/feature-order/src/**/*.html" - ] - } + "flowers-pages-feature-order": { + "projectType": "library", + "root": "libs/flowers/pages/feature-order", + "sourceRoot": "libs/flowers/pages/feature-order/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/flowers/pages/feature-order/src/**/*.ts", + "libs/flowers/pages/feature-order/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/flowers/pages/feature-order/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/flowers/pages/feature-order/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "flowers-pages-feature-payment-confirmed": { - "projectType": "library", - "root": "libs/flowers/pages/feature-payment-confirmed", - "sourceRoot": "libs/flowers/pages/feature-payment-confirmed/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/flowers/pages/feature-payment-confirmed/src/**/*.ts", - "libs/flowers/pages/feature-payment-confirmed/src/**/*.html" - ] - } + "flowers-pages-feature-payment-confirmed": { + "projectType": "library", + "root": "libs/flowers/pages/feature-payment-confirmed", + "sourceRoot": "libs/flowers/pages/feature-payment-confirmed/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/flowers/pages/feature-payment-confirmed/src/**/*.ts", + "libs/flowers/pages/feature-payment-confirmed/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/flowers/pages/feature-payment-confirmed/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/flowers/pages/feature-payment-confirmed/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "shared-directives": { - "projectType": "library", - "root": "libs/shared/directives", - "sourceRoot": "libs/shared/directives/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/directives/src/**/*.ts", - "libs/shared/directives/src/**/*.html" - ] - } + "shared-directives": { + "projectType": "library", + "root": "libs/shared/directives", + "sourceRoot": "libs/shared/directives/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/directives/src/**/*.ts", + "libs/shared/directives/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/shared/directives/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/shared/directives/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "shared-pages-feature-confirmed": { - "projectType": "library", - "root": "libs/shared/pages/feature-confirmed", - "sourceRoot": "libs/shared/pages/feature-confirmed/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/pages/feature-confirmed/src/**/*.ts", - "libs/shared/pages/feature-confirmed/src/**/*.html" - ] - } + "shared-pages-feature-confirmed": { + "projectType": "library", + "root": "libs/shared/pages/feature-confirmed", + "sourceRoot": "libs/shared/pages/feature-confirmed/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/pages/feature-confirmed/src/**/*.ts", + "libs/shared/pages/feature-confirmed/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/shared/pages/feature-confirmed/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/shared/pages/feature-confirmed/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "shared-pages-feature-not-found": { - "projectType": "library", - "root": "libs/shared/pages/feature-not-found", - "sourceRoot": "libs/shared/pages/feature-not-found/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/shared/pages/feature-not-found/src/**/*.ts", - "libs/shared/pages/feature-not-found/src/**/*.html" - ] - } + "shared-pages-feature-not-found": { + "projectType": "library", + "root": "libs/shared/pages/feature-not-found", + "sourceRoot": "libs/shared/pages/feature-not-found/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/shared/pages/feature-not-found/src/**/*.ts", + "libs/shared/pages/feature-not-found/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/shared/pages/feature-not-found/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/shared/pages/feature-not-found/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "ui-ui-content": { - "projectType": "library", - "root": "libs/ui/ui-content", - "sourceRoot": "libs/ui/ui-content/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/ui/ui-content/src/**/*.ts", - "libs/ui/ui-content/src/**/*.html" - ] - } + "ui-ui-content": { + "projectType": "library", + "root": "libs/ui/ui-content", + "sourceRoot": "libs/ui/ui-content/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/ui/ui-content/src/**/*.ts", + "libs/ui/ui-content/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/ui/ui-content/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/ui/ui-content/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "ui-ui-fieldset": { - "projectType": "library", - "root": "libs/ui/ui-fieldset", - "sourceRoot": "libs/ui/ui-fieldset/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/ui/ui-fieldset/src/**/*.ts", - "libs/ui/ui-fieldset/src/**/*.html" - ] - } + "ui-ui-fieldset": { + "projectType": "library", + "root": "libs/ui/ui-fieldset", + "sourceRoot": "libs/ui/ui-fieldset/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/ui/ui-fieldset/src/**/*.ts", + "libs/ui/ui-fieldset/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/ui/ui-fieldset/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/ui/ui-fieldset/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "ui-ui-footer": { - "projectType": "library", - "root": "libs/ui/ui-footer", - "sourceRoot": "libs/ui/ui-footer/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/ui/ui-footer/src/**/*.ts", - "libs/ui/ui-footer/src/**/*.html" - ] - } + "ui-ui-footer": { + "projectType": "library", + "root": "libs/ui/ui-footer", + "sourceRoot": "libs/ui/ui-footer/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/ui/ui-footer/src/**/*.ts", + "libs/ui/ui-footer/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/ui/ui-footer/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/ui/ui-footer/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "ui-ui-header": { - "projectType": "library", - "root": "libs/ui/ui-header", - "sourceRoot": "libs/ui/ui-header/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/ui/ui-header/src/**/*.ts", - "libs/ui/ui-header/src/**/*.html" - ] - } + "ui-ui-header": { + "projectType": "library", + "root": "libs/ui/ui-header", + "sourceRoot": "libs/ui/ui-header/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/ui/ui-header/src/**/*.ts", + "libs/ui/ui-header/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/ui/ui-header/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/ui/ui-header/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "ui-ui-modal": { - "projectType": "library", - "root": "libs/ui/ui-modal", - "sourceRoot": "libs/ui/ui-modal/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/ui/ui-modal/src/**/*.ts", - "libs/ui/ui-modal/src/**/*.html" - ] - } + "ui-ui-modal": { + "projectType": "library", + "root": "libs/ui/ui-modal", + "sourceRoot": "libs/ui/ui-modal/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/ui/ui-modal/src/**/*.ts", + "libs/ui/ui-modal/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/ui/ui-modal/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/ui/ui-modal/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "ui-ui-slider": { - "projectType": "library", - "root": "libs/ui/ui-slider", - "sourceRoot": "libs/ui/ui-slider/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/ui/ui-slider/src/**/*.ts", - "libs/ui/ui-slider/src/**/*.html" - ] - } + "ui-ui-slider": { + "projectType": "library", + "root": "libs/ui/ui-slider", + "sourceRoot": "libs/ui/ui-slider/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/ui/ui-slider/src/**/*.ts", + "libs/ui/ui-slider/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/ui/ui-slider/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/ui/ui-slider/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "ui-ui-tab": { - "projectType": "library", - "root": "libs/ui/ui-tab", - "sourceRoot": "libs/ui/ui-tab/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/ui/ui-tab/src/**/*.ts", - "libs/ui/ui-tab/src/**/*.html" - ] - } + "ui-ui-submit-modal": { + "projectType": "library", + "root": "libs/ui/ui-submit-modal", + "sourceRoot": "libs/ui/ui-submit-modal/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/ui/ui-submit-modal/src/**/*.ts", + "libs/ui/ui-submit-modal/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/ui/ui-submit-modal/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/ui/ui-tab/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] - }, - "ui-ui-tabs": { - "projectType": "library", - "root": "libs/ui/ui-tabs", - "sourceRoot": "libs/ui/ui-tabs/src", - "prefix": "s", - "architect": { - "lint": { - "builder": "@nrwl/linter:eslint", - "options": { - "lintFilePatterns": [ - "libs/ui/ui-tabs/src/**/*.ts", - "libs/ui/ui-tabs/src/**/*.html" - ] - } + "ui-ui-tab": { + "projectType": "library", + "root": "libs/ui/ui-tab", + "sourceRoot": "libs/ui/ui-tab/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/ui/ui-tab/src/**/*.ts", + "libs/ui/ui-tab/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/ui/ui-tab/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] }, - "test": { - "builder": "@nrwl/jest:jest", - "options": { - "jestConfig": "libs/ui/ui-tabs/jest.config.ts", - "passWithNoTests": true - } + "ui-ui-tabs": { + "projectType": "library", + "root": "libs/ui/ui-tabs", + "sourceRoot": "libs/ui/ui-tabs/src", + "prefix": "s", + "architect": { + "lint": { + "builder": "@nrwl/linter:eslint", + "options": { + "lintFilePatterns": [ + "libs/ui/ui-tabs/src/**/*.ts", + "libs/ui/ui-tabs/src/**/*.html" + ] + } + }, + "test": { + "builder": "@nrwl/jest:jest", + "options": { + "jestConfig": "libs/ui/ui-tabs/jest.config.ts", + "passWithNoTests": true + } + } + }, + "tags": [] } - }, - "tags": [] } - } } diff --git a/libs/ui/src/lib/ui.module.ts b/libs/ui/src/lib/ui.module.ts index 7814464..d02363d 100644 --- a/libs/ui/src/lib/ui.module.ts +++ b/libs/ui/src/lib/ui.module.ts @@ -1,25 +1,27 @@ -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { UiHeaderModule } from '@s/ui/ui-header'; -import { UiContentModule } from '@s/ui/ui-content'; -import { UiFooterModule } from '@s/ui/ui-footer'; -import { UiModalModule } from '@s/ui/ui-modal'; -import { UiSliderModule } from '@s/ui/ui-slider'; -import { UiTabsModule } from '@s/ui/ui-tabs'; -import { UiTabModule } from '@s/ui/ui-tab'; -import { UiFieldsetModule } from '@s/ui/ui-fieldset'; +import { NgModule } from "@angular/core"; +import { CommonModule } from "@angular/common"; +import { UiHeaderModule } from "@s/ui/ui-header"; +import { UiContentModule } from "@s/ui/ui-content"; +import { UiFooterModule } from "@s/ui/ui-footer"; +import { UiModalModule } from "@s/ui/ui-modal"; +import { UiSliderModule } from "@s/ui/ui-slider"; +import { UiSubmitModalModule } from "@s/ui/ui-submit-modal"; +import { UiTabsModule } from "@s/ui/ui-tabs"; +import { UiTabModule } from "@s/ui/ui-tab"; +import { UiFieldsetModule } from "@s/ui/ui-fieldset"; @NgModule({ - imports: [CommonModule], - exports: [ - UiHeaderModule, - UiContentModule, - UiFooterModule, - UiModalModule, - UiSliderModule, - UiTabsModule, - UiTabModule, - UiFieldsetModule, - ], + imports: [CommonModule], + exports: [ + UiHeaderModule, + UiContentModule, + UiFooterModule, + UiModalModule, + UiSliderModule, + UiSubmitModalModule, + UiTabsModule, + UiTabModule, + UiFieldsetModule + ] }) export class UiModule {} diff --git a/libs/ui/ui-submit-modal/.eslintrc.json b/libs/ui/ui-submit-modal/.eslintrc.json new file mode 100644 index 0000000..c0d5f39 --- /dev/null +++ b/libs/ui/ui-submit-modal/.eslintrc.json @@ -0,0 +1,41 @@ +{ + "extends": ["../../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts"], + "extends": [ + "plugin:@nrwl/nx/angular", + "plugin:@angular-eslint/template/process-inline-templates" + ], + "rules": { + "@angular-eslint/directive-selector": [ + "error", + { + "type": "attribute", + "prefix": "s", + "style": "camelCase" + } + ], + "@angular-eslint/component-selector": [ + "error", + { + "type": "class", + "prefix": "s", + "style": "kebab-case" + } + ] + } + }, + { + "files": ["*.html"], + "extends": ["plugin:@nrwl/nx/angular-template"], + "rules": {} + }, + { + "files": ["*module.ts", "*component.ts", "*spec.ts"], + "extends": ["plugin:@typescript-eslint/recommended"], + "rules": {} + } + ] +} diff --git a/libs/ui/ui-submit-modal/README.md b/libs/ui/ui-submit-modal/README.md new file mode 100644 index 0000000..630edf6 --- /dev/null +++ b/libs/ui/ui-submit-modal/README.md @@ -0,0 +1,7 @@ +# ui-ui-submit-modal + +This library was generated with [Nx](https://nx.dev). + +## Running unit tests + +Run `nx test ui-ui-submit-modal` to execute the unit tests. diff --git a/libs/ui/ui-submit-modal/jest.config.ts b/libs/ui/ui-submit-modal/jest.config.ts new file mode 100644 index 0000000..297b737 --- /dev/null +++ b/libs/ui/ui-submit-modal/jest.config.ts @@ -0,0 +1,22 @@ +/* eslint-disable */ +export default { + displayName: "ui-ui-submit-modal", + preset: "../../../jest.preset.js", + setupFilesAfterEnv: ["/src/test-setup.ts"], + globals: { + "ts-jest": { + tsconfig: "/tsconfig.spec.json", + stringifyContentPathRegex: "\\.(html|svg)$" + } + }, + coverageDirectory: "../../../coverage/libs/ui/ui-submit-modal", + transform: { + "^.+\\.(ts|mjs|js|html)$": "jest-preset-angular" + }, + transformIgnorePatterns: ["node_modules/(?!.*\\.mjs$)"], + snapshotSerializers: [ + "jest-preset-angular/build/serializers/no-ng-attributes", + "jest-preset-angular/build/serializers/ng-snapshot", + "jest-preset-angular/build/serializers/html-comment" + ] +}; diff --git a/libs/ui/ui-submit-modal/src/index.ts b/libs/ui/ui-submit-modal/src/index.ts new file mode 100644 index 0000000..dc9658a --- /dev/null +++ b/libs/ui/ui-submit-modal/src/index.ts @@ -0,0 +1 @@ +export * from "./lib/ui-ui-submit-modal.module"; diff --git a/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.html b/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.html new file mode 100644 index 0000000..310c24a --- /dev/null +++ b/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.html @@ -0,0 +1 @@ +

ui-submit works!

diff --git a/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.less b/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.less new file mode 100644 index 0000000..e69de29 diff --git a/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.spec.ts b/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.spec.ts new file mode 100644 index 0000000..318044e --- /dev/null +++ b/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed } from "@angular/core/testing"; + +import { UiSubmitComponent } from "./ui-submit.component"; + +describe("UiSubmitComponent", () => { + let component: UiSubmitComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [UiSubmitComponent] + }).compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(UiSubmitComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it("should create", () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.ts b/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.ts new file mode 100644 index 0000000..dd481d5 --- /dev/null +++ b/libs/ui/ui-submit-modal/src/lib/ui-submit/ui-submit.component.ts @@ -0,0 +1,10 @@ +import { Component, ViewEncapsulation, ChangeDetectionStrategy } from "@angular/core"; + +@Component({ + selector: ".s-ui-submit", + templateUrl: "./ui-submit.component.html", + styleUrls: ["./ui-submit.component.less"], + encapsulation: ViewEncapsulation.None, + changeDetection: ChangeDetectionStrategy.OnPush +}) +export class UiSubmitComponent {} diff --git a/libs/ui/ui-submit-modal/src/lib/ui-ui-submit-modal.module.ts b/libs/ui/ui-submit-modal/src/lib/ui-ui-submit-modal.module.ts new file mode 100644 index 0000000..5001440 --- /dev/null +++ b/libs/ui/ui-submit-modal/src/lib/ui-ui-submit-modal.module.ts @@ -0,0 +1,10 @@ +import { NgModule } from "@angular/core"; +import { CommonModule } from "@angular/common"; +import { UiSubmitComponent } from "./ui-submit/ui-submit.component"; + +@NgModule({ + imports: [CommonModule], + declarations: [UiSubmitComponent], + exports: [UiSubmitComponent] +}) +export class UiSubmitModalModule {} diff --git a/libs/ui/ui-submit-modal/src/test-setup.ts b/libs/ui/ui-submit-modal/src/test-setup.ts new file mode 100644 index 0000000..a702c63 --- /dev/null +++ b/libs/ui/ui-submit-modal/src/test-setup.ts @@ -0,0 +1 @@ +import "jest-preset-angular/setup-jest"; diff --git a/libs/ui/ui-submit-modal/tsconfig.json b/libs/ui/ui-submit-modal/tsconfig.json new file mode 100644 index 0000000..b8b7b3c --- /dev/null +++ b/libs/ui/ui-submit-modal/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "../../../tsconfig.base.json", + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/libs/ui/ui-submit-modal/tsconfig.lib.json b/libs/ui/ui-submit-modal/tsconfig.lib.json new file mode 100644 index 0000000..25eac3d --- /dev/null +++ b/libs/ui/ui-submit-modal/tsconfig.lib.json @@ -0,0 +1,19 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../../dist/out-tsc", + "target": "es2015", + "declaration": true, + "declarationMap": true, + "inlineSources": true, + "types": [], + "lib": ["dom", "es2018"] + }, + "angularCompilerOptions": { + "skipTemplateCodegen": true, + "strictMetadataEmit": true, + "enableResourceInlining": true + }, + "exclude": ["src/test-setup.ts", "**/*.spec.ts", "**/*.test.ts", "jest.config.ts"], + "include": ["**/*.ts"] +} diff --git a/libs/ui/ui-submit-modal/tsconfig.spec.json b/libs/ui/ui-submit-modal/tsconfig.spec.json new file mode 100644 index 0000000..785e603 --- /dev/null +++ b/libs/ui/ui-submit-modal/tsconfig.spec.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "files": ["src/test-setup.ts"], + "include": ["jest.config.ts", "**/*.test.ts", "**/*.spec.ts", "**/*.d.ts"] +} diff --git a/nx.json b/nx.json index e4afde7..4a638c7 100644 --- a/nx.json +++ b/nx.json @@ -1,101 +1,101 @@ { - "npmScope": "s", - "affected": { - "defaultBase": "master" - }, - "implicitDependencies": { - "angular.json": "*", - "package.json": { - "dependencies": "*", - "devDependencies": "*" + "npmScope": "s", + "affected": { + "defaultBase": "master" }, - "tsconfig.base.json": "*", - "tslint.json": "*", - ".eslintrc.json": "*", - "nx.json": "*" - }, - "tasksRunnerOptions": { - "default": { - "runner": "@nrwl/nx-cloud", - "options": { - "accessToken": "NDBhZTZkYmEtM2QxYi00NzliLTk3NTUtNjJhNjQxNTg1MzlhfHJlYWQtd3JpdGU=", - "cacheableOperations": ["build", "test", "lint", "e2e"], - "canTrackAnalytics": false, - "showUsageWarnings": true, - "parallel": 3 - } - } - }, - "targetDependencies": { - "build": [ - { - "target": "build", - "projects": "dependencies" - } - ] - }, - "cli": { - "defaultCollection": "@nrwl/angular" - }, - "generators": { - "@nrwl/angular": { - "application": { - "linter": "eslint" - }, - "library": { - "linter": "eslint" - }, - "storybook-configuration": { - "linter": "eslint" - } + "implicitDependencies": { + "angular.json": "*", + "package.json": { + "dependencies": "*", + "devDependencies": "*" + }, + "tsconfig.base.json": "*", + "tslint.json": "*", + ".eslintrc.json": "*", + "nx.json": "*" }, - "@nrwl/workspace": { - "library": { - "linter": "tslint" - } + "tasksRunnerOptions": { + "default": { + "runner": "@nrwl/nx-cloud", + "options": { + "accessToken": "NDBhZTZkYmEtM2QxYi00NzliLTk3NTUtNjJhNjQxNTg1MzlhfHJlYWQtd3JpdGU=", + "cacheableOperations": ["build", "test", "lint", "e2e"], + "canTrackAnalytics": false, + "showUsageWarnings": true, + "parallel": 3 + } + } }, - "@nrwl/cypress": { - "cypress-project": { - "linter": "tslint" - } + "targetDependencies": { + "build": [ + { + "target": "build", + "projects": "dependencies" + } + ] }, - "@nrwl/node": { - "application": { - "linter": "tslint" - }, - "library": { - "linter": "tslint" - } + "cli": { + "defaultCollection": "@nrwl/angular" }, - "@nrwl/nest": { - "application": { - "linter": "tslint" - }, - "library": { - "linter": "tslint" - } + "generators": { + "@nrwl/angular": { + "application": { + "linter": "eslint" + }, + "library": { + "linter": "eslint" + }, + "storybook-configuration": { + "linter": "eslint" + } + }, + "@nrwl/workspace": { + "library": { + "linter": "tslint" + } + }, + "@nrwl/cypress": { + "cypress-project": { + "linter": "tslint" + } + }, + "@nrwl/node": { + "application": { + "linter": "tslint" + }, + "library": { + "linter": "tslint" + } + }, + "@nrwl/nest": { + "application": { + "linter": "tslint" + }, + "library": { + "linter": "tslint" + } + }, + "@nrwl/express": { + "application": { + "linter": "tslint" + }, + "library": { + "linter": "tslint" + } + }, + "@nrwl/angular:application": { + "style": "less", + "linter": "eslint", + "unitTestRunner": "jest", + "e2eTestRunner": "cypress" + }, + "@nrwl/angular:library": { + "linter": "eslint", + "unitTestRunner": "jest" + }, + "@nrwl/angular:component": { + "style": "less" + } }, - "@nrwl/express": { - "application": { - "linter": "tslint" - }, - "library": { - "linter": "tslint" - } - }, - "@nrwl/angular:application": { - "style": "less", - "linter": "eslint", - "unitTestRunner": "jest", - "e2eTestRunner": "cypress" - }, - "@nrwl/angular:library": { - "linter": "eslint", - "unitTestRunner": "jest" - }, - "@nrwl/angular:component": { - "style": "less" - } - }, - "defaultProject": "flowers" + "defaultProject": "flowers" } diff --git a/tools/generators/angular-json-configurator.js b/tools/generators/angular-json-configurator.js index fcea8a9..6e9dab6 100644 --- a/tools/generators/angular-json-configurator.js +++ b/tools/generators/angular-json-configurator.js @@ -1,398 +1,409 @@ -const fs = require('fs'); +const fs = require("fs"); -const { PROJECTS } = require('./angular-json-configurator/projects'); -const { GROUPS } = require('./angular-json-configurator/groups'); -const { COMPONENTS } = require('./angular-json-configurator/components'); +const { PROJECTS } = require("./angular-json-configurator/projects"); +const { GROUPS } = require("./angular-json-configurator/groups"); +const { COMPONENTS } = require("./angular-json-configurator/components"); const ANGULAR_JSON = { - version: 1, - // HERE COMES ALL PROJECTS, GROUPS, COMPONNETS and etc. - projects: {}, + version: 1, + // HERE COMES ALL PROJECTS, GROUPS, COMPONNETS and etc. + projects: {} }; -const PREFIX = 's'; +const PREFIX = "s"; const PROJECT_BUILD = (project) => { - if (project.build === null) { - return undefined; - } - - const { - title: projectName, - stylePreprocessorOptions = { - includePaths: ['libs/theme/src/lib/-mixins', 'libs/theme/src/lib/default'], - }, - styles = ['libs/theme/src/lib/theme.styles.less'], - } = project; - - const { build = {}, i18n = {} } = project; - const { - builder = '@angular-devkit/build-angular:browser', - outputs, - configurations = {}, - defaultConfiguration = 'development', - } = build; - - let { options = {} } = build; - options = { - ...{ - vendorChunk: true, - extractLicenses: false, - sourceMap: true, - namedChunks: true, - }, - ...options, - }; - - const { - index = `apps/${projectName}/src/index.html`, - polyfills = `apps/${projectName}/src/polyfills.ts`, - aot = true, - buildOptimizer = true, - optimization = false, - budgets = [ - { - type: 'initial', - maximumWarning: '2mb', - maximumError: '5mb', - }, - { - type: 'anyComponentStyle', - maximumWarning: '6kb', - maximumError: '10kb', - }, - ], - scripts = [], - } = options; - - let { production = {}, development = {} } = configurations; - production = { - ...{ - localize: ['en'], - optimization: true, - extractLicenses: true, - sourceMap: false, - namedChunks: false, - }, - ...production, - }; - - development = { - ...{ localize: ['en'] }, - ...development, - }; - - const { - outputHashing = 'all', - inspect, - fileReplacements = [ - { - replace: `apps/${projectName}/src/environments/environment.ts`, - with: `apps/${projectName}/src/environments/environment.prod.ts`, - }, - ], - } = production; - - return { - builder: builder, - outputs: outputs, - options: { - outputPath: `dist/apps/${projectName}`, - // - baseHref: '/', // project base href - index: index || undefined, - main: `apps/${projectName}/src/main.ts`, - polyfills: polyfills || undefined, - tsConfig: `apps/${projectName}/tsconfig.app.json`, - localize: i18n !== null ? ['en', ...i18n.locales] : undefined, - aot: aot || undefined, - buildOptimizer: buildOptimizer || undefined, - optimization: optimization !== null ? optimization : undefined, - budgets: budgets || undefined, - assets: [ - { - glob: '**/*', - input: 'assets', - output: 'assets', + if (project.build === null) { + return undefined; + } + + const { + title: projectName, + stylePreprocessorOptions = { + includePaths: ["libs/theme/src/lib/-mixins", "libs/theme/src/lib/default"] }, - ], - stylePreprocessorOptions: stylePreprocessorOptions || undefined, - styles: styles || undefined, - scripts: scripts || undefined, - vendorChunk: options.vendorChunk !== null ? options.vendorChunk : undefined, - extractLicenses: - options.extractLicenses !== null ? options.extractLicenses : undefined, - sourceMap: options.sourceMap !== null ? options.sourceMap : undefined, - namedChunks: options.namedChunks !== null ? options.namedChunks : undefined, - }, - // BUILD CONFIGURATIONS - configurations: { - production: { - localize: development.localize !== null ? development.localize : undefined, - optimization: - production.optimization !== null ? production.optimization : undefined, - extractLicenses: - production.extractLicenses !== null ? production.extractLicenses : undefined, - outputHashing: outputHashing !== null ? outputHashing : undefined, - sourceMap: production.sourceMap !== null ? production.sourceMap : undefined, - namedChunks: production.namedChunks !== null ? production.namedChunks : undefined, - inspect: inspect, - fileReplacements: fileReplacements, - }, - development: { - localize: development.localize !== null ? development.localize : undefined, - }, - }, - defaultConfiguration: - defaultConfiguration !== null ? defaultConfiguration : undefined, - }; + styles = ["libs/theme/src/lib/theme.styles.less"] + } = project; + + const { build = {}, i18n = {} } = project; + const { + builder = "@angular-devkit/build-angular:browser", + outputs, + configurations = {}, + defaultConfiguration = "development" + } = build; + + let { options = {} } = build; + options = { + ...{ + vendorChunk: true, + extractLicenses: false, + sourceMap: true, + namedChunks: true + }, + ...options + }; + + const { + index = `apps/${projectName}/src/index.html`, + polyfills = `apps/${projectName}/src/polyfills.ts`, + aot = true, + buildOptimizer = true, + optimization = false, + budgets = [ + { + type: "initial", + maximumWarning: "2mb", + maximumError: "5mb" + }, + { + type: "anyComponentStyle", + maximumWarning: "6kb", + maximumError: "10kb" + } + ], + scripts = [] + } = options; + + let { production = {}, development = {} } = configurations; + production = { + ...{ + localize: ["en"], + optimization: true, + extractLicenses: true, + sourceMap: false, + namedChunks: false + }, + ...production + }; + + development = { + ...{ localize: ["en"] }, + ...development + }; + + const { + outputHashing = "all", + inspect, + fileReplacements = [ + { + replace: `apps/${projectName}/src/environments/environment.ts`, + with: `apps/${projectName}/src/environments/environment.prod.ts` + } + ] + } = production; + + return { + builder: builder, + outputs: outputs, + options: { + outputPath: `dist/apps/${projectName}`, + // + resourcesOutputPath: `resources`, + baseHref: "/", // project base href + index: index || undefined, + main: `apps/${projectName}/src/main.ts`, + polyfills: polyfills || undefined, + tsConfig: `apps/${projectName}/tsconfig.app.json`, + localize: i18n !== null ? ["en", ...i18n.locales] : undefined, + aot: aot || undefined, + buildOptimizer: buildOptimizer || undefined, + optimization: optimization !== null ? optimization : undefined, + budgets: budgets || undefined, + assets: [ + { + glob: "**/*", + input: "assets/default", + output: "assets" + } + ], + stylePreprocessorOptions: stylePreprocessorOptions || undefined, + styles: styles || undefined, + scripts: scripts || undefined, + vendorChunk: options.vendorChunk !== null ? options.vendorChunk : undefined, + extractLicenses: + options.extractLicenses !== null ? options.extractLicenses : undefined, + sourceMap: options.sourceMap !== null ? options.sourceMap : undefined, + namedChunks: options.namedChunks !== null ? options.namedChunks : undefined + }, + // BUILD CONFIGURATIONS + configurations: { + production: { + localize: + development.localize !== null ? development.localize : undefined, + optimization: + production.optimization !== null + ? production.optimization + : undefined, + extractLicenses: + production.extractLicenses !== null + ? production.extractLicenses + : undefined, + outputHashing: outputHashing !== null ? outputHashing : undefined, + sourceMap: + production.sourceMap !== null ? production.sourceMap : undefined, + namedChunks: + production.namedChunks !== null ? production.namedChunks : undefined, + inspect: inspect, + fileReplacements: fileReplacements + }, + development: { + localize: development.localize !== null ? development.localize : undefined + } + }, + defaultConfiguration: + defaultConfiguration !== null ? defaultConfiguration : undefined + }; }; const PROJECT_SERVE = (project) => { - if (project.serve === null) { - return undefined; - } - - const { title: projectName, serve = {} } = project; - const { - builder = '@angular-devkit/build-angular:dev-server', - options, - configurations = { - production: { - browserTarget: `${projectName}:build:production`, - }, - development: { - browserTarget: `${projectName}:build:development`, - }, - }, - defaultConfiguration = 'development', - } = serve; - - return { - builder: builder, - options: options || undefined, - // SERVE CONFIGURATIONS - configurations: configurations || undefined, - defaultConfiguration: - defaultConfiguration !== null ? defaultConfiguration : undefined, - }; + if (project.serve === null) { + return undefined; + } + + const { title: projectName, serve = {} } = project; + const { + builder = "@angular-devkit/build-angular:dev-server", + options, + configurations = { + production: { + browserTarget: `${projectName}:build:production` + }, + development: { + browserTarget: `${projectName}:build:development` + } + }, + defaultConfiguration = "development" + } = serve; + + return { + builder: builder, + options: options || undefined, + // SERVE CONFIGURATIONS + configurations: configurations || undefined, + defaultConfiguration: + defaultConfiguration !== null ? defaultConfiguration : undefined + }; }; const PROJECT_E2E = (project) => { - if (!project.e2e) { - return undefined; - } - - const { title: projectName, e2e } = project; - const { target } = e2e; - - return { - builder: '@nrwl/cypress:cypress', - options: { - cypressConfig: `apps/${projectName}/cypress.json`, - tsConfig: `apps/${projectName}/tsconfig.e2e.json`, - devServerTarget: `${target}:serve`, - }, - configurations: { - production: { - devServerTarget: `${target}:serve:production`, - }, - }, - }; + if (!project.e2e) { + return undefined; + } + + const { title: projectName, e2e } = project; + const { target } = e2e; + + return { + builder: "@nrwl/cypress:cypress", + options: { + cypressConfig: `apps/${projectName}/cypress.json`, + tsConfig: `apps/${projectName}/tsconfig.e2e.json`, + devServerTarget: `${target}:serve` + }, + configurations: { + production: { + devServerTarget: `${target}:serve:production` + } + } + }; }; const PROJECT_I18N = (project) => { - if (project.i18n === null) { - return undefined; - } - - const { i18n = {} } = project; - const { locales: projectLocales = [] } = i18n; - - const locales = {}; - - projectLocales.forEach( - (locale) => - (locales[locale] = { - translation: `i18n/locale/source.${locale}.xlf`, - // https://angular.io/guide/i18n#deploy-multiple-locales - // - baseHref: `/${locale}/`, // locale base href - }) - ); - - return { - sourceLocale: 'en', - locales, - }; + if (project.i18n === null) { + return undefined; + } + + const { i18n = {} } = project; + const { locales: projectLocales = [] } = i18n; + + const locales = {}; + + projectLocales.forEach( + (locale) => + (locales[locale] = { + translation: `i18n/locale/source.${locale}.xlf`, + // https://angular.io/guide/i18n#deploy-multiple-locales + // + baseHref: `/${locale}/` // locale base href + }) + ); + + return { + sourceLocale: "en", + locales + }; }; const PROJECT_EXTRACT_I18N = (project) => { - if (project.i18n === null) { - return undefined; - } - - const { title: projectName } = project; - - return { - builder: '@angular-devkit/build-angular:extract-i18n', - options: { - browserTarget: `${projectName}:build`, - outputPath: `i18n`, - outFile: `source.xlf`, - }, - }; + if (project.i18n === null) { + return undefined; + } + + const { title: projectName } = project; + + return { + builder: "@angular-devkit/build-angular:extract-i18n", + options: { + browserTarget: `${projectName}:build`, + outputPath: `i18n`, + outFile: `source.xlf` + } + }; }; const PROJECT_LINT = (project) => { - if (project.lint === null) { - return undefined; - } - - const { title: projectName, lint = {} } = project; - - const { options = {} } = lint; - - const { - lintFilePatterns = [ - `apps/${projectName}/src/**/*.ts`, - `apps/${projectName}/src/**/*.html`, - ], - } = options; - - return { - builder: '@nrwl/linter:eslint', - options: { - lintFilePatterns: lintFilePatterns, - }, - }; + if (project.lint === null) { + return undefined; + } + + const { title: projectName, lint = {} } = project; + + const { options = {} } = lint; + + const { + lintFilePatterns = [ + `apps/${projectName}/src/**/*.ts`, + `apps/${projectName}/src/**/*.html` + ] + } = options; + + return { + builder: "@nrwl/linter:eslint", + options: { + lintFilePatterns: lintFilePatterns + } + }; }; const PROJECT_TEST = (project) => { - if (project.test === null) { - return undefined; - } - - const { title: projectName } = project; - - return { - builder: '@nrwl/jest:jest', - options: { - jestConfig: `apps/${projectName}/jest.config.ts`, - passWithNoTests: true, - }, - outputs: [`coverage/apps/${projectName}`], - }; + if (project.test === null) { + return undefined; + } + + const { title: projectName } = project; + + return { + builder: "@nrwl/jest:jest", + options: { + jestConfig: `apps/${projectName}/jest.config.ts`, + passWithNoTests: true + }, + outputs: [`coverage/apps/${projectName}`] + }; }; const PROJECT_STORYBOOK = (project) => { - if (!project.storybook) { - return undefined; - } - - const { title: projectName, storybook } = project; - - return { - storybook: { - builder: '@nrwl/storybook:storybook', - options: { - uiFramework: '@storybook/angular', - port: 4400, - config: { - configFolder: `${storybook.folder}/${projectName}/.storybook`, - }, - }, - configurations: { - ci: { - quiet: true, + if (!project.storybook) { + return undefined; + } + + const { title: projectName, storybook } = project; + + return { + storybook: { + builder: "@nrwl/storybook:storybook", + options: { + uiFramework: "@storybook/angular", + port: 4400, + config: { + configFolder: `${storybook.folder}/${projectName}/.storybook` + } + }, + configurations: { + ci: { + quiet: true + } + } }, - }, - }, - 'build-storybook': { - builder: '@nrwl/storybook:build', - outputs: ['{options.outputPath}'], - options: { - uiFramework: '@storybook/angular', - outputPath: `dist/storybook/${projectName}`, - config: { - configFolder: `${storybook.folder}/${projectName}/.storybook`, - }, - }, - configurations: { - ci: { - quiet: true, - }, - }, - }, - }; + "build-storybook": { + builder: "@nrwl/storybook:build", + outputs: ["{options.outputPath}"], + options: { + uiFramework: "@storybook/angular", + outputPath: `dist/storybook/${projectName}`, + config: { + configFolder: `${storybook.folder}/${projectName}/.storybook` + } + }, + configurations: { + ci: { + quiet: true + } + } + } + }; }; const PROJECT_STRUCTURE = (project) => { - const { title: projectName, prefix = PREFIX, implicitDependencies } = project; - - ANGULAR_JSON.projects[projectName] = { - projectType: 'application', - root: `apps/${projectName}`, - sourceRoot: `apps/${projectName}/src`, - prefix: prefix !== null ? prefix : undefined, - i18n: PROJECT_I18N(project), - architect: { - build: PROJECT_BUILD(project), - serve: PROJECT_SERVE(project), - e2e: PROJECT_E2E(project), - 'extract-i18n': PROJECT_EXTRACT_I18N(project), - lint: PROJECT_LINT(project), - test: PROJECT_TEST(project), - }, - tags: [], - implicitDependencies: implicitDependencies || undefined, - }; + const { title: projectName, prefix = PREFIX, implicitDependencies } = project; + + ANGULAR_JSON.projects[projectName] = { + projectType: "application", + root: `apps/${projectName}`, + sourceRoot: `apps/${projectName}/src`, + prefix: prefix !== null ? prefix : undefined, + i18n: PROJECT_I18N(project), + architect: { + build: PROJECT_BUILD(project), + serve: PROJECT_SERVE(project), + e2e: PROJECT_E2E(project), + "extract-i18n": PROJECT_EXTRACT_I18N(project), + lint: PROJECT_LINT(project), + test: PROJECT_TEST(project) + }, + tags: [], + implicitDependencies: implicitDependencies || undefined + }; }; const GROUP_STRUCTURE = (group) => { - const { title: projectName, prefix = PREFIX } = group; - - ANGULAR_JSON.projects[projectName] = { - projectType: 'library', - root: `libs/${projectName}`, - sourceRoot: `libs/${projectName}/src`, - prefix: prefix, - architect: { - storybook: PROJECT_STORYBOOK(group) - ? PROJECT_STORYBOOK(group).storybook - : undefined, - 'build-storybook': PROJECT_STORYBOOK(group) - ? PROJECT_STORYBOOK(group)['build-storybook'] - : undefined, - }, - tags: [], - }; + const { title: projectName, prefix = PREFIX } = group; + + ANGULAR_JSON.projects[projectName] = { + projectType: "library", + root: `libs/${projectName}`, + sourceRoot: `libs/${projectName}/src`, + prefix: prefix, + architect: { + storybook: PROJECT_STORYBOOK(group) + ? PROJECT_STORYBOOK(group).storybook + : undefined, + "build-storybook": PROJECT_STORYBOOK(group) + ? PROJECT_STORYBOOK(group)["build-storybook"] + : undefined + }, + tags: [] + }; }; const COMPONENT_STRUCTURE = (component) => { - const { title: projectName, folder: root, prefix = PREFIX } = component; - - ANGULAR_JSON.projects[projectName] = { - projectType: 'library', - root: `libs/${root}`, - sourceRoot: `libs/${root}/src`, - prefix: prefix, - architect: { - lint: { - builder: '@nrwl/linter:eslint', - options: { - lintFilePatterns: [`libs/${root}/src/**/*.ts`, `libs/${root}/src/**/*.html`], - }, - }, - test: { - builder: '@nrwl/jest:jest', - options: { - jestConfig: `libs/${root}/jest.config.ts`, - passWithNoTests: true, + const { title: projectName, folder: root, prefix = PREFIX } = component; + + ANGULAR_JSON.projects[projectName] = { + projectType: "library", + root: `libs/${root}`, + sourceRoot: `libs/${root}/src`, + prefix: prefix, + architect: { + lint: { + builder: "@nrwl/linter:eslint", + options: { + lintFilePatterns: [ + `libs/${root}/src/**/*.ts`, + `libs/${root}/src/**/*.html` + ] + } + }, + test: { + builder: "@nrwl/jest:jest", + options: { + jestConfig: `libs/${root}/jest.config.ts`, + passWithNoTests: true + } + } }, - }, - }, - tags: [], - }; + tags: [] + }; }; // PROJECTS @@ -405,6 +416,6 @@ GROUPS.forEach(GROUP_STRUCTURE); COMPONENTS.sort((a, b) => (a.title > b.title ? 1 : -1)).forEach(COMPONENT_STRUCTURE); // PRINT -fs.writeFileSync('./angular.json', JSON.stringify(ANGULAR_JSON), 'utf-8'); +fs.writeFileSync("./angular.json", JSON.stringify(ANGULAR_JSON), "utf-8"); -console.log('\x1b[32m%s\x1b[0m', 'Angular.json generated successfully.'); +console.log("\x1b[32m%s\x1b[0m", "Angular.json generated successfully."); diff --git a/tools/generators/angular-json-configurator/components.js b/tools/generators/angular-json-configurator/components.js index a91a562..5b81ed3 100644 --- a/tools/generators/angular-json-configurator/components.js +++ b/tools/generators/angular-json-configurator/components.js @@ -55,6 +55,10 @@ const COMPONENTS = [ title: "ui-ui-modal", folder: "ui/ui-modal" }, + { + title: "ui-ui-submit-modal", + folder: "ui/ui-submit-modal" + }, { title: "ui-ui-slider", folder: "ui/ui-slider" diff --git a/tsconfig.base.json b/tsconfig.base.json index 4d8c8e7..0d1e00d 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -1,53 +1,60 @@ { - "compileOnSave": false, - "compilerOptions": { - "rootDir": ".", - "sourceMap": true, - "declaration": false, - "moduleResolution": "node", - "emitDecoratorMetadata": true, - "experimentalDecorators": true, - "importHelpers": true, - "target": "es2015", - "module": "esnext", - "lib": ["es2017", "dom"], - "skipLibCheck": true, - "skipDefaultLibCheck": true, - "baseUrl": ".", - "paths": { - "@s/flowers/pages/feature-about": ["libs/flowers/pages/feature-about/src/index.ts"], - "@s/flowers/pages/feature-dashboard": [ - "libs/flowers/pages/feature-dashboard/src/index.ts" - ], - "@s/flowers/pages/feature-delivery-confirmed": [ - "libs/flowers/pages/feature-delivery-confirmed/src/index.ts" - ], - "@s/flowers/pages/feature-delivery-reschedule-confirmed": [ - "libs/flowers/pages/feature-delivery-reschedule-confirmed/src/index.ts" - ], - "@s/flowers/pages/feature-home": ["libs/flowers/pages/feature-home/src/index.ts"], - "@s/flowers/pages/feature-order": ["libs/flowers/pages/feature-order/src/index.ts"], - "@s/flowers/pages/feature-payment-confirmed": [ - "libs/flowers/pages/feature-payment-confirmed/src/index.ts" - ], - "@s/shared/directives": ["libs/shared/directives/src/index.ts"], - "@s/shared/pages/feature-confirmed": [ - "libs/shared/pages/feature-confirmed/src/index.ts" - ], - "@s/shared/pages/feature-not-found": [ - "libs/shared/pages/feature-not-found/src/index.ts" - ], - "@s/theme": ["libs/theme/src/index.ts"], - "@s/ui": ["libs/ui/src/index.ts"], - "@s/ui/ui-content": ["libs/ui/ui-content/src/index.ts"], - "@s/ui/ui-fieldset": ["libs/ui/ui-fieldset/src/index.ts"], - "@s/ui/ui-footer": ["libs/ui/ui-footer/src/index.ts"], - "@s/ui/ui-header": ["libs/ui/ui-header/src/index.ts"], - "@s/ui/ui-modal": ["libs/ui/ui-modal/src/index.ts"], - "@s/ui/ui-slider": ["libs/ui/ui-slider/src/index.ts"], - "@s/ui/ui-tab": ["libs/ui/ui-tab/src/index.ts"], - "@s/ui/ui-tabs": ["libs/ui/ui-tabs/src/index.ts"] - } - }, - "exclude": ["node_modules", "tmp"] + "compileOnSave": false, + "compilerOptions": { + "rootDir": ".", + "sourceMap": true, + "declaration": false, + "moduleResolution": "node", + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "importHelpers": true, + "target": "es2015", + "module": "esnext", + "lib": ["es2017", "dom"], + "skipLibCheck": true, + "skipDefaultLibCheck": true, + "baseUrl": ".", + "paths": { + "@s/flowers/pages/feature-about": [ + "libs/flowers/pages/feature-about/src/index.ts" + ], + "@s/flowers/pages/feature-dashboard": [ + "libs/flowers/pages/feature-dashboard/src/index.ts" + ], + "@s/flowers/pages/feature-delivery-confirmed": [ + "libs/flowers/pages/feature-delivery-confirmed/src/index.ts" + ], + "@s/flowers/pages/feature-delivery-reschedule-confirmed": [ + "libs/flowers/pages/feature-delivery-reschedule-confirmed/src/index.ts" + ], + "@s/flowers/pages/feature-home": [ + "libs/flowers/pages/feature-home/src/index.ts" + ], + "@s/flowers/pages/feature-order": [ + "libs/flowers/pages/feature-order/src/index.ts" + ], + "@s/flowers/pages/feature-payment-confirmed": [ + "libs/flowers/pages/feature-payment-confirmed/src/index.ts" + ], + "@s/shared/directives": ["libs/shared/directives/src/index.ts"], + "@s/shared/pages/feature-confirmed": [ + "libs/shared/pages/feature-confirmed/src/index.ts" + ], + "@s/shared/pages/feature-not-found": [ + "libs/shared/pages/feature-not-found/src/index.ts" + ], + "@s/theme": ["libs/theme/src/index.ts"], + "@s/ui": ["libs/ui/src/index.ts"], + "@s/ui/ui-content": ["libs/ui/ui-content/src/index.ts"], + "@s/ui/ui-fieldset": ["libs/ui/ui-fieldset/src/index.ts"], + "@s/ui/ui-footer": ["libs/ui/ui-footer/src/index.ts"], + "@s/ui/ui-header": ["libs/ui/ui-header/src/index.ts"], + "@s/ui/ui-modal": ["libs/ui/ui-modal/src/index.ts"], + "@s/ui/ui-slider": ["libs/ui/ui-slider/src/index.ts"], + "@s/ui/ui-submit-modal": ["libs/ui/ui-submit-modal/src/index.ts"], + "@s/ui/ui-tab": ["libs/ui/ui-tab/src/index.ts"], + "@s/ui/ui-tabs": ["libs/ui/ui-tabs/src/index.ts"] + } + }, + "exclude": ["node_modules", "tmp"] }