-
Notifications
You must be signed in to change notification settings - Fork 155
/
Copy pathinputmask-edit-cell.ts
31 lines (28 loc) · 1.2 KB
/
inputmask-edit-cell.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import { extend } from '@syncfusion/ej2-base';
import { IEditCell } from '../base/interface';
import { Column } from '../models/column';
import { MaskedTextBox } from '@syncfusion/ej2-inputs';
import { isEditable, getObject } from '../base/util';
import { EditCellBase } from './edit-cell-base';
/**
* `MaskedTextBoxCellEdit` is used to handle masked input cell type editing.
*
* @hidden
*/
export class MaskedTextBoxCellEdit extends EditCellBase implements IEditCell {
private column: Column;
public write(args: { rowData: Object, element: Element, column: Column, row: HTMLElement, requestType: string }): void {
this.column = args.column;
const isInlineEdit: boolean = this.parent.editSettings.mode !== 'Dialog';
this.obj = new MaskedTextBox(extend(
{
fields: { value: args.column.field },
value: getObject(args.column.field, args.rowData),
floatLabelType: isInlineEdit ? 'Never' : 'Always',
mask: '000-000-0000',
enabled: isEditable(args.column, args.requestType, args.element)
},
args.column.edit.params));
this.obj.appendTo(args.element as HTMLElement);
}
}