UNPKG

igniteui-webcomponents-grids

Version:

Ignite UI Web Components grid components.

54 lines (53 loc) 2.37 kB
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; } }