diff --git a/admin/src/app/workbasket/details/workbasket-details.component.spec.ts b/admin/src/app/workbasket/details/workbasket-details.component.spec.ts
index 44c4dfcdc..6326b8427 100644
--- a/admin/src/app/workbasket/details/workbasket-details.component.spec.ts
+++ b/admin/src/app/workbasket/details/workbasket-details.component.spec.ts
@@ -49,13 +49,16 @@ describe('WorkbasketDetailsComponent', () => {
let debugElement;
let masterAndDetailService;
let workbasketService;
- let workbasket = new Workbasket('1', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', new Links({ 'href': 'someurl' }, { 'href': 'someurl' }, { 'href': 'someurl' }));
+ const workbasket = new Workbasket('1', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
+ new Links({ 'href': 'someurl' }, { 'href': 'someurl' }, { 'href': 'someurl' }));
beforeEach(async(() => {
TestBed.configureTestingModule({
imports: [RouterTestingModule, FormsModule, AngularSvgIconModule, HttpClientModule, HttpModule],
- declarations: [WorkbasketDetailsComponent, NoAccessComponent, WorkbasketInformationComponent, SpinnerComponent, IconTypeComponent, MapValuesPipe, RemoveNoneTypePipe, AlertComponent, GeneralMessageModalComponent, AccessItemsComponent, DistributionTargetsComponent, FilterComponent, DualListComponent, SelectWorkBasketPipe],
+ declarations: [WorkbasketDetailsComponent, NoAccessComponent, WorkbasketInformationComponent, SpinnerComponent,
+ IconTypeComponent, MapValuesPipe, RemoveNoneTypePipe, AlertComponent, GeneralMessageModalComponent, AccessItemsComponent,
+ DistributionTargetsComponent, FilterComponent, DualListComponent, SelectWorkBasketPipe],
providers: [WorkbasketService, MasterAndDetailService, PermissionService, AlertService]
})
.compileComponents();
@@ -72,12 +75,22 @@ describe('WorkbasketDetailsComponent', () => {
spyOn(workbasketService, 'getSelectedWorkBasket').and.callFake(() => { return Observable.of('id1') })
spyOn(workbasketService, 'getWorkBasketsSummary').and.callFake(() => {
return Observable.of(new WorkbasketSummaryResource(
- { 'workbaskets': new Array
(new WorkbasketSummary('id1', '', '', '', '', '', '', '', '', '', '', '', new Links({ 'href': 'someurl' }))) }, new Links({ 'href': 'someurl' })))
+ {
+ 'workbaskets': new Array(
+ new WorkbasketSummary('id1', '', '', '', '', '', '', '', '', '', '', '',
+ new Links({ 'href': 'someurl' })))
+ }, new Links({ 'href': 'someurl' })))
})
spyOn(workbasketService, 'getWorkBasket').and.callFake(() => { return Observable.of(workbasket) })
- spyOn(workbasketService, 'getWorkBasketAccessItems').and.callFake(() => { return Observable.of(new WorkbasketAccessItemsResource({ 'accessItems': new Array() }, new Links({ 'href': 'url' }))) })
- spyOn(workbasketService, 'getWorkBasketsDistributionTargets').and.callFake(() => { return Observable.of(new WorkbasketSummaryResource({ 'workbaskets': new Array() }, new Links({ 'href': 'url' }))) })
+ spyOn(workbasketService, 'getWorkBasketAccessItems').and.callFake(() => {
+ return Observable.of(new WorkbasketAccessItemsResource(
+ { 'accessItems': new Array() }, new Links({ 'href': 'url' })))
+ })
+ spyOn(workbasketService, 'getWorkBasketsDistributionTargets').and.callFake(() => {
+ return Observable.of(new WorkbasketSummaryResource(
+ { 'workbaskets': new Array() }, new Links({ 'href': 'url' })))
+ })
});
@@ -89,20 +102,20 @@ describe('WorkbasketDetailsComponent', () => {
expect(component).toBeTruthy();
});
- it('should has created app-no-access if workbasket is not defined', () => {
+ it('should has created taskana-no-access if workbasket is not defined', () => {
expect(component.workbasket).toBeUndefined();
- expect(debugElement.querySelector('app-no-access')).toBeTruthy;
+ expect(debugElement.querySelector('taskana-no-access')).toBeTruthy();
});
- it('should has created workbasket-details if workbasket is defined and app-no-access should dissapear', () => {
+ it('should has created taskana-workbasket-details if workbasket is defined and taskana-no-access should dissapear', () => {
expect(component.workbasket).toBeUndefined();
- expect(debugElement.querySelector('app-no-access')).toBeTruthy;
+ expect(debugElement.querySelector('taskana-no-access')).toBeTruthy();
component.workbasket = workbasket;
fixture.detectChanges();
- expect(debugElement.querySelector('app-no-access')).toBeFalsy;
- expect(debugElement.querySelector('worbasket-details')).toBeTruthy;
+ expect(debugElement.querySelector('taskana-no-access')).toBeFalsy();
+ expect(debugElement.querySelector('taskana-workbasket-information')).toBeTruthy();
});
diff --git a/admin/src/app/workbasket/details/workbasket-details.component.ts b/admin/src/app/workbasket/details/workbasket-details.component.ts
index 6c2ba22ec..a9ea5c7cf 100644
--- a/admin/src/app/workbasket/details/workbasket-details.component.ts
+++ b/admin/src/app/workbasket/details/workbasket-details.component.ts
@@ -1,26 +1,26 @@
-import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';
+import { Component, OnInit, Input, Output, EventEmitter, OnDestroy } from '@angular/core';
import { Workbasket } from '../../model/workbasket';
import { WorkbasketService } from '../../services/workbasket.service'
import { MasterAndDetailService } from '../../services/master-and-detail.service'
import { ActivatedRoute, Params, Router, NavigationStart } from '@angular/router';
import { PermissionService } from '../../services/permission.service';
-import { Subscription } from 'rxjs';
+import { Subscription } from 'rxjs/Subscription';
import { WorkbasketSummary } from '../../model/workbasket-summary';
import { WorkbasketSummaryResource } from '../../model/workbasket-summary-resource';
@Component({
- selector: 'workbasket-details',
+ selector: 'taskana-workbasket-details',
templateUrl: './workbasket-details.component.html',
styleUrls: ['./workbasket-details.component.scss']
})
-export class WorkbasketDetailsComponent implements OnInit {
+export class WorkbasketDetailsComponent implements OnInit, OnDestroy {
- selectedId: number = -1;
workbasket: Workbasket;
- showDetail: boolean = false;
- hasPermission: boolean = true;
- requestInProgress: boolean = false;
+ selectedId = -1;
+ showDetail = false;
+ hasPermission = true;
+ requestInProgress = false;
private workbasketSelectedSubscription: Subscription;
private workbasketSubscription: Subscription;
@@ -44,7 +44,7 @@ export class WorkbasketDetailsComponent implements OnInit {
});
this.routeSubscription = this.route.params.subscribe(params => {
- let id = params['id'];
+ const id = params['id'];
if (id && id !== '') {
this.selectedId = id;
this.service.selectWorkBasket(id);
@@ -71,7 +71,7 @@ export class WorkbasketDetailsComponent implements OnInit {
private getWorkbasketInformation(workbasketIdSelected: string) {
this.service.getWorkBasketsSummary().subscribe((workbasketSummary: WorkbasketSummaryResource) => {
- let workbasketSummarySelected = this.getWorkbasketSummaryById(workbasketSummary._embedded.workbaskets, workbasketIdSelected);
+ const workbasketSummarySelected = this.getWorkbasketSummaryById(workbasketSummary._embedded.workbaskets, workbasketIdSelected);
if (workbasketSummarySelected && workbasketSummarySelected._links) {
this.workbasketSubscription = this.service.getWorkBasket(workbasketSummarySelected._links.self.href).subscribe(workbasket => {
this.workbasket = workbasket;
diff --git a/admin/src/app/workbasket/list/workbasket-list.component.spec.ts b/admin/src/app/workbasket/list/workbasket-list.component.spec.ts
index 1adc9b83b..d1404596c 100644
--- a/admin/src/app/workbasket/list/workbasket-list.component.spec.ts
+++ b/admin/src/app/workbasket/list/workbasket-list.component.spec.ts
@@ -20,7 +20,7 @@ import { Links } from '../../model/links';
@Component({
- selector: 'dummy-detail',
+ selector: 'taskana-dummy-detail',
template: 'dummydetail'
})
export class DummyDetailComponent {
@@ -37,8 +37,8 @@ export class FilterComponent {
const workbasketSummaryResource: WorkbasketSummaryResource = new WorkbasketSummaryResource({
'workbaskets': new Array(
- new WorkbasketSummary("1", "key1", "NAME1", "description 1", "owner 1", "", "", "PERSONAL", "", "", "", ""),
- new WorkbasketSummary("2", "key2", "NAME2", "description 2", "owner 2", "", "", "GROUP", "", "", "", ""))
+ new WorkbasketSummary('1', 'key1', 'NAME1', 'description 1', 'owner 1', '', '', 'PERSONAL', '', '', '', ''),
+ new WorkbasketSummary('2', 'key2', 'NAME2', 'description 2', 'owner 2', '', '', 'GROUP', '', '', '', ''))
}, new Links({ 'href': 'url' }));
@@ -55,7 +55,8 @@ describe('WorkbasketListComponent', () => {
beforeEach(async(() => {
TestBed.configureTestingModule({
- declarations: [WorkbasketListComponent, DummyDetailComponent, SpinnerComponent, FilterComponent, RemoveNoneTypePipe, IconTypeComponent, SortComponent, MapValuesPipe],
+ declarations: [WorkbasketListComponent, DummyDetailComponent, SpinnerComponent, FilterComponent,
+ RemoveNoneTypePipe, IconTypeComponent, SortComponent, MapValuesPipe],
imports: [
AngularSvgIconModule,
HttpModule,
@@ -93,15 +94,16 @@ describe('WorkbasketListComponent', () => {
})
});
- it('should have wb-action-toolbar, wb-search-bar, wb-list-container, wb-pagination, collapsedMenufilterWb and taskana-filter created in the html', () => {
- expect(debugElement.querySelector('#wb-action-toolbar')).toBeDefined();
- expect(debugElement.querySelector('#wb-search-bar')).toBeDefined();
- expect(debugElement.querySelector('#wb-pagination')).toBeDefined();
- expect(debugElement.querySelector('#wb-list-container')).toBeDefined();
- expect(debugElement.querySelector('#collapsedMenufilterWb')).toBeDefined();
- expect(debugElement.querySelector('taskana-filter')).toBeDefined();
- expect(debugElement.querySelectorAll('#wb-list-container > li').length).toBe(3);
- });
+ it('should have wb-action-toolbar, wb-search-bar, wb-list-container, wb-pagination,' +
+ ' collapsedMenufilterWb and taskana-filter created in the html', () => {
+ expect(debugElement.querySelector('#wb-action-toolbar')).toBeDefined();
+ expect(debugElement.querySelector('#wb-search-bar')).toBeDefined();
+ expect(debugElement.querySelector('#wb-pagination')).toBeDefined();
+ expect(debugElement.querySelector('#wb-list-container')).toBeDefined();
+ expect(debugElement.querySelector('#collapsedMenufilterWb')).toBeDefined();
+ expect(debugElement.querySelector('taskana-filter')).toBeDefined();
+ expect(debugElement.querySelectorAll('#wb-list-container > li').length).toBe(3);
+ });
it('should have two workbasketsummary rows created with the second one selected.', () => {
expect(debugElement.querySelectorAll('#wb-list-container > li').length).toBe(3);
@@ -110,8 +112,10 @@ describe('WorkbasketListComponent', () => {
});
it('should have two workbasketsummary rows created with two different icons: user and users', () => {
- expect(debugElement.querySelectorAll('#wb-list-container > li')[1].querySelector('svg-icon').getAttribute('ng-reflect-src')).toBe('./assets/icons/user.svg');
- expect(debugElement.querySelectorAll('#wb-list-container > li')[2].querySelector('svg-icon').getAttribute('ng-reflect-src')).toBe('./assets/icons/users.svg');
+ expect(debugElement.querySelectorAll('#wb-list-container > li')[1]
+ .querySelector('svg-icon').getAttribute('ng-reflect-src')).toBe('./assets/icons/user.svg');
+ expect(debugElement.querySelectorAll('#wb-list-container > li')[2]
+ .querySelector('svg-icon').getAttribute('ng-reflect-src')).toBe('./assets/icons/users.svg');
});
it('should have rendered sort by: name, id, description, owner and type', () => {
@@ -124,10 +128,11 @@ describe('WorkbasketListComponent', () => {
});
it('should have performRequest with forced = true after performFilter is triggered', (() => {
- let type = 'PERSONAL', name = 'someName', description = 'someDescription', owner = 'someOwner', key = 'someKey';
- let filter = new FilterModel(type, name, description, owner, key);
+ const type = 'PERSONAL', name = 'someName', description = 'someDescription', owner = 'someOwner', key = 'someKey';
+ const filter = new FilterModel(type, name, description, owner, key);
component.performFilter(filter);
- expect(workbasketService.getWorkBasketsSummary).toHaveBeenCalledWith(true, 'key', 'asc', undefined, name, description, undefined, owner, type, undefined, key);
+ expect(workbasketService.getWorkBasketsSummary).toHaveBeenCalledWith(true, 'key', 'asc', undefined,
+ name, description, undefined, owner, type, undefined, key);
}));
diff --git a/admin/src/app/workbasket/list/workbasket-list.component.ts b/admin/src/app/workbasket/list/workbasket-list.component.ts
index 6aa25e570..4c0b94861 100644
--- a/admin/src/app/workbasket/list/workbasket-list.component.ts
+++ b/admin/src/app/workbasket/list/workbasket-list.component.ts
@@ -1,4 +1,4 @@
-import { Component, OnInit, EventEmitter } from '@angular/core';
+import { Component, OnInit, EventEmitter, OnDestroy } from '@angular/core';
import { WorkbasketSummaryResource } from '../../model/workbasket-summary-resource';
import { WorkbasketSummary } from '../../model/workbasket-summary';
import { WorkbasketService } from '../../services/workbasket.service'
@@ -8,18 +8,16 @@ import { Direction, SortingModel } from '../../shared/sort/sort.component'
import { Router, ActivatedRoute } from '@angular/router';
@Component({
- selector: 'workbasket-list',
- outputs: ['selectedWorkbasket'],
+ selector: 'taskana-workbasket-list',
templateUrl: './workbasket-list.component.html',
styleUrls: ['./workbasket-list.component.scss']
})
-export class WorkbasketListComponent implements OnInit {
- public selectedWorkbasket: EventEmitter = new EventEmitter();
+export class WorkbasketListComponent implements OnInit, OnDestroy {
newWorkbasket: WorkbasketSummary;
selectedId: string = undefined;
workbaskets: Array = [];
- requestInProgress: boolean = false;
+ requestInProgress = false;
sort: SortingModel = new SortingModel();
filterBy: FilterModel = new FilterModel();
@@ -33,7 +31,7 @@ export class WorkbasketListComponent implements OnInit {
ngOnInit() {
this.requestInProgress = true;
this.workBasketSummarySubscription = this.workbasketService.getWorkBasketsSummary().subscribe(resultList => {
- this.workbaskets = resultList._embedded.workbaskets;
+ this.workbaskets = resultList._embedded ? resultList._embedded.workbaskets : [];
this.requestInProgress = false;
});
@@ -48,18 +46,18 @@ export class WorkbasketListComponent implements OnInit {
selectWorkbasket(id: string) {
this.selectedId = id;
- if(!this.selectedId) {
+ if (!this.selectedId) {
this.router.navigate(['/workbaskets']);
- return
+ return
}
- this.router.navigate([{outlets: { detail: [this.selectedId] } }], { relativeTo: this.route });
-
+ this.router.navigate([{ outlets: { detail: [this.selectedId] } }], { relativeTo: this.route });
+
}
-
+
performSorting(sort: SortingModel) {
this.sort = sort;
this.performRequest();
-
+
}
performFilter(filterBy: FilterModel) {
@@ -81,27 +79,28 @@ export class WorkbasketListComponent implements OnInit {
private performRequest(): void {
this.requestInProgress = true;
this.workbaskets = [];
- this.workbasketServiceSubscription.add(this.workbasketService.getWorkBasketsSummary(true, this.sort.sortBy, this.sort.sortDirection, undefined,
+ this.workbasketServiceSubscription.add(this.workbasketService.getWorkBasketsSummary(true, this.sort.sortBy,
+ this.sort.sortDirection, undefined,
this.filterBy.name, this.filterBy.description, undefined, this.filterBy.owner,
this.filterBy.type, undefined, this.filterBy.key).subscribe(resultList => {
- this.workbaskets = resultList._embedded? resultList._embedded.workbaskets:[];
+ this.workbaskets = resultList._embedded ? resultList._embedded.workbaskets : [];
this.requestInProgress = false;
this.unSelectWorkbasket();
}));
}
- private unSelectWorkbasket() : void{
- if (!this.workbaskets.find( wb => wb.workbasketId === this.selectedId)){
+ private unSelectWorkbasket(): void {
+ if (!this.workbaskets.find(wb => wb.workbasketId === this.selectedId)) {
this.selectWorkbasket(undefined);
}
}
- private ngOnDestroy() {
+ ngOnDestroy() {
this.workBasketSummarySubscription.unsubscribe();
this.workbasketServiceSubscription.unsubscribe();
this.workbasketServiceSavedSubscription.unsubscribe();
-
+
}
}
diff --git a/admin/src/app/workbasket/noAccess/no-access.component.spec.ts b/admin/src/app/workbasket/noAccess/no-access.component.spec.ts
index dcac030a9..a000fc34b 100644
--- a/admin/src/app/workbasket/noAccess/no-access.component.spec.ts
+++ b/admin/src/app/workbasket/noAccess/no-access.component.spec.ts
@@ -8,38 +8,40 @@ import { HttpModule } from '@angular/http';
import { HttpClientModule } from '@angular/common/http';
describe('NoAccessComponent', () => {
- let component: NoAccessComponent;
- let fixture: ComponentFixture;
- let debugElement;
+ let component: NoAccessComponent;
+ let fixture: ComponentFixture;
+ let debugElement;
- beforeEach(async(() => {
- TestBed.configureTestingModule({
- imports:[RouterTestingModule, AngularSvgIconModule, HttpModule, HttpClientModule],
- declarations: [ NoAccessComponent ]
- })
- .compileComponents();
- }));
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ imports: [RouterTestingModule, AngularSvgIconModule, HttpModule, HttpClientModule],
+ declarations: [NoAccessComponent]
+ })
+ .compileComponents();
+ }));
- beforeEach(() => {
- fixture = TestBed.createComponent(NoAccessComponent);
- component = fixture.componentInstance;
- debugElement = fixture.debugElement.nativeElement;
- });
+ beforeEach(() => {
+ fixture = TestBed.createComponent(NoAccessComponent);
+ component = fixture.componentInstance;
+ debugElement = fixture.debugElement.nativeElement;
+ });
- afterEach(() =>{
- document.body.removeChild(debugElement);
- });
+ afterEach(() => {
+ document.body.removeChild(debugElement);
+ });
- it('should create', () => {
- expect(component).toBeTruthy();
- });
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
- it('should have a back button with the following classes "btn btn-default back-button pull-left visible-xs visible-sm hidden blue"', () => {
- expect(debugElement.querySelector('button').attributes.class.value).toBe('btn btn-default back-button pull-left visible-xs visible-sm hidden blue');
- });
+ it('should have a back button with the following classes "btn btn-default back-button' +
+ 'pull-left visible-xs visible-sm hidden blue"', () => {
+ expect(debugElement.querySelector('button').attributes.class.value)
+ .toBe('btn btn-default back-button pull-left visible-xs visible-sm hidden blue');
+ });
- it('should have a div with title and svg', () => {
- expect(debugElement.querySelector('div.center-block.no-access > h3' ).textContent).toBeDefined();
- expect(debugElement.querySelector('div.center-block.no-access > svg-icon' ).attributes.src.value).toBe('./assets/icons/noaccess.svg');
- });
+ it('should have a div with title and svg', () => {
+ expect(debugElement.querySelector('div.center-block.no-access > h3').textContent).toBeDefined();
+ expect(debugElement.querySelector('div.center-block.no-access > svg-icon').attributes.src.value).toBe('./assets/icons/noaccess.svg');
+ });
});
diff --git a/admin/src/app/workbasket/noAccess/no-access.component.ts b/admin/src/app/workbasket/noAccess/no-access.component.ts
index 610625927..2802916c6 100644
--- a/admin/src/app/workbasket/noAccess/no-access.component.ts
+++ b/admin/src/app/workbasket/noAccess/no-access.component.ts
@@ -1,9 +1,9 @@
import { Component, OnInit } from '@angular/core';
-import {Router, ActivatedRoute} from '@angular/router';
+import { Router, ActivatedRoute } from '@angular/router';
import { RouterTestingModule } from '@angular/router/testing';
@Component({
- selector: 'app-no-access',
+ selector: 'taskana-no-access',
templateUrl: './no-access.component.html',
styleUrls: ['./no-access.component.scss']
})
diff --git a/admin/src/assets/_site.scss b/admin/src/assets/_site.scss
index 6f6d88b84..3440bf8f9 100644
--- a/admin/src/assets/_site.scss
+++ b/admin/src/assets/_site.scss
@@ -102,7 +102,7 @@
/*
*Remove bootstrap cols padding for master and detail component
*/
-.no-gutter > master-and-detail > [class*='col-'] {
+.no-gutter > taskana-master-and-detail > [class*='col-'] {
padding-right: 0;
padding-left: 0;
}
@@ -229,7 +229,7 @@ li > div.row > dl {
margin-top: 4px;
}
-workbasket-information, taskana-workbasket-access-items, taskana-workbaskets-distribution-targets {
+taskana-workbasket-information, taskana-workbasket-access-items, taskana-workbaskets-distribution-targets {
&> .panel{
border: none;
box-shadow: none;
diff --git a/admin/src/index.html b/admin/src/index.html
index 4606fd394..b1d192ec1 100644
--- a/admin/src/index.html
+++ b/admin/src/index.html
@@ -7,11 +7,11 @@
-
+
-
+
diff --git a/admin/tslint.json b/admin/tslint.json
index 97adaa5e9..2a47091c0 100644
--- a/admin/tslint.json
+++ b/admin/tslint.json
@@ -1,130 +1,126 @@
{
- "rulesDirectory": [
- "node_modules/codelyzer"
- ],
- "rules": {
- "callable-types": true,
- "class-name": true,
- "comment-format": [
- true,
- "check-space"
- ],
- "curly": true,
- "eofline": true,
- "forin": true,
- "import-blacklist": [
- true,
- "rxjs"
- ],
- "import-spacing": true,
- "indent": [
- true,
- "spaces"
- ],
- "interface-over-type-literal": true,
- "label-position": true,
- "max-line-length": [
- true,
- 140
- ],
- "member-access": false,
- "member-ordering": [
- true,
- "static-before-instance",
- "variables-before-functions"
- ],
- "no-arg": true,
- "no-bitwise": true,
- "no-console": [
- true,
- "debug",
- "info",
- "time",
- "timeEnd",
- "trace"
- ],
- "no-construct": true,
- "no-debugger": true,
- "no-empty": false,
- "no-empty-interface": true,
- "no-eval": true,
- "no-inferrable-types": [
- true,
- "ignore-params"
- ],
- "no-shadowed-variable": true,
- "no-string-literal": false,
- "no-string-throw": true,
- "no-switch-case-fall-through": true,
- "no-trailing-whitespace": true,
- "no-unused-expression": true,
- "no-use-before-declare": true,
- "no-var-keyword": true,
- "object-literal-sort-keys": false,
- "one-line": [
- true,
- "check-open-brace",
- "check-catch",
- "check-else",
- "check-whitespace"
- ],
- "prefer-const": true,
- "quotemark": [
- true,
- "single"
- ],
- "radix": true,
- "semicolon": [
- "always"
- ],
- "triple-equals": [
- true,
- "allow-null-check"
- ],
- "typedef-whitespace": [
- true,
- {
- "call-signature": "nospace",
- "index-signature": "nospace",
- "parameter": "nospace",
- "property-declaration": "nospace",
- "variable-declaration": "nospace"
- }
- ],
- "typeof-compare": true,
- "unified-signatures": true,
- "variable-name": false,
- "whitespace": [
- true,
- "check-branch",
- "check-decl",
- "check-operator",
- "check-separator",
- "check-type"
- ],
- "directive-selector": [
- true,
- "attribute",
- "app",
- "camelCase"
- ],
- "component-selector": [
- true,
- "element",
- "app",
- "kebab-case"
- ],
- "use-input-property-decorator": true,
- "use-output-property-decorator": true,
- "use-host-property-decorator": true,
- "no-input-rename": true,
- "no-output-rename": true,
- "use-life-cycle-interface": true,
- "use-pipe-transform-interface": true,
- "component-class-suffix": true,
- "directive-class-suffix": true,
- "no-access-missing-member": true,
- "templates-use-public": true,
- "invoke-injectable": true
- }
-}
+ "rulesDirectory": [
+ "node_modules/codelyzer"
+ ],
+ "rules": {
+ "callable-types": true,
+ "class-name": true,
+ "comment-format": [
+ true,
+ "check-space"
+ ],
+ "curly": true,
+ "eofline": true,
+ "forin": true,
+ "import-blacklist": [
+ true,
+ "rxjs"
+ ],
+ "import-spacing": true,
+ "indent": [
+ true,
+ "tab"
+ ],
+ "interface-over-type-literal": true,
+ "label-position": true,
+ "max-line-length": [
+ true,
+ 140
+ ],
+ "member-access": false,
+ "member-ordering": [
+ true,
+ "static-before-instance",
+ "variables-before-functions"
+ ],
+ "no-arg": true,
+ "no-bitwise": true,
+ "no-console": [
+ true,
+ "debug",
+ "info",
+ "time",
+ "timeEnd",
+ "trace"
+ ],
+ "no-construct": true,
+ "no-debugger": true,
+ "no-empty": false,
+ "no-empty-interface": true,
+ "no-eval": true,
+ "no-inferrable-types": [
+ true,
+ "ignore-params"
+ ],
+ "no-shadowed-variable": true,
+ "no-string-literal": false,
+ "no-string-throw": true,
+ "no-switch-case-fall-through": true,
+ "no-trailing-whitespace": true,
+ "no-unused-expression": true,
+ "no-use-before-declare": true,
+ "no-var-keyword": true,
+ "object-literal-sort-keys": false,
+ "one-line": [
+ true,
+ "check-open-brace",
+ "check-catch",
+ "check-else",
+ "check-whitespace"
+ ],
+ "prefer-const": true,
+ "quotemark": [
+ true,
+ "single"
+ ],
+ "radix": true,
+ "semicolon": [
+ "always"
+ ],
+ "triple-equals": [
+ true,
+ "allow-null-check"
+ ],
+ "typedef-whitespace": [
+ true,
+ {
+ "call-signature": "nospace",
+ "index-signature": "nospace",
+ "parameter": "nospace",
+ "property-declaration": "nospace",
+ "variable-declaration": "nospace"
+ }
+ ],
+ "unified-signatures": true,
+ "variable-name": false,
+ "whitespace": [
+ true,
+ "check-branch",
+ "check-decl",
+ "check-operator",
+ "check-separator",
+ "check-type"
+ ],
+ "directive-selector": [
+ true,
+ "attribute",
+ "taskana",
+ "camelCase"
+ ],
+ "component-selector": [
+ true,
+ "element",
+ "taskana",
+ "kebab-case"
+ ],
+ "use-input-property-decorator": true,
+ "use-output-property-decorator": true,
+ "use-host-property-decorator": true,
+ "no-input-rename": true,
+ "no-output-rename": true,
+ "use-life-cycle-interface": true,
+ "use-pipe-transform-interface": true,
+ "component-class-suffix": true,
+ "directive-class-suffix": true
+ }
+}
\ No newline at end of file