UNPKG

igniteui-webcomponents-grids

Version:

Ignite UI Web Components grid components.

68 lines (67 loc) 2.34 kB
import { IgcGridColumnCollection } from "./igc-grid-column-collection"; import { GridColumnsAutoGeneratedEventArgs as GridColumnsAutoGeneratedEventArgs_internal } from "./GridColumnsAutoGeneratedEventArgs"; import { GridColumnCollection as GridColumnCollection_internal } from "./GridColumnCollection"; import { DataGridColumn } from "./DataGridColumn"; import { SyncableObservableCollection$1 } from "igniteui-webcomponents-core"; /** * Information about the generated columns. */ export class IgcGridColumnsAutoGeneratedEventArgs { createImplementation() { return new GridColumnsAutoGeneratedEventArgs_internal(); } /** * @hidden */ get i() { return this._implementation; } onImplementationCreated() { } constructor() { this._columns = null; this._implementation = this.createImplementation(); this._implementation.externalObject = this; this.onImplementationCreated(); if (this._initializeAdapters) { this._initializeAdapters(); } } _provideImplementation(i) { this._implementation = i; this._implementation.externalObject = this; this.onImplementationCreated(); if (this._initializeAdapters) { this._initializeAdapters(); } } get columns() { if (this._columns === null) { let coll = new IgcGridColumnCollection(); let innerColl = this.i.columns; if (!innerColl) { innerColl = new GridColumnCollection_internal(); } this._columns = coll._fromInner(innerColl); this.i.columns = innerColl; } return this._columns; } set columns(v) { if (this._columns !== null) { this._columns._setSyncTarget(null); this._columns = null; } let coll = new IgcGridColumnCollection(); this._columns = coll._fromOuter(v); let syncColl = new SyncableObservableCollection$1(DataGridColumn.$type); let innerColl = this.i.columns; if (!innerColl) { innerColl = new GridColumnCollection_internal(); } syncColl._inner = innerColl; syncColl.clear(); this._columns._setSyncTarget(syncColl); this.i.columns = innerColl; } }