UNPKG

igniteui-angular-core

Version:

Ignite UI Angular Core logic used in multiple UI components.

81 lines (80 loc) 2.42 kB
import { IgxDataSourceSummaryDescription } from "./igx-data-source-summary-description"; import { DataSourceSummaryDescriptionCollection as DataSourceSummaryDescriptionCollection_internal } from "./DataSourceSummaryDescriptionCollection"; import { ensureBool } from "./componentUtil"; export class IgxDataSourceSummaryDescriptionCollection { constructor() { this._implementation = this.createImplementation(); this._implementation.externalObject = this; this.onImplementationCreated(); if (this._initializeAdapters) { this._initializeAdapters(); } } createImplementation() { return new DataSourceSummaryDescriptionCollection_internal(); } /** * @hidden */ get i() { return this._implementation; } onImplementationCreated() { } _provideImplementation(i) { this._implementation = i; this._implementation.externalObject = this; this.onImplementationCreated(); } /** * Gets or sets whether this collection should detach the sync when the target collection changes. */ get shouldDetachOnTargetChange() { return this.i.i; } set shouldDetachOnTargetChange(v) { this.i.i = ensureBool(v); } findByName(name) { if (this.findEphemera) { if (name && name.indexOf("@@e:") == 0) { return this.findEphemera(name); } } return null; } add(item) { let iv = this.i.g((item == null ? null : item.i)); return (iv); } insert(index, item) { this.i.p(index, (item == null ? null : item.i)); } clear() { this.i.o(); } indexOf(item) { let iv = this.i.k((item == null ? null : item.i)); return (iv); } remove(item) { let iv = this.i.h((item == null ? null : item.i)); return (iv); } removeAt(index) { let iv = this.i.b(index); let ret = null; if (iv && iv.externalObject) { ret = iv.externalObject; } else { if (iv) { let e = new IgxDataSourceSummaryDescription(); e._implementation = iv; iv.externalObject = e; ret = e; } } return ret; } }