Skip to content

Commit f534dda

Browse files
committed
merge master
2 parents 4a097ad + c1f71c2 commit f534dda

File tree

75 files changed

+2905
-863
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+2905
-863
lines changed

CHANGELOG.md

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Ignite UI for Angular Change Log
1+
# Ignite UI for Angular Change Log
22

33
All notable changes for each version of this project will be documented in this file.
44

@@ -9,6 +9,20 @@ All notable changes for each version of this project will be documented in this
99
- `uniqueColumnValuesStrategy` input is added. This property provides a callback for loading unique column values on demand. If this property is provided, the unique values it generates will be used by the Excel Style Filtering (instead of using the unique values from the data that is bound to the grid).
1010
- `igxExcelStyleLoading` directive is added, which can be used to provide a custom loading template for the Excel Style Filtering. If this property is not provided, a default loading template will be used instead.
1111
- introduced new properties `cellSelection` and `rowSelection` which accept GridSelection mode enumeration. Grid selection mode could be none, single or multiple. Also `hideRowSelectors` property is added, which allows you to show and hide row selectors when row selection is enabled.
12+
- `IgxHierarchicalGrid`
13+
- Row Islands now emit child grid events with an additional argument - `owner`, which holds reference to the related child grid component instance.
14+
- `IgxDrag`
15+
- Dragging without ghost. Now it is possible to drag the base element `igxDrag` is instanced on by setting the new input `ghost` to false.
16+
- Ghost template. A custom ghost template reference can be provided on the new `ghostTemplate` input.
17+
- Dragging using a single or multiple handles. New `igxDragHandle` directive is exposed to specify a handle by which and element can be interacted with instead of the whole element `igxDrag` is instanced on.
18+
- Linking of drag and drop elements. This can be achieved by using the new provided `dragChannel` input, specifying each element to which channel it corresponds.
19+
- Drag animation improvements. Three new methods have been exposed in place of the old `animateToOrigin` input in order to provide more flexibility when wanting to have transition animation to specific position when dropping. `setLocation`, `transitionToOrigin` and `transitionTo` are all methods that provide a various way to animate a transition to a specific location for the dragged element.
20+
- New getters - `location` and `originLocation` to aid in applying transition animations.
21+
- New outputs - `dragMove`, `ghostCreate` and `ghostDestroy`
22+
- `IgxDrop`
23+
- Linking of drag and drop elements. This can be achieved by using the new provided `dropChannel` input, specifying each drop area to which channel it corresponds.
24+
- Drop strategies. Three new drop strategies have been provided - Append, Prepend and Insert. Also an input `dropStrategy` to the `igxDrop` which specify which strategy should be used when dropping an element inside the drop area. Custom one can be specified as well.
25+
1226
### General
1327
- `IgxGrid`, `IgxTreeGrid`, `IgxHierarchicalGrid`
1428
- `isCellSelected` method has been deprecated. Now you can use `selected` property.
@@ -19,6 +33,7 @@ All notable changes for each version of this project will be documented in this
1933
- **Breaking Change** `igxExcelStyleHidingTemplate` directive is renamed to `igxExcelStyleHiding`.
2034
- **Breaking Change** `onRowSelectionChange` event arguments are changed. The `row` property has been removed and the properties `added`, `removed` and `cancel` are newly added.
2135
- **Breaking Change** `igxExcelStylePinningTemplate` directive is renamed to `igxExcelStylePinning`.
36+
- **Breaking Change** `onRowDragEnd` and `onRowDragStart` event arguments are changed - `owner` now holds reference to the grid component instance, while `dragDirective` hold reference to the drag directive.
2237
- `IgxCombo`
2338
- Combo selection is now consistent when `valueKey` is defined. When `valueKey` is specified, selection is based on the value keys of the items. For example:
2439
```html
@@ -42,6 +57,26 @@ All notable changes for each version of this project will be documented in this
4257
## 8.1.4
4358
- `IgxDialog` new @Input `positionSettings` is now available. It provides the ability to get/set both position and animation settings of the Dialog component.
4459

60+
- `IgxDrag`
61+
- Deprecated inputs - `hideBaseOnDrag`, `animateOnRelease`, `visible`.
62+
- Deprecated methods - `dropFinished`.
63+
- **Breaking Change** `ghostImageClass` input is renamed to `ghostClass`.
64+
- **Breaking Change** `dragGhostHost` input is renamed to `ghostHost`.
65+
- **Breaking Change** `returnMoveEnd` input is renamed to `transitioned`.
66+
- **Breaking Change** `onDragStart` output is renamed to `dragStart`.
67+
- **Breaking Change** `onDragEnd` output is renamed to `dragEnd`.
68+
69+
- `IgxDrop`
70+
- **Breaking Change** Default drop strategy is now changed to not perform any actions.
71+
- **Breaking Change** `onEnter` output is renamed to `enter`.
72+
- **Breaking Change** `onOver` output is renamed to `over`.
73+
- **Breaking Change** `onLeave` output is renamed to `leave`.
74+
- **Breaking Change** `onDrop` output is renamed to `dropped`.
75+
- **Breaking Change** Interfaces `IgxDropEnterEventArgs`, `IgxDropLeaveEventArgs` are both now called `IDragBaseEventArgs`.
76+
- **Breaking Change** Interfaces `IgxDropEventArgs` is renamed to `IDropDroppedEventArgs`.
77+
- **Breaking Change** Outputs `enter`, `over`, `leave`(former `onEnter`, `onOver`, `onLeave`) now have arguments of type `IDropBaseEventArgs`
78+
- **Breaking Change** Output `dropped` (former `onDrop`) now have arguments of type `IDropDroppedEventArgs`
79+
4580
## 8.1.3
4681
- `IgxCombo`
4782
- Combo `onSelectionChange` events now emits the item(s) that were added to or removed from the collection:
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"$schema": "../../common/schema/binding.schema.json",
3+
"changes": [
4+
{
5+
"name": "renderGhost",
6+
"replaceWith": "ghost",
7+
"owner": {
8+
"selector": "igxDrag",
9+
"type": "directive"
10+
}
11+
},
12+
{
13+
"name": "ghostImageClass",
14+
"replaceWith": "ghostClass",
15+
"owner": {
16+
"selector": "igxDrag",
17+
"type": "directive"
18+
}
19+
},
20+
{
21+
"name": "dragGhostHost",
22+
"replaceWith": "ghostHost",
23+
"owner": {
24+
"selector": "igxDrag",
25+
"type": "directive"
26+
}
27+
}
28+
]
29+
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
{
2+
"$schema": "../../common/schema/binding.schema.json",
3+
"changes": [
4+
{
5+
"name": "onGhostCreate",
6+
"replaceWith": "ghostCreate",
7+
"owner": {
8+
"selector": "igxDrag",
9+
"type": "directive"
10+
}
11+
},
12+
{
13+
"name": "onGhostDestroy",
14+
"replaceWith": "ghostDestroy",
15+
"owner": {
16+
"selector": "igxDrag",
17+
"type": "directive"
18+
}
19+
},
20+
{
21+
"name": "returnMoveEnd",
22+
"replaceWith": "transitioned",
23+
"owner": {
24+
"selector": "igxDrag",
25+
"type": "directive"
26+
}
27+
},
28+
{
29+
"name": "dragClicked",
30+
"replaceWith": "click",
31+
"owner": {
32+
"selector": "igxDrag",
33+
"type": "directive"
34+
}
35+
},
36+
{
37+
"name": "onEnter",
38+
"replaceWith": "enter",
39+
"owner": {
40+
"selector": "igxDrop",
41+
"type": "directive"
42+
}
43+
},
44+
{
45+
"name": "onLeave",
46+
"replaceWith": "leave",
47+
"owner": {
48+
"selector": "igxDrop",
49+
"type": "directive"
50+
}
51+
},
52+
{
53+
"name": "onDrop",
54+
"replaceWith": "dropped",
55+
"owner": {
56+
"selector": "igxDrop",
57+
"type": "directive"
58+
}
59+
}
60+
]
61+
}

projects/igniteui-angular/migrations/update-8_2_0/index.spec.ts

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,4 +50,32 @@ describe('Update 8.2.0', () => {
5050

5151
done();
5252
});
53+
54+
it('should update igxDrag input bindings', done => {
55+
appTree.create(
56+
'/testSrc/appPrefix/component/custom.component.html',
57+
`<div igxDrag [renderGhost]="true" [ghostImageClass]="'casper'" [dragGhostHost]="host">Drag me</div>`);
58+
const tree = schematicRunner.runSchematic('migration-10', {}, appTree);
59+
60+
expect(tree.readContent('/testSrc/appPrefix/component/custom.component.html'))
61+
.toEqual(
62+
`<div igxDrag [ghost]="true" [ghostClass]="'casper'" [ghostHost]="host">Drag me</div>`);
63+
done();
64+
});
65+
66+
it('should update igxDrag and igxDrop outputs bindings', done => {
67+
appTree.create(
68+
'/testSrc/appPrefix/component/custom.component.html',
69+
`<div igxDrag (onGhostCreate)="ghostCreateHandler($event)" (onGhostDestroy)="ghostDestroyHandler($event)" (returnMoveEnd)="moveEndHandler($event)" (dragClicked)="clickHandler($event)">Drag me</div>
70+
<div igxDrop (onEnter)="enterHandler($event)" (onLeave)="leaveHandler($event)" (onDrop)="dropHandler($event)">drop area</div>
71+
`);
72+
const tree = schematicRunner.runSchematic('migration-10', {}, appTree);
73+
74+
expect(tree.readContent('/testSrc/appPrefix/component/custom.component.html'))
75+
.toEqual(
76+
`<div igxDrag (ghostCreate)="ghostCreateHandler($event)" (ghostDestroy)="ghostDestroyHandler($event)" (transitioned)="moveEndHandler($event)" (click)="clickHandler($event)">Drag me</div>
77+
<div igxDrop (enter)="enterHandler($event)" (leave)="leaveHandler($event)" (dropped)="dropHandler($event)">drop area</div>
78+
`);
79+
done();
80+
});
5381
});

projects/igniteui-angular/src/lib/banner/banner.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import { IgxButtonModule } from '../directives/button/button.directive';
99
import { IgxRippleModule } from '../directives/ripple/ripple.directive';
1010
import { IgxBannerActionsDirective } from './banner.directives';
1111
import { CommonModule } from '@angular/common';
12-
import { CancelableEventArgs } from '../core/utils';
12+
import { CancelableEventArgs, IBaseEventArgs } from '../core/utils';
1313

14-
export interface BannerEventArgs {
14+
export interface BannerEventArgs extends IBaseEventArgs {
1515
banner: IgxBannerComponent;
1616
event?: Event;
1717
}

projects/igniteui-angular/src/lib/buttonGroup/buttonGroup.component.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import { IgxRippleModule } from '../directives/ripple/ripple.directive';
2323
import { IgxIconModule } from '../icon/index';
2424
import { takeUntil } from 'rxjs/operators';
2525
import { DisplayDensityBase, DisplayDensityToken, IDisplayDensityOptions, DisplayDensity } from '../core/density';
26+
import { IBaseEventArgs } from '../core/utils';
2627

2728
export enum ButtonGroupAlignment { horizontal, vertical }
2829
let NEXT_ID = 0;
@@ -424,7 +425,7 @@ export class IgxButtonGroupComponent extends DisplayDensityBase implements After
424425
}
425426
}
426427

427-
export interface IButtonGroupEventArgs {
428+
export interface IButtonGroupEventArgs extends IBaseEventArgs {
428429
button: IgxButtonDirective;
429430
index: number;
430431
}

projects/igniteui-angular/src/lib/carousel/carousel.component.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import {
1212
Output
1313
} from '@angular/core';
1414
import { IgxIconModule } from '../icon/index';
15+
import { IBaseEventArgs } from '../core/utils';
1516

1617
let NEXT_ID = 0;
1718

@@ -560,7 +561,7 @@ export class IgxSlideComponent implements OnInit, OnDestroy {
560561
}
561562
}
562563

563-
export interface ISlideEventArgs {
564+
export interface ISlideEventArgs extends IBaseEventArgs {
564565
carousel: IgxCarouselComponent;
565566
slide: IgxSlideComponent;
566567
}

projects/igniteui-angular/src/lib/checkbox/checkbox.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@ import {
1313
} from '@angular/core';
1414
import { CheckboxRequiredValidator, ControlValueAccessor, NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
1515
import { IgxRippleModule } from '../directives/ripple/ripple.directive';
16-
import { isIE } from '../core/utils';
16+
import { isIE, IBaseEventArgs } from '../core/utils';
1717
import { EditorProvider } from '../core/edit-provider';
1818

1919
export enum LabelPosition {
2020
BEFORE = 'before',
2121
AFTER = 'after'
2222
}
2323

24-
export interface IChangeCheckboxEventArgs {
24+
export interface IChangeCheckboxEventArgs extends IBaseEventArgs {
2525
checked: boolean;
2626
checkbox: IgxCheckboxComponent;
2727
}

projects/igniteui-angular/src/lib/chips/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,6 @@ The chips can be focused using the `Tab` key or by clicking on them. Chips can b
154154
| `displayDensity`| `DisplayDensity | string` | Sets the chip theme. Available options are `compact`, `cosy`, `comfortable`. |
155155
| `color` | `string` | Sets the chip background color. |
156156
| `hideBaseOnDrag` | `boolean` | Sets if the chip base should be hidden when the chip is dragged. |
157-
| `animateOnRelease` | `boolean` | Sets if the chip should animate to its position when released. |
158157

159158
### Outputs
160159
| Name | Argument Type | Description |

projects/igniteui-angular/src/lib/chips/chip.component.html

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,14 @@
33
(keydown)="onChipKeyDown($event)"
44
[igxDrag]="{chip: this}"
55
[hideBaseOnDrag]="hideBaseOnDrag"
6-
[animateOnRelease]="animateOnRelease"
7-
[ghostImageClass]="ghostClass"
6+
[ghostClass]="ghostClass"
87
(dragStart)="onChipDragStart($event)"
98
(dragEnd)="onChipDragEnd()"
10-
(returnMoveEnd)="onChipMoveEnd($event)"
11-
(dragClicked)="onChipDragClicked($event)"
9+
(transitioned)="onChipMoveEnd($event)"
10+
(click)="onChipDragClicked($event)"
1211
igxDrop
13-
(onEnter)="onChipDragEnterHandler($event)"
14-
(onDrop)="onChipDrop($event)">
12+
(enter)="onChipDragEnterHandler($event)"
13+
(dropped)="onChipDrop($event)">
1514

1615
<div [ngClass]="selectClass(selected)">
1716
<ng-container *ngTemplateOutlet="selectIconTemplate"></ng-container>

0 commit comments

Comments
 (0)