igniteui-webcomponents-grids
Version:
Ignite UI Web Components grid components.
54 lines (53 loc) • 2.37 kB
JavaScript
import { IgCollection } from "igniteui-webcomponents-core";
import { markType } from "igniteui-webcomponents-core";
import { SyncableObservableCollection$2 } from "igniteui-webcomponents-core";
import { GridFilterDialogViewModelGroupingLevel as GridFilterDialogViewModelGroupingLevel_internal } from './GridFilterDialogViewModelGroupingLevel';
import { IgcGridFilterDialogViewModelGroupingLevel as IgcGridFilterDialogViewModelGroupingLevel } from './igc-grid-filter-dialog-view-model-grouping-level';
export class IgcGridFilterDialogViewModelGroupingLevelCollection extends IgCollection {
constructor(list) {
super();
if (!IgcGridFilterDialogViewModelGroupingLevel.$type) {
IgcGridFilterDialogViewModelGroupingLevel.$type = markType(IgcGridFilterDialogViewModelGroupingLevel, "IgcGridFilterDialogViewModelGroupingLevel");
}
if (list) {
for (let i = 0; i < list.length; i++) {
this.add(list[i]);
}
}
}
_createInnerColl() {
if (!IgcGridFilterDialogViewModelGroupingLevel.$type) {
IgcGridFilterDialogViewModelGroupingLevel.$type = markType(IgcGridFilterDialogViewModelGroupingLevel, "IgcGridFilterDialogViewModelGroupingLevel");
}
let coll = new SyncableObservableCollection$2(IgcGridFilterDialogViewModelGroupingLevel.$type, GridFilterDialogViewModelGroupingLevel_internal.$type, 0);
coll.compare = (ext, int) => {
let comp = ext;
if (comp._implementation) {
comp = comp._implementation;
}
if (comp.equals) {
return comp.equals(int);
}
return comp === int;
};
coll.createTo = (ext) => {
return ext._implementation;
};
coll.createFrom = (int) => {
let ext = int.externalObject;
if (!ext) {
ext = new IgcGridFilterDialogViewModelGroupingLevel();
if (ext) {
if (!int.$type && ext._implementation.setNativeElement) {
ext._implementation.setNativeElement(int);
}
else {
ext._implementation = int;
}
}
}
return ext;
};
return coll;
}
}