Skip to content

Commit cd08cd2

Browse files
committed
chore(tree): address review comments
1 parent 37f0298 commit cd08cd2

File tree

10 files changed

+68
-68
lines changed

10 files changed

+68
-68
lines changed

projects/igniteui-angular/src/lib/expansion-panel/toggle-animation-component.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ describe('Toggle animation component', () => {
3030
expect(startPlayerSpy).toHaveBeenCalledWith(ANIMATION_TYPE.OPEN, mockEl, noop);
3131
player.playCloseAnimation(mockEl);
3232
expect(startPlayerSpy).toHaveBeenCalledWith(ANIMATION_TYPE.CLOSE, mockEl, noop);
33-
const mockCB = () => console.log('mock');
33+
const mockCB = () => {};
3434
player.playOpenAnimation(mockEl, mockCB);
3535
expect(startPlayerSpy).toHaveBeenCalledWith(ANIMATION_TYPE.OPEN, mockEl, mockCB);
3636
player.playCloseAnimation(mockEl, mockCB);

projects/igniteui-angular/src/lib/tree/common.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ export interface IgxTree {
1414
/** @hidden @internal */
1515
rootNodes: IgxTreeNode<any>[];
1616
singleBranchExpand: boolean;
17-
selection: IGX_TREE_SELECTION_TYPE;
17+
selection: IgxTreeSelectionType;
1818
expandIndicator: TemplateRef<any>;
1919
animationSettings: ToggleAnimationSettings;
2020
/** @hidden @internal */
@@ -101,12 +101,12 @@ export interface ITreeNodeToggledEventArgs extends IBaseEventArgs {
101101
}
102102

103103
// Enums
104-
export const IGX_TREE_SELECTION_TYPE = mkenum({
104+
export const IgxTreeSelectionType = mkenum({
105105
None: 'None',
106106
BiState: 'BiState',
107107
Cascading: 'Cascading'
108108
});
109-
export type IGX_TREE_SELECTION_TYPE = (typeof IGX_TREE_SELECTION_TYPE)[keyof typeof IGX_TREE_SELECTION_TYPE];
109+
export type IgxTreeSelectionType = (typeof IgxTreeSelectionType)[keyof typeof IgxTreeSelectionType];
110110

111111
// Token
112112
export const IGX_TREE_COMPONENT = new InjectionToken<IgxTree>('IgxTreeToken');

projects/igniteui-angular/src/lib/tree/public_api.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@ export * from './tree.component';
22
export * from './tree-node/tree-node.component';
33
export { IgxTreeSearchResolver, ITreeNodeSelectionEvent, ITreeNodeEditingEvent,
44
ITreeNodeEditedEvent, ITreeNodeTogglingEventArgs, ITreeNodeToggledEventArgs,
5-
IGX_TREE_SELECTION_TYPE, IgxTree, IgxTreeNode } from './common';
5+
IgxTreeSelectionType, IgxTree, IgxTreeNode } from './common';

projects/igniteui-angular/src/lib/tree/tree-navigation.service.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { Injectable, OnDestroy } from '@angular/core';
2-
import { IgxTree, IgxTreeNode, IGX_TREE_SELECTION_TYPE } from './common';
2+
import { IgxTree, IgxTreeNode, IgxTreeSelectionType } from './common';
33
import { NAVIGATION_KEYS } from '../core/utils';
44
import { IgxTreeService } from './tree.service';
55
import { IgxTreeSelectionService } from './tree-selection.service';
@@ -227,7 +227,7 @@ export class IgxTreeNavigationService implements OnDestroy {
227227
}
228228

229229
private handleSpace(shiftKey = false): void {
230-
if (this.tree.selection === IGX_TREE_SELECTION_TYPE.None) {
230+
if (this.tree.selection === IgxTreeSelectionType.None) {
231231
return;
232232
}
233233

projects/igniteui-angular/src/lib/tree/tree-navigation.spec.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import { IgxTreeSelectionService } from './tree-selection.service';
99
import { TreeTestFunctions } from './tree-functions.spec';
1010
import { IgxTreeService } from './tree.service';
1111
import { IgxTreeComponent, IgxTreeModule } from './tree.component';
12-
import { IgxTree, IgxTreeNode, IGX_TREE_SELECTION_TYPE } from './common';
12+
import { IgxTree, IgxTreeNode, IgxTreeSelectionType } from './common';
1313
import { IgxTreeNodeComponent } from './tree-node/tree-node.component';
1414

1515
describe('IgxTree - Navigation #treeView', () => {
@@ -36,7 +36,7 @@ describe('IgxTree - Navigation #treeView', () => {
3636

3737
describe('UI Interaction tests - None', () => {
3838
beforeEach(fakeAsync(() => {
39-
tree.selection = IGX_TREE_SELECTION_TYPE.None;
39+
tree.selection = IgxTreeSelectionType.None;
4040
fix.detectChanges();
4141
}));
4242

@@ -306,7 +306,7 @@ describe('IgxTree - Navigation #treeView', () => {
306306
fix = TestBed.createComponent(IgxTreeScrollComponent);
307307
fix.detectChanges();
308308
tree = fix.componentInstance.tree;
309-
tree.selection = IGX_TREE_SELECTION_TYPE.None;
309+
tree.selection = IgxTreeSelectionType.None;
310310
fix.detectChanges();
311311
}));
312312

@@ -353,7 +353,7 @@ describe('IgxTree - Navigation #treeView', () => {
353353

354354
describe('UI Interaction tests - Disabled Nodes', () => {
355355
beforeEach(fakeAsync(() => {
356-
tree.selection = IGX_TREE_SELECTION_TYPE.None;
356+
tree.selection = IgxTreeSelectionType.None;
357357
fix.detectChanges();
358358
fix.componentInstance.isDisabled = true;
359359
fix.detectChanges();
@@ -466,7 +466,7 @@ describe('IgxTree - Navigation #treeView', () => {
466466

467467
describe('UI Interaction tests - igxTreeNodeLink', () => {
468468
beforeEach(fakeAsync(() => {
469-
tree.selection = IGX_TREE_SELECTION_TYPE.None;
469+
tree.selection = IgxTreeSelectionType.None;
470470
fix.detectChanges();
471471
fix.componentInstance.showNodesWithDirective = true;
472472
fix.detectChanges();
@@ -568,7 +568,7 @@ describe('IgxTree - Navigation #treeView', () => {
568568
beforeEach(() => {
569569
mockEmitter = jasmine.createSpyObj('emitter', ['emit']);
570570
mockTree = jasmine.createSpyObj('tree', [''],
571-
{ selection: IGX_TREE_SELECTION_TYPE.BiState, activeNodeChanged: mockEmitter, nodes: mockQuery1 });
571+
{ selection: IgxTreeSelectionType.BiState, activeNodeChanged: mockEmitter, nodes: mockQuery1 });
572572
navService.register(mockTree);
573573
});
574574

projects/igniteui-angular/src/lib/tree/tree-node/tree-node.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import { takeUntil } from 'rxjs/operators';
1414
import { ToggleAnimationPlayer, ToggleAnimationSettings } from '../../expansion-panel/toggle-animation-component';
1515
import {
1616
IGX_TREE_COMPONENT, IgxTree, IgxTreeNode,
17-
IGX_TREE_NODE_COMPONENT, ITreeNodeTogglingEventArgs, IGX_TREE_SELECTION_TYPE
17+
IGX_TREE_NODE_COMPONENT, ITreeNodeTogglingEventArgs, IgxTreeSelectionType
1818
} from '../common';
1919
import { IgxTreeSelectionService } from '../tree-selection.service';
2020
import { IgxTreeNavigationService } from '../tree-navigation.service';
@@ -393,7 +393,7 @@ export class IgxTreeNodeComponent<T> extends ToggleAnimationPlayer implements Ig
393393
* @hidden @internal
394394
*/
395395
public get showSelectors() {
396-
return this.tree.selection !== IGX_TREE_SELECTION_TYPE.None;
396+
return this.tree.selection !== IgxTreeSelectionType.None;
397397
}
398398

399399
/**

projects/igniteui-angular/src/lib/tree/tree-selection.service.spec.ts

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { EventEmitter } from '@angular/core';
22
import { configureTestSuite } from '../test-utils/configure-suite';
3-
import { IgxTree, IgxTreeNode, IGX_TREE_SELECTION_TYPE, ITreeNodeSelectionEvent } from './common';
3+
import { IgxTree, IgxTreeNode, IgxTreeSelectionType, ITreeNodeSelectionEvent } from './common';
44
import { TreeTestFunctions } from './tree-functions.spec';
55
import { IgxTreeNodeComponent } from './tree-node/tree-node.component';
66
import { IgxTreeSelectionService } from './tree-selection.service';
@@ -58,7 +58,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
5858
beforeEach(() => {
5959
mockEmitter = jasmine.createSpyObj('emitter', ['emit']);
6060
mockTree = jasmine.createSpyObj('tree', [''],
61-
{ selection: IGX_TREE_SELECTION_TYPE.BiState, nodeSelection: mockEmitter, nodes: mockQuery1 });
61+
{ selection: IgxTreeSelectionType.BiState, nodeSelection: mockEmitter, nodes: mockQuery1 });
6262
selectionService.register(mockTree);
6363
});
6464

@@ -102,18 +102,18 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
102102
const mockNode = TreeTestFunctions.createNodeSpy({ selectedChange: mockSelectedChangeEmitter });
103103

104104
// None
105-
(Object.getOwnPropertyDescriptor(mockTree, 'selection').get as jasmine.Spy<any>).and.returnValue(IGX_TREE_SELECTION_TYPE.None);
105+
(Object.getOwnPropertyDescriptor(mockTree, 'selection').get as jasmine.Spy<any>).and.returnValue(IgxTreeSelectionType.None);
106106
selectionService.selectNode(mockNode);
107107
expect(selectionService.isNodeSelected(mockNode)).toBeFalsy();
108108
expect(mockTree.nodeSelection.emit).not.toHaveBeenCalled();
109109
expect(mockNode.selectedChange.emit).not.toHaveBeenCalled();
110110

111111
// BiState
112112
(Object.getOwnPropertyDescriptor(mockTree, 'selection').get as jasmine.Spy<any>)
113-
.and.returnValue(IGX_TREE_SELECTION_TYPE.BiState);
113+
.and.returnValue(IgxTreeSelectionType.BiState);
114114
let expected: ITreeNodeSelectionEvent = {
115115
oldSelection: [], newSelection: [mockNode],
116-
added: [mockNode], removed: [], event: undefined, cancel: false
116+
added: [mockNode], removed: [], event: undefined, cancel: false, owner: mockTree
117117
};
118118

119119
selectionService.selectNode(mockNode);
@@ -128,12 +128,12 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
128128
selectionService.deselectNode(mockNode);
129129

130130
(Object.getOwnPropertyDescriptor(mockTree, 'selection').get as jasmine.Spy<any>)
131-
.and.returnValue(IGX_TREE_SELECTION_TYPE.Cascading);
131+
.and.returnValue(IgxTreeSelectionType.Cascading);
132132
selectionService.selectNode(allNodes[1]);
133133

134134
expected = {
135135
oldSelection: [], newSelection: [allNodes[1], allNodes[2], allNodes[3]],
136-
added: [allNodes[1], allNodes[2], allNodes[3]], removed: [], event: undefined, cancel: false
136+
added: [allNodes[1], allNodes[2], allNodes[3]], removed: [], event: undefined, cancel: false, owner: mockTree
137137
};
138138

139139
expect(selectionService.isNodeSelected(allNodes[1])).toBeTruthy();
@@ -172,7 +172,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
172172
// deselect node
173173
const expected: ITreeNodeSelectionEvent = {
174174
newSelection: [], oldSelection: [mockNode1],
175-
removed: [mockNode1], added: [], event: undefined, cancel: false
175+
removed: [mockNode1], added: [], event: undefined, cancel: false, owner: mockTree
176176
};
177177
selectionService.deselectNode(mockNode1);
178178

@@ -270,7 +270,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
270270

271271
let expected: ITreeNodeSelectionEvent = {
272272
oldSelection: [], newSelection: [mockQuery1.first],
273-
added: [mockQuery1.first], removed: [], event: undefined, cancel: false
273+
added: [mockQuery1.first], removed: [], event: undefined, cancel: false, owner: mockTree
274274
};
275275

276276
expect(selectionService.isNodeSelected(allNodes[0])).toBeTruthy();
@@ -327,7 +327,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
327327

328328
const expected: ITreeNodeSelectionEvent = {
329329
oldSelection: [allNodes[3]], newSelection: allNodes.slice(3, 9),
330-
added: allNodes.slice(4, 9), removed: [], event: undefined, cancel: false
330+
added: allNodes.slice(4, 9), removed: [], event: undefined, cancel: false, owner: mockTree
331331
};
332332
expect(mockTree.nodeSelection.emit).toHaveBeenCalledWith(expected);
333333
});
@@ -360,7 +360,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
360360

361361
const expected: ITreeNodeSelectionEvent = {
362362
oldSelection: [allNodes[8]], newSelection: [allNodes[8], ...allNodes.slice(2, 8)],
363-
added: allNodes.slice(2, 8), removed: [], event: undefined, cancel: false
363+
added: allNodes.slice(2, 8), removed: [], event: undefined, cancel: false, owner: mockTree
364364
};
365365
expect(mockTree.nodeSelection.emit).toHaveBeenCalledWith(expected);
366366
});
@@ -370,7 +370,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
370370
beforeEach(() => {
371371
mockEmitter = jasmine.createSpyObj('emitter', ['emit']);
372372
mockTree = jasmine.createSpyObj('tree', [''],
373-
{ selection: IGX_TREE_SELECTION_TYPE.Cascading, nodeSelection: mockEmitter, nodes: mockQuery1 });
373+
{ selection: IgxTreeSelectionType.Cascading, nodeSelection: mockEmitter, nodes: mockQuery1 });
374374
selectionService.register(mockTree);
375375
});
376376

@@ -397,7 +397,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
397397

398398
const expected: ITreeNodeSelectionEvent = {
399399
newSelection: [], oldSelection: [allNodes[1], allNodes[2], allNodes[3]],
400-
removed: [allNodes[1], allNodes[2], allNodes[3]], added: [], event: undefined, cancel: false
400+
removed: [allNodes[1], allNodes[2], allNodes[3]], added: [], event: undefined, cancel: false, owner: mockTree
401401
};
402402
// deselect node
403403
selectionService.deselectNode(allNodes[1]);
@@ -480,7 +480,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
480480

481481
let expected: ITreeNodeSelectionEvent = {
482482
oldSelection: [], newSelection: allNodes.slice(1, 4),
483-
added: allNodes.slice(1, 4), removed: [], event: undefined, cancel: false
483+
added: allNodes.slice(1, 4), removed: [], event: undefined, cancel: false, owner: mockTree
484484
};
485485

486486
for (const node of allNodes.slice(1, 4)) {
@@ -535,7 +535,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
535535
const expected: ITreeNodeSelectionEvent = {
536536
oldSelection: [allNodes[3]], newSelection: allNodes.slice(3, 9),
537537
added: allNodes.slice(4, 9),
538-
removed: [], event: undefined, cancel: false
538+
removed: [], event: undefined, cancel: false, owner: mockTree
539539
};
540540
expect(mockTree.nodeSelection.emit).toHaveBeenCalledWith(expected);
541541
expect(selectionService.isNodeIndeterminate(allNodes[0])).toBeTruthy();
@@ -578,7 +578,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
578578
const expected: ITreeNodeSelectionEvent = {
579579
oldSelection: [allNodes[8], allNodes[7]],
580580
newSelection: [allNodes[8], allNodes[7], ...allNodes.slice(2, 7), allNodes[1], allNodes[0]],
581-
added: [...allNodes.slice(2, 7), allNodes[1], allNodes[0]], removed: [], event: undefined, cancel: false
581+
added: [...allNodes.slice(2, 7), allNodes[1], allNodes[0]], removed: [], event: undefined, cancel: false, owner: mockTree
582582
};
583583
expect(mockTree.nodeSelection.emit).toHaveBeenCalledWith(expected);
584584
});
@@ -589,7 +589,7 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
589589
const deselectSpy = spyOn(selectionService, 'deselectNodesWithNoEvent');
590590
const selectSpy = spyOn(selectionService, 'selectNodesWithNoEvent');
591591
const tree = {
592-
selection: IGX_TREE_SELECTION_TYPE.None
592+
selection: IgxTreeSelectionType.None
593593
} as any;
594594
const selectedNodeSpy = spyOn(selectionService, 'isNodeSelected').and.returnValue(false);
595595
const mockNode = {
@@ -601,13 +601,13 @@ describe('IgxTreeSelectionService - Unit Tests #treeView', () => {
601601
expect(deselectSpy).not.toHaveBeenCalled();
602602
expect(selectSpy).not.toHaveBeenCalled();
603603
expect(selectedNodeSpy).not.toHaveBeenCalled();
604-
tree.selection = IGX_TREE_SELECTION_TYPE.BiState;
604+
tree.selection = IgxTreeSelectionType.BiState;
605605

606606
selectionService.ensureStateOnNodeDelete(mockNode);
607607
expect(deselectSpy).not.toHaveBeenCalled();
608608
expect(selectSpy).not.toHaveBeenCalled();
609609
expect(selectedNodeSpy).not.toHaveBeenCalled();
610-
tree.selection = IGX_TREE_SELECTION_TYPE.Cascading;
610+
tree.selection = IgxTreeSelectionType.Cascading;
611611
selectedNodeSpy.and.returnValue(true);
612612

613613
selectionService.ensureStateOnNodeDelete(mockNode);

projects/igniteui-angular/src/lib/tree/tree-selection.service.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { Injectable } from '@angular/core';
2-
import { IgxTree, IgxTreeNode, IGX_TREE_SELECTION_TYPE, ITreeNodeSelectionEvent } from './common';
2+
import { IgxTree, IgxTreeNode, IgxTreeSelectionType, ITreeNodeSelectionEvent } from './common';
33

44
/** A collection containing the nodes affected in the selection as well as their direct parents */
55
interface CascadeSelectionNodeCollection {
@@ -39,7 +39,7 @@ export class IgxTreeSelectionService {
3939

4040
/** Select the specified node and emit event. */
4141
public selectNode(node: IgxTreeNode<any>, event?: Event): void {
42-
if (this.tree.selection === IGX_TREE_SELECTION_TYPE.None) {
42+
if (this.tree.selection === IgxTreeSelectionType.None) {
4343
return;
4444
}
4545
this.emitNodeSelectionEvent([...this.getSelectedNodes(), node], [node], [], event);
@@ -67,7 +67,7 @@ export class IgxTreeSelectionService {
6767

6868
/** Select specified nodes. No event is emitted. */
6969
public selectNodesWithNoEvent(nodes: IgxTreeNode<any>[], clearPrevSelection = false, shouldEmit = true): void {
70-
if (this.tree && this.tree.selection === IGX_TREE_SELECTION_TYPE.Cascading) {
70+
if (this.tree && this.tree.selection === IgxTreeSelectionType.Cascading) {
7171
this.cascadeSelectNodesWithNoEvent(nodes, clearPrevSelection);
7272
return;
7373
}
@@ -90,7 +90,7 @@ export class IgxTreeSelectionService {
9090

9191
if (!nodes) {
9292
this.nodeSelection.clear();
93-
} else if (this.tree && this.tree.selection === IGX_TREE_SELECTION_TYPE.Cascading) {
93+
} else if (this.tree && this.tree.selection === IgxTreeSelectionType.Cascading) {
9494
this.cascadeDeselectNodesWithNoEvent(nodes);
9595
} else {
9696
nodes.forEach(node => this.nodeSelection.delete(node));
@@ -103,7 +103,7 @@ export class IgxTreeSelectionService {
103103

104104
/** Called on `node.ngOnDestroy` to ensure state is correct after node is removed */
105105
public ensureStateOnNodeDelete(node: IgxTreeNode<any>): void {
106-
if (this.tree?.selection !== IGX_TREE_SELECTION_TYPE.Cascading) {
106+
if (this.tree?.selection !== IgxTreeSelectionType.Cascading) {
107107
return;
108108
}
109109
requestAnimationFrame(() => {
@@ -147,7 +147,7 @@ export class IgxTreeSelectionService {
147147
private emitNodeSelectionEvent(
148148
newSelection: IgxTreeNode<any>[], added: IgxTreeNode<any>[], removed: IgxTreeNode<any>[], event: Event
149149
): boolean {
150-
if (this.tree.selection === IGX_TREE_SELECTION_TYPE.Cascading) {
150+
if (this.tree.selection === IgxTreeSelectionType.Cascading) {
151151
this.emitCascadeNodeSelectionEvent(newSelection, added, removed, event);
152152
return;
153153
}
@@ -158,7 +158,7 @@ export class IgxTreeSelectionService {
158158

159159
const args: ITreeNodeSelectionEvent = {
160160
oldSelection: currSelection, newSelection,
161-
added, removed, event, cancel: false
161+
added, removed, event, cancel: false, owner: this.tree
162162
};
163163
this.tree.nodeSelection.emit(args);
164164
if (args.cancel) {
@@ -245,7 +245,7 @@ export class IgxTreeSelectionService {
245245

246246
const args: ITreeNodeSelectionEvent = {
247247
oldSelection: currSelection, newSelection,
248-
added, removed, event, cancel: false
248+
added, removed, event, cancel: false, owner: this.tree
249249
};
250250

251251
this.calculateNodesNewSelectionState(args);

0 commit comments

Comments
 (0)