diff --git a/zeppelin-web-angular/.eslintrc.json b/zeppelin-web-angular/.eslintrc.json deleted file mode 100644 index 50793bb947c..00000000000 --- a/zeppelin-web-angular/.eslintrc.json +++ /dev/null @@ -1,139 +0,0 @@ -{ - "extends": ["prettier"], - "root": true, - "ignorePatterns": ["node_modules/**/*", "projects/**/*"], - "overrides": [ - { - "files": ["*.ts"], - "parserOptions": { - "project": true, - "createDefaultProgram": true - }, - "extends": [ - "plugin:@angular-eslint/ng-cli-compat", - "plugin:@angular-eslint/ng-cli-compat--formatting-add-on", - "plugin:@angular-eslint/template/process-inline-templates" - ], - "rules": { - "@angular-eslint/component-selector": [ - "error", - { - "type": ["element", "attribute"], - "prefix": ["zeppelin"], - "style": "kebab-case" - } - ], - "@angular-eslint/directive-selector": [ - "error", - { - "type": "attribute", - "prefix": ["zeppelin"], - "style": "kebab-case" - } - ], - "@angular-eslint/no-forward-ref": "off", - "@angular-eslint/prefer-output-readonly": "error", - "@typescript-eslint/adjacent-overload-signatures": "off", - "@typescript-eslint/array-type": "off", - "@typescript-eslint/ban-tslint-comment": "off", - "@typescript-eslint/class-literal-property-style": "off", - "@typescript-eslint/consistent-generic-constructors": "off", - "@typescript-eslint/consistent-indexed-object-style": "off", - "@typescript-eslint/consistent-type-assertions": "off", - "@typescript-eslint/consistent-type-definitions": "off", - "@typescript-eslint/no-confusing-non-null-assertion": "off", - "@typescript-eslint/no-empty-function": "off", - "@typescript-eslint/no-inferrable-types": "off", - "@typescript-eslint/prefer-for-of": "off", - "@typescript-eslint/prefer-function-type": "off", - "@typescript-eslint/member-delimiter-style": "off", - "@typescript-eslint/semi": "off", - "@typescript-eslint/type-annotation-spacing": "off", - "@typescript-eslint/ban-types": [ - "error", - { - "types": { - "Object": { - "message": "Use {} instead." - }, - "String": { - "message": "Use string instead." - }, - "Number": { - "message": "Use number instead." - }, - "Boolean": { - "message": "Use boolean instead." - }, - "Function": { - "message": "Use specific callable interface instead." - } - } - } - ], - "@typescript-eslint/member-ordering": "warn", - "@typescript-eslint/explicit-member-accessibility": [ - "off", - { - "accessibility": "explicit" - } - ], - "@typescript-eslint/no-explicit-any": "error", - "@typescript-eslint/no-floating-promises": "off", - "@typescript-eslint/no-for-in-array": "error", - "@typescript-eslint/naming-convention": "off", - "@typescript-eslint/no-non-null-assertion": "off", - "@typescript-eslint/no-this-alias": "error", - "@typescript-eslint/no-unused-vars": [ - "error", - { - "argsIgnorePattern": "^_", - "varsIgnorePattern": "^_" - } - ], - "@typescript-eslint/quotes": "off", - "eol-last": "off", - "import/no-cycle": "error", - "import/no-deprecated": "off", - "import/no-unassigned-import": "error", - "import/order": "error", - "jsdoc/newline-after-description": "off", - "max-len": "off", - "new-parens": "off", - "no-bitwise": "off", - "no-duplicate-imports": "error", - "no-invalid-this": "error", - "no-irregular-whitespace": "error", - "no-magic-numbers": "off", - "no-param-reassign": "error", - "no-redeclare": "error", - "no-sparse-arrays": "error", - "no-template-curly-in-string": "error", - "no-trailing-spaces": "off", - "no-underscore-dangle": "off", - "prefer-arrow/prefer-arrow-functions": "warn", - "prefer-object-spread": "error", - "prefer-template": "error", - "quote-props": "off", - "space-before-function-paren": "off", - "yoda": "error" - } - }, - { - "files": ["*.js"], - "parserOptions": { - "ecmaVersion": "latest", - "sourceType": "module" - }, - "env": { - "node": true, - "es6": true - } - }, - { - "files": ["*.html"], - "extends": ["plugin:@angular-eslint/template/recommended"], - "rules": {} - } - ] -} diff --git a/zeppelin-web-angular/.nvmrc b/zeppelin-web-angular/.nvmrc index 4851dc7197a..5ed27e77578 100644 --- a/zeppelin-web-angular/.nvmrc +++ b/zeppelin-web-angular/.nvmrc @@ -8,4 +8,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -18.20.8 +22.21.1 diff --git a/zeppelin-web-angular/angular.json b/zeppelin-web-angular/angular.json index dbd234a7ff7..089cc07ce6b 100644 --- a/zeppelin-web-angular/angular.json +++ b/zeppelin-web-angular/angular.json @@ -126,7 +126,7 @@ "serve": { "builder": "@angular-builders/custom-webpack:dev-server", "options": { - "browserTarget": "zeppelin:build", + "buildTarget": "zeppelin:build", "port": 4200, "host": "localhost", "liveReload": true, @@ -134,10 +134,10 @@ }, "configurations": { "production": { - "browserTarget": "zeppelin:build:production" + "buildTarget": "zeppelin:build:production" }, "development": { - "browserTarget": "zeppelin:build:development" + "buildTarget": "zeppelin:build:development" } }, "defaultConfiguration": "development" @@ -145,7 +145,7 @@ "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { - "browserTarget": "zeppelin:build" + "buildTarget": "zeppelin:build" } }, "lint": { @@ -199,8 +199,16 @@ } } }, - "defaultProject": "zeppelin", "cli": { - "defaultCollection": "@angular-eslint/schematics" + "schematicCollections": ["@angular-eslint/schematics"], + "analytics": false + }, + "schematics": { + "@angular-eslint/schematics:application": { + "setParserOptionsProject": true + }, + "@angular-eslint/schematics:library": { + "setParserOptionsProject": true + } } } diff --git a/zeppelin-web-angular/e2e/models/header-page.ts b/zeppelin-web-angular/e2e/models/header-page.ts index 2f5c1c496fc..0a17045eecb 100644 --- a/zeppelin-web-angular/e2e/models/header-page.ts +++ b/zeppelin-web-angular/e2e/models/header-page.ts @@ -101,6 +101,27 @@ export class HeaderPage extends BasePage { await this.userMenuItems.configuration.click(); } + /** The