igniteui-angular 13.0.4 → 13.0.5
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/esm2020/lib/core/utils.mjs +13 -2
- package/esm2020/lib/data-operations/data-clone-strategy.mjs +7 -0
- package/esm2020/lib/data-operations/data-util.mjs +7 -6
- package/esm2020/lib/grids/api.service.mjs +2 -2
- package/esm2020/lib/grids/common/crud.service.mjs +4 -3
- package/esm2020/lib/grids/common/grid.interface.mjs +1 -1
- package/esm2020/lib/grids/common/pipes.mjs +2 -2
- package/esm2020/lib/grids/grid-base.directive.mjs +27 -2
- package/esm2020/lib/grids/grid-public-row.mjs +3 -4
- package/esm2020/lib/grids/row.directive.mjs +2 -3
- package/esm2020/lib/grids/summaries/grid-summary.service.mjs +2 -2
- package/esm2020/lib/grids/tree-grid/tree-grid.pipes.mjs +3 -3
- package/esm2020/lib/services/transaction/base-transaction.mjs +17 -4
- package/esm2020/lib/services/transaction/igx-hierarchical-transaction.mjs +3 -4
- package/esm2020/lib/services/transaction/igx-transaction.mjs +3 -3
- package/esm2020/lib/services/transaction/transaction-factory.service.mjs +1 -2
- package/esm2020/lib/services/transaction/transaction.mjs +1 -1
- package/esm2020/public_api.mjs +2 -1
- package/fesm2015/igniteui-angular.mjs +75 -22
- package/fesm2015/igniteui-angular.mjs.map +1 -1
- package/fesm2020/igniteui-angular.mjs +75 -22
- package/fesm2020/igniteui-angular.mjs.map +1 -1
- package/lib/core/utils.d.ts +7 -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 +13 -1
- 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,13 @@ 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
|
+
* @param obj Source to copy prototype and descriptors from
|
|
33
|
+
* @returns New object with cloned prototype and property descriptors
|
|
34
|
+
*/
|
|
35
|
+
export declare const copyDescriptors: (obj: any) => any;
|
|
29
36
|
/**
|
|
30
37
|
* Deep clones all first level keys of Obj2 and merges them to Obj1
|
|
31
38
|
*
|
|
@@ -9,6 +9,7 @@ import { GridType } from '../grids/common/grid.interface';
|
|
|
9
9
|
import { ITreeGridRecord } from '../grids/tree-grid/tree-grid.interfaces';
|
|
10
10
|
import { ISortingExpression } from './sorting-strategy';
|
|
11
11
|
import { IGridSortingStrategy, IGridGroupingStrategy } from '../grids/common/strategy';
|
|
12
|
+
import { IDataCloneStrategy } from '../data-operations/data-clone-strategy';
|
|
12
13
|
/**
|
|
13
14
|
* @hidden
|
|
14
15
|
*/
|
|
@@ -45,7 +46,7 @@ export declare class DataUtil {
|
|
|
45
46
|
* @param deleteRows Should delete rows with DELETE transaction type from data
|
|
46
47
|
* @returns Provided data collections updated with all provided transactions
|
|
47
48
|
*/
|
|
48
|
-
static mergeTransactions<T>(data: T[], transactions: Transaction[], primaryKey?: any, deleteRows?: boolean): T[];
|
|
49
|
+
static mergeTransactions<T>(data: T[], transactions: Transaction[], primaryKey?: any, cloneStrategy?: IDataCloneStrategy, deleteRows?: boolean): T[];
|
|
49
50
|
/**
|
|
50
51
|
* Merges all changes from provided transactions into provided hierarchical data collection
|
|
51
52
|
*
|
|
@@ -56,7 +57,7 @@ export declare class DataUtil {
|
|
|
56
57
|
* @param deleteRows Should delete rows with DELETE transaction type from data
|
|
57
58
|
* @returns Provided data collections updated with all provided transactions
|
|
58
59
|
*/
|
|
59
|
-
static mergeHierarchicalTransactions(data: any[], transactions: HierarchicalTransaction[], childDataKey: any, primaryKey?: any, deleteRows?: boolean): any[];
|
|
60
|
+
static mergeHierarchicalTransactions(data: any[], transactions: HierarchicalTransaction[], childDataKey: any, primaryKey?: any, cloneStrategy?: IDataCloneStrategy, deleteRows?: boolean): any[];
|
|
60
61
|
static parseValue(dataType: GridColumnDataType, value: any): any;
|
|
61
62
|
private static findParentFromPath;
|
|
62
63
|
}
|
|
@@ -26,6 +26,7 @@ import { IGridGroupingStrategy, IGridSortingStrategy } from './strategy';
|
|
|
26
26
|
import { IForOfState, IgxGridForOfDirective } from '../../directives/for-of/for_of.directive';
|
|
27
27
|
import { OverlaySettings } from '../../services/overlay/utilities';
|
|
28
28
|
import { IPinningConfig } from '../grid.common';
|
|
29
|
+
import { IDataCloneStrategy } from '../../data-operations/data-clone-strategy';
|
|
29
30
|
export declare const IGX_GRID_BASE: InjectionToken<GridType>;
|
|
30
31
|
export declare const IGX_GRID_SERVICE_BASE: InjectionToken<GridServiceType>;
|
|
31
32
|
export interface IPathSegment {
|
|
@@ -240,6 +241,7 @@ export interface GridType extends IGridDataBindable {
|
|
|
240
241
|
summaryPipeTrigger: number;
|
|
241
242
|
hasColumnLayouts: boolean;
|
|
242
243
|
isLoading: boolean;
|
|
244
|
+
dataCloneStrategy: IDataCloneStrategy;
|
|
243
245
|
gridAPI: GridServiceType;
|
|
244
246
|
filterMode: FilterMode;
|
|
245
247
|
theadRow: any;
|
|
@@ -51,6 +51,7 @@ import { IGridSortingStrategy } from './common/strategy';
|
|
|
51
51
|
import { IgxGridExcelStyleFilteringComponent } from './filtering/excel-style/grid.excel-style-filtering.component';
|
|
52
52
|
import { IgxGridHeaderComponent } from './headers/grid-header.component';
|
|
53
53
|
import { IgxGridFilteringRowComponent } from './filtering/base/grid-filtering-row.component';
|
|
54
|
+
import { IDataCloneStrategy } from '../data-operations/data-clone-strategy';
|
|
54
55
|
import * as i0 from "@angular/core";
|
|
55
56
|
export declare abstract class IgxGridBaseDirective extends DisplayDensityBase implements GridType, OnInit, DoCheck, OnDestroy, AfterContentInit, AfterViewInit {
|
|
56
57
|
selectionService: IgxGridSelectionService;
|
|
@@ -126,6 +127,16 @@ export declare abstract class IgxGridBaseDirective extends DisplayDensityBase im
|
|
|
126
127
|
*/
|
|
127
128
|
set summaryRowHeight(value: number);
|
|
128
129
|
get summaryRowHeight(): number;
|
|
130
|
+
/**
|
|
131
|
+
* Gets/Sets the data clone strategy of the grid when in edit mode.
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* ```html
|
|
135
|
+
* <igx-grid #grid [data]="localData" [dataCloneStrategy]="customCloneStrategy"></igx-grid>
|
|
136
|
+
* ```
|
|
137
|
+
*/
|
|
138
|
+
get dataCloneStrategy(): IDataCloneStrategy;
|
|
139
|
+
set dataCloneStrategy(strategy: IDataCloneStrategy);
|
|
129
140
|
/**
|
|
130
141
|
* Controls the copy behavior of the grid.
|
|
131
142
|
*/
|
|
@@ -1784,6 +1795,7 @@ export declare abstract class IgxGridBaseDirective extends DisplayDensityBase im
|
|
|
1784
1795
|
private transactionChange$;
|
|
1785
1796
|
private _rendered;
|
|
1786
1797
|
private readonly DRAG_SCROLL_DELTA;
|
|
1798
|
+
private _dataCloneStrategy;
|
|
1787
1799
|
/**
|
|
1788
1800
|
* @hidden @internal
|
|
1789
1801
|
*/
|
|
@@ -3372,5 +3384,5 @@ export declare abstract class IgxGridBaseDirective extends DisplayDensityBase im
|
|
|
3372
3384
|
private rebuildMatchCache;
|
|
3373
3385
|
private configureRowEditingOverlay;
|
|
3374
3386
|
static ɵfac: i0.ɵɵFactoryDeclaration<IgxGridBaseDirective, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, { optional: true; }, null, null, { optional: true; }]>;
|
|
3375
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<IgxGridBaseDirective, never, never, { "snackbarDisplayTime": "snackbarDisplayTime"; "autoGenerate": "autoGenerate"; "emptyGridTemplate": "emptyGridTemplate"; "addRowEmptyTemplate": "addRowEmptyTemplate"; "loadingGridTemplate": "loadingGridTemplate"; "summaryRowHeight": "summaryRowHeight"; "clipboardOptions": "clipboardOptions"; "class": "class"; "evenRowCSS": "evenRowCSS"; "oddRowCSS": "oddRowCSS"; "rowClasses": "rowClasses"; "rowStyles": "rowStyles"; "primaryKey": "primaryKey"; "uniqueColumnValuesStrategy": "uniqueColumnValuesStrategy"; "resourceStrings": "resourceStrings"; "filteringLogic": "filteringLogic"; "filteringExpressionsTree": "filteringExpressionsTree"; "advancedFilteringExpressionsTree": "advancedFilteringExpressionsTree"; "locale": "locale"; "pagingMode": "pagingMode"; "paging": "paging"; "page": "page"; "perPage": "perPage"; "hideRowSelectors": "hideRowSelectors"; "rowDraggable": "rowDraggable"; "rowEditable": "rowEditable"; "height": "height"; "width": "width"; "rowHeight": "rowHeight"; "columnWidth": "columnWidth"; "emptyGridMessage": "emptyGridMessage"; "isLoading": "isLoading"; "emptyFilteredGridMessage": "emptyFilteredGridMessage"; "pinning": "pinning"; "allowFiltering": "allowFiltering"; "allowAdvancedFiltering": "allowAdvancedFiltering"; "filterMode": "filterMode"; "summaryPosition": "summaryPosition"; "summaryCalculationMode": "summaryCalculationMode"; "showSummaryOnCollapse": "showSummaryOnCollapse"; "filterStrategy": "filterStrategy"; "sortStrategy": "sortStrategy"; "selectedRows": "selectedRows"; "sortingExpressions": "sortingExpressions"; "batchEditing": "batchEditing"; "cellSelection": "cellSelection"; "rowSelection": "rowSelection"; "columnSelection": "columnSelection"; "expansionStates": "expansionStates"; "outlet": "outlet"; "totalRecords": "totalRecords"; "selectRowOnClick": "selectRowOnClick"; }, { "filteringExpressionsTreeChange": "filteringExpressionsTreeChange"; "advancedFilteringExpressionsTreeChange": "advancedFilteringExpressionsTreeChange"; "gridScroll": "gridScroll"; "pageChange": "pageChange"; "perPageChange": "perPageChange"; "cellClick": "cellClick"; "selected": "selected"; "rowSelectionChanging": "rowSelectionChanging"; "columnSelectionChanging": "columnSelectionChanging"; "columnPin": "columnPin"; "columnPinned": "columnPinned"; "cellEditEnter": "cellEditEnter"; "cellEditExit": "cellEditExit"; "cellEdit": "cellEdit"; "cellEditDone": "cellEditDone"; "rowEditEnter": "rowEditEnter"; "rowEdit": "rowEdit"; "rowEditDone": "rowEditDone"; "rowEditExit": "rowEditExit"; "columnInit": "columnInit"; "sorting": "sorting"; "sortingDone": "sortingDone"; "filtering": "filtering"; "filteringDone": "filteringDone"; "pagingDone": "pagingDone"; "rowAdded": "rowAdded"; "rowDeleted": "rowDeleted"; "rowDelete": "rowDelete"; "rowAdd": "rowAdd"; "columnResized": "columnResized"; "contextMenu": "contextMenu"; "doubleClick": "doubleClick"; "columnVisibilityChanging": "columnVisibilityChanging"; "columnVisibilityChanged": "columnVisibilityChanged"; "columnMovingStart": "columnMovingStart"; "columnMoving": "columnMoving"; "columnMovingEnd": "columnMovingEnd"; "gridKeydown": "gridKeydown"; "rowDragStart": "rowDragStart"; "rowDragEnd": "rowDragEnd"; "gridCopy": "gridCopy"; "expansionStatesChange": "expansionStatesChange"; "rowToggle": "rowToggle"; "rowPinning": "rowPinning"; "rowPinned": "rowPinned"; "activeNodeChange": "activeNodeChange"; "sortingExpressionsChange": "sortingExpressionsChange"; "toolbarExporting": "toolbarExporting"; "rangeSelected": "rangeSelected"; "rendered": "rendered"; "localeChange": "localeChange"; }, ["actionStrip", "excelStyleLoadingValuesTemplateDirective", "rowAddText", "rowExpandedIndicatorTemplate", "rowCollapsedIndicatorTemplate", "headerExpandIndicatorTemplate", "headerCollapseIndicatorTemplate", "excelStyleHeaderIconTemplate", "sortAscendingHeaderIconTemplate", "sortDescendingHeaderIconTemplate", "sortHeaderIconTemplate", "excelStyleFilteringComponents", "columnList", "headSelectorsTemplates", "rowSelectorsTemplates", "dragGhostCustomTemplates", "rowEditCustomDirectives", "rowEditTextDirectives", "rowEditActionsDirectives", "dragIndicatorIconTemplates", "rowEditTabsCUSTOM", "toolbar", "paginationComponents"]>;
|
|
3387
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IgxGridBaseDirective, never, never, { "snackbarDisplayTime": "snackbarDisplayTime"; "autoGenerate": "autoGenerate"; "emptyGridTemplate": "emptyGridTemplate"; "addRowEmptyTemplate": "addRowEmptyTemplate"; "loadingGridTemplate": "loadingGridTemplate"; "summaryRowHeight": "summaryRowHeight"; "dataCloneStrategy": "dataCloneStrategy"; "clipboardOptions": "clipboardOptions"; "class": "class"; "evenRowCSS": "evenRowCSS"; "oddRowCSS": "oddRowCSS"; "rowClasses": "rowClasses"; "rowStyles": "rowStyles"; "primaryKey": "primaryKey"; "uniqueColumnValuesStrategy": "uniqueColumnValuesStrategy"; "resourceStrings": "resourceStrings"; "filteringLogic": "filteringLogic"; "filteringExpressionsTree": "filteringExpressionsTree"; "advancedFilteringExpressionsTree": "advancedFilteringExpressionsTree"; "locale": "locale"; "pagingMode": "pagingMode"; "paging": "paging"; "page": "page"; "perPage": "perPage"; "hideRowSelectors": "hideRowSelectors"; "rowDraggable": "rowDraggable"; "rowEditable": "rowEditable"; "height": "height"; "width": "width"; "rowHeight": "rowHeight"; "columnWidth": "columnWidth"; "emptyGridMessage": "emptyGridMessage"; "isLoading": "isLoading"; "emptyFilteredGridMessage": "emptyFilteredGridMessage"; "pinning": "pinning"; "allowFiltering": "allowFiltering"; "allowAdvancedFiltering": "allowAdvancedFiltering"; "filterMode": "filterMode"; "summaryPosition": "summaryPosition"; "summaryCalculationMode": "summaryCalculationMode"; "showSummaryOnCollapse": "showSummaryOnCollapse"; "filterStrategy": "filterStrategy"; "sortStrategy": "sortStrategy"; "selectedRows": "selectedRows"; "sortingExpressions": "sortingExpressions"; "batchEditing": "batchEditing"; "cellSelection": "cellSelection"; "rowSelection": "rowSelection"; "columnSelection": "columnSelection"; "expansionStates": "expansionStates"; "outlet": "outlet"; "totalRecords": "totalRecords"; "selectRowOnClick": "selectRowOnClick"; }, { "filteringExpressionsTreeChange": "filteringExpressionsTreeChange"; "advancedFilteringExpressionsTreeChange": "advancedFilteringExpressionsTreeChange"; "gridScroll": "gridScroll"; "pageChange": "pageChange"; "perPageChange": "perPageChange"; "cellClick": "cellClick"; "selected": "selected"; "rowSelectionChanging": "rowSelectionChanging"; "columnSelectionChanging": "columnSelectionChanging"; "columnPin": "columnPin"; "columnPinned": "columnPinned"; "cellEditEnter": "cellEditEnter"; "cellEditExit": "cellEditExit"; "cellEdit": "cellEdit"; "cellEditDone": "cellEditDone"; "rowEditEnter": "rowEditEnter"; "rowEdit": "rowEdit"; "rowEditDone": "rowEditDone"; "rowEditExit": "rowEditExit"; "columnInit": "columnInit"; "sorting": "sorting"; "sortingDone": "sortingDone"; "filtering": "filtering"; "filteringDone": "filteringDone"; "pagingDone": "pagingDone"; "rowAdded": "rowAdded"; "rowDeleted": "rowDeleted"; "rowDelete": "rowDelete"; "rowAdd": "rowAdd"; "columnResized": "columnResized"; "contextMenu": "contextMenu"; "doubleClick": "doubleClick"; "columnVisibilityChanging": "columnVisibilityChanging"; "columnVisibilityChanged": "columnVisibilityChanged"; "columnMovingStart": "columnMovingStart"; "columnMoving": "columnMoving"; "columnMovingEnd": "columnMovingEnd"; "gridKeydown": "gridKeydown"; "rowDragStart": "rowDragStart"; "rowDragEnd": "rowDragEnd"; "gridCopy": "gridCopy"; "expansionStatesChange": "expansionStatesChange"; "rowToggle": "rowToggle"; "rowPinning": "rowPinning"; "rowPinned": "rowPinned"; "activeNodeChange": "activeNodeChange"; "sortingExpressionsChange": "sortingExpressionsChange"; "toolbarExporting": "toolbarExporting"; "rangeSelected": "rangeSelected"; "rendered": "rendered"; "localeChange": "localeChange"; }, ["actionStrip", "excelStyleLoadingValuesTemplateDirective", "rowAddText", "rowExpandedIndicatorTemplate", "rowCollapsedIndicatorTemplate", "headerExpandIndicatorTemplate", "headerCollapseIndicatorTemplate", "excelStyleHeaderIconTemplate", "sortAscendingHeaderIconTemplate", "sortDescendingHeaderIconTemplate", "sortHeaderIconTemplate", "excelStyleFilteringComponents", "columnList", "headSelectorsTemplates", "rowSelectorsTemplates", "dragGhostCustomTemplates", "rowEditCustomDirectives", "rowEditTextDirectives", "rowEditActionsDirectives", "dragIndicatorIconTemplates", "rowEditTabsCUSTOM", "toolbar", "paginationComponents"]>;
|
|
3376
3388
|
}
|
|
@@ -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
|
@@ -28,6 +28,7 @@ export * from './lib/directives/date-time-editor/public_api';
|
|
|
28
28
|
/**
|
|
29
29
|
* Data operations
|
|
30
30
|
*/
|
|
31
|
+
export * from './lib/data-operations/data-clone-strategy';
|
|
31
32
|
export * from './lib/data-operations/filtering-expression.interface';
|
|
32
33
|
export * from './lib/data-operations/filtering-expressions-tree';
|
|
33
34
|
export * from './lib/data-operations/filtering-condition';
|