igniteui-react-grids
Version:
Ignite UI React grid components.
62 lines (61 loc) • 2.13 kB
JavaScript
import { IgrColumnCollection } from "./igr-column-collection";
import { IgrBaseEventArgsDetail } from "./igr-base-event-args-detail";
import { ColumnsAutoGeneratedEventArgsDetail as ColumnsAutoGeneratedEventArgsDetail_internal } from "./ColumnsAutoGeneratedEventArgsDetail";
import { ColumnCollection as ColumnCollection_internal } from "./ColumnCollection";
import { Column } from "./Column";
import { SyncableObservableCollection$1 } from "igniteui-react-core";
/**
* @hidden @internal
*/
export class IgrColumnsAutoGeneratedEventArgsDetail extends IgrBaseEventArgsDetail {
createImplementation() {
return new ColumnsAutoGeneratedEventArgsDetail_internal();
}
/**
* @hidden
*/
get i() {
return this._implementation;
}
constructor() {
super();
this._columns = null;
}
get columns() {
if (this._columns === null) {
let coll = new IgrColumnCollection();
let innerColl = this.i.g;
if (!innerColl) {
innerColl = new ColumnCollection_internal();
}
this._columns = coll._fromInner(innerColl);
}
return this._columns;
}
set columns(v) {
if (this._columns !== null) {
this._columns._setSyncTarget(null);
this._columns = null;
}
let coll = new IgrColumnCollection();
this._columns = coll._fromOuter(v);
let syncColl = new SyncableObservableCollection$1(Column.$type);
let innerColl = this.i.g;
if (!innerColl) {
innerColl = new ColumnCollection_internal();
}
syncColl._inner = innerColl;
syncColl.clear();
this._columns._setSyncTarget(syncColl);
}
findByName(name) {
var baseResult = super.findByName(name);
if (baseResult) {
return baseResult;
}
if (this.columns != null && this.columns.findByName && this.columns.findByName(name)) {
return this.columns.findByName(name);
}
return null;
}
}