diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml index 755a3711..7ff71318 100644 --- a/.github/workflows/build-test.yml +++ b/.github/workflows/build-test.yml @@ -34,15 +34,17 @@ jobs: key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | ${{ runner.os }}- - - uses: pnpm/action-setup@v2.0.1 - with: - version: 6.18.0 - name: Setup node ${{ matrix.node-version }} uses: actions/setup-node@v1 with: node-version: ${{ matrix.node-version }} - - run: yarn install --frozen-lockfile - - run: yarn build - - run: yarn format:check --base=remotes/origin/main + - name: Install dependencies + uses: pnpm/action-setup@v2.0.1 + with: + version: 6.24.3 + run_install: | + - args: [--frozen-lockfile, --strict-peer-dependencies] + - run: pnpm run build + - run: pnpm run format:check -- --base=remotes/origin/main # - run: yarn affected:test --base=remotes/origin/main - - run: yarn affected:e2e --base=remotes/origin/main + - run: pnpm run affected:e2e -- --base=remotes/origin/main diff --git a/.gitignore b/.gitignore index ee5c9d83..84c8d4f0 100644 --- a/.gitignore +++ b/.gitignore @@ -25,6 +25,7 @@ !.vscode/extensions.json # misc +/.angular/cache /.sass-cache /connect.lock /coverage diff --git a/.husky/pre-commit b/.husky/pre-commit index d2ae35e8..fab6428a 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,4 +1,4 @@ #!/bin/sh . "$(dirname "$0")/_/husky.sh" -yarn lint-staged +pnpm lint-staged diff --git a/.lintstagedrc b/.lintstagedrc index 01527470..79b7c31d 100644 --- a/.lintstagedrc +++ b/.lintstagedrc @@ -1,5 +1,5 @@ { "*.{js,json,yaml,yml,css,scss,md,ts,html,graphql}": [ - "yarn format" + "pnpm run format" ] } diff --git a/.prettierignore b/.prettierignore index a3276136..537dd2f3 100644 --- a/.prettierignore +++ b/.prettierignore @@ -4,3 +4,4 @@ coverage tmp /libs/sdk/src/generated/g libs/themes/src/vendor .github/*.md +.pnpm-store diff --git a/e2e/stack-e2e/lib/testing.ts b/e2e/stack-e2e/lib/testing.ts index d6da69d3..cdcdf8c4 100644 --- a/e2e/stack-e2e/lib/testing.ts +++ b/e2e/stack-e2e/lib/testing.ts @@ -57,7 +57,7 @@ export function patchDistProjects(paths: ProjectDistPath[]): void { for (const pkg of paths) { const absDistPath = `file:/${getAbsPath(pkg.path)}` if (packageDeps[pkg.package] && packageDeps[pkg.package] !== absDistPath) { - // console.log(` In ${path.package} => Update ${pkg.package} => ${absDistPath}`) + console.log(` In ${path.package} => Update ${pkg.package} => ${absDistPath}`) packageDeps[pkg.package] = absDistPath } } diff --git a/nx.json b/nx.json index a24e8f38..9a9607b3 100644 --- a/nx.json +++ b/nx.json @@ -15,7 +15,8 @@ "runner": "@nrwl/nx-cloud", "options": { "cacheableOperations": ["build", "lint", "test", "e2e"], - "accessToken": "MWYxY2VmZmUtMGQxOS00NGU3LWFhOTctMTE3ZWIxM2Y1MDExfHJlYWQtd3JpdGU=" + "accessToken": "MWYxY2VmZmUtMGQxOS00NGU3LWFhOTctMTE3ZWIxM2Y1MDExfHJlYWQtd3JpdGU=", + "parallel": 3 } } }, diff --git a/package.json b/package.json index 941ef321..42a3375f 100644 --- a/package.json +++ b/package.json @@ -29,43 +29,50 @@ }, "private": true, "dependencies": { - "@schematics/angular": "^12.2.11", - "nxpm": "^1.18.0", + "@angular/core": "13.1.1", + "@schematics/angular": "^12.2.13", "tslib": "^2.0.0" }, "devDependencies": { - "@nrwl/angular": "13.0.1", - "@nrwl/cli": "13.0.1", - "@nrwl/devkit": "13.0.1", - "@nrwl/eslint-plugin-nx": "13.0.1", - "@nrwl/jest": "13.0.1", - "@nrwl/linter": "13.0.1", - "@nrwl/nest": "13.0.1", - "@nrwl/node": "13.0.1", - "@nrwl/nx-cloud": "12.5.0", - "@nrwl/nx-plugin": "13.0.1", - "@nrwl/tao": "13.0.1", - "@nrwl/workspace": "13.0.1", + "@angular/cli": "13.1.2", + "@babel/core": "^7.0.1", + "@babel/preset-env": "^7.0.0", + "@nrwl/angular": "13.4.6", + "@nrwl/cli": "13.4.6", + "@nrwl/devkit": "13.4.6", + "@nrwl/eslint-plugin-nx": "13.4.6", + "@nrwl/jest": "13.4.6", + "@nrwl/linter": "13.4.6", + "@nrwl/nest": "13.4.6", + "@nrwl/node": "13.4.6", + "@nrwl/nx-cloud": "13.0.3", + "@nrwl/nx-plugin": "13.4.6", + "@nrwl/tao": "13.4.6", + "@nrwl/workspace": "13.4.6", "@nxtend/capacitor": "^12.0.0-beta.1", "@nxtend/ionic-angular": "^12.0.0-beta.1", "@types/jest": "27.0.2", "@types/node": "14.14.33", - "@typescript-eslint/eslint-plugin": "4.31.2", - "@typescript-eslint/parser": "4.31.2", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "^8.0.2", "chalk": "^4.1.2", "dotenv": "10.0.0", - "eslint": "7.22.0", + "eslint": "8.2.0", "eslint-config-prettier": "8.1.0", "fs-extra": "^10.0.0", "husky": "^7.0.1", "jest": "27.2.3", "lint-staged": "^11.0.1", "prettier": "^2.3.1", + "rxjs": "^6.5.3", "ts-jest": "27.0.5", "ts-node": "~9.1.1", "tslib": "^2.0.0", - "typescript": "4.3.5", + "typescript": "4.5.4", + "webpack": "^5.0.0", "yaml": "^1.10.2", - "yargs": "^17.2.1" + "yargs": "^17.2.1", + "zone.js": "~0.11.4" } } diff --git a/packages/api/tsconfig.lib.json b/packages/api/tsconfig.lib.json index 037d796f..6efdbeec 100644 --- a/packages/api/tsconfig.lib.json +++ b/packages/api/tsconfig.lib.json @@ -6,6 +6,6 @@ "declaration": true, "types": ["node"] }, - "exclude": ["**/*.spec.ts"], + "exclude": ["**/*.spec.ts", "**/*.test.ts"], "include": ["**/*.ts"] } diff --git a/packages/api/tsconfig.spec.json b/packages/api/tsconfig.spec.json index 515f3c22..68296441 100644 --- a/packages/api/tsconfig.spec.json +++ b/packages/api/tsconfig.spec.json @@ -5,5 +5,15 @@ "module": "commonjs", "types": ["jest", "node"] }, - "include": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js", "**/*.spec.jsx", "**/*.d.ts"] + "include": [ + "**/*.spec.ts", + "**/*.test.ts", + "**/*.spec.tsx", + "**/*.test.tsx", + "**/*.spec.js", + "**/*.test.js", + "**/*.spec.jsx", + "**/*.test.jsx", + "**/*.d.ts" + ] } diff --git a/packages/cli/tsconfig.lib.json b/packages/cli/tsconfig.lib.json index 037d796f..6efdbeec 100644 --- a/packages/cli/tsconfig.lib.json +++ b/packages/cli/tsconfig.lib.json @@ -6,6 +6,6 @@ "declaration": true, "types": ["node"] }, - "exclude": ["**/*.spec.ts"], + "exclude": ["**/*.spec.ts", "**/*.test.ts"], "include": ["**/*.ts"] } diff --git a/packages/cli/tsconfig.spec.json b/packages/cli/tsconfig.spec.json index 515f3c22..68296441 100644 --- a/packages/cli/tsconfig.spec.json +++ b/packages/cli/tsconfig.spec.json @@ -5,5 +5,15 @@ "module": "commonjs", "types": ["jest", "node"] }, - "include": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js", "**/*.spec.jsx", "**/*.d.ts"] + "include": [ + "**/*.spec.ts", + "**/*.test.ts", + "**/*.spec.tsx", + "**/*.test.tsx", + "**/*.spec.js", + "**/*.test.js", + "**/*.spec.jsx", + "**/*.test.jsx", + "**/*.d.ts" + ] } diff --git a/packages/common/src/helpers/normalize-schema.helper.ts b/packages/common/src/helpers/normalize-schema.helper.ts index f3d5fd67..2041c906 100644 --- a/packages/common/src/helpers/normalize-schema.helper.ts +++ b/packages/common/src/helpers/normalize-schema.helper.ts @@ -1,13 +1,13 @@ -import { ProjectType, readJson, Tree } from '@nrwl/devkit' +import { names, ProjectType, readJson, Tree } from '@nrwl/devkit' import { AppTypeApi, AppTypeMobile, AppTypeWeb, BaseSchema, NormalizedSchema } from '../interfaces' -import { projectRootDir, toFileName } from '@nrwl/workspace' +import { projectRootDir } from '@nrwl/workspace' export function normalizeOptions( host: Tree, options: T, projectType?: ProjectType, ): NormalizedSchema { - const name = toFileName(options?.name || '') + const name = names(options?.name || '').fileName const nxJson = readJson(host, 'nx.json') const appNameApi = options.apiName || 'api' @@ -39,7 +39,7 @@ export function normalizeOptions( return baseResult } - const projectDirectory = options.directory ? `${toFileName(options.directory)}/${name}` : name + const projectDirectory = options.directory ? `${names(options.directory).fileName}/${name}` : name const projectName = projectDirectory?.replace(new RegExp('/', 'g'), '-') const projectRoot = `${projectRootDir(projectType as any)}/${projectDirectory}` const parsedTags: string[] = options.tags ? options.tags?.split(',').map((s) => s.trim()) : [] diff --git a/packages/common/tsconfig.lib.json b/packages/common/tsconfig.lib.json index 037d796f..6efdbeec 100644 --- a/packages/common/tsconfig.lib.json +++ b/packages/common/tsconfig.lib.json @@ -6,6 +6,6 @@ "declaration": true, "types": ["node"] }, - "exclude": ["**/*.spec.ts"], + "exclude": ["**/*.spec.ts", "**/*.test.ts"], "include": ["**/*.ts"] } diff --git a/packages/common/tsconfig.spec.json b/packages/common/tsconfig.spec.json index 515f3c22..68296441 100644 --- a/packages/common/tsconfig.spec.json +++ b/packages/common/tsconfig.spec.json @@ -5,5 +5,15 @@ "module": "commonjs", "types": ["jest", "node"] }, - "include": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js", "**/*.spec.jsx", "**/*.d.ts"] + "include": [ + "**/*.spec.ts", + "**/*.test.ts", + "**/*.spec.tsx", + "**/*.test.tsx", + "**/*.spec.js", + "**/*.test.js", + "**/*.spec.jsx", + "**/*.test.jsx", + "**/*.d.ts" + ] } diff --git a/packages/mobile/src/generators/mobile-lib/generator-mobile-lib.ts b/packages/mobile/src/generators/mobile-lib/generator-mobile-lib.ts index 5a9eb3bf..2e30d009 100644 --- a/packages/mobile/src/generators/mobile-lib/generator-mobile-lib.ts +++ b/packages/mobile/src/generators/mobile-lib/generator-mobile-lib.ts @@ -1,5 +1,5 @@ -import { formatFiles, Tree } from '@nrwl/devkit' import { libraryGenerator } from '@nrwl/angular/generators' +import { Tree } from '@nrwl/devkit' import { addFiles, normalizeOptions } from '@nxpm/common' import { MobileLibGeneratorSchema } from './schema' @@ -8,9 +8,9 @@ export async function generatorMobileLib(host: Tree, options: MobileLibGenerator await libraryGenerator(host, { ...options, name: options.name, + skipFormat: true, }) if (files) { addFiles(host, normalizedOptions, files) } - await formatFiles(host) } diff --git a/packages/mobile/tsconfig.lib.json b/packages/mobile/tsconfig.lib.json index 037d796f..6efdbeec 100644 --- a/packages/mobile/tsconfig.lib.json +++ b/packages/mobile/tsconfig.lib.json @@ -6,6 +6,6 @@ "declaration": true, "types": ["node"] }, - "exclude": ["**/*.spec.ts"], + "exclude": ["**/*.spec.ts", "**/*.test.ts"], "include": ["**/*.ts"] } diff --git a/packages/mobile/tsconfig.spec.json b/packages/mobile/tsconfig.spec.json index 515f3c22..68296441 100644 --- a/packages/mobile/tsconfig.spec.json +++ b/packages/mobile/tsconfig.spec.json @@ -5,5 +5,15 @@ "module": "commonjs", "types": ["jest", "node"] }, - "include": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js", "**/*.spec.jsx", "**/*.d.ts"] + "include": [ + "**/*.spec.ts", + "**/*.test.ts", + "**/*.spec.tsx", + "**/*.test.tsx", + "**/*.spec.js", + "**/*.test.js", + "**/*.spec.jsx", + "**/*.test.jsx", + "**/*.d.ts" + ] } diff --git a/packages/stack/src/generators/shared-utils/files/sdk/src/generated/graphql.ts__tmpl__ b/packages/stack/src/generators/shared-utils/files/sdk/src/generated/graphql.ts__tmpl__ index d2369c5d..46afdbc7 100644 --- a/packages/stack/src/generators/shared-utils/files/sdk/src/generated/graphql.ts__tmpl__ +++ b/packages/stack/src/generators/shared-utils/files/sdk/src/generated/graphql.ts__tmpl__ @@ -1,3 +1,4 @@ +// @ts-nocheck import { gql } from 'apollo-angular' import { Injectable } from '@angular/core' import * as Apollo from 'apollo-angular' diff --git a/packages/stack/tsconfig.lib.json b/packages/stack/tsconfig.lib.json index 037d796f..6efdbeec 100644 --- a/packages/stack/tsconfig.lib.json +++ b/packages/stack/tsconfig.lib.json @@ -6,6 +6,6 @@ "declaration": true, "types": ["node"] }, - "exclude": ["**/*.spec.ts"], + "exclude": ["**/*.spec.ts", "**/*.test.ts"], "include": ["**/*.ts"] } diff --git a/packages/stack/tsconfig.spec.json b/packages/stack/tsconfig.spec.json index 515f3c22..68296441 100644 --- a/packages/stack/tsconfig.spec.json +++ b/packages/stack/tsconfig.spec.json @@ -5,5 +5,15 @@ "module": "commonjs", "types": ["jest", "node"] }, - "include": ["**/*.spec.ts", "**/*.spec.tsx", "**/*.spec.js", "**/*.spec.jsx", "**/*.d.ts"] + "include": [ + "**/*.spec.ts", + "**/*.test.ts", + "**/*.spec.tsx", + "**/*.test.tsx", + "**/*.spec.js", + "**/*.test.js", + "**/*.spec.jsx", + "**/*.test.jsx", + "**/*.d.ts" + ] } diff --git a/packages/web/src/generators/web-lib/generator-web-lib.ts b/packages/web/src/generators/web-lib/generator-web-lib.ts index 51677927..05b3ebf3 100644 --- a/packages/web/src/generators/web-lib/generator-web-lib.ts +++ b/packages/web/src/generators/web-lib/generator-web-lib.ts @@ -13,9 +13,10 @@ export async function generatorWebLib( await libraryGenerator(host, { ...options, name: options.name, + skipFormat: true, }) if (files) { addFiles(host, normalizedOptions, files, extraOptions) } - await formatFiles(host) + // await formatFiles(host) } diff --git a/packages/web/src/generators/web-ui/files/form/src/lib/types/checkbox/ui-form-checkbox.component.ts__tmpl__ b/packages/web/src/generators/web-ui/files/form/src/lib/types/checkbox/ui-form-checkbox.component.ts__tmpl__ index 783eb06b..7b352c32 100644 --- a/packages/web/src/generators/web-ui/files/form/src/lib/types/checkbox/ui-form-checkbox.component.ts__tmpl__ +++ b/packages/web/src/generators/web-ui/files/form/src/lib/types/checkbox/ui-form-checkbox.component.ts__tmpl__ @@ -10,16 +10,16 @@ import { FieldType } from '@ngx-formly/core' type="checkbox" class="focus:ring-pink-500 h-4 w-4 text-pink-600 border-gray-300 dark:bg-gray-800 dark:border-gray-600 rounded" [class.is-invalid]="showError" - [class.static]="to.formCheck === 'nolabel'" - [indeterminate]="to.indeterminate && formControl.value == null" + [class.static]="to['formCheck'] === 'nolabel'" + [indeterminate]="to['indeterminate'] && formControl.value == null" [formControl]="formControl" [formlyAttributes]="field" />
-
@@ -27,8 +27,8 @@ import { FieldType } from '@ngx-formly/core' changeDetection: ChangeDetectionStrategy.OnPush, }) export class UiFormCheckboxComponent extends FieldType { - formControl!: FormControl - defaultOptions = { + override formControl!: FormControl + override defaultOptions = { templateOptions: { indeterminate: true, hideLabel: true, diff --git a/packages/web/src/generators/web-ui/files/form/src/lib/types/input/ui-form-input.component.ts__tmpl__ b/packages/web/src/generators/web-ui/files/form/src/lib/types/input/ui-form-input.component.ts__tmpl__ index 576f0292..005b43eb 100644 --- a/packages/web/src/generators/web-ui/files/form/src/lib/types/input/ui-form-input.component.ts__tmpl__ +++ b/packages/web/src/generators/web-ui/files/form/src/lib/types/input/ui-form-input.component.ts__tmpl__ @@ -26,7 +26,7 @@ import { FieldType } from '@ngx-formly/core' `, }) export class UiFormInputComponent extends FieldType { - formControl!: FormControl + override formControl!: FormControl get type(): string { return this.to.type || 'text' diff --git a/packages/web/src/generators/web-ui/files/form/src/lib/types/multicheckbox/ui-form-multicheckbox.component.ts__tmpl__ b/packages/web/src/generators/web-ui/files/form/src/lib/types/multicheckbox/ui-form-multicheckbox.component.ts__tmpl__ index 98650874..a2583cff 100644 --- a/packages/web/src/generators/web-ui/files/form/src/lib/types/multicheckbox/ui-form-multicheckbox.component.ts__tmpl__ +++ b/packages/web/src/generators/web-ui/files/form/src/lib/types/multicheckbox/ui-form-multicheckbox.component.ts__tmpl__ @@ -32,8 +32,8 @@ import { FieldType } from '@ngx-formly/core' changeDetection: ChangeDetectionStrategy.OnPush, }) export class UiFormMulticheckboxComponent extends FieldType { - formControl!: FormControl - defaultOptions = { + override formControl!: FormControl + override defaultOptions = { templateOptions: { options: [], }, diff --git a/packages/web/src/generators/web-ui/files/form/src/lib/types/radio/ui-form-radio.component.ts__tmpl__ b/packages/web/src/generators/web-ui/files/form/src/lib/types/radio/ui-form-radio.component.ts__tmpl__ index 42d2f732..4ac42f39 100644 --- a/packages/web/src/generators/web-ui/files/form/src/lib/types/radio/ui-form-radio.component.ts__tmpl__ +++ b/packages/web/src/generators/web-ui/files/form/src/lib/types/radio/ui-form-radio.component.ts__tmpl__ @@ -29,8 +29,8 @@ import { FieldType } from '@ngx-formly/core' changeDetection: ChangeDetectionStrategy.OnPush, }) export class UiFormRadioComponent extends FieldType { - formControl!: FormControl - defaultOptions = { + override formControl!: FormControl + override defaultOptions = { templateOptions: { options: [], }, diff --git a/packages/web/src/generators/web-ui/files/form/src/lib/types/select/ui-form-select.component.ts__tmpl__ b/packages/web/src/generators/web-ui/files/form/src/lib/types/select/ui-form-select.component.ts__tmpl__ index ac5e44a8..40941c80 100644 --- a/packages/web/src/generators/web-ui/files/form/src/lib/types/select/ui-form-select.component.ts__tmpl__ +++ b/packages/web/src/generators/web-ui/files/form/src/lib/types/select/ui-form-select.component.ts__tmpl__ @@ -6,17 +6,17 @@ import { take } from 'rxjs/operators' @Component({ template: `