]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: Improve typescript lint
authorTiago Melo <tmelo@suse.com>
Mon, 15 Jun 2020 13:28:59 +0000 (13:28 +0000)
committerTiago Melo <tmelo@suse.com>
Wed, 17 Jun 2020 17:41:30 +0000 (17:41 +0000)
Fixes: https://tracker.ceph.com/issues/46000
Signed-off-by: Tiago Melo <tmelo@suse.com>
90 files changed:
src/pybind/mgr/dashboard/frontend/angular.json
src/pybind/mgr/dashboard/frontend/src/app/app.module.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/iscsi-tabs/iscsi-tabs.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/iscsi-target-details/iscsi-target-details.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/mirroring/mirroring.module.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/mirroring/pool-list/pool-list.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-configuration-list/rbd-configuration-list.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-details/rbd-details.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-form/rbd-form.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-form/rbd-form.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-namespace-list/rbd-namespace-list.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-performance/rbd-performance.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cephfs/cephfs-chart/cephfs-chart.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cephfs/cephfs-tabs/cephfs-tabs.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/hosts/host-form/host-form.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/hosts/host-form/host-form.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/inventory/inventory-devices/inventory-devices.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/mgr-modules/mgr-module-list/mgr-module-list.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-creation-preview-modal/osd-creation-preview-modal.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-devices-selection-groups/osd-devices-selection-groups.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-devices-selection-modal/osd-devices-selection-modal.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-performance-histogram/osd-performance-histogram.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-scrub-modal/osd-scrub-modal.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/prometheus/active-alert-list/active-alert-list.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/prometheus/monitoring-list/monitoring-list.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/prometheus/silence-form/silence-form.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/prometheus/silence-list/silence-list.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/services/service-daemon-list/service-daemon-list.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/services/service-daemon-list/service-daemon-list.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/services/services.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/services/services.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/dashboard/dashboard/dashboard.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/dashboard/mgr-summary.pipe.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/dashboard/osd-summary.pipe.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/performance-counter/table-performance-counter/table-performance-counter.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-bucket-details/rgw-bucket-details.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-user-capability-modal/rgw-user-capability-modal.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-user-subuser-modal/rgw-user-subuser-modal.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/shared/device-list/device-list.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/shared/device-list/device-list.component.ts
src/pybind/mgr/dashboard/frontend/src/app/core/auth/user-tabs/user-tabs.component.ts
src/pybind/mgr/dashboard/frontend/src/app/core/forbidden/forbidden.component.ts
src/pybind/mgr/dashboard/frontend/src/app/core/layouts/blank-layout/blank-layout.component.ts
src/pybind/mgr/dashboard/frontend/src/app/core/layouts/login-layout/login-layout.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/core/navigation/about/about.component.ts
src/pybind/mgr/dashboard/frontend/src/app/core/navigation/administration/administration.component.ts
src/pybind/mgr/dashboard/frontend/src/app/core/not-found/not-found.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/api/erasure-code-profile.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/api/osd.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/api/user.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/alert-panel/alert-panel.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/confirmation-modal/confirmation-modal.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/helper/helper.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/language-selector/language-selector.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/loading-panel/loading-panel.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/modal/modal.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/notifications-sidebar/notifications-sidebar.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/orchestrator-doc-modal/orchestrator-doc-modal.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/refresh-selector/refresh-selector.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/select/select-messages.model.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/sparkline/sparkline.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/submit-button/submit-button.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/usage-bar/usage-bar.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/components/view-cache/view-cache.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/datatable/table-actions/table-actions.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/directives/copy2clipboard-button.directive.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/forms/cd-form-builder.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/models/cd-notification.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/boolean-text.pipe.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/dimless-binary-per-second.pipe.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/dimless-binary.pipe.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/dimless.pipe.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/iscsi-backstore.pipe.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/relative-date.pipe.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/api-interceptor.service.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/auth-storage.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/device.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/formatter.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/js-error-handler.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/language.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/ngzone-scheduler.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/notification.service.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/prometheus-alert-formatter.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/prometheus-silence-matcher.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/text-to-download.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/time-diff.service.ts
src/pybind/mgr/dashboard/frontend/src/testing/unit-test-helper.ts
src/pybind/mgr/dashboard/frontend/tslint.json

