igniteui-angular
Version:
Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps
157 lines (156 loc) • 5.97 kB
TypeScript
import { IGridEditDoneEventArgs, IGridEditEventArgs, IRowDataCancelableEventArgs } from '../common/events';
import { GridType, RowType } from './grid.interface';
import { Subject } from 'rxjs';
import { FormGroup } from '@angular/forms';
import * as i0 from "@angular/core";
export declare class IgxEditRow {
id: any;
index: number;
data: any;
grid: GridType;
transactionState: any;
state: any;
newData: any;
rowFormGroup: FormGroup<{}>;
constructor(id: any, index: number, data: any, grid: GridType);
createRowEditEventArgs(includeNewValue?: boolean, event?: Event): IGridEditEventArgs;
createRowDataEventArgs(event?: Event): IRowDataCancelableEventArgs;
createRowEditDoneEventArgs(cachedRowData: any, event?: Event): IGridEditDoneEventArgs;
getClassName(): string;
}
export declare class IgxAddRow extends IgxEditRow {
recordRef: any;
isAddRow: boolean;
constructor(id: any, index: number, data: any, recordRef: any, grid: GridType);
createRowEditEventArgs(includeNewValue?: boolean, event?: Event): IGridEditEventArgs;
createRowEditDoneEventArgs(cachedRowData: any, event?: Event): IGridEditDoneEventArgs;
}
export interface IgxAddRowParent {
/**
* @deprecated since version 17.1.0. Use `rowKey` instead
*/
rowID: string;
rowKey: any;
index: number;
asChild: boolean;
isPinned: boolean;
}
export declare class IgxCell {
id: any;
rowIndex: number;
column: any;
value: any;
_editValue: any;
rowData: any;
grid: GridType;
primaryKey: any;
state: any;
pendingValue: any;
constructor(id: any, rowIndex: number, column: any, value: any, _editValue: any, rowData: any, grid: GridType);
get editValue(): any;
set editValue(value: any);
castToNumber(value: any): any;
createCellEditEventArgs(includeNewValue?: boolean, event?: Event): IGridEditEventArgs;
createCellEditDoneEventArgs(value: any, event?: Event): IGridEditDoneEventArgs;
}
export declare class IgxCellCrudState {
grid: GridType;
cell: IgxCell | null;
row: IgxEditRow | null;
isInCompositionMode: boolean;
createCell(cell: any): IgxCell;
createRow(cell: IgxCell): IgxEditRow;
sameRow(rowID: any): boolean;
sameCell(cell: IgxCell): boolean;
get cellInEditMode(): boolean;
beginCellEdit(event?: Event): void;
cellEdit(event?: Event): IGridEditEventArgs;
updateCell(exit: boolean, event?: Event): IGridEditEventArgs;
cellEditDone(event: any, addRow: boolean): IGridEditDoneEventArgs;
/** Exit cell edit mode */
exitCellEdit(event?: Event): IGridEditDoneEventArgs;
/** Clears cell editing state */
endCellEdit(): void;
/** Returns whether the targeted cell is in edit mode */
targetInEdit(rowIndex: number, columnIndex: number): boolean;
}
export declare class IgxRowCrudState extends IgxCellCrudState {
closeRowEditingOverlay: Subject<unknown>;
private _rowEditingBlocked;
private _rowEditingStarted;
get primaryKey(): any;
get rowInEditMode(): RowType;
get rowEditing(): boolean;
get nonEditable(): boolean;
get rowEditingBlocked(): boolean;
set rowEditingBlocked(val: boolean);
/** Enters row edit mode */
beginRowEdit(event?: Event): boolean;
rowEdit(event: Event): IGridEditEventArgs;
updateRow(commit: boolean, event?: Event): IGridEditEventArgs;
/**
* @hidden @internal
*/
endRowTransaction(commit: boolean, event?: Event): IGridEditEventArgs | IRowDataCancelableEventArgs;
rowEditDone(cachedRowData: any, event: Event): IGridEditDoneEventArgs;
/** Exit row edit mode */
exitRowEdit(cachedRowData: any, event?: Event): IGridEditDoneEventArgs;
/** Clears row editing state */
endRowEdit(): void;
/** Clears cell and row editing state and closes row editing template if it is open */
endEditMode(): void;
updateRowEditData(row: IgxEditRow, value?: any): void;
protected getParentRowId(): any;
}
export declare class IgxRowAddCrudState extends IgxRowCrudState {
addRowParent: IgxAddRowParent;
/**
* @hidden @internal
*/
createAddRow(parentRow: RowType, asChild?: boolean): IgxAddRow;
/**
* @hidden @internal
*/
createAddRowParent(row: RowType, newRowAsChild?: boolean): void;
/**
* @hidden @internal
*/
endRowTransaction(commit: boolean, event?: Event): IGridEditEventArgs | IRowDataCancelableEventArgs;
/**
* @hidden @internal
*/
endAddRow(): void;
/**
* @hidden
* @internal
* TODO: consider changing modifier
*/
_findRecordIndexInView(rec: any): number;
protected getParentRowId(): any;
}
export declare class IgxGridCRUDService extends IgxRowAddCrudState {
enterEditMode(cell: any, event?: Event): boolean;
/**
* Enters add row mode by creating temporary dummy so the user can fill in new row cells.
*
* @param parentRow Parent row after which the Add Row UI will be rendered.
* If `null` will show it at the bottom after all rows (or top if there are not rows).
* @param asChild Specifies if the new row should be added as a child to a tree row.
* @param event Base event that triggered the add row mode.
*/
enterAddRowMode(parentRow: RowType, asChild?: boolean, event?: Event): void;
/**
* Finishes the row transactions on the current row and returns whether the grid editing was canceled.
*
* @remarks
* If `commit === true`, passes them from the pending state to the data (or transaction service)
* @example
* ```html
* <button type="button" igxButton (click)="grid.endEdit(true)">Commit Row</button>
* ```
* @param commit
*/
endEdit(commit?: boolean, event?: Event): boolean;
static ɵfac: i0.ɵɵFactoryDeclaration<IgxGridCRUDService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<IgxGridCRUDService>;
}