igniteui-angular 12.3.5 → 12.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/igniteui-angular.umd.js +87 -20
- package/bundles/igniteui-angular.umd.js.map +1 -1
- package/esm2015/lib/core/utils.js +14 -2
- package/esm2015/lib/data-operations/data-clone-strategy.js +7 -0
- package/esm2015/lib/data-operations/data-util.js +7 -6
- package/esm2015/lib/grids/api.service.js +2 -2
- package/esm2015/lib/grids/common/crud.service.js +4 -3
- package/esm2015/lib/grids/common/grid.interface.js +1 -1
- package/esm2015/lib/grids/common/pipes.js +2 -2
- package/esm2015/lib/grids/grid-base.directive.js +25 -1
- package/esm2015/lib/grids/grid-public-row.js +3 -4
- package/esm2015/lib/grids/row.directive.js +2 -3
- package/esm2015/lib/grids/summaries/grid-summary.service.js +2 -2
- package/esm2015/lib/grids/tree-grid/tree-grid.pipes.js +3 -3
- package/esm2015/lib/services/transaction/base-transaction.js +17 -4
- package/esm2015/lib/services/transaction/igx-hierarchical-transaction.js +3 -4
- package/esm2015/lib/services/transaction/igx-transaction.js +3 -3
- package/esm2015/lib/services/transaction/transaction-factory.service.js +1 -2
- package/esm2015/lib/services/transaction/transaction.js +1 -1
- package/esm2015/public_api.js +2 -1
- package/fesm2015/igniteui-angular.js +74 -21
- package/fesm2015/igniteui-angular.js.map +1 -1
- package/igniteui-angular.metadata.json +1 -1
- package/lib/core/utils.d.ts +8 -0
- package/lib/data-operations/data-clone-strategy.d.ts +6 -0
- package/lib/data-operations/data-util.d.ts +3 -2
- package/lib/grids/common/grid.interface.d.ts +2 -0
- package/lib/grids/grid-base.directive.d.ts +12 -0
- package/lib/services/transaction/base-transaction.d.ts +7 -0
- package/lib/services/transaction/transaction.d.ts +5 -0
- package/package.json +1 -1
- package/public_api.d.ts +1 -0
package/lib/core/utils.d.ts
CHANGED
|
@@ -26,6 +26,14 @@ export declare const cloneArray: (array: any[], deep?: boolean) => any[];
|
|
|
26
26
|
* @hidden
|
|
27
27
|
*/
|
|
28
28
|
export declare const cloneHierarchicalArray: (array: any[], childDataKey: any) => any[];
|
|
29
|
+
/**
|
|
30
|
+
* Creates an object with prototype from provided source and copies
|
|
31
|
+
* all properties descriptors from provided source
|
|
32
|
+
*
|
|
33
|
+
* @param obj Source to copy prototype and descriptors from
|
|
34
|
+
* @returns New object with cloned prototype and property descriptors
|
|
35
|
+
*/
|
|
36
|
+
export declare const copyDescriptors: (obj: any) => any;
|
|
29
37
|
/**
|
|
30
38
|
* Deep clones all first level keys of Obj2 and merges them to Obj1
|
|
31
39
|
*
|
|
@@ -10,6 +10,7 @@ import { IGridGroupingStrategy } from './grouping-strategy';
|
|
|
10
10
|
import { ITreeGridRecord } from '../grids/tree-grid/public_api';
|
|
11
11
|
import { Transaction, HierarchicalTransaction } from '../services/transaction/transaction';
|
|
12
12
|
import { GridType } from '../grids/common/grid.interface';
|
|
13
|
+
import { IDataCloneStrategy } from '../data-operations/data-clone-strategy';
|
|
13
14
|
/**
|
|
14
15
|
* @hidden
|
|
15
16
|
*/
|
|
@@ -46,7 +47,7 @@ export declare class DataUtil {
|
|
|
46
47
|
* @param deleteRows Should delete rows with DELETE transaction type from data
|
|
47
48
|
* @returns Provided data collections updated with all provided transactions
|
|
48
49
|
*/
|
|
49
|
-
static mergeTransactions<T>(data: T[], transactions: Transaction[], primaryKey?: any, deleteRows?: boolean): T[];
|
|
50
|
+
static mergeTransactions<T>(data: T[], transactions: Transaction[], primaryKey?: any, cloneStrategy?: IDataCloneStrategy, deleteRows?: boolean): T[];
|
|
50
51
|
/**
|
|
51
52
|
* Merges all changes from provided transactions into provided hierarchical data collection
|
|
52
53
|
*
|
|
@@ -57,7 +58,7 @@ export declare class DataUtil {
|
|
|
57
58
|
* @param deleteRows Should delete rows with DELETE transaction type from data
|
|
58
59
|
* @returns Provided data collections updated with all provided transactions
|
|
59
60
|
*/
|
|
60
|
-
static mergeHierarchicalTransactions(data: any[], transactions: HierarchicalTransaction[], childDataKey: any, primaryKey?: any, deleteRows?: boolean): any[];
|
|
61
|
+
static mergeHierarchicalTransactions(data: any[], transactions: HierarchicalTransaction[], childDataKey: any, primaryKey?: any, cloneStrategy?: IDataCloneStrategy, deleteRows?: boolean): any[];
|
|
61
62
|
static parseValue(dataType: GridColumnDataType, value: any): any;
|
|
62
63
|
private static findParentFromPath;
|
|
63
64
|
}
|
|
@@ -9,6 +9,7 @@ import { TransactionService, Transaction, State } from '../../services/public_ap
|
|
|
9
9
|
import { ITreeGridRecord } from '../tree-grid/public_api';
|
|
10
10
|
import { IGroupByRecord } from '../../data-operations/groupby-record.interface';
|
|
11
11
|
import { IGroupByExpandState } from '../../data-operations/groupby-expand-state.interface';
|
|
12
|
+
import { IDataCloneStrategy } from '../../data-operations/data-clone-strategy';
|
|
12
13
|
export interface IGridDataBindable {
|
|
13
14
|
data: any[] | null;
|
|
14
15
|
filteredData: any[];
|
|
@@ -31,6 +32,7 @@ export interface GridType extends IGridDataBindable {
|
|
|
31
32
|
summaryPipeTrigger: number;
|
|
32
33
|
hasColumnLayouts: boolean;
|
|
33
34
|
filterMode: FilterMode;
|
|
35
|
+
dataCloneStrategy: IDataCloneStrategy;
|
|
34
36
|
selectionService: any;
|
|
35
37
|
navigation: any;
|
|
36
38
|
filteringService: any;
|
|
@@ -49,6 +49,7 @@ import { IgxPaginatorComponent } from '../paginator/paginator.component';
|
|
|
49
49
|
import { IgxGridHeaderRowComponent } from './headers/grid-header-row.component';
|
|
50
50
|
import { IgxGridGroupByAreaComponent } from './grouping/grid-group-by-area.component';
|
|
51
51
|
import { IgxFlatTransactionFactory } from '../services/transaction/transaction-factory.service';
|
|
52
|
+
import { IDataCloneStrategy } from '../data-operations/data-clone-strategy';
|
|
52
53
|
export declare const IgxGridTransaction: InjectionToken<string>;
|
|
53
54
|
export declare abstract class IgxGridBaseDirective extends DisplayDensityBase implements GridType, OnInit, DoCheck, OnDestroy, AfterContentInit, AfterViewInit {
|
|
54
55
|
selectionService: IgxGridSelectionService;
|
|
@@ -287,6 +288,16 @@ export declare abstract class IgxGridBaseDirective extends DisplayDensityBase im
|
|
|
287
288
|
*/
|
|
288
289
|
excelStyleFilteringComponents: QueryList<IgxGridExcelStyleFilteringComponent>;
|
|
289
290
|
get headerGroups(): IgxGridHeaderGroupComponent[];
|
|
291
|
+
/**
|
|
292
|
+
* Gets/Sets the data clone strategy of the grid when in edit mode.
|
|
293
|
+
*
|
|
294
|
+
* @example
|
|
295
|
+
* ```html
|
|
296
|
+
* <igx-grid #grid [data]="localData" [dataCloneStrategy]="customCloneStrategy"></igx-grid>
|
|
297
|
+
* ```
|
|
298
|
+
*/
|
|
299
|
+
get dataCloneStrategy(): IDataCloneStrategy;
|
|
300
|
+
set dataCloneStrategy(strategy: IDataCloneStrategy);
|
|
290
301
|
/**
|
|
291
302
|
* Emitted when a cell is clicked.
|
|
292
303
|
*
|
|
@@ -1945,6 +1956,7 @@ export declare abstract class IgxGridBaseDirective extends DisplayDensityBase im
|
|
|
1945
1956
|
private _currencyPositionLeft;
|
|
1946
1957
|
private rowEditPositioningStrategy;
|
|
1947
1958
|
private rowEditSettings;
|
|
1959
|
+
private _dataCloneStrategy;
|
|
1948
1960
|
private transactionChange$;
|
|
1949
1961
|
private _rendered;
|
|
1950
1962
|
private readonly DRAG_SCROLL_DELTA;
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { TransactionService, Transaction, State, StateUpdateEvent } from './transaction';
|
|
2
2
|
import { EventEmitter } from '@angular/core';
|
|
3
|
+
import { IDataCloneStrategy } from '../../data-operations/data-clone-strategy';
|
|
3
4
|
export declare class IgxBaseTransactionService<T extends Transaction, S extends State> implements TransactionService<T, S> {
|
|
5
|
+
/**
|
|
6
|
+
* @inheritdoc
|
|
7
|
+
*/
|
|
8
|
+
get cloneStrategy(): IDataCloneStrategy;
|
|
9
|
+
set cloneStrategy(strategy: IDataCloneStrategy);
|
|
4
10
|
/**
|
|
5
11
|
* @inheritdoc
|
|
6
12
|
*/
|
|
@@ -20,6 +26,7 @@ export declare class IgxBaseTransactionService<T extends Transaction, S extends
|
|
|
20
26
|
protected _isPending: boolean;
|
|
21
27
|
protected _pendingTransactions: T[];
|
|
22
28
|
protected _pendingStates: Map<any, S>;
|
|
29
|
+
private _cloneStrategy;
|
|
23
30
|
/**
|
|
24
31
|
* @inheritdoc
|
|
25
32
|
*/
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { IDataCloneStrategy } from '../../data-operations/data-clone-strategy';
|
|
2
3
|
export declare enum TransactionType {
|
|
3
4
|
ADD = "add",
|
|
4
5
|
DELETE = "delete",
|
|
@@ -48,6 +49,10 @@ export interface TransactionService<T extends Transaction, S extends State> {
|
|
|
48
49
|
* Returns whether transaction is enabled for this service
|
|
49
50
|
*/
|
|
50
51
|
readonly enabled: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Gets/Sets the data clone strategy used to clone data
|
|
54
|
+
*/
|
|
55
|
+
cloneStrategy: IDataCloneStrategy;
|
|
51
56
|
/**
|
|
52
57
|
* Event fired when transaction state has changed - add transaction, commit all transactions, undo and redo
|
|
53
58
|
*/
|
package/package.json
CHANGED
package/public_api.d.ts
CHANGED
|
@@ -26,6 +26,7 @@ export * from './lib/directives/date-time-editor/public_api';
|
|
|
26
26
|
/**
|
|
27
27
|
* Data operations
|
|
28
28
|
*/
|
|
29
|
+
export * from './lib/data-operations/data-clone-strategy';
|
|
29
30
|
export * from './lib/data-operations/filtering-expression.interface';
|
|
30
31
|
export * from './lib/data-operations/filtering-expressions-tree';
|
|
31
32
|
export * from './lib/data-operations/filtering-condition';
|