index 1972680ec6e5fdeaeb222a5dedd332bf2ee6098b..93769c34fac6926b54d4ad36c3a3d742d23acfa2 100644 (file)
           "options": {
             "tsConfig": [
               "src/tsconfig.app.json",
-              "tsconfig.spec.json"
+              "tsconfig.spec.json",
+              "cypress/tsconfig.json"
             ],
             "exclude": [
               "**/node_modules/**"
index fb930c95a8828d29ada2d37cc0f712a29dc2db52..5a48d7eefdde7b348796c1dc8da1d0e1e75b1463 100644 (file)
@@ -14,6 +14,7 @@ import { I18n } from '@ngx-translate/i18n-polyfill';
 import { NgBootstrapFormValidationModule } from 'ng-bootstrap-form-validation';
 import { ToastrModule } from 'ngx-toastr';
 
+import { environment } from '../environments/environment';
 import { AppRoutingModule } from './app-routing.module';
 import { AppComponent } from './app.component';
 import { CephModule } from './ceph/ceph.module';
@@ -22,8 +23,6 @@ import { ApiInterceptorService } from './shared/services/api-interceptor.service
 import { JsErrorHandler } from './shared/services/js-error-handler.service';
 import { SharedModule } from './shared/shared.module';
 
-import { environment } from '../environments/environment';
-
 export function jwtTokenGetter() {
   return localStorage.getItem('access_token');
 }
index 6f729bc83843c75b94d23f8c252cb59c1a94d17e..d4d21361bcdd58ed9487759970b73ff70ec02df3 100644 (file)
@@ -1,5 +1,4 @@
 import { Component } from '@angular/core';
-
 import { Router } from '@angular/router';
 
 @Component({
index 9a4c9c2612d37ff516d9d8e8fce4a9787861ca3e..4e0514e0c51024a505bd1cb7ca25c82d204d507b 100644 (file)
@@ -1,9 +1,9 @@
 import { ComponentFixture, TestBed } from '@angular/core/testing';
+import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
 
 import { TreeModel, TreeModule } from 'angular-tree-component';
 import * as _ from 'lodash';
 
-import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
 import { configureTestBed, i18nProviders } from '../../../../testing/unit-test-helper';
 import { SharedModule } from '../../../shared/shared.module';
 import { IscsiTargetDetailsComponent } from './iscsi-target-details.component';
index fda8c47dacf993311eebbdcb7d4bc7984549cba3..1992f3965661b8072be6d3964d268ffc5b08369d 100644 (file)
@@ -8,7 +8,6 @@ import { NgBootstrapFormValidationModule } from 'ng-bootstrap-form-validation';
 import { ModalModule } from 'ngx-bootstrap/modal';
 
 import { SharedModule } from '../../../shared/shared.module';
-
 import { BootstrapCreateModalComponent } from './bootstrap-create-modal/bootstrap-create-modal.component';
 import { BootstrapImportModalComponent } from './bootstrap-import-modal/bootstrap-import-modal.component';
 import { DaemonListComponent } from './daemon-list/daemon-list.component';
index e5a8f36666df7f67eb8b23234229b0cfabd96dbe..e40e1acd81c3099a3501b48cc80558c81f064da8 100644 (file)
@@ -1,8 +1,8 @@
 import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
+import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
 import { RouterTestingModule } from '@angular/router/testing';
 
-import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
 import { ToastrModule } from 'ngx-toastr';
 
 import { configureTestBed, i18nProviders } from '../../../../../testing/unit-test-helper';
index 75e3b0f027cb8e11cfb78ea2490201bc429a73ff..c63a76dccff0339a18f2e639bcece30fec63ca5e 100644 (file)
@@ -1,6 +1,7 @@
 import { Component, Input, OnChanges, OnInit, TemplateRef, ViewChild } from '@angular/core';
 
 import { I18n } from '@ngx-translate/i18n-polyfill';
+
 import { TableComponent } from '../../../shared/datatable/table/table.component';
 import { CdTableColumn } from '../../../shared/models/cd-table-column';
 import {
index 46f95d1449caaa78f3e646a80b3600a81a53303e..bd6938bbdb773525a8f09267460f84ded9709b56 100644 (file)
@@ -20,6 +20,4 @@ export class RbdDetailsComponent {
 
   @ViewChild(NgbNav, { static: true })
   nav: NgbNav;
-
-  constructor() {}
 }
index f0ba4ad48e4934c7d5b2e1c78633f0062f6c5b79..ce34f019a67e52729bbd491a07616fb64598c59e 100644 (file)
@@ -1,12 +1,11 @@
 import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { ComponentFixture, fakeAsync, TestBed, tick } from '@angular/core/testing';
 import { ReactiveFormsModule } from '@angular/forms';
+import { By } from '@angular/platform-browser';
 import { ActivatedRoute, Router } from '@angular/router';
 import { RouterTestingModule } from '@angular/router/testing';
 
 import { ToastrModule } from 'ngx-toastr';
-
-import { By } from '@angular/platform-browser';
 import { NEVER, of } from 'rxjs';
 import { delay } from 'rxjs/operators';
 
index 95d728ed02abe37f9f5326c0f0ff0a01cc75a898..09ac2d9e937f8bfa057bfc4e99946a715b3942bc 100644 (file)
@@ -4,7 +4,6 @@ import { ActivatedRoute, Router } from '@angular/router';
 
 import { I18n } from '@ngx-translate/i18n-polyfill';
 import * as _ from 'lodash';
-
 import { forkJoin, Observable, ReplaySubject } from 'rxjs';
 import { first, switchMap } from 'rxjs/operators';
 
@@ -728,7 +727,7 @@ export class RbdFormComponent extends CdForm implements OnInit {
         })
       )
       .subscribe(
-        () => {},
+        () => undefined,
         () => this.rbdForm.setErrors({ cdSubmitButton: true }),
         () => this.router.navigate(['/block/rbd'])
       );
index 80b0945f65d58a402671534267f749fddcdaa9de..50808a48718d7b0cba3d935502722be25523c69f 100644 (file)
@@ -1,10 +1,10 @@
 import { Component, OnInit } from '@angular/core';
 
 import { I18n } from '@ngx-translate/i18n-polyfill';
-import { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';
-
 import * as _ from 'lodash';
+import { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';
 import { forkJoin, Observable } from 'rxjs';
+
 import { PoolService } from '../../../shared/api/pool.service';
 import { RbdService } from '../../../shared/api/rbd.service';
 import { CriticalConfirmationModalComponent } from '../../../shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
index 3071f3a3d258f69b6407f3edb68e029df3aa9489..76750a8ceaad3e81fe61ecf050a605e872bbe3f4 100644 (file)
@@ -5,6 +5,4 @@ import { Component } from '@angular/core';
   templateUrl: './rbd-performance.component.html',
   styleUrls: ['./rbd-performance.component.scss']
 })
-export class RbdPerformanceComponent {
-  constructor() {}
-}
+export class RbdPerformanceComponent {}
index 8255b442713a53474ab348222c37b2b3a4999088..61dbc974fe1f81265f6b3a193211297bafc669fa 100644 (file)
@@ -102,8 +102,6 @@ export class CephfsChartComponent implements OnChanges, OnInit {
     chartType: 'line'
   };
 
-  constructor() {}
-
   ngOnInit() {
     if (_.isUndefined(this.mdsCounter)) {
       return;
index 55c4baef6be2e09813e1964ba8744f533eced55b..d165e589261e99e381bb002594d76b5d7cc9aa0c 100644 (file)
@@ -149,7 +149,7 @@ describe('CephfsTabsComponent', () => {
       data: [],
       status: ViewCacheStatus.ValueNone
     };
-    component['subscribeInterval'] = () => {};
+    component['subscribeInterval'] = () => undefined;
     updateData();
     expect(component.clients).not.toEqual(defaultClients);
     expect(component.details).not.toEqual(defaultDetails);
index d2a4dec9c7e544d793aceea9a3ff75bad5ff9702..7015108ad2a53c7600cb1964bf700fdbd2c2abc3 100644 (file)
@@ -1,10 +1,10 @@
+import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ReactiveFormsModule } from '@angular/forms';
+import { RouterTestingModule } from '@angular/router/testing';
 
 import { ToastrModule } from 'ngx-toastr';
 
-import { HttpClientTestingModule } from '@angular/common/http/testing';
-import { RouterTestingModule } from '@angular/router/testing';
 import { configureTestBed, i18nProviders } from '../../../../../testing/unit-test-helper';
 import { LoadingPanelComponent } from '../../../../shared/components/loading-panel/loading-panel.component';
 import { SharedModule } from '../../../../shared/shared.module';
index 1949338594a2af57e94b434deab99836099cae5d..43aaef199f9a52b33a581de5b7daaff08cb27f5f 100644 (file)
@@ -1,7 +1,9 @@
 import { Component, OnInit } from '@angular/core';
 import { FormControl, Validators } from '@angular/forms';
 import { Router } from '@angular/router';
+
 import { I18n } from '@ngx-translate/i18n-polyfill';
+
 import { HostService } from '../../../../shared/api/host.service';
 import { ActionLabelsI18n, URLVerbs } from '../../../../shared/constants/app.constants';
 import { CdForm } from '../../../../shared/forms/cd-form';
index 79744611fd7d8430e39813a5c9dbed9d226c7091..19d6e5cce081cdd359cb37712bba0fc24694bc61 100644 (file)
@@ -7,8 +7,8 @@ import {
   Output,
   ViewChild
 } from '@angular/core';
-import { I18n } from '@ngx-translate/i18n-polyfill';
 
+import { I18n } from '@ngx-translate/i18n-polyfill';
 import * as _ from 'lodash';
 import { BsModalService } from 'ngx-bootstrap/modal';
 import { Subscription } from 'rxjs';
index 75042749a92c255df5687364f1f3cb4efdba4eea..4db0f6fd1d832833ca728976d9bcd4dffe4c3de8 100644 (file)
@@ -191,7 +191,7 @@ export class MgrModuleListComponent extends ListWithDetails {
       $obs = this.mgrModuleService.enable(module.name);
     }
     $obs.subscribe(
-      () => {},
+      () => undefined,
       () => {
         // Suspend showing the notification toasties.
         this.notificationService.suspendToasties(true);
index eb8ded17349bbb97477f7b65c9b26f755b0644ed..ed911f5cf6e3d4ea33e37a7789ddc045e062e59c 100644 (file)
@@ -1,4 +1,4 @@
-import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
+import { Component, EventEmitter, Input, Output } from '@angular/core';
 
 import * as _ from 'lodash';
 import { BsModalRef } from 'ngx-bootstrap/modal';
@@ -15,7 +15,7 @@ import { TaskWrapperService } from '../../../../shared/services/task-wrapper.ser
   templateUrl: './osd-creation-preview-modal.component.html',
   styleUrls: ['./osd-creation-preview-modal.component.scss']
 })
-export class OsdCreationPreviewModalComponent implements OnInit {
+export class OsdCreationPreviewModalComponent {
   @Input()
   driveGroups: Object[] = [];
 
@@ -36,8 +36,6 @@ export class OsdCreationPreviewModalComponent implements OnInit {
     this.createForm();
   }
 
-  ngOnInit() {}
-
   createForm() {
     this.formGroup = this.formBuilder.group({});
   }
index aea4c17d9d87a5916e8cf53ecdc3d03133064841..9f21b2dc93d15f4487003339838d2766fd306ad8 100644 (file)
@@ -1,9 +1,9 @@
 import { Component, EventEmitter, Input, OnChanges, OnInit, Output } from '@angular/core';
-import { I18n } from '@ngx-translate/i18n-polyfill';
 
+import { I18n } from '@ngx-translate/i18n-polyfill';
 import * as _ from 'lodash';
-
 import { BsModalService, ModalOptions } from 'ngx-bootstrap/modal';
+
 import { Icons } from '../../../../shared/enum/icons.enum';
 import { CdTableColumnFiltersChange } from '../../../../shared/models/cd-table-column-filters-change';
 import { InventoryDevice } from '../../inventory/inventory-devices/inventory-device.model';
index 52da08a9c8ed0a77f061f07ac52ca4724de9e32e..5fb84e016922866d25cb88b62237b3c1509911b8 100644 (file)
@@ -1,9 +1,9 @@
 import { AfterViewInit, Component, EventEmitter, Output, ViewChild } from '@angular/core';
 
+import { TableColumnProp } from '@swimlane/ngx-datatable';
 import * as _ from 'lodash';
 import { BsModalRef } from 'ngx-bootstrap/modal';
 
-import { TableColumnProp } from '@swimlane/ngx-datatable';
 import { ActionLabelsI18n } from '../../../../shared/constants/app.constants';
 import { Icons } from '../../../../shared/enum/icons.enum';
 import { CdFormBuilder } from '../../../../shared/forms/cd-form-builder';
index f81d51c2c0055884ee21fa27d23e79fa023cf9ce..f7024f7238770679c96b1cfc7e1ede60c846c759 100644 (file)
@@ -13,8 +13,6 @@ export class OsdPerformanceHistogramComponent implements OnChanges {
   valuesStyle: any;
   last = {};
 
-  constructor() {}
-
   ngOnChanges() {
     this.render();
   }
index 319e86645694e72b05050258b6f007db33dc7bbe..a32e173678c91472b3a5f40c604b4ec75bd1ba3b 100644 (file)
@@ -3,6 +3,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ReactiveFormsModule } from '@angular/forms';
 
 import { BsModalRef } from 'ngx-bootstrap/modal';
+
 import { configureTestBed, i18nProviders } from '../../../../../testing/unit-test-helper';
 import { OsdService } from '../../../../shared/api/osd.service';
 import { JoinPipe } from '../../../../shared/pipes/join.pipe';
@@ -15,13 +16,13 @@ describe('OsdScrubModalComponent', () => {
 
   const fakeService = {
     list: () => {
-      return new Promise(() => {});
+      return new Promise(() => undefined);
     },
     scrub: () => {
-      return new Promise(() => {});
+      return new Promise(() => undefined);
     },
     scrub_many: () => {
-      return new Promise(() => {});
+      return new Promise(() => undefined);
     }
   };
 
index 0296f66486b2f2c25a4d19bb0a95649b07562798..7f08731d1eb1f1308af7ebf5cf7c58e55bcf0e7f 100644 (file)
@@ -1,5 +1,7 @@
 import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';
+
 import { I18n } from '@ngx-translate/i18n-polyfill';
+
 import { ListWithDetails } from '../../../../shared/classes/list-with-details.class';
 import { CellTemplate } from '../../../../shared/enum/cell-template.enum';
 import { Icons } from '../../../../shared/enum/icons.enum';
index bf0bf6c05672e9196c512b600ac5db66c0f4a0dc..6e0c85f349cd5cc8aefe89185e49f1d2ef024c18 100644 (file)
@@ -1,6 +1,5 @@
-import { async, ComponentFixture, TestBed } from '@angular/core/testing';
-
 import { HttpClientTestingModule } from '@angular/common/http/testing';
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
 
 import { ToastrModule } from 'ngx-toastr';
 
index d5ef6b35e6f596e2057b4a95e4a5227b391f490f..4f36ef92ad8f57f38ac85652e3d1bfcafc8f8a2e 100644 (file)
@@ -1,8 +1,8 @@
 import { Component } from '@angular/core';
 import { Validators } from '@angular/forms';
 import { ActivatedRoute, Router } from '@angular/router';
-import { I18n } from '@ngx-translate/i18n-polyfill';
 
+import { I18n } from '@ngx-translate/i18n-polyfill';
 import * as _ from 'lodash';
 import { BsModalService } from 'ngx-bootstrap/modal';
 
index 3d27ac484d90e8a6b91f28b4b947c4902def2b17..d2b36f6af75498d791d53d80301f244d1f2794ef 100644 (file)
@@ -1,7 +1,7 @@
 import { Component } from '@angular/core';
+
 import { I18n } from '@ngx-translate/i18n-polyfill';
 import { SortDirection, SortPropDir } from '@swimlane/ngx-datatable';
-
 import { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';
 import { Observable, Subscriber } from 'rxjs';
 
index b357903a364085b0cb8a6920005c0db54784f57d..20683f0d2849a924eb4e268acd2c6d2fd5170daa 100644 (file)
@@ -102,13 +102,13 @@ describe('ServiceDaemonListComponent', () => {
 
   it('should list daemons by host', () => {
     component.hostname = 'mon0';
-    component.getDaemons(new CdTableFetchDataContext(() => {}));
+    component.getDaemons(new CdTableFetchDataContext(() => undefined));
     expect(component.daemons.length).toBe(1);
   });
 
   it('should list daemons by service', () => {
     component.serviceName = 'osd';
-    component.getDaemons(new CdTableFetchDataContext(() => {}));
+    component.getDaemons(new CdTableFetchDataContext(() => undefined));
     expect(component.daemons.length).toBe(3);
   });
 });
index 43cf10de322ac46fee6b15bfdc1cf01a3195ce85..e27580132972f0feea3598d1e230d440de1dbafb 100644 (file)
@@ -10,11 +10,11 @@ import {
   ViewChild,
   ViewChildren
 } from '@angular/core';
-import { I18n } from '@ngx-translate/i18n-polyfill';
 
+import { I18n } from '@ngx-translate/i18n-polyfill';
 import * as _ from 'lodash';
-
 import { Observable, Subscription } from 'rxjs';
+
 import { CephServiceService } from '../../../../shared/api/ceph-service.service';
 import { HostService } from '../../../../shared/api/host.service';
 import { OrchestratorService } from '../../../../shared/api/orchestrator.service';
index d2e7470d1884bdaf0ec5dcd70b82c94ee602d98b..6a2f4d34377de99c35934ffdb130d92eadbf6fa7 100644 (file)
@@ -87,7 +87,7 @@ describe('ServicesComponent', () => {
   });
 
   it('should return all services', () => {
-    component.getServices(new CdTableFetchDataContext(() => {}));
+    component.getServices(new CdTableFetchDataContext(() => undefined));
     expect(component.services.length).toBe(2);
   });
 });
index c65407ece860c7c29fc0020c998a07c70ab6cba1..2eb5afbae51405d62101b5743da6dd32e094d914 100644 (file)
@@ -1,4 +1,5 @@
 import { Component, Input, OnChanges, OnInit, ViewChild } from '@angular/core';
+
 import { I18n } from '@ngx-translate/i18n-polyfill';
 
 import { CephServiceService } from '../../../shared/api/ceph-service.service';
index a495c8507dcf8a23a0dafd2ae23eccfce2da4dcd..0f0133512b07706eb461cc3297391e78e1ad6645 100644 (file)
@@ -11,7 +11,6 @@ import { of as observableOf } from 'rxjs';
 import { configureTestBed, i18nProviders } from '../../../../testing/unit-test-helper';
 import { MgrModuleService } from '../../../shared/api/mgr-module.service';
 import { TelemetryService } from '../../../shared/api/telemetry.service';
-
 import { LoadingPanelComponent } from '../../../shared/components/loading-panel/loading-panel.component';
 import { TextToDownloadService } from '../../../shared/services/text-to-download.service';
 import { SharedModule } from '../../../shared/shared.module';
index 7d0b4244b65d0bacd6acacecc14b0182342b8a2a..354e3890359657279488c0be4bb92c5c9d0ba5e3 100644 (file)
@@ -1,14 +1,10 @@
-import { Component, OnInit } from '@angular/core';
+import { Component } from '@angular/core';
 
 @Component({
   selector: 'cd-dashboard',
   templateUrl: './dashboard.component.html',
   styleUrls: ['./dashboard.component.scss']
 })
-export class DashboardComponent implements OnInit {
+export class DashboardComponent {
   hasGrafana = false; // TODO: Temporary var, remove when grafana is implemented
-
-  constructor() {}
-
-  ngOnInit() {}
 }
index d9d0cba7330c63ef54083dd2b43d6e021775ceb6..84dea63359253c276a29afe5714472e5784f1bd3 100644 (file)
@@ -1,7 +1,6 @@
 import { TestBed } from '@angular/core/testing';
 
 import { configureTestBed, i18nProviders } from '../../../testing/unit-test-helper';
-
 import { MgrSummaryPipe } from './mgr-summary.pipe';
 
 describe('MgrSummaryPipe', () => {
index 0de9c21f9cfa0c606e5fef4128b0a4d2bc4ef9a5..20914d52a553224fc6158e96d730bacf104011c6 100644 (file)
@@ -1,4 +1,5 @@
 import { TestBed } from '@angular/core/testing';
+
 import { configureTestBed, i18nProviders } from '../../../testing/unit-test-helper';
 import { OsdSummaryPipe } from './osd-summary.pipe';
 
index f6c2d7a71b4e6c984031bdf9cc17ed2cb6c75559..ae369f28281ab09256b9fe50d0bba24a38dc841f 100644 (file)
@@ -33,7 +33,7 @@ describe('TablePerformanceCounterComponent', () => {
   });
 
   describe('Error handling', () => {
-    const context = new CdTableFetchDataContext(() => {});
+    const context = new CdTableFetchDataContext(() => undefined);
 
     beforeEach(() => {
       spyOn(context, 'error');
index 48f2554003826c8d7dc8883ac3239b12ef2776ff..63c93492008463c991eff3a8466e5de8b51057cf 100644 (file)
@@ -8,6 +8,4 @@ import { Component, Input } from '@angular/core';
 export class RgwBucketDetailsComponent {
   @Input()
   selection: any;
-
-  constructor() {}
 }
index 7666fc85eccfd37239276b3e644614b0cca3c5c4..50001eda91f228b304357643debc80bcb454ee04 100644 (file)
@@ -1,10 +1,10 @@
 import { Component, EventEmitter, Output } from '@angular/core';
 import { Validators } from '@angular/forms';
 
+import { I18n } from '@ngx-translate/i18n-polyfill';
 import * as _ from 'lodash';
 import { BsModalRef } from 'ngx-bootstrap/modal';
 
-import { I18n } from '@ngx-translate/i18n-polyfill';
 import { ActionLabelsI18n } from '../../../shared/constants/app.constants';
 import { CdFormBuilder } from '../../../shared/forms/cd-form-builder';
 import { CdFormGroup } from '../../../shared/forms/cd-form-group';
index 03a4b95e79e8111c8495e8dfa6cb4d966588103e..04623f8c26d3bb960657ed984d102bce4c3f8fe8 100644 (file)
@@ -1,10 +1,10 @@
 import { Component, EventEmitter, Output } from '@angular/core';
 import { AbstractControl, ValidationErrors, ValidatorFn, Validators } from '@angular/forms';
 
+import { I18n } from '@ngx-translate/i18n-polyfill';
 import * as _ from 'lodash';
 import { BsModalRef } from 'ngx-bootstrap/modal';
 
-import { I18n } from '@ngx-translate/i18n-polyfill';
 import { ActionLabelsI18n } from '../../../shared/constants/app.constants';
 import { CdFormBuilder } from '../../../shared/forms/cd-form-builder';
 import { CdFormGroup } from '../../../shared/forms/cd-form-group';
index 63aa7755bf6b814e3c44ec10971e30353f9fac0b..ff3156d8a36e2b2d3a4dfc0c909e8a1fd46bffe2 100644 (file)
@@ -1,8 +1,8 @@
 import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
 import { i18nProviders } from '../../../../testing/unit-test-helper';
 import { SharedModule } from '../../../shared/shared.module';
-
 import { DeviceListComponent } from './device-list.component';
 
 describe('DeviceListComponent', () => {
index d16ee7cbe8d38d7d7328d80af5417b508b6bf3de..2465d29c2168374f952a8fcc6a069bd28794f7c3 100644 (file)
@@ -1,6 +1,8 @@
 import { DatePipe } from '@angular/common';
 import { Component, Input, OnInit, TemplateRef, ViewChild } from '@angular/core';
+
 import { I18n } from '@ngx-translate/i18n-polyfill';
+
 import { HostService } from '../../../shared/api/host.service';
 import { OsdService } from '../../../shared/api/osd.service';
 import { CellTemplate } from '../../../shared/enum/cell-template.enum';
index a143c1670fcb4ed51b47eb7a394b2fdec335b441..06626ec3e96cfca8148b1cbc877bc679b91d5ed2 100644 (file)
@@ -1,5 +1,4 @@
 import { Component } from '@angular/core';
-
 import { Router } from '@angular/router';
 
 @Component({
index 45bd73c908983cc88047b083904607b5cef26a17..81fffbc63074d115ddef990ee3195b780a5cd803 100644 (file)
@@ -1,4 +1,5 @@
 import { Component } from '@angular/core';
+
 import { Icons } from '../../shared/enum/icons.enum';
 
 @Component({
@@ -8,5 +9,4 @@ import { Icons } from '../../shared/enum/icons.enum';
 })
 export class ForbiddenComponent {
   icons = Icons;
-  constructor() {}
 }
index a0fef8e4a411cad82c5d573996f29b3e1a237fce..761bb3b87422bc34bcba4442264a52dda2b07755 100644 (file)
@@ -5,6 +5,4 @@ import { Component } from '@angular/core';
   templateUrl: './blank-layout.component.html',
   styleUrls: ['./blank-layout.component.scss']
 })
-export class BlankLayoutComponent {
-  constructor() {}
-}
+export class BlankLayoutComponent {}
index bd8a5ec1db295a387a3f3deca71601b86f001c7f..47d85eff322eb785b587dcd3a343d40b4da044db 100644 (file)
@@ -1,10 +1,10 @@
 import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { async, ComponentFixture, TestBed } from '@angular/core/testing';
 import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
+import { RouterTestingModule } from '@angular/router/testing';
 
 import { BsDatepickerModule } from 'ngx-bootstrap/datepicker';
 
-import { RouterTestingModule } from '@angular/router/testing';
 import { SharedModule } from '../../../shared/shared.module';
 import { LoginLayoutComponent } from './login-layout.component';
 
index 231929933fe8512004cc67c76eb1fab83b023a3d..6b77c8f94ee3f4a4054372cdcfba13ca3ae3fd05 100644 (file)
@@ -3,6 +3,7 @@ import { Component, OnDestroy, OnInit } from '@angular/core';
 import { detect } from 'detect-browser';
 import { BsModalRef } from 'ngx-bootstrap/modal';
 import { Subscription } from 'rxjs';
+
 import { environment } from '../../../../environments/environment';
 import { UserService } from '../../../shared/api/user.service';
 import { AppConstants } from '../../../shared/constants/app.constants';
index 4d08bbe06eb7ac2afc557fbc8cd5851f180b1acf..cbdae392259b87c968c1d31516ab12ebddc1a477 100644 (file)
@@ -1,4 +1,4 @@
-import { Component, OnInit } from '@angular/core';
+import { Component } from '@angular/core';
 
 import { Icons } from '../../../shared/enum/icons.enum';
 import { Permission } from '../../../shared/models/permissions';
@@ -9,7 +9,7 @@ import { AuthStorageService } from '../../../shared/services/auth-storage.servic
   templateUrl: './administration.component.html',
   styleUrls: ['./administration.component.scss']
 })
-export class AdministrationComponent implements OnInit {
+export class AdministrationComponent {
   userPermission: Permission;
   configOptPermission: Permission;
   icons = Icons;
@@ -19,6 +19,4 @@ export class AdministrationComponent implements OnInit {
     this.userPermission = permissions.user;
     this.configOptPermission = permissions.configOpt;
   }
-
-  ngOnInit() {}
 }
index d12bc32100de2f2b456261fea6328cecea83d729..1b8d6b807dc233799ebfdf49e872b57d8d4b03db 100644 (file)
@@ -5,6 +5,4 @@ import { Component } from '@angular/core';
   templateUrl: './not-found.component.html',
   styleUrls: ['./not-found.component.scss']
 })
-export class NotFoundComponent {
-  constructor() {}
-}
+export class NotFoundComponent {}
index a8c414f3c06be389866074d15c1cf6a5f752d80b..c452779c683a5db3cfea37f06e5a5ca566aa20fe 100644 (file)
@@ -1,9 +1,9 @@
 import { HttpClient } from '@angular/common/http';
 import { Injectable } from '@angular/core';
 
+import { I18n } from '@ngx-translate/i18n-polyfill';
 import { Observable } from 'rxjs';
 
-import { I18n } from '@ngx-translate/i18n-polyfill';
 import { ErasureCodeProfile } from '../models/erasure-code-profile';
 import { ApiModule } from './api.module';
 
index 8d6369a21623317288a1ca908f2216412292543e..f35fad2748a70210e3abd0c8334cdbbad7c2a7ad 100644 (file)
@@ -2,9 +2,9 @@ import { HttpClient, HttpParams } from '@angular/common/http';
 import { Injectable } from '@angular/core';
 
 import { I18n } from '@ngx-translate/i18n-polyfill';
+import * as _ from 'lodash';
 import { map } from 'rxjs/operators';
 
-import * as _ from 'lodash';
 import { CdDevice } from '../models/devices';
 import { SmartDataResponseV1 } from '../models/smart';
 import { DeviceService } from '../services/device.service';
index c0b7acdb6de5ffb2da6fa10f7c36559ee89958bc..ba35c061429374f42235bb63ef6d7efebb79aff7 100644 (file)
@@ -1,5 +1,6 @@
 import { HttpClient, HttpParams } from '@angular/common/http';
 import { Injectable } from '@angular/core';
+
 import { Observable, of as observableOf } from 'rxjs';
 import { catchError, mapTo } from 'rxjs/operators';
 
index 10e0801e8ea076ed22aeb424343d0d1402a5bdc8..d457a0ed7efe2c5be947e3d14b15e533a014b9a9 100644 (file)
@@ -1,5 +1,7 @@
 import { Component, Input, OnInit } from '@angular/core';
+
 import { I18n } from '@ngx-translate/i18n-polyfill';
+
 import { Icons } from '../../enum/icons.enum';
 
 @Component({
index 77c5b153e514e02b7899bb836f65ad2b673dc0bd..d64a56d146058cb5f9891f41e844abcb7bb7d8cf 100644 (file)
@@ -1,11 +1,11 @@
 import { Component, NgModule, NO_ERRORS_SCHEMA, TemplateRef, ViewChild } from '@angular/core';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ReactiveFormsModule } from '@angular/forms';
+import { By } from '@angular/platform-browser';
 import { RouterTestingModule } from '@angular/router/testing';
 
 import { BsModalRef, BsModalService, ModalModule } from 'ngx-bootstrap/modal';
 
-import { By } from '@angular/platform-browser';
 import {
   configureTestBed,
   FixtureHelper,
index 227f260c67c1de41d798b892b1c4783e9e290107..e1f6b28f5a781022eb3c80b452876bf84e0edb4d 100644 (file)
@@ -1,4 +1,5 @@
 import { Component, Input } from '@angular/core';
+
 import { Icons } from '../../../shared/enum/icons.enum';
 
 @Component({
@@ -14,6 +15,4 @@ export class HelperComponent {
   html: any;
 
   icons = Icons;
-
-  constructor() {}
 }
index 57753f17f4d102d87359cd8dd45a9eea851fa84a..b895bc3c2a0c2b2565100400dd6ee9e1db0f0079 100644 (file)
@@ -1,10 +1,10 @@
+import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { FormsModule } from '@angular/forms';
 
 import { listLocales } from 'ngx-bootstrap/chronos';
 import { BsLocaleService } from 'ngx-bootstrap/datepicker';
 
-import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { configureTestBed } from '../../../../testing/unit-test-helper';
 import { LanguageSelectorComponent } from './language-selector.component';
 
index 656e234c5d471543a5017cbd1c6747347b6714ff..47cc5d74566836bbbc228fd29018621a6d09455d 100644 (file)
@@ -17,8 +17,6 @@ export class ModalComponent {
   @Output()
   hide = new EventEmitter();
 
-  constructor() {}
-
   close() {
     if (this.modalRef) {
       this.modalRef.hide();
index f75b00f99da183012a3fa07cc415f5494962e72b..fa3790b18fbb2b250344b84e97c893b26e522b29 100644 (file)
@@ -1,5 +1,6 @@
 import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { ComponentFixture, fakeAsync, TestBed, tick } from '@angular/core/testing';
+import { NoopAnimationsModule } from '@angular/platform-browser/animations';
 import { RouterTestingModule } from '@angular/router/testing';
 
 import { NgbProgressbarModule } from '@ng-bootstrap/ng-bootstrap';
@@ -7,7 +8,6 @@ import { ClickOutsideModule } from 'ng-click-outside';
 import { ToastrModule } from 'ngx-toastr';
 import { SimplebarAngularModule } from 'simplebar-angular';
 
-import { NoopAnimationsModule } from '@angular/platform-browser/animations';
 import { configureTestBed, i18nProviders } from '../../../../testing/unit-test-helper';
 import { PrometheusService } from '../../api/prometheus.service';
 import { RbdService } from '../../api/rbd.service';
index 91463bfbea1bcb94435d490443657c5e6d69bb3e..e008edff634651bc2fcf9e12d461dd7f44d37824 100644 (file)
@@ -1,4 +1,4 @@
-import { Component, OnInit } from '@angular/core';
+import { Component } from '@angular/core';
 
 import { BsModalRef } from 'ngx-bootstrap/modal';
 
@@ -7,14 +7,12 @@ import { BsModalRef } from 'ngx-bootstrap/modal';
   templateUrl: './orchestrator-doc-modal.component.html',
   styleUrls: ['./orchestrator-doc-modal.component.scss']
 })
-export class OrchestratorDocModalComponent implements OnInit {
+export class OrchestratorDocModalComponent {
   actionDescription: string;
   itemDescription: string;
 
   constructor(public bsModalRef: BsModalRef) {}
 
-  ngOnInit() {}
-
   onSubmit() {
     this.bsModalRef.hide();
   }
index 87389fcc09007a44028c80d41d32f8602224601e..b8a438b3e4d8edbeb8fc8043e3f4e7725981f41b 100644 (file)
@@ -2,7 +2,6 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { FormsModule } from '@angular/forms';
 
 import { configureTestBed } from '../../../../testing/unit-test-helper';
-
 import { RefreshIntervalService } from '../../services/refresh-interval.service';
 import { RefreshSelectorComponent } from './refresh-selector.component';
 
index 94f8c997df1f3039a2dbfd7b5ea2aaeb9a9f9f78..3f1f9fd264f97efc152101692f13e66c09e62b05 100644 (file)
@@ -1,5 +1,4 @@
 import { I18n } from '@ngx-translate/i18n-polyfill';
-
 import * as _ from 'lodash';
 
 export class SelectMessages {
index 3a477f06589dd5e837051b04c5a66d6235f1d143..ce9e9968f43de3f43b17a97d211b56f50c1a738e 100644 (file)
@@ -1,5 +1,12 @@
-import { Component, ElementRef, OnChanges, OnInit, SimpleChanges, ViewChild } from '@angular/core';
-import { Input } from '@angular/core';
+import {
+  Component,
+  ElementRef,
+  Input,
+  OnChanges,
+  OnInit,
+  SimpleChanges,
+  ViewChild
+} from '@angular/core';
 
 import { ChartTooltip } from '../../models/chart-tooltip';
 import { DimlessBinaryPipe } from '../../pipes/dimless-binary.pipe';
index 1ef6cb2ffb5160cfe50ea88e217d26b212380970..0d4d0e770b10c96371f4b1f1cb0bcdcaa1d5382d 100644 (file)
@@ -1,9 +1,10 @@
 import { Component, ElementRef, EventEmitter, Input, OnInit, Output } from '@angular/core';
 import { AbstractControl, FormGroup, FormGroupDirective, NgForm } from '@angular/forms';
-import { Icons } from '../../../shared/enum/icons.enum';
 
 import * as _ from 'lodash';
 
+import { Icons } from '../../../shared/enum/icons.enum';
+
 /**
  * This component will render a submit button with the given label.
  *
index e8b4ddc148eedb7012ffb39bdd4422c94e1a2701..789e41cb4d6a50b23a22d53e2d0858e9ed6bd0c1 100644 (file)
@@ -15,8 +15,6 @@ export class UsageBarComponent implements OnChanges {
   freePercentage: number;
   freeBytes: number;
 
-  constructor() {}
-
   ngOnChanges() {
     this.usedPercentage = Math.round((this.usedBytes / this.totalBytes) * 100);
     this.freePercentage = 100 - this.usedPercentage;
index 7370b07ae8b652a816aa254b0dc974fc5dee1043..ff669a0a1f447808f23b1c68110e0be8f4dd6708 100644 (file)
@@ -1,4 +1,4 @@
-import { Component, Input, OnInit } from '@angular/core';
+import { Component, Input } from '@angular/core';
 
 import { ViewCacheStatus } from '../../enum/view-cache-status.enum';
 
@@ -7,14 +7,10 @@ import { ViewCacheStatus } from '../../enum/view-cache-status.enum';
   templateUrl: './view-cache.component.html',
   styleUrls: ['./view-cache.component.scss']
 })
-export class ViewCacheComponent implements OnInit {
+export class ViewCacheComponent {
   @Input()
   status: ViewCacheStatus;
   @Input()
   statusFor: string;
   vcs = ViewCacheStatus;
-
-  constructor() {}
-
-  ngOnInit() {}
 }
index 57714dbae6b14d48eb90cc59084e1592deeb68a9..4f34fc574be75156c9bee44475e4624ad6061373 100644 (file)
@@ -33,8 +33,6 @@ export class TableActionsComponent implements OnInit {
 
   icons = Icons;
 
-  constructor() {}
-
   ngOnInit() {
     this.removeActionsWithNoPermissions();
     this.updateDropDownActions();
index 91d76151950822095ef88cefb1d186d1a43da8bb..ff5218acb70fdbd3b68329b2fe2c150504e6a4d9 100644 (file)
@@ -1,6 +1,6 @@
 import { Directive, ElementRef, HostListener, Input, OnInit, Renderer2 } from '@angular/core';
-import { I18n } from '@ngx-translate/i18n-polyfill';
 
+import { I18n } from '@ngx-translate/i18n-polyfill';
 import { ToastrService } from 'ngx-toastr';
 
 @Directive({
index 07e7f00d8973dc433d2ea57fc6c93db116dc00d3..188294b82efd48d4e064f2ca81fb93695f67f756 100644 (file)
@@ -1,4 +1,5 @@
 import { Validators } from '@angular/forms';
+
 import { CdFormBuilder } from './cd-form-builder';
 import { CdFormGroup } from './cd-form-group';
 
index 3c8c078893252416ec3f160186507d09a8144860..da06cd3df8a79035e9bfa87e79a531ce9ea7f77d 100644 (file)
@@ -1,4 +1,5 @@
 import { IndividualConfig } from 'ngx-toastr';
+
 import { Icons } from '../enum/icons.enum';
 import { NotificationType } from '../enum/notification-type.enum';
 
index df6b49293966af1dbb181964933d544b51cac52e..5293059e75d8c3d78a1b619b8d863672e1eaf112 100644 (file)
@@ -1,8 +1,8 @@
 import { TestBed } from '@angular/core/testing';
-import { configureTestBed, i18nProviders } from '../../../testing/unit-test-helper';
 
 import { I18n } from '@ngx-translate/i18n-polyfill';
 
+import { configureTestBed, i18nProviders } from '../../../testing/unit-test-helper';
 import { BooleanTextPipe } from './boolean-text.pipe';
 
 describe('BooleanTextPipe', () => {
index 67faad2b402282f99feee16cf747040b514fc944..21b59631789bf738a2313c66dd1f42d7681fc4f4 100644 (file)
@@ -1,4 +1,5 @@
 import { Pipe, PipeTransform } from '@angular/core';
+
 import { FormatterService } from '../services/formatter.service';
 
 @Pipe({
index 493696ef9311987c145cbb4727cee8aeb66550d1..cf5d2cdec24b13eff1c65f26fe7688e54c803c78 100644 (file)
@@ -1,4 +1,5 @@
 import { Pipe, PipeTransform } from '@angular/core';
+
 import { FormatterService } from '../services/formatter.service';
 
 @Pipe({
index 18994bd12bddcc28d099e738d0e724a12cf7f866..1be11590dc4a7f980a78e03867301503c0fe3a53 100644 (file)
@@ -1,4 +1,5 @@
 import { Pipe, PipeTransform } from '@angular/core';
+
 import { FormatterService } from '../services/formatter.service';
 
 @Pipe({
index ae347b6f69bee8b1576b6655a643d2550bfac5b6..19a0d66c196bb63ac0723a83d83d4c77d5834629 100644 (file)
@@ -4,8 +4,6 @@ import { Pipe, PipeTransform } from '@angular/core';
   name: 'iscsiBackstore'
 })
 export class IscsiBackstorePipe implements PipeTransform {
-  constructor() {}
-
   transform(value: any): any {
     switch (value) {
       case 'user:rbd':
index 3ebc389eb22193dfb65b52bcb1aa3a8839f3e32b..c9e536c903434d006d77aeca184c256a328d837e 100644 (file)
@@ -6,8 +6,6 @@ import * as moment from 'moment';
   name: 'relativeDate'
 })
 export class RelativeDatePipe implements PipeTransform {
-  constructor() {}
-
   transform(value: any): any {
     if (!value) {
       return 'unknown';
index 6ed7153ac6af72733a9b6a6bf844dfb0cb6798cc..9467cc3f7baf31417b9782984022365149cd83c7 100644 (file)
@@ -19,9 +19,9 @@ describe('ApiInterceptorService', () => {
   let router: Router;
   const url = 'api/xyz';
 
-  const httpError = (error: any, errorOpts: object, done = (_resp: any) => {}) => {
+  const httpError = (error: any, errorOpts: object, done = (_resp: any): any => undefined) => {
     httpClient.get(url).subscribe(
-      () => {},
+      () => true,
       (resp) => {
         // Error must have been forwarded by the interceptor.
         expect(resp instanceof HttpErrorResponse).toBeTruthy();
index fcc24cf5b957eda0196377622299ee4060b86357..5752f78c28afffaafe0f1296f3213a33834fdd85 100644 (file)
@@ -11,8 +11,6 @@ export class AuthStorageService {
   isPwdDisplayedSource = new BehaviorSubject(false);
   isPwdDisplayed$ = this.isPwdDisplayedSource.asObservable();
 
-  constructor() {}
-
   set(
     username: string,
     token: string,
index b83982fb8dccaed22710f31c98f9813f2ddd7a87..f81467f3825a0abfba5668de1d8000b956ab2ff1 100644 (file)
@@ -8,8 +8,6 @@ import { CdDevice } from '../models/devices';
   providedIn: 'root'
 })
 export class DeviceService {
-  constructor() {}
-
   /**
    * Calculates additional data and appends them as new attributes to the given device.
    */
index 67d6a17b0bfe1a8aadd33c809f0532735506bc81..1377dcdd2c220fdf1565886c560fd82f973e3053 100644 (file)
@@ -6,8 +6,6 @@ import * as _ from 'lodash';
   providedIn: 'root'
 })
 export class FormatterService {
-  constructor() {}
-
   format_number(n: any, divisor: number, units: string[], decimals: number = 1): string {
     if (_.isString(n)) {
       n = Number(n);
index 597e259f856ada9744d433ff8c16f65387238cf7..f7c45aa78ac7b949bed9b03fcda358465692a41a 100644 (file)
@@ -1,4 +1,5 @@
 import { ErrorHandler, Injectable, Injector } from '@angular/core';
+
 import { LoggingService } from '../api/logging.service';
 
 @Injectable()
index 438817103ea03da540128802055c10456745669f..bdb26d2df2b7f5e17ab2f89a5303242b79047856 100644 (file)
@@ -1,6 +1,5 @@
 import { HttpClient } from '@angular/common/http';
-import { Inject, LOCALE_ID } from '@angular/core';
-import { Injectable } from '@angular/core';
+import { Inject, Injectable, LOCALE_ID } from '@angular/core';
 
 import { environment } from '../../../environments/environment';
 
index a39c6464810dbd0ff3e983ec408297599a4e87f0..a2c6b6c95d54001372674e105d1ceb1b5b1622bd 100644 (file)
@@ -1,4 +1,5 @@
 import { Injectable, NgZone } from '@angular/core';
+
 import { asyncScheduler, SchedulerLike, Subscription } from 'rxjs';
 
 abstract class NgZoneScheduler implements SchedulerLike {
index 9d3fdc56356ee423222ea1e20e8619f8256463b5..fa235acefc611da655faf0fd5701c84a4bf07630 100644 (file)
@@ -1,9 +1,9 @@
+import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { fakeAsync, TestBed, tick } from '@angular/core/testing';
 
 import * as _ from 'lodash';
 import { ToastrService } from 'ngx-toastr';
 
-import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { configureTestBed, i18nProviders } from '../../../testing/unit-test-helper';
 import { RbdService } from '../api/rbd.service';
 import { NotificationType } from '../enum/notification-type.enum';
index 02a7baefad32f3c3da1db5ad744ba7a3853c848c..ee76530ecc58584e1e5570c698486ef55b0572d4 100644 (file)
@@ -1,8 +1,8 @@
+import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { TestBed } from '@angular/core/testing';
 
 import { ToastrModule } from 'ngx-toastr';
 
-import { HttpClientTestingModule } from '@angular/common/http/testing';
 import {
   configureTestBed,
   i18nProviders,
index 548dd00c56542d4fc1f32b4cb5d00507d6f8ac25..dbd0da04eb167c6654a01dc0c4dce00ac6b9965f 100644 (file)
@@ -1,8 +1,8 @@
 import { Injectable } from '@angular/core';
 
+import { I18n } from '@ngx-translate/i18n-polyfill';
 import * as _ from 'lodash';
 
-import { I18n } from '@ngx-translate/i18n-polyfill';
 import {
   AlertmanagerSilenceMatcher,
   AlertmanagerSilenceMatcherMatch
index 192e46d39dd3bf0394cdac4bd5b218915711b5f2..9d037aecb9b55ea644536af8f6734cdc76dd3ad1 100644 (file)
@@ -1,8 +1,8 @@
+import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { TestBed } from '@angular/core/testing';
 
 import * as _ from 'lodash';
 
-import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { configureTestBed, i18nProviders } from '../../../testing/unit-test-helper';
 import { RbdService } from '../api/rbd.service';
 import { FinishedTask } from '../models/finished-task';
index bcfb3abaaf0d0d7b0d819b37705d3296664c17a5..6e63287eab3b265052fe9bb322faeaad52542305 100644 (file)
@@ -6,8 +6,6 @@ import { saveAs } from 'file-saver';
   providedIn: 'root'
 })
 export class TextToDownloadService {
-  constructor() {}
-
   download(downloadText: string, filename?: string) {
     saveAs(new Blob([downloadText]), filename);
   }
index 8d3079a251cc30218f985a2266ed4b8134f2c295..16fd45a4a49e0bdaf4904411482455f5debab99f 100644 (file)
@@ -6,8 +6,6 @@ import * as _ from 'lodash';
   providedIn: 'root'
 })
 export class TimeDiffService {
-  constructor() {}
-
   calculateDuration(startDate: Date, endDate: Date): string {
     const startTime = +startDate;
     const endTime = +endDate;
index 8045147f5b1f4a1677b3afc844dddb1eb4cd4b44..9ca18108182271129311cc63e64d3272eb1e4ed0 100644 (file)
@@ -4,11 +4,11 @@ import { AbstractControl } from '@angular/forms';
 import { By } from '@angular/platform-browser';
 import { BrowserDynamicTestingModule } from '@angular/platform-browser-dynamic/testing';
 
+import { NgbNav, NgbNavItem } from '@ng-bootstrap/ng-bootstrap';
 import { I18n } from '@ngx-translate/i18n-polyfill';
 import { configureTestSuite } from 'ng-bullet';
 import { BsModalRef } from 'ngx-bootstrap/modal';
 
-import { NgbNav, NgbNavItem } from '@ng-bootstrap/ng-bootstrap';
 import { TableActionsComponent } from '../app/shared/datatable/table-actions/table-actions.component';
 import { Icons } from '../app/shared/enum/icons.enum';
 import { CdFormGroup } from '../app/shared/forms/cd-form-group';
index 59bc6bcd1790707d8954877d0bf5001b49774fbe..75dd53c502707aee72ff15c0e168a5aebc8be932 100644 (file)
@@ -7,6 +7,9 @@
     "class-name": true,
     "comment-format": [true, "check-space"],
     "curly": true,
+    "deprecation": {
+      "severity": "warning"
+    },
     "eofline": true,
     "forin": true,
     "import-blacklist": [true, "rxjs/Rx", "ngx-bootstrap"],
@@ -27,7 +30,8 @@
     "no-construct": true,
     "no-debugger": true,
     "no-duplicate-super": true,
-    "no-empty": false,
+    "no-duplicate-imports": [true, { "allow-namespace-imports": true }],
+    "no-empty": [true, "allow-empty-catch"],
     "no-empty-interface": true,
     "no-eval": true,
     "no-inferrable-types": [true, "ignore-params"],
     "directive-class-suffix": true,
     "no-forward-ref": true,
     "no-output-native": true,
-    "ordered-imports": true
+    "ordered-imports": [
+      true,
+      {
+        "grouped-imports": true,
+        "groups": [
+          {
+            "name": "angular",
+            "match": "^@angular",
+            "order": 1
+          },
+          {
+            "name": "relative dir",
+            "match": "^([.]|src/).*",
+            "order": 3
+          },
+          {
+            "name": "node_modules",
+            "match": ".*",
+            "order": 2
+          }
+        ]
+      }
+    ]
   },
   "jsRules": { "no-empty": true }
 }