igniteui-webcomponents-grids
Version:
Ignite UI Web Components grid components.
933 lines (927 loc) • 35.8 kB
JavaScript
import { fromSize, toSize, ensureEnum, brushToString, stringToBrush, ensureBool, initializePropertiesFromCss, NamePatcher, toSpinal, enumToString, getAllPropertyNames, fromSpinal } from "igniteui-webcomponents-core";
import { FontInfo } from "igniteui-webcomponents-core";
import { WebComponentRenderer } from "igniteui-webcomponents-core";
import { delegateCombine, delegateRemove } from "igniteui-webcomponents-core";
import { SyncableObservableCollection$1 } from "igniteui-webcomponents-core";
import { TypeRegistrar } from "igniteui-webcomponents-core";
import { RegisterElementHelper } from "igniteui-webcomponents-core";
import { CheckboxList } from './CheckboxList';
import { IgcCheckedChangedEventArgs } from "./igc-checked-changed-event-args";
import { IgcSelectAllCheckboxChangedEventArgs } from "./igc-select-all-checkbox-changed-event-args";
import { PrimaryKeyValue } from "./PrimaryKeyValue";
import { IgcGridSelectedKeysCollection } from "./igc-grid-selected-keys-collection";
import { GridSelectedKeysCollection as GridSelectedKeysCollection_internal } from "./GridSelectedKeysCollection";
import { CheckboxListIndexType_$type } from "./CheckboxListIndexType";
import { InputGroupDisplayType_$type } from "igniteui-webcomponents-inputs";
import { BaseControlTheme_$type } from "igniteui-webcomponents-core";
import { ControlDisplayDensity_$type } from "igniteui-webcomponents-core";
import { ScrollbarStyle_$type } from "igniteui-webcomponents-core";
import { IgcHTMLElement } from "igniteui-webcomponents-core";
import { IgcCheckboxListIndexTypeChangedEventArgs } from './igc-checkbox-list-index-type-changed-event-args';
import { IgcCheckboxListKeysClearedEventArgs } from './igc-checkbox-list-keys-cleared-event-args';
export let IgcCheckboxListComponent = /*@__PURE__*/ (() => {
class IgcCheckboxListComponent extends IgcHTMLElement {
set height(value) {
this._height = value;
this.style.height = value;
this.i.notifySizeChanged();
}
get height() {
return this._height;
}
set width(value) {
this._width = value;
this.style.width = value;
this.i.notifySizeChanged();
}
get width() {
return this._width;
}
set dataSource(value) {
this._dataSource = value;
if (this._checkboxList != null) {
this._checkboxList.itemsSource = this._dataSource;
}
}
get dataSource() {
return this._dataSource;
}
constructor() {
super();
this._dataSource = null;
this._disconnected = false;
this._settingAttributes = false;
this._attached = false;
this._queuedSetAttributes = [];
this._updatingFromAttribute = false;
this._keys = null;
this.__p = null;
this._hasUserValues = new Set();
this._stylingContainer = null;
this._stylingParent = null;
this._inStyling = false;
this._selectedKeyAdded = null;
this._selectedKeyAdded_wrapped = null;
this._selectedKeyRemoved = null;
this._selectedKeyRemoved_wrapped = null;
this._checkedChanged = null;
this._checkedChanged_wrapped = null;
this._labelClicked = null;
this._labelClicked_wrapped = null;
this._indexTypeChanged = null;
this._indexTypeChanged_wrapped = null;
this._keysCleared = null;
this._keysCleared_wrapped = null;
this._selectAllCheckboxChanged = null;
this._selectAllCheckboxChanged_wrapped = null;
if (this._styling) {
NamePatcher.ensureStylablePatched(Object.getPrototypeOf(this));
}
this._renderer = new WebComponentRenderer(this, document, true, null);
this._implementation = this.createImplementation();
this._container = this._renderer.createElement("div");
this._renderer.updateRoot(this._container);
this._container.setStyleProperty("display", "block");
this._container.setStyleProperty("width", "100%");
this._container.setStyleProperty("height", "100%");
var checkboxList = this.i;
this._checkboxList = checkboxList;
this._renderer.addSizeWatcher(() => {
this._checkboxList.notifySizeChanged();
});
}
// supports angular themes or custom properties set in CSS
updateStyle() {
this._styling(this, this);
}
destroy() {
this._checkboxList.destroy();
}
createImplementation() {
return new CheckboxList();
}
disconnectedCallback() {
this._disconnected = true;
}
connectedCallback() {
if (this._disconnected) {
this._disconnected = false;
return;
}
this.classList.add("ig-checkbox-list");
this.classList.add("igc-checkbox-list");
var rootWrapper = this._renderer.rootWrapper;
var rootElement = rootWrapper.getNativeElement();
this.appendChild(rootElement);
this._attached = true;
this.style.display = "block";
this.style.height = this._height;
this.style.width = this._width;
var filterContainer = this._renderer.createElement("div");
this._container.append(filterContainer);
var filterHr = this._renderer.createElement("hr");
this._container.append(filterHr);
filterHr.setStyleProperty("margin", "3px 0px");
filterHr.setStyleProperty("border-top", "1px solid #dde2eb");
filterHr.setStyleProperty("border-left", "0px");
filterHr.setStyleProperty("border-right", "0px");
filterHr.setStyleProperty("border-bottom", "0px");
this.i.provideHrElement(filterHr);
/*var filterInput = this._renderer.createElement("input");
filterInput.getNativeElement().type = "text";
filterContainer.append(filterInput);*/
var selectAllSection = this._renderer.createElement("div");
this._container.append(selectAllSection);
var grid = this._renderer.createElement("igc-data-grid");
grid.getNativeElement().headerHeight = 0;
this._container.append(grid);
this._checkboxList.provideContainer(this._renderer, grid.getNativeElement().i, selectAllSection);
this._checkboxList.notifySizeChanged();
this._flushQueuedAttributes();
// supports themes or custom properties set in CSS
this._styling(this, this);
this.afterContentInit();
}
afterContentInit() {
this.i.notifySizeChanged();
}
/**
* @hidden
*/
get i() {
return this._implementation;
} /**
* @hidden
*/
static _createFromInternal(internal) {
if (!internal) {
return null;
}
if (!internal.$type) {
return null;
}
let name = internal.$type.name;
let externalName = "Igc" + name + "Component";
if (!TypeRegistrar.isRegistered(externalName)) {
return null;
}
return TypeRegistrar.create(externalName);
}
_enqueueSetAttribute(attrName, attrValue) {
this._queuedSetAttributes.push({ attrName: attrName, attrValue: attrValue });
}
_flushQueuedAttributes() {
this._settingAttributes = true;
for (let i = 0; i < this._queuedSetAttributes.length; i++) {
this.setAttribute(this._queuedSetAttributes[i].attrName, this._queuedSetAttributes[i].attrValue);
}
this._settingAttributes = false;
this._queuedSetAttributes.length = 0;
}
_a(attrName, attrValue) {
if (this._updatingFromAttribute) {
return;
}
if (attrValue) {
attrValue = attrValue.toString();
}
this._settingAttributes = true;
attrName = toSpinal(attrName);
if (this._attached) {
this.setAttribute(attrName, attrValue);
}
else {
this._enqueueSetAttribute(attrName, attrValue);
}
this._settingAttributes = false;
}
static get observedAttributes() {
if (IgcCheckboxListComponent._observedAttributesIgcCheckboxListComponent == null) {
let names = getAllPropertyNames(IgcCheckboxListComponent);
for (let i = 0; i < names.length; i++) {
names[i] = toSpinal(names[i]);
}
IgcCheckboxListComponent._observedAttributesIgcCheckboxListComponent = names;
}
return IgcCheckboxListComponent._observedAttributesIgcCheckboxListComponent;
}
attributeChangedCallback(name, oldValue, newValue) {
if (this._settingAttributes) {
return;
}
let setName = fromSpinal(name);
this._updatingFromAttribute = true;
this[setName] = newValue;
this._updatingFromAttribute = false;
}
static register() {
if (!IgcCheckboxListComponent._isElementRegistered) {
IgcCheckboxListComponent._isElementRegistered = true;
RegisterElementHelper.registerElement(IgcCheckboxListComponent.htmlTagName, IgcCheckboxListComponent);
}
}
/**
* Gets the collection responsible for selection in the CheckboxList. Selection is determined by two factors:
* whether everything is selected or deselected and the values present in this collection. If everything is
* selected then any items in this collection will be deselected. If everything is deselected then any items in
* this collection will be selected. The CheckboxList defaults all items as deselected. This state can change
* when you use the SelectAll and DeselectAll methods.
*/
get keys() {
if (this._keys === null) {
let coll = new IgcGridSelectedKeysCollection();
let innerColl = this.i.keys;
if (!innerColl) {
innerColl = new GridSelectedKeysCollection_internal();
}
this._keys = coll._fromInner(innerColl);
}
return this._keys;
}
set keys(v) {
if (this._keys !== null) {
this._keys._setSyncTarget(null);
this._keys = null;
}
let coll = new IgcGridSelectedKeysCollection();
this._keys = coll._fromOuter(v);
let syncColl = new SyncableObservableCollection$1(PrimaryKeyValue.$type);
let innerColl = this.i.keys;
if (!innerColl) {
innerColl = new GridSelectedKeysCollection_internal();
}
syncColl._inner = innerColl;
syncColl.clear();
this._keys._setSyncTarget(syncColl);
}
/**
* Gets or sets the primary key to use for the CheckboxList.
*/
get primaryKey() {
return this.i.primaryKey;
}
set primaryKey(v) {
if (v && !Array.isArray(v) && typeof (v) == "string") {
const re = /\s*(?:,|\s|$)\s*/gm;
v = v.split(re);
}
this.i.primaryKey = v;
}
/**
* Gets or Sets the property name that contains the values.
*/
get dataMemberPath() {
return this.i.dataMemberPath;
}
set dataMemberPath(v) {
this.i.dataMemberPath = v;
}
get dataLegendTarget() {
return this.i.bh;
}
set dataLegendTarget(v) {
this.i.bh = v;
}
/**
* Gets or Sets the property name that contains the values.
*/
get subtitleMemberPath() {
return this.i.cw;
}
set subtitleMemberPath(v) {
this.i.cw = v;
}
get propertyTypeMemberPath() {
return this.i.cb;
}
set propertyTypeMemberPath(v) {
this.i.cb = v;
}
/**
* Gets or Sets the property name that contains the values.
*/
get selectedMemberPath() {
return this.i.selectedMemberPath;
}
set selectedMemberPath(v) {
this.i.selectedMemberPath = v;
}
/**
* Gets or Sets the property name that contains the values.
*/
get filterPlaceholderText() {
return this.i.b4;
}
set filterPlaceholderText(v) {
this.i.b4 = v;
}
/**
* Gets or Sets the property name that contains the values.
*/
get searchInputType() {
return this.i.y;
}
set searchInputType(v) {
this.i.y = ensureEnum(InputGroupDisplayType_$type, v);
this._a("searchInputType", enumToString(InputGroupDisplayType_$type, this.i.y));
}
/**
* Gets or Sets the property name that contains the values.
*/
get rowHeight() {
return this.i.be;
}
set rowHeight(v) {
this.i.be = +v;
this._a("rowHeight", this.i.be);
}
get actualRowHeight() {
return this.i.bc;
}
/**
* Gets or Sets the property name that contains the values.
*/
get cellTextStyle() {
if (this.i.am == null) {
return null;
}
return this.i.am.fontString;
}
set cellTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.am = fi;
this._a("cellTextStyle", this.i.am != null ? this.i.am.fontString : "");
}
/**
* Gets or Sets the property name that contains the values.
*/
get indexType() {
return this.i.indexType;
}
set indexType(v) {
this.i.indexType = ensureEnum(CheckboxListIndexType_$type, v);
this._a("indexType", enumToString(CheckboxListIndexType_$type, this.i.indexType));
}
/**
* Gets or Sets the property name that contains the values.
*/
get baseTheme() {
return this.i.baseTheme;
}
set baseTheme(v) {
this.i.baseTheme = ensureEnum(BaseControlTheme_$type, v);
this._a("baseTheme", enumToString(BaseControlTheme_$type, this.i.baseTheme));
}
/**
* Gets or Sets the property name that contains the values.
*/
get density() {
return this.i.density;
}
set density(v) {
this.i.density = ensureEnum(ControlDisplayDensity_$type, v);
this._a("density", enumToString(ControlDisplayDensity_$type, this.i.density));
}
/**
* Gets or sets the search icon color.
*/
get searchIconColor() {
return brushToString(this.i.searchIconColor);
}
set searchIconColor(v) {
this.i.searchIconColor = stringToBrush(v);
this._a("searchIconColor", brushToString(this.i.searchIconColor));
}
/**
* Gets or sets the search background color.
*/
get searchBackgroundColor() {
return brushToString(this.i.e1);
}
set searchBackgroundColor(v) {
this.i.e1 = stringToBrush(v);
this._a("searchBackgroundColor", brushToString(this.i.e1));
}
/**
* Gets or sets the search background color.
*/
get labelClickTriggersChange() {
return this.i.a1;
}
set labelClickTriggersChange(v) {
this.i.a1 = ensureBool(v);
this._a("labelClickTriggersChange", this.i.a1);
}
/**
* Gets or sets the search text color.
*/
get searchTextColor() {
return brushToString(this.i.searchTextColor);
}
set searchTextColor(v) {
this.i.searchTextColor = stringToBrush(v);
this._a("searchTextColor", brushToString(this.i.searchTextColor));
}
/**
* Gets or sets the search border color.
*/
get searchBorderColor() {
return brushToString(this.i.e2);
}
set searchBorderColor(v) {
this.i.e2 = stringToBrush(v);
this._a("searchBorderColor", brushToString(this.i.e2));
}
/**
* Gets or sets the text style.
*/
get searchTextStyle() {
if (this.i.an == null) {
return null;
}
return this.i.an.fontString;
}
set searchTextStyle(v) {
let fi = new FontInfo();
fi.fontString = v;
this.i.an = fi;
this._a("searchTextStyle", this.i.an != null ? this.i.an.fontString : "");
}
/**
* Gets or sets the checkbox tick color.
*/
get checkboxTickColor() {
return brushToString(this.i.et);
}
set checkboxTickColor(v) {
this.i.et = stringToBrush(v);
this._a("checkboxTickColor", brushToString(this.i.et));
}
/**
* Gets or sets the checkbox background color when checked.
*/
get checkboxCheckedBackgroundColor() {
return brushToString(this.i.er);
}
set checkboxCheckedBackgroundColor(v) {
this.i.er = stringToBrush(v);
this._a("checkboxCheckedBackgroundColor", brushToString(this.i.er));
}
/**
* Gets or sets the checkbox background color when unchecked.
*/
get checkboxUncheckedBackgroundColor() {
return brushToString(this.i.eu);
}
set checkboxUncheckedBackgroundColor(v) {
this.i.eu = stringToBrush(v);
this._a("checkboxUncheckedBackgroundColor", brushToString(this.i.eu));
}
/**
* Gets or sets the checkbox border color when checked.
*/
get checkboxCheckedBorderColor() {
return brushToString(this.i.es);
}
set checkboxCheckedBorderColor(v) {
this.i.es = stringToBrush(v);
this._a("checkboxCheckedBorderColor", brushToString(this.i.es));
}
/**
* Gets or sets the checkbox border color when unchecked.
*/
get checkboxUncheckedBorderColor() {
return brushToString(this.i.ev);
}
set checkboxUncheckedBorderColor(v) {
this.i.ev = stringToBrush(v);
this._a("checkboxUncheckedBorderColor", brushToString(this.i.ev));
}
/**
* Gets or sets the corner radius to use for the checkbox.
*/
get checkboxCornerRadius() {
return this.i.a7;
}
set checkboxCornerRadius(v) {
this.i.a7 = +v;
this._a("checkboxCornerRadius", this.i.a7);
}
/**
* Gets or sets the style of scrollbar.
*/
get scrollbarStyle() {
return this.i.ab;
}
set scrollbarStyle(v) {
this.i.ab = ensureEnum(ScrollbarStyle_$type, v);
this._a("scrollbarStyle", enumToString(ScrollbarStyle_$type, this.i.ab));
}
/**
* Gets or sets the scrollbar background color.
*/
get scrollbarBackground() {
return brushToString(this.i.e0);
}
set scrollbarBackground(v) {
this.i.e0 = stringToBrush(v);
this._a("scrollbarBackground", brushToString(this.i.e0));
}
/**
* Gets / sets the caption of the "Select All" checkbox.
*/
get selectAllCaption() {
return this.i.cp;
}
set selectAllCaption(v) {
this.i.cp = v;
}
/**
* Gets or sets the color to use for the "Select All" label.
*/
get selectAllCaptionTextColor() {
return brushToString(this.i.e5);
}
set selectAllCaptionTextColor(v) {
this.i.e5 = stringToBrush(v);
this._a("selectAllCaptionTextColor", brushToString(this.i.e5));
}
/**
* Gets or sets the color to use for the actual header selectAllCaption text.
*/
get actualSelectAllCaptionTextColor() {
return brushToString(this.i.ep);
}
set actualSelectAllCaptionTextColor(v) {
this.i.ep = stringToBrush(v);
this._a("actualSelectAllCaptionTextColor", brushToString(this.i.ep));
}
/**
* Gets / sets whether the "Select all" checkbox is visible.
*/
get showSelectAll() {
return this.i.showSelectAll;
}
set showSelectAll(v) {
this.i.showSelectAll = ensureBool(v);
this._a("showSelectAll", this.i.showSelectAll);
}
/**
* Gets or sets the color to use for the background of the component.
*/
get backgroundColor() {
return brushToString(this.i.backgroundColor);
}
set backgroundColor(v) {
this.i.backgroundColor = stringToBrush(v);
this._a("backgroundColor", brushToString(this.i.backgroundColor));
}
/**
* Gets or sets the color to use when hovering over a grid row.
*/
get rowHoverBackgroundColor() {
return brushToString(this.i.rowHoverBackgroundColor);
}
set rowHoverBackgroundColor(v) {
this.i.rowHoverBackgroundColor = stringToBrush(v);
this._a("rowHoverBackgroundColor", brushToString(this.i.rowHoverBackgroundColor));
}
/**
* Gets or sets the color to use for the text of the component.
*/
get textColor() {
return brushToString(this.i.e7);
}
set textColor(v) {
this.i.e7 = stringToBrush(v);
this._a("textColor", brushToString(this.i.e7));
}
/**
* Gets or sets whether the filter input is visible.
*/
get showFilter() {
return this.i.a3;
}
set showFilter(v) {
this.i.a3 = ensureBool(v);
this._a("showFilter", this.i.a3);
}
/**
* Gets or sets whether row hover highlighting is enabled.
*/
get isRowHoverEnabled() {
return this.i.az;
}
set isRowHoverEnabled(v) {
this.i.az = ensureBool(v);
this._a("isRowHoverEnabled", this.i.az);
}
/**
* Gets or sets whether checkbox should be displayed to the right.
*/
get checkboxAlignedRight() {
return this.i.av;
}
set checkboxAlignedRight(v) {
this.i.av = ensureBool(v);
this._a("checkboxAlignedRight", this.i.av);
}
findByName(name) {
if (this.findEphemera) {
if (name && name.indexOf("@@e:") == 0) {
return this.findEphemera(name);
}
}
if (this.keys != null && this.keys.findByName && this.keys.findByName(name)) {
return this.keys.findByName(name);
}
return null;
}
get hasUserValues() {
return this._hasUserValues;
}
__m(propertyName) {
if (!this._inStyling) {
this._hasUserValues.add(propertyName);
}
}
_styling(container, component, parent) {
if (this._inStyling) {
return;
}
this._inStyling = true;
this._stylingContainer = container;
this._stylingParent = component;
let genericPrefix = "";
let typeName = this.i.$type.name;
if (typeName.indexOf("Xam") === 0) {
typeName = typeName.substring(3);
}
genericPrefix = toSpinal("CheckboxListComponent");
let additionalPrefixes = [];
let prefix = toSpinal(typeName);
additionalPrefixes.push(prefix + "-");
let b = this.i.$type.baseType;
while (b && b.name != "Object" &&
b.name != "Base" &&
b.name != "Control" &&
b.Name != "DependencyObject" &&
b.Name != "FrameworkElement") {
typeName = b.name;
if (typeName.indexOf("Xam") === 0) {
typeName = typeName.substring(3);
}
let basePrefix = toSpinal(typeName);
additionalPrefixes.push(basePrefix + "-");
b = b.baseType;
}
if (parent) {
let parentTypeName = parent.i.$type.name;
if (parentTypeName.indexOf("Xam") === 0) {
parentTypeName = parentTypeName.substring(3);
}
let parentPrefix = toSpinal(parentTypeName);
additionalPrefixes.push(parentPrefix + "-" + genericPrefix + "-");
additionalPrefixes.push(parentPrefix + "-" + prefix + "-");
}
initializePropertiesFromCss(container, this, genericPrefix + "-", this.hasUserValues, false, additionalPrefixes);
if (this._otherStyling) {
this._otherStyling(container, component, parent);
}
this._inStyling = false;
}
/**
* selects all the items in the checkbox list.
*/
selectAll() {
this.i.d3();
}
/**
* Deselects all the items in the checkbox list.
*/
deselectAll() {
this.i.c5();
}
notifySetItem(index, oldItem, newItem) {
this.i.dg(index, oldItem, newItem);
}
/**
* Manually notifies the checkboxlist's grid that the data it has bound to has been cleared and needs to be re-examined.
* This should not be called if the data that the grid is bound to is already observable.
*/
notifyClearItems() {
this.i.dc();
}
notifyInsertItem(index, newItem) {
this.i.dd(index, newItem);
}
notifyRemoveItem(index, oldItem) {
this.i.df(index, oldItem);
}
refresh() {
this.i.refresh();
}
addKeyValue(value) {
this.i.c0(value);
}
removeKeyValue(value) {
this.i.d1(value);
}
getDesiredSize(availableSize) {
let iv = this.i.getDesiredSize(toSize(availableSize));
return fromSize(iv);
}
/**
* Returns true if no items are selected / checked; otherwise false.
*/
isNothingSelected() {
let iv = this.i.ax();
return (iv);
}
/**
* Returns true if all of the items are selected / checked; otherwise false.
*/
isEverythingSelected() {
let iv = this.i.aw();
return (iv);
}
/**
* Called when an item is added.
*/
get selectedKeyAdded() {
return this._selectedKeyAdded;
}
set selectedKeyAdded(ev) {
if (this._selectedKeyAdded_wrapped !== null) {
this.i.selectedKeyAdded = delegateRemove(this.i.selectedKeyAdded, this._selectedKeyAdded_wrapped);
this._selectedKeyAdded_wrapped = null;
this._selectedKeyAdded = null;
}
this._selectedKeyAdded = ev;
this._selectedKeyAdded_wrapped = (o, e) => {
let outerArgs = new IgcCheckedChangedEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeSelectedKeyAdded) {
this.beforeSelectedKeyAdded(this, outerArgs);
}
if (this._selectedKeyAdded) {
this._selectedKeyAdded(this, outerArgs);
}
};
this.i.selectedKeyAdded = delegateCombine(this.i.selectedKeyAdded, this._selectedKeyAdded_wrapped);
;
}
/**
* Called when an item is removed.
*/
get selectedKeyRemoved() {
return this._selectedKeyRemoved;
}
set selectedKeyRemoved(ev) {
if (this._selectedKeyRemoved_wrapped !== null) {
this.i.selectedKeyRemoved = delegateRemove(this.i.selectedKeyRemoved, this._selectedKeyRemoved_wrapped);
this._selectedKeyRemoved_wrapped = null;
this._selectedKeyRemoved = null;
}
this._selectedKeyRemoved = ev;
this._selectedKeyRemoved_wrapped = (o, e) => {
let outerArgs = new IgcCheckedChangedEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeSelectedKeyRemoved) {
this.beforeSelectedKeyRemoved(this, outerArgs);
}
if (this._selectedKeyRemoved) {
this._selectedKeyRemoved(this, outerArgs);
}
};
this.i.selectedKeyRemoved = delegateCombine(this.i.selectedKeyRemoved, this._selectedKeyRemoved_wrapped);
;
}
/**
* Called when a checkbox is checked or unchecked.
*/
get checkedChanged() {
return this._checkedChanged;
}
set checkedChanged(ev) {
if (this._checkedChanged_wrapped !== null) {
this.i.checkedChanged = delegateRemove(this.i.checkedChanged, this._checkedChanged_wrapped);
this._checkedChanged_wrapped = null;
this._checkedChanged = null;
}
this._checkedChanged = ev;
this._checkedChanged_wrapped = (o, e) => {
let outerArgs = new IgcCheckedChangedEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeCheckedChanged) {
this.beforeCheckedChanged(this, outerArgs);
}
if (this._checkedChanged) {
this._checkedChanged(this, outerArgs);
}
};
this.i.checkedChanged = delegateCombine(this.i.checkedChanged, this._checkedChanged_wrapped);
;
}
get labelClicked() {
return this._labelClicked;
}
set labelClicked(ev) {
if (this._labelClicked_wrapped !== null) {
this.i.labelClicked = delegateRemove(this.i.labelClicked, this._labelClicked_wrapped);
this._labelClicked_wrapped = null;
this._labelClicked = null;
}
this._labelClicked = ev;
this._labelClicked_wrapped = (o, e) => {
let outerArgs = new IgcCheckedChangedEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeLabelClicked) {
this.beforeLabelClicked(this, outerArgs);
}
if (this._labelClicked) {
this._labelClicked(this, outerArgs);
}
};
this.i.labelClicked = delegateCombine(this.i.labelClicked, this._labelClicked_wrapped);
;
}
get indexTypeChanged() {
return this._indexTypeChanged;
}
set indexTypeChanged(ev) {
if (this._indexTypeChanged_wrapped !== null) {
this.i.indexTypeChanged = delegateRemove(this.i.indexTypeChanged, this._indexTypeChanged_wrapped);
this._indexTypeChanged_wrapped = null;
this._indexTypeChanged = null;
}
this._indexTypeChanged = ev;
this._indexTypeChanged_wrapped = (o, e) => {
let outerArgs = new IgcCheckboxListIndexTypeChangedEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeIndexTypeChanged) {
this.beforeIndexTypeChanged(this, outerArgs);
}
if (this._indexTypeChanged) {
this._indexTypeChanged(this, outerArgs);
}
};
this.i.indexTypeChanged = delegateCombine(this.i.indexTypeChanged, this._indexTypeChanged_wrapped);
;
}
get keysCleared() {
return this._keysCleared;
}
set keysCleared(ev) {
if (this._keysCleared_wrapped !== null) {
this.i.keysCleared = delegateRemove(this.i.keysCleared, this._keysCleared_wrapped);
this._keysCleared_wrapped = null;
this._keysCleared = null;
}
this._keysCleared = ev;
this._keysCleared_wrapped = (o, e) => {
let outerArgs = new IgcCheckboxListKeysClearedEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeKeysCleared) {
this.beforeKeysCleared(this, outerArgs);
}
if (this._keysCleared) {
this._keysCleared(this, outerArgs);
}
};
this.i.keysCleared = delegateCombine(this.i.keysCleared, this._keysCleared_wrapped);
;
}
/**
* Called when the SelectAll checkbox is checked or unchecked.
*/
get selectAllCheckboxChanged() {
return this._selectAllCheckboxChanged;
}
set selectAllCheckboxChanged(ev) {
if (this._selectAllCheckboxChanged_wrapped !== null) {
this.i.selectAllCheckboxChanged = delegateRemove(this.i.selectAllCheckboxChanged, this._selectAllCheckboxChanged_wrapped);
this._selectAllCheckboxChanged_wrapped = null;
this._selectAllCheckboxChanged = null;
}
this._selectAllCheckboxChanged = ev;
this._selectAllCheckboxChanged_wrapped = (o, e) => {
let outerArgs = new IgcSelectAllCheckboxChangedEventArgs();
outerArgs._provideImplementation(e);
if (this.beforeSelectAllCheckboxChanged) {
this.beforeSelectAllCheckboxChanged(this, outerArgs);
}
if (this._selectAllCheckboxChanged) {
this._selectAllCheckboxChanged(this, outerArgs);
}
};
this.i.selectAllCheckboxChanged = delegateCombine(this.i.selectAllCheckboxChanged, this._selectAllCheckboxChanged_wrapped);
;
}
}
IgcCheckboxListComponent._observedAttributesIgcCheckboxListComponent = null;
IgcCheckboxListComponent.htmlTagName = "igc-checkbox-list";
IgcCheckboxListComponent._isElementRegistered = false;
return IgcCheckboxListComponent;
})();