@syncfusion/ej2-multicolumn-combobox 26.1.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -0
- package/dist/ej2-multicolumn-combobox.umd.min.js +2 -0
- package/dist/ej2-multicolumn-combobox.umd.min.js.map +1 -0
- package/dist/es6/ej2-multicolumn-combobox.es2015.js +1612 -0
- package/dist/es6/ej2-multicolumn-combobox.es2015.js.map +1 -0
- package/dist/es6/ej2-multicolumn-combobox.es5.js +1663 -0
- package/dist/es6/ej2-multicolumn-combobox.es5.js.map +1 -0
- package/dist/global/ej2-multicolumn-combobox.min.js +2 -0
- package/dist/global/ej2-multicolumn-combobox.min.js.map +1 -0
- package/dist/global/index.d.ts +5 -0
- package/index.d.ts +4 -0
- package/index.js +4 -0
- package/license +10 -0
- package/multicolumn-combobox.d.ts +4 -0
- package/multicolumn-combobox.js +4 -0
- package/package.json +62 -0
- package/src/global.js +3 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +3 -0
- package/src/multicolumn-combobox/index.d.ts +6 -0
- package/src/multicolumn-combobox/index.js +5 -0
- package/src/multicolumn-combobox/multi-column-combo-box-model.d.ts +527 -0
- package/src/multicolumn-combobox/multi-column-combo-box.d.ts +860 -0
- package/src/multicolumn-combobox/multi-column-combo-box.js +1666 -0
- package/styles/bootstrap-dark.css +331 -0
- package/styles/bootstrap-dark.scss +10 -0
- package/styles/bootstrap.css +331 -0
- package/styles/bootstrap.scss +10 -0
- package/styles/bootstrap4.css +395 -0
- package/styles/bootstrap4.scss +10 -0
- package/styles/bootstrap5-dark.css +399 -0
- package/styles/bootstrap5-dark.scss +10 -0
- package/styles/bootstrap5.css +399 -0
- package/styles/bootstrap5.scss +10 -0
- package/styles/fabric-dark.css +306 -0
- package/styles/fabric-dark.scss +10 -0
- package/styles/fabric.css +299 -0
- package/styles/fabric.scss +10 -0
- package/styles/fluent-dark.css +379 -0
- package/styles/fluent-dark.scss +10 -0
- package/styles/fluent.css +379 -0
- package/styles/fluent.scss +10 -0
- package/styles/fluent2.css +1408 -0
- package/styles/fluent2.scss +10 -0
- package/styles/highcontrast-light.css +317 -0
- package/styles/highcontrast-light.scss +10 -0
- package/styles/highcontrast.css +317 -0
- package/styles/highcontrast.scss +10 -0
- package/styles/material-dark.css +339 -0
- package/styles/material-dark.scss +10 -0
- package/styles/material.css +364 -0
- package/styles/material.scss +10 -0
- package/styles/material3-dark.css +431 -0
- package/styles/material3-dark.scss +12 -0
- package/styles/material3.css +487 -0
- package/styles/material3.scss +12 -0
- package/styles/multicolumn-combobox/_all.scss +2 -0
- package/styles/multicolumn-combobox/_bds-definition.scss +29 -0
- package/styles/multicolumn-combobox/_bootstrap-dark-definition.scss +29 -0
- package/styles/multicolumn-combobox/_bootstrap-definition.scss +29 -0
- package/styles/multicolumn-combobox/_bootstrap4-definition.scss +29 -0
- package/styles/multicolumn-combobox/_bootstrap5-dark-definition.scss +1 -0
- package/styles/multicolumn-combobox/_bootstrap5-definition.scss +29 -0
- package/styles/multicolumn-combobox/_bootstrap5.3-definition.scss +29 -0
- package/styles/multicolumn-combobox/_fabric-dark-definition.scss +29 -0
- package/styles/multicolumn-combobox/_fabric-definition.scss +29 -0
- package/styles/multicolumn-combobox/_fluent-dark-definition.scss +1 -0
- package/styles/multicolumn-combobox/_fluent-definition.scss +29 -0
- package/styles/multicolumn-combobox/_fluent2-definition.scss +29 -0
- package/styles/multicolumn-combobox/_fusionnew-definition.scss +29 -0
- package/styles/multicolumn-combobox/_highcontrast-definition.scss +29 -0
- package/styles/multicolumn-combobox/_highcontrast-light-definition.scss +29 -0
- package/styles/multicolumn-combobox/_layout.scss +130 -0
- package/styles/multicolumn-combobox/_material-dark-definition.scss +29 -0
- package/styles/multicolumn-combobox/_material-definition.scss +29 -0
- package/styles/multicolumn-combobox/_material3-dark-definition.scss +1 -0
- package/styles/multicolumn-combobox/_material3-definition.scss +29 -0
- package/styles/multicolumn-combobox/_tailwind-dark-definition.scss +1 -0
- package/styles/multicolumn-combobox/_tailwind-definition.scss +29 -0
- package/styles/multicolumn-combobox/_theme.scss +49 -0
- package/styles/multicolumn-combobox/bootstrap-dark.css +331 -0
- package/styles/multicolumn-combobox/bootstrap-dark.scss +10 -0
- package/styles/multicolumn-combobox/bootstrap.css +331 -0
- package/styles/multicolumn-combobox/bootstrap.scss +10 -0
- package/styles/multicolumn-combobox/bootstrap4.css +395 -0
- package/styles/multicolumn-combobox/bootstrap4.scss +10 -0
- package/styles/multicolumn-combobox/bootstrap5-dark.css +399 -0
- package/styles/multicolumn-combobox/bootstrap5-dark.scss +10 -0
- package/styles/multicolumn-combobox/bootstrap5.css +399 -0
- package/styles/multicolumn-combobox/bootstrap5.scss +10 -0
- package/styles/multicolumn-combobox/fabric-dark.css +306 -0
- package/styles/multicolumn-combobox/fabric-dark.scss +10 -0
- package/styles/multicolumn-combobox/fabric.css +299 -0
- package/styles/multicolumn-combobox/fabric.scss +10 -0
- package/styles/multicolumn-combobox/fluent-dark.css +379 -0
- package/styles/multicolumn-combobox/fluent-dark.scss +10 -0
- package/styles/multicolumn-combobox/fluent.css +379 -0
- package/styles/multicolumn-combobox/fluent.scss +10 -0
- package/styles/multicolumn-combobox/fluent2.css +1408 -0
- package/styles/multicolumn-combobox/fluent2.scss +10 -0
- package/styles/multicolumn-combobox/highcontrast-light.css +317 -0
- package/styles/multicolumn-combobox/highcontrast-light.scss +10 -0
- package/styles/multicolumn-combobox/highcontrast.css +317 -0
- package/styles/multicolumn-combobox/highcontrast.scss +10 -0
- package/styles/multicolumn-combobox/icons/_bds.scss +6 -0
- package/styles/multicolumn-combobox/icons/_bootstrap-dark.scss +6 -0
- package/styles/multicolumn-combobox/icons/_bootstrap.scss +6 -0
- package/styles/multicolumn-combobox/icons/_bootstrap4.scss +6 -0
- package/styles/multicolumn-combobox/icons/_bootstrap5-dark.scss +1 -0
- package/styles/multicolumn-combobox/icons/_bootstrap5.3.scss +6 -0
- package/styles/multicolumn-combobox/icons/_bootstrap5.scss +6 -0
- package/styles/multicolumn-combobox/icons/_fabric-dark.scss +6 -0
- package/styles/multicolumn-combobox/icons/_fabric.scss +6 -0
- package/styles/multicolumn-combobox/icons/_fluent-dark.scss +1 -0
- package/styles/multicolumn-combobox/icons/_fluent.scss +6 -0
- package/styles/multicolumn-combobox/icons/_fluent2.scss +6 -0
- package/styles/multicolumn-combobox/icons/_fusionnew.scss +6 -0
- package/styles/multicolumn-combobox/icons/_highcontrast-light.scss +6 -0
- package/styles/multicolumn-combobox/icons/_highcontrast.scss +6 -0
- package/styles/multicolumn-combobox/icons/_material-dark.scss +6 -0
- package/styles/multicolumn-combobox/icons/_material.scss +6 -0
- package/styles/multicolumn-combobox/icons/_material3-dark.scss +1 -0
- package/styles/multicolumn-combobox/icons/_material3.scss +6 -0
- package/styles/multicolumn-combobox/icons/_tailwind-dark.scss +1 -0
- package/styles/multicolumn-combobox/icons/_tailwind.scss +6 -0
- package/styles/multicolumn-combobox/material-dark.css +339 -0
- package/styles/multicolumn-combobox/material-dark.scss +10 -0
- package/styles/multicolumn-combobox/material.css +364 -0
- package/styles/multicolumn-combobox/material.scss +10 -0
- package/styles/multicolumn-combobox/material3-dark.css +431 -0
- package/styles/multicolumn-combobox/material3-dark.scss +11 -0
- package/styles/multicolumn-combobox/material3.css +487 -0
- package/styles/multicolumn-combobox/material3.scss +11 -0
- package/styles/multicolumn-combobox/tailwind-dark.css +363 -0
- package/styles/multicolumn-combobox/tailwind-dark.scss +10 -0
- package/styles/multicolumn-combobox/tailwind.css +363 -0
- package/styles/multicolumn-combobox/tailwind.scss +10 -0
- package/styles/tailwind-dark.css +363 -0
- package/styles/tailwind-dark.scss +10 -0
- package/styles/tailwind.css +363 -0
- package/styles/tailwind.scss +10 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ej2-multicolumn-combobox.es5.js","sources":["../../src/multicolumn-combobox/multi-column-combo-box.js"],"sourcesContent":["var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nimport { Component, EventHandler, Property, NotifyPropertyChanges, closest, attributes, append, compile, detach, KeyboardEvents } from '@syncfusion/ej2-base';\nimport { ChildProperty, prepend, Collection, getUniqueID, Complex, isNullOrUndefined as isNOU, select, L10n, Browser } from '@syncfusion/ej2-base';\nimport { formatUnit, addClass, removeClass, Event, Animation } from '@syncfusion/ej2-base';\nimport { Input } from '@syncfusion/ej2-inputs';\nimport { DataManager, Query } from '@syncfusion/ej2-data';\nimport { Popup } from '@syncfusion/ej2-popups';\nimport { Grid, VirtualScroll, Group as GridGroup, Edit, Sort } from '@syncfusion/ej2-grids';\nvar DROPDOWNICON = 'e-input-group-icon e-multicolumn-list-icon e-icons';\nvar CONTENT = 'e-popup-content';\nvar ICONANIMATION = 'e-icon-anim';\nvar NODATA = 'e-nodata';\nvar DISABLED = 'e-disabled';\nvar INPUTFOCUS = 'e-input-focus';\nvar MULTICOLUMNLIST = 'e-multicolumn-list';\nvar MULTICOLUMNGRID = 'e-multicolumn-grid';\nvar MultiColumnGrid = /** @class */ (function () {\n function MultiColumnGrid() {\n }\n /**\n * Injecting required modules for component.\n *\n * @returns {void}\n * @private\n */\n MultiColumnGrid.prototype.InjectModules = function () {\n Grid.Inject(VirtualScroll, GridGroup, Edit, Sort);\n };\n return MultiColumnGrid;\n}());\nexport { MultiColumnGrid };\n/**\n * Defines the filter type.\n */\nexport var FilterType;\n(function (FilterType) {\n /**\n * Checks whether a value begins with the specified value.\n */\n FilterType[\"StartsWith\"] = \"StartsWith\";\n /**\n * Checks whether a value ends with specified value.\n */\n FilterType[\"EndsWith\"] = \"EndsWith\";\n /**\n * Checks whether a value contains with specified value.\n */\n FilterType[\"Contains\"] = \"Contains\";\n})(FilterType || (FilterType = {}));\n/**\n * Specifies the sortOrder to sort the data source.\n */\nexport var SortOrder;\n(function (SortOrder) {\n /**\n * The datasource is not sorting. Default value is None.\n */\n SortOrder[\"None\"] = \"None\";\n /**\n * The datasource is sorting with ascending order.\n */\n SortOrder[\"Ascending\"] = \"Ascending\";\n /**\n * The data source is sorting with descending order.\n */\n SortOrder[\"Descending\"] = \"Descending\";\n})(SortOrder || (SortOrder = {}));\n/**\n * Specifies the type of sorting to be applied for the columns.\n */\nexport var SortType;\n(function (SortType) {\n /**\n * Allow sorting only one column\n */\n SortType[\"OneColumn\"] = \"OneColumn\";\n /**\n * Allow sorting multiple columns\n */\n SortType[\"MultipleColumns\"] = \"MultipleColumns\";\n})(SortType || (SortType = {}));\n/**\n * The fields property maps the columns of the data table and binds the data to the component.\n */\nvar FieldSettings = /** @class */ (function (_super) {\n __extends(FieldSettings, _super);\n function FieldSettings() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n __decorate([\n Property()\n ], FieldSettings.prototype, \"text\", void 0);\n __decorate([\n Property()\n ], FieldSettings.prototype, \"value\", void 0);\n __decorate([\n Property()\n ], FieldSettings.prototype, \"groupBy\", void 0);\n return FieldSettings;\n}(ChildProperty));\nexport { FieldSettings };\n/**\n * Specifies the number of columns and its respective fields to be displayed in the dropdown popup.\n */\nvar Column = /** @class */ (function (_super) {\n __extends(Column, _super);\n function Column() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n __decorate([\n Property('')\n ], Column.prototype, \"field\", void 0);\n __decorate([\n Property('')\n ], Column.prototype, \"header\", void 0);\n __decorate([\n Property('')\n ], Column.prototype, \"width\", void 0);\n __decorate([\n Property('')\n ], Column.prototype, \"textAlign\", void 0);\n __decorate([\n Property(null)\n ], Column.prototype, \"format\", void 0);\n __decorate([\n Property(false)\n ], Column.prototype, \"displayAsCheckBox\", void 0);\n __decorate([\n Property(null)\n ], Column.prototype, \"template\", void 0);\n __decorate([\n Property(null)\n ], Column.prototype, \"headerTemplate\", void 0);\n __decorate([\n Property(null)\n ], Column.prototype, \"customAttributes\", void 0);\n return Column;\n}(ChildProperty));\nexport { Column };\n/**\n * Specifies the configuration of the columns in the popup content.\n */\nvar GridSettings = /** @class */ (function (_super) {\n __extends(GridSettings, _super);\n function GridSettings() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n __decorate([\n Property(false)\n ], GridSettings.prototype, \"enableAltRow\", void 0);\n __decorate([\n Property(null)\n ], GridSettings.prototype, \"rowHeight\", void 0);\n __decorate([\n Property('Default')\n ], GridSettings.prototype, \"gridLines\", void 0);\n return GridSettings;\n}(ChildProperty));\nexport { GridSettings };\n/**\n * The `MultiColumnComboBox` allows the user to search and select values from a list. It provides a list of options that can be selected using a filter input.\n * The selected value will be displayed in the input element.\n *\n * ```html\n * <input type=\"text\" id=\"multi-column\"></input>\n * ```\n * ```typescript\n * let multiColObj: MultiColumnComboBox = new MultiColumnComboBox();\n * multiColObj.appendTo(\"#multi-column\");\n * ```\n */\nvar MultiColumnComboBox = /** @class */ (function (_super) {\n __extends(MultiColumnComboBox, _super);\n /**\n * *Constructor for creating the component\n *\n * @param {MultiColumnComboBoxModel} options - Specifies the MultiColumnComboBox model.\n * @param {string | HTMLElement} element - Specifies the element to render as component.\n * @private\n */\n function MultiColumnComboBox(options, element) {\n var _this = _super.call(this, options, element) || this;\n _this.gridInject = new MultiColumnGrid();\n _this.gridInject.InjectModules();\n return _this;\n }\n /**\n * Initialize the event handler\n *\n * @private\n * @returns {void}\n */\n MultiColumnComboBox.prototype.preRender = function () {\n if (!this.element.id) {\n this.element.id = getUniqueID('e-' + this.getModuleName());\n }\n this.keyConfigs = {\n escape: 'escape',\n altUp: 'alt+uparrow',\n altDown: 'alt+downarrow',\n tab: 'tab',\n shiftTab: 'shift+tab',\n end: 'end',\n enter: 'enter',\n home: 'home',\n moveDown: 'downarrow',\n moveUp: 'uparrow'\n };\n this.matchedRowEle = this.matchedContent = null;\n this.persistData();\n };\n MultiColumnComboBox.prototype.getDirective = function () {\n return 'EJS-MULTICOLUMNCOMBOBOX';\n };\n /**\n * To get component name.\n *\n * @returns {string} - It returns the current module name.\n * @private\n */\n MultiColumnComboBox.prototype.getModuleName = function () {\n return 'multicolumncombobox';\n };\n /**\n * Get the properties to be maintained in the persisted state.\n *\n * @private\n * @returns {string} - It returns the persisted data.\n */\n MultiColumnComboBox.prototype.getPersistData = function () {\n return this.addOnPersist(['value']);\n };\n MultiColumnComboBox.prototype.persistData = function () {\n if (this.enablePersistence) {\n this.element.id = this.element.id + '_wrapper';\n var data = window.localStorage.getItem(this.getModuleName() + this.element.id);\n if (!(isNOU(data) || (data === ''))) {\n this.setProperties(JSON.parse(data), true);\n }\n }\n };\n MultiColumnComboBox.prototype.render = function () {\n this.renderGrid();\n this.renderInput();\n this.popupDiv = this.createElement('div', { className: CONTENT });\n this.popupDiv.appendChild(this.gridEle);\n this.setHTMLAttributes();\n this.renderPopup();\n this.wireEvents();\n };\n MultiColumnComboBox.prototype.renderGrid = function () {\n var _this = this;\n var gridColumns = this.getGridColumns();\n this.gridObj = new Grid({\n dataSource: this.dataSource,\n columns: gridColumns,\n allowSorting: this.allowSorting,\n enableStickyHeader: true,\n gridLines: this.gridSettings.gridLines,\n rowHeight: this.gridSettings.rowHeight,\n enableAltRow: this.gridSettings.enableAltRow,\n enableVirtualization: this.enableVirtualization,\n enableRtl: this.enableRtl,\n editSettings: { allowAdding: false },\n query: this.query,\n height: this.popupHeight,\n allowMultiSorting: this.sortType.toString().toLowerCase() === 'multiplecolumns' && this.allowSorting,\n rowTemplate: this.itemTemplate,\n dataBound: function () { _this.onDataBound(); },\n actionFailure: function (args) { _this.onActionFailure(args); },\n actionBegin: function (args) { _this.trigger('actionBegin', args); },\n actionComplete: function (args) {\n _this.trigger('actionComplete', args);\n if (args.requestType === 'sorting') {\n _this.updateRowSelection(args);\n }\n var dataRows = args.rows;\n if (_this.isDataFiltered && dataRows.length > 0 && _this.inputEle.value !== '' && args.requestType !== 'sorting') {\n var firstRowEle = _this.gridObj.getRows()[0];\n firstRowEle.classList.add('e-row-focus');\n }\n _this.popupObj.refreshPosition();\n },\n keyPressed: function (args) {\n if (args.key === 'Enter') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n args.cancel = true;\n if (_this.isPopupOpen) {\n _this.selectedGridRow(_this.gridObj.getRows()[_this.gridObj.selectedRowIndex], args, true);\n _this.hidePopup(args);\n _this.focusIn(args);\n }\n }\n if (_this.fields.groupBy) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n args.cancel = true;\n _this.gridKeyActionHandler(args, true);\n }\n }\n });\n this.gridEle = this.createElement('div', { id: getUniqueID('grid'), className: MULTICOLUMNGRID });\n this.updateGroupByField();\n var sortOrder = this.sortOrder.toString().toLowerCase();\n // Set first column as primary key to avoid PRIMARY KEY MISSING warning.\n this.gridObj.columns[0].isPrimaryKey = true;\n if (sortOrder !== 'none') {\n this.gridObj.sortSettings = { columns: [{ field: this.fields.text, direction: sortOrder === 'ascending' ?\n SortOrder.Ascending : SortOrder.Descending }] };\n }\n this.gridObj.appendTo(this.gridEle);\n };\n // eslint-disable @typescript-eslint/no-explicit-any\n MultiColumnComboBox.prototype.isRowMatching = function (data, selectedValue, selectedText) {\n var values = Object.values(data).map(String);\n var isRowPresent = values.includes(selectedValue) && values.includes(selectedText);\n return isRowPresent;\n };\n MultiColumnComboBox.prototype.updateRowSelection = function (args) {\n var _this = this;\n if (args) {\n var dataRows = args.rows;\n dataRows.forEach(function (row) {\n var data = row.data;\n var index = row.index;\n _this.selectDataRow(data, index);\n });\n }\n };\n MultiColumnComboBox.prototype.selectDataRow = function (data, index) {\n var isPresent = this.isRowMatching(data, this.value ? this.value.toString() : '', this.text ? this.text.toString() : '');\n if (isPresent) {\n this.gridObj.selectRow(index);\n var prevOnChange = this.isProtectedOnChange;\n this.isProtectedOnChange = true;\n this.index = index;\n this.isProtectedOnChange = prevOnChange;\n return;\n }\n };\n MultiColumnComboBox.prototype.findIndex = function (arr, obj) {\n return arr.findIndex(function (item) {\n return Object.keys(obj).every(function (key) { return item[key] === obj[key]; });\n });\n };\n ;\n // eslint-enable @typescript-eslint/no-explicit-any\n MultiColumnComboBox.prototype.getGridColumns = function () {\n var _this = this;\n return this.columns.map(function (column) {\n return {\n field: column.field,\n headerText: column.header,\n width: column.width,\n textAlign: column.textAlign === '' && _this.enableRtl ? 'Right' : column.textAlign,\n format: column.format,\n displayAsCheckBox: column.displayAsCheckBox,\n template: column.template,\n headerTemplate: column.headerTemplate,\n customAttributes: column.customAttributes,\n type: column.displayAsCheckBox ? 'boolean' : 'string'\n };\n });\n };\n MultiColumnComboBox.prototype.updateGroupByField = function () {\n if (this.fields.groupBy !== '' && !isNOU(this.fields.groupBy)) {\n if (this.sortType.toString().toLowerCase() !== 'multiplecolumns') {\n this.gridEle.classList.add('e-multicolumn-group');\n }\n var prevOnChange = this.isProtectedOnChange;\n this.isProtectedOnChange = true;\n this.gridObj.allowGrouping = true;\n this.gridObj.groupSettings = {\n showDropArea: false,\n columns: [this.fields.groupBy],\n captionTemplate: (this.groupTemplate && this.fields.groupBy !== '' && !isNOU(this.fields.groupBy))\n ? this.groupTemplate : \"${key}\"\n };\n if (this.isVue) {\n this.gridObj.isVue = this.isVue;\n }\n this.isProtectedOnChange = prevOnChange;\n }\n };\n MultiColumnComboBox.prototype.onDataBound = function () {\n var dataCount = this.dataSource.length;\n var popupChild = this.popupDiv.querySelector('.' + MULTICOLUMNGRID);\n if (dataCount <= 0 && popupChild) {\n this.l10nUpdate();\n this.popupDiv.removeChild(this.gridEle);\n addClass([this.popupDiv], [NODATA]);\n }\n else if (this.popupDiv.classList.contains(NODATA) && dataCount >= 1) {\n removeClass([this.popupDiv], [NODATA]);\n var noRecordEle = this.popupDiv.querySelector('.e-no-records');\n if (noRecordEle) {\n this.popupDiv.removeChild(noRecordEle);\n }\n }\n };\n MultiColumnComboBox.prototype.onActionFailure = function (args) {\n this.trigger('actionFailure', args);\n this.l10nUpdate(true);\n addClass([this.popupDiv], [NODATA]);\n };\n MultiColumnComboBox.prototype.renderInput = function () {\n if (this.element.tagName === 'INPUT') {\n this.inputEle = this.element;\n if (isNOU(this.inputEle.getAttribute('role'))) {\n this.inputEle.setAttribute('role', 'combobox');\n }\n if (isNOU(this.inputEle.getAttribute('type'))) {\n this.inputEle.setAttribute('type', 'text');\n }\n this.inputEle.setAttribute('aria-expanded', 'false');\n this.inputEle.setAttribute('aria-readOnly', this.readonly.toString());\n this.inputEle.setAttribute('aria-disabled', this.disabled.toString());\n this.inputEle.setAttribute('tabindex', '0');\n }\n else {\n this.inputEle = this.createElement('input', { attrs: { role: 'textbox', type: 'text' } });\n this.element.parentElement.insertBefore(this.inputEle, this.element);\n }\n this.inputObj = Input.createInput({\n element: this.inputEle,\n buttons: [DROPDOWNICON],\n floatLabelType: this.floatLabelType,\n properties: {\n enabled: !this.disabled,\n readonly: this.readonly,\n placeholder: this.placeholder,\n enableRtl: this.enableRtl,\n showClearButton: this.showClearButton,\n cssClass: this.cssClass\n }\n }, this.createElement);\n this.inputWrapper = this.inputObj.container;\n this.inputWrapper.classList.add(MULTICOLUMNLIST);\n this.inputWrapper.setAttribute('spellcheck', 'false');\n if (this.element.tagName === this.getDirective()) {\n this.element.appendChild(this.inputWrapper);\n }\n this.setElementWidth(this.width);\n if (!isNOU(this.value) || !isNOU(this.text) || !isNOU(this.index)) {\n this.initValue(null, null, true);\n }\n };\n /* To calculate the width when change via set model */\n MultiColumnComboBox.prototype.setElementWidth = function (inputWidth) {\n var ddElement = this.inputWrapper;\n if (!isNOU(inputWidth)) {\n if (typeof inputWidth === 'number') {\n ddElement.style.width = formatUnit(inputWidth);\n }\n else if (typeof inputWidth === 'string') {\n ddElement.style.width = (inputWidth.match(/px|%|em/)) ? (inputWidth) : (formatUnit(inputWidth));\n }\n }\n };\n MultiColumnComboBox.prototype.setHTMLAttributes = function () {\n if (Object.keys(this.htmlAttributes).length) {\n for (var _i = 0, _a = Object.keys(this.htmlAttributes); _i < _a.length; _i++) {\n var htmlAttr = _a[_i];\n if (htmlAttr === 'class') {\n this.inputWrapper.classList.add(this.htmlAttributes[\"\" + htmlAttr]);\n }\n else if (htmlAttr === 'disabled') {\n this.setProperties({ enabled: false }, true);\n this.setEnable();\n }\n else if (htmlAttr === 'readonly') {\n this.setProperties({ readonly: true }, true);\n this.dataBind();\n }\n else if (htmlAttr === 'style') {\n this.inputWrapper.setAttribute('style', this.htmlAttributes[\"\" + htmlAttr]);\n }\n else {\n var defaultAttr = ['title', 'id', 'placeholder',\n 'role', 'autocomplete', 'autocapitalize', 'spellcheck', 'minlength', 'maxlength'];\n if (defaultAttr.indexOf(htmlAttr) > -1) {\n if (htmlAttr === 'placeholder') {\n Input.setPlaceholder(this.htmlAttributes[\"\" + htmlAttr], this.inputEle);\n }\n else {\n this.inputEle.setAttribute(htmlAttr, this.htmlAttributes[\"\" + htmlAttr]);\n }\n }\n else {\n this.inputEle.setAttribute(htmlAttr, this.htmlAttributes[\"\" + htmlAttr]);\n }\n }\n }\n }\n };\n /* To set enable property */\n MultiColumnComboBox.prototype.setEnable = function () {\n Input.setEnabled(!this.disabled, this.inputEle);\n if (!this.disabled) {\n removeClass([this.inputWrapper], DISABLED);\n this.inputEle.setAttribute('aria-disabled', 'false');\n this.inputWrapper.setAttribute('aria-disabled', 'false');\n }\n else {\n if (this.isPopupOpen) {\n this.hidePopup();\n }\n addClass([this.inputWrapper], DISABLED);\n if (this.inputWrapper && this.inputWrapper.classList.contains(INPUTFOCUS)) {\n removeClass([this.inputWrapper], [INPUTFOCUS]);\n }\n this.inputEle.setAttribute('aria-disabled', 'true');\n this.inputWrapper.setAttribute('aria-disabled', 'true');\n }\n };\n MultiColumnComboBox.prototype.initValue = function (isRerender, isValue, isInitial) {\n var _this = this;\n var prevItemData = this.gridObj.getSelectedRecords()[0];\n var prevItemEle = this.gridObj.getSelectedRows()[0];\n var item;\n var currentValue;\n var currentText;\n var currentIndex;\n var prevOnChange = this.isProtectedOnChange;\n this.isProtectedOnChange = true;\n this.value = this.value ? this.value.toString() : this.value;\n this.isProtectedOnChange = prevOnChange;\n var updateValues = function (dataList) {\n var result = _this.updateCurrentValues(item, dataList);\n currentValue = result.currentValue;\n currentText = result.currentText;\n currentIndex = result.currentIndex;\n };\n if ((!isRerender && (!isNOU(this.value) || !isNOU(this.text))) || (isRerender && isValue !== undefined)) {\n var value_1 = isRerender ? (isValue ? this.value : this.text) : (!isNOU(this.value) ? this.value : this.text);\n if (!isNOU(this.dataSource) && this.dataSource instanceof DataManager) {\n this.dataSource.executeQuery(new Query).then(function (e) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var dataLists = e.result;\n var filteredData = dataLists.filter(function (item) {\n return item[isRerender ? (isValue ? _this.fields.value : _this.fields.text) :\n !isNOU(_this.value) ? _this.fields.value : _this.fields.text].toString() === value_1;\n });\n if (filteredData.length > 0) {\n item = filteredData[0];\n updateValues(dataLists);\n _this.updateChangeEvent(item, prevItemData, prevItemEle, currentValue, currentText, currentIndex, isRerender, isInitial);\n _this.gridObj.selectRow(_this.index);\n }\n });\n }\n else if (!isNOU(this.dataSource) && this.dataSource instanceof Array) {\n item = this.dataSource.filter(function (data) {\n return data[isRerender ? (isValue ? _this.fields.value : _this.fields.text) :\n !isNOU(_this.value) ? _this.fields.value : _this.fields.text].toString() === value_1;\n })[0];\n updateValues(this.dataSource);\n }\n }\n else if (!isNOU(this.index)) {\n if (!isNOU(this.dataSource) && this.dataSource instanceof DataManager) {\n this.dataSource.executeQuery(new Query).then(function (e) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var dataLists = e.result;\n item = dataLists[_this.index];\n updateValues(dataLists);\n _this.updateChangeEvent(item, prevItemData, prevItemEle, currentValue, currentText, currentIndex, isRerender, isInitial);\n _this.gridObj.selectRow(_this.index);\n });\n }\n else if (!isNOU(this.dataSource) && this.dataSource instanceof Array) {\n item = this.dataSource[this.index];\n updateValues(this.dataSource);\n }\n }\n if (!(this.dataSource instanceof DataManager)) {\n this.updateChangeEvent(item, prevItemData, prevItemEle, currentValue, currentText, currentIndex, isRerender, isInitial);\n }\n };\n MultiColumnComboBox.prototype.updateChangeEvent = function (item, prevItemData, prevItemEle, currentValue, currentText, currentIndex, isRerender, isInitial) {\n var ChangeEventArgs = {\n value: item ? item[this.fields.value].toString() : null,\n itemData: { text: currentText, value: currentValue },\n item: this.getDataByValue(this.value),\n previousItemData: prevItemData,\n previousItemElement: prevItemEle,\n itemElement: this.inputWrapper,\n event: null,\n isInteracted: !isRerender\n };\n this.updateValues(currentValue, currentText, currentIndex, ChangeEventArgs, isInitial);\n };\n MultiColumnComboBox.prototype.updateCurrentValues = function (item, dataList) {\n if (!isNOU(item)) {\n Input.setValue(item[this.fields.text].toString(), this.inputEle, this.floatLabelType, this.showClearButton);\n return {\n currentValue: item[this.fields.value].toString(),\n currentText: item[this.fields.text].toString(),\n currentIndex: dataList.indexOf(item)\n };\n }\n return {\n currentValue: null,\n currentText: null,\n currentIndex: null\n };\n };\n MultiColumnComboBox.prototype.renderPopup = function () {\n this.popupEle = this.createElement('div', {\n id: this.element.id + '_options', className: MULTICOLUMNLIST + ' e-popup ' + (this.cssClass !== null ? this.cssClass : '')\n });\n attributes(this.popupEle, { 'aria-label': this.element.id, 'role': 'dialog' });\n document.body.appendChild(this.popupEle);\n this.createPopup(this.popupEle);\n prepend([this.popupDiv], this.popupEle);\n if (this.footerTemplate) {\n this.setFooterTemplate();\n }\n var popupHeight = this.getSize(false);\n this.popupEle.style.maxHeight = popupHeight;\n if (this.footerTemplate) {\n this.footer = this.footer ? this.footer : this.popupEle.querySelector('.e-popup-footer');\n var height = Math.round(this.footer.getBoundingClientRect().height);\n popupHeight = formatUnit(parseInt(popupHeight, 10) - height + 'px');\n }\n this.popupDiv.style.maxHeight = popupHeight;\n this.popupRowHeight = this.popupDiv.querySelector('.e-gridcontent tr').getBoundingClientRect().height;\n this.updateGridHeight();\n this.popupObj.hide();\n };\n MultiColumnComboBox.prototype.updateGridHeight = function (isFilter, autoHeight, dataSourceCount) {\n var height;\n if (isFilter) {\n var gridContentEle = this.gridObj.getContent().querySelector('.e-content');\n var scrollBarHeight = gridContentEle.offsetHeight - gridContentEle.clientHeight;\n var totalRowHeight = dataSourceCount * this.popupRowHeight;\n if (this.fields.groupBy !== '' && !isNOU(this.fields.groupBy)) {\n totalRowHeight += this.popupRowHeight;\n }\n height = autoHeight ? (totalRowHeight < this.prevGridHeight ? (totalRowHeight + scrollBarHeight) + 'px' : this.prevGridHeight + 'px') : this.prevGridHeight + 'px';\n }\n else {\n this.prevGridHeight = this.popupDiv.getBoundingClientRect().height - this.popupDiv.querySelector('.e-gridheader').getBoundingClientRect().height;\n height = this.prevGridHeight + 'px';\n }\n var prevOnChange = this.isProtectedOnChange;\n this.isProtectedOnChange = true;\n this.gridObj.height = height;\n this.isProtectedOnChange = prevOnChange;\n };\n MultiColumnComboBox.prototype.createPopup = function (element) {\n var _this = this;\n this.popupObj = new Popup(element, {\n width: this.getSize(true),\n targetType: 'relative',\n collision: { X: 'flip', Y: 'flip' },\n relateTo: this.inputWrapper,\n enableRtl: this.enableRtl,\n position: { X: 'left', Y: 'bottom' },\n targetExitViewport: function () {\n if (!Browser.isDevice) {\n _this.hidePopup();\n }\n }\n });\n };\n MultiColumnComboBox.prototype.setFooterTemplate = function () {\n if (this.footer) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (this.isReact && typeof this.footerTemplate === 'function') {\n this.clearTemplate(['footerTemplate']);\n }\n else {\n this.footer.innerHTML = '';\n }\n }\n else {\n this.footer = this.createElement('div');\n addClass([this.footer], 'e-popup-footer');\n }\n var compiledString = this.getTemplateFunction(this.footerTemplate);\n var dataCount = this.dataSource.length;\n var tempArr = compiledString({ count: dataCount }, this, 'footerTemplate', this.element.id + 'footerTemplate', this.isStringTemplate, undefined, this.footer);\n if (tempArr) {\n tempArr = Array.prototype.slice.call(tempArr);\n append(tempArr, this.footer);\n }\n append([this.footer], this.popupEle);\n };\n MultiColumnComboBox.prototype.l10nUpdate = function (actionFailure) {\n if (this.noRecord) {\n this.noRecord.innerHTML = '';\n }\n else {\n this.noRecord = this.createElement('div');\n }\n if (this.noRecordsTemplate !== 'No records found' || this.actionFailureTemplate !== 'Request Failed') {\n var template = actionFailure ? this.actionFailureTemplate : this.noRecordsTemplate;\n var templateId = actionFailure ? this.element.id + '_actionFailure' : this.element.id + '_noRecords';\n var templatestring = actionFailure ? 'actionFailureTemplate' : 'noRecordsTemplate';\n var compiledString = this.getTemplateFunction(template);\n var tempArr = compiledString({}, this, templatestring, templateId, this.isStringTemplate, undefined, this.noRecord);\n if (tempArr) {\n tempArr = Array.prototype.slice.call(tempArr);\n append(tempArr, this.noRecord);\n }\n }\n else {\n var l10nLocale = { noRecordsTemplate: 'No records found', actionFailureTemplate: 'Request Failed' };\n this.l10n = new L10n('multicolumncombobox', l10nLocale, this.locale);\n this.noRecord.innerHTML = actionFailure ?\n this.l10n.getConstant('actionFailureTemplate') : this.l10n.getConstant('noRecordsTemplate');\n }\n addClass([this.noRecord], 'e-no-records');\n prepend([this.noRecord], this.popupDiv);\n this.popupObj.refreshPosition();\n };\n /**\n * Gets template content based on the template property value.\n *\n * @param {string | Function} template - Template property value.\n * @returns {Function} - Return template function.\n * @hidden\n */\n MultiColumnComboBox.prototype.getTemplateFunction = function (template) {\n if (typeof template === 'string') {\n var content = '';\n try {\n var tempEle = select(template);\n if (tempEle) {\n //Return innerHTML incase of jsrenderer script else outerHTML\n content = tempEle.tagName === 'SCRIPT' ? tempEle.innerHTML : tempEle.outerHTML;\n }\n else {\n content = template;\n }\n }\n catch (e) {\n content = template;\n }\n return compile(content);\n }\n else {\n /* eslint-disable-next-line @typescript-eslint/no-explicit-any */\n return compile(template);\n }\n };\n /*To calculate the width and height of the popup */\n MultiColumnComboBox.prototype.getSize = function (ispopupWidth) {\n var currentDimension = ispopupWidth ? this.popupWidth : this.popupHeight;\n var size = formatUnit(currentDimension);\n if (size.indexOf('%') > -1) {\n var dimensionValue = ispopupWidth ? this.inputWrapper.offsetWidth : document.documentElement.clientHeight;\n size = (dimensionValue * parseFloat(size) / 100).toString() + 'px';\n }\n else if (typeof currentDimension === 'string') {\n size = currentDimension.match(/px|em/) ? currentDimension : size;\n }\n return size;\n };\n MultiColumnComboBox.prototype.selectedGridRow = function (row, e, isKeyNav) {\n var _this = this;\n var eventArgs = {\n isInteracted: e ? true : false,\n item: this.gridObj.getSelectedRecords()[0],\n itemElement: row,\n itemData: this.gridObj.getSelectedRecords()[0],\n event: e,\n cancel: false\n };\n var selectedRecords = this.gridObj.getSelectedRecords()[0];\n var fieldText = selectedRecords ? selectedRecords[this.fields.text].toString() : \"\";\n var fieldValue = selectedRecords ? selectedRecords[this.fields.value].toString() : \"\";\n var ChangeEventArgs = {\n isInteracted: e ? true : false,\n item: selectedRecords,\n itemElement: row,\n itemData: { text: fieldText, value: fieldValue },\n event: e,\n cancel: false,\n value: fieldValue,\n previousItemData: { text: this.text, value: this.value },\n previousItemElement: this.previousItemElement\n };\n this.trigger('select', eventArgs, function (eventArgs) {\n if (!eventArgs.cancel && eventArgs.itemData) {\n var selectedRecord = eventArgs.itemData;\n if (!isKeyNav || (isKeyNav && e.key === 'Enter')) {\n _this.updateValues(selectedRecord[_this.fields.value], selectedRecord[_this.fields.text], _this.gridObj.selectedRowIndex, ChangeEventArgs);\n }\n Input.setValue(selectedRecord[_this.fields.text], _this.inputEle, _this.floatLabelType, _this.showClearButton);\n if (!isKeyNav || (isKeyNav && e.key === 'Enter')) {\n _this.hidePopup(e);\n }\n }\n });\n };\n MultiColumnComboBox.prototype.updateValues = function (value, text, index, eventArgs, isInitial) {\n this.previousItemElement = eventArgs.itemElement;\n var prevOnChange = this.isProtectedOnChange;\n this.isProtectedOnChange = true;\n this.text = text ? text : this.text;\n this.value = value ? value : this.value;\n this.index = !isNOU(index) ? index : this.index;\n this.isProtectedOnChange = prevOnChange;\n if (!isInitial) {\n this.triggerChangeEvent(eventArgs);\n }\n };\n MultiColumnComboBox.prototype.triggerChangeEvent = function (eventArgs) {\n this.trigger('change', eventArgs, function (eventArgs) {\n if (eventArgs.cancel) {\n return;\n }\n });\n };\n MultiColumnComboBox.prototype.inputHandler = function (e) {\n var _this = this;\n this.showPopup(null, true);\n if (this.allowFiltering) {\n var inputValue_1 = e.target.value.toLowerCase();\n var customFiltering_1 = false;\n var eventArgs_1 = {\n preventDefaultAction: false,\n text: inputValue_1,\n updateData: function (dataSource, query, fields) {\n if (eventArgs_1.cancel) {\n return;\n }\n customFiltering_1 = true;\n _this.filterAction(dataSource, inputValue_1, query, fields);\n },\n event: e,\n cancel: false\n };\n this.trigger('filtering', eventArgs_1, function (eventArgs) {\n if (!eventArgs.cancel && !eventArgs.preventDefaultAction && !customFiltering_1) {\n _this.filterAction(_this.dataSource, inputValue_1, _this.query, _this.fields);\n }\n });\n }\n this.updateInputValue(e.target.value);\n };\n MultiColumnComboBox.prototype.updateInputValue = function (inputValue) {\n var _this = this;\n var data;\n if (this.dataSource instanceof DataManager) {\n var query = new Query();\n this.dataSource.executeQuery(query).then(function (result) {\n var totaldata = result.result;\n data = totaldata.filter(function (item) {\n return item[_this.fields.text].toString().toLowerCase().startsWith(inputValue.toLowerCase());\n });\n _this.selectFilteredRows(data);\n });\n }\n else if (Array.isArray(this.dataSource)) {\n data = this.dataSource.filter(function (item) {\n return item[_this.fields.text].toString().toLowerCase().startsWith(inputValue.toLowerCase());\n });\n this.selectFilteredRows(data);\n }\n };\n MultiColumnComboBox.prototype.selectFilteredRows = function (data) {\n if (data.length > 0) {\n this.matchedContent = data[0];\n }\n else {\n this.matchedContent = null;\n }\n if (this.matchedContent) {\n var selectedIndex = this.findIndex(this.gridObj.currentViewData, this.matchedContent);\n this.matchedRowEle = this.gridObj.getRowByIndex(selectedIndex);\n }\n else {\n this.matchedRowEle = null;\n }\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n MultiColumnComboBox.prototype.filterAction = function (dataSource, inputValue, query, fields) {\n var _this = this;\n var filterType = this.filterType.toString().toLowerCase();\n var isQuery = query || new Query();\n var filteredData;\n if (dataSource instanceof DataManager) {\n // Handle filtering for DataManager\n dataSource.executeQuery(isQuery).then(function (e) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var dataLists = e.result;\n var dataLength = dataLists.length;\n filteredData = dataLists.filter(function (item) { return _this.filterData(item, filterType, inputValue, fields); });\n _this.updateGridDataSource(filteredData, dataLength);\n });\n }\n else if (Array.isArray(dataSource)) {\n // Handle filtering for array data source\n filteredData = dataSource.filter(function (item) {\n return _this.filterData(item, filterType, inputValue, fields);\n });\n this.updateGridDataSource(filteredData);\n }\n };\n MultiColumnComboBox.prototype.filterData = function (item, filterType, inputValue, fields) {\n var itemValue = item[fields ? fields.text : this.fields.text].toString().toLowerCase();\n switch (filterType) {\n case 'startswith':\n return itemValue.startsWith(inputValue);\n case 'endswith':\n return itemValue.endsWith(inputValue);\n case 'contains':\n return itemValue.includes(inputValue);\n default:\n return false;\n }\n };\n MultiColumnComboBox.prototype.updateGridDataSource = function (dataSource, dataLength) {\n var autoHeight = true;\n if (dataSource.length > 0) {\n var length_1 = this.dataSource instanceof DataManager ? dataLength : this.dataSource.length;\n autoHeight = length_1 !== dataSource.length;\n removeClass([this.popupDiv], [NODATA]);\n var noRecordEle = this.popupDiv.querySelector('.e-no-records');\n if (noRecordEle) {\n this.popupDiv.removeChild(noRecordEle);\n }\n this.gridObj.dataSource = dataSource;\n this.isDataFiltered = true;\n }\n else {\n this.l10nUpdate();\n addClass([this.popupDiv], [NODATA]);\n }\n this.updateGridHeight(true, autoHeight, dataSource.length);\n };\n MultiColumnComboBox.prototype.wireEvents = function () {\n var ddbIcon = this.inputWrapper.querySelector('.e-input-group-icon');\n var clearIcon = this.inputWrapper.querySelector('.e-clear-icon');\n EventHandler.add(ddbIcon, 'mousedown', this.dropDownClick, this);\n EventHandler.add(document, 'mousedown', this.onDocumentClick, this);\n EventHandler.add(this.gridEle, 'click', this.onMouseClick, this);\n EventHandler.add(this.inputEle, 'input', this.inputHandler, this);\n EventHandler.add(this.inputWrapper, 'focus', this.focusIn, this);\n if (clearIcon) {\n EventHandler.add(clearIcon, 'click', this.clearText, this);\n }\n EventHandler.add(window, 'resize', this.windowResize, this);\n this.keyboardModule = new KeyboardEvents(this.inputWrapper, {\n keyAction: this.keyActionHandler.bind(this),\n keyConfigs: this.keyConfigs,\n eventName: 'keydown'\n });\n this.keyboardModule = new KeyboardEvents(this.gridEle, {\n keyAction: this.gridKeyActionHandler.bind(this),\n keyConfigs: this.keyConfigs,\n eventName: 'keydown'\n });\n };\n MultiColumnComboBox.prototype.unWireEvents = function () {\n var ddbIcon = this.inputWrapper.querySelector('.e-input-group-icon');\n var clearIcon = this.inputWrapper.querySelector('.e-clear-icon');\n EventHandler.remove(ddbIcon, 'mousedown', this.dropDownClick);\n EventHandler.remove(document, 'mousedown', this.onDocumentClick);\n EventHandler.remove(this.inputEle, 'input', this.inputHandler);\n EventHandler.remove(this.inputWrapper, 'focus', this.focusIn);\n EventHandler.remove(window, 'resize', this.windowResize);\n EventHandler.remove(this.gridEle, 'click', this.onMouseClick);\n if (clearIcon) {\n EventHandler.remove(clearIcon, 'click', this.clearText);\n }\n if (this.keyboardModule) {\n this.keyboardModule.destroy();\n }\n };\n MultiColumnComboBox.prototype.dropDownClick = function (e) {\n if (this.disabled || this.readonly) {\n return;\n }\n var focusedEle = this.gridEle.querySelector('.e-row-focus');\n if (focusedEle) {\n focusedEle.classList.remove('e-row-focus');\n }\n if (this.isPopupOpen) {\n this.hidePopup(e);\n }\n else {\n this.showPopup(e);\n }\n };\n MultiColumnComboBox.prototype.onMouseClick = function (e) {\n var target = e.target;\n var row = closest(target, '.e-row');\n var selectedRowIndex = this.gridObj.selectedRowIndex;\n if (row) {\n if (selectedRowIndex >= 0) {\n this.selectedGridRow(row, e);\n }\n else {\n this.gridObj.selectedRowIndex = this.gridObj.getRows().indexOf(row);\n this.gridObj.selectRow(this.gridObj.selectedRowIndex);\n this.hidePopup(e);\n }\n }\n };\n MultiColumnComboBox.prototype.onDocumentClick = function (e) {\n if (this.disabled || this.readonly || !this.isPopupOpen) {\n if (!(e.target.closest('.e-multicolumn-list'))) {\n this.focusOut();\n }\n return;\n }\n var target = e.target;\n if ((target.classList.contains('e-multicolumn-list-icon') || closest(target, '.e-popup'))) {\n e.preventDefault();\n }\n else {\n if (!target.classList.contains('e-multicolumncombobox') && !target.classList.contains('e-clear-icon')) {\n this.updateValuesOnInput(e);\n }\n }\n if (!closest(target, '.e-multicolumn-list')) {\n this.inputWrapper.tabIndex = -1;\n }\n };\n MultiColumnComboBox.prototype.updateValuesOnInput = function (mouseEvent, keyEvent, isClearValues) {\n var _this = this;\n var e = mouseEvent ? mouseEvent : keyEvent;\n this.hidePopup(e);\n if (this.matchedRowEle && !isClearValues) {\n var prevOnChange = this.isProtectedOnChange;\n this.isProtectedOnChange = true;\n setTimeout(function () {\n _this.inputEle.value = _this.matchedContent[_this.fields.text].toString();\n _this.value = _this.matchedContent[_this.fields.value].toString();\n var selectIndex = _this.findIndex(_this.gridObj.currentViewData, _this.matchedContent);\n _this.index = selectIndex;\n _this.text = _this.matchedContent[_this.fields.text].toString();\n _this.gridObj.selectRow(selectIndex);\n _this.selectedGridRow(_this.gridObj.getRowByIndex(selectIndex), e);\n _this.previousItemElement = _this.gridObj.getSelectedRows()[0];\n }, 100);\n this.isProtectedOnChange = prevOnChange;\n }\n else {\n if (this.isDataFiltered) {\n this.inputEle.value = '';\n var ChangeEventArgs = {\n value: null,\n itemData: { text: null, value: null },\n item: null,\n previousItemData: { text: this.text, value: this.value },\n previousItemElement: this.previousItemElement,\n itemElement: null,\n event: e,\n isInteracted: true,\n cancel: false\n };\n var prevOnChange = this.isProtectedOnChange;\n this.isProtectedOnChange = true;\n this.text = this.value = this.index = null;\n this.gridObj.refreshColumns();\n this.isProtectedOnChange = prevOnChange;\n this.triggerChangeEvent(ChangeEventArgs);\n this.isDataFiltered = false;\n this.matchedContent = this.matchedRowEle = null;\n }\n }\n };\n MultiColumnComboBox.prototype.clearText = function (e) {\n this.isDataFiltered = true;\n this.updateValuesOnInput(e, null, true);\n };\n MultiColumnComboBox.prototype.windowResize = function () {\n if (this.popupObj) {\n this.popupObj.setProperties({ width: this.getSize(true) });\n this.popupObj.refreshPosition();\n }\n };\n /* To set cssclass for the dropdowntree */\n MultiColumnComboBox.prototype.setCssClass = function (newClass, oldClass) {\n var elements = this.popupObj ? [this.inputWrapper, this.popupObj.element] : [this.inputWrapper];\n if (!isNOU(oldClass) && oldClass !== '') {\n removeClass(elements, oldClass.split(' '));\n }\n if (!isNOU(newClass) && newClass !== '') {\n addClass(elements, newClass.split(' '));\n }\n };\n MultiColumnComboBox.prototype.keyActionHandler = function (e) {\n switch (e.action) {\n case 'escape':\n case 'altUp':\n case 'shiftTab':\n case 'tab':\n if (this.isPopupOpen) {\n this.hidePopup(e);\n }\n break;\n case 'altDown':\n if (!this.isPopupOpen) {\n this.showPopup(e);\n this.updateSelectedItem(e, false);\n }\n break;\n case 'moveDown':\n case 'moveUp':\n this.updateSelectedItem(e);\n break;\n case 'enter':\n this.updateValuesOnInput(null, e);\n this.focusIn(e);\n break;\n case 'home':\n case 'end':\n this.updateSelectedItem(e);\n break;\n }\n };\n MultiColumnComboBox.prototype.gridKeyActionHandler = function (e, isGroup) {\n if (isGroup) {\n if (e.key === 'ArrowDown') {\n e.action = 'moveDown';\n }\n else if (e.key === 'ArrowUp') {\n e.action = 'moveUp';\n }\n else if (e.key === 'End') {\n e.action = 'end';\n }\n else if (e.key === 'Home') {\n e.action = 'home';\n }\n if (e.altKey && e.key === 'ArrowUp') {\n e.action = 'altUp';\n }\n }\n switch (e.action) {\n case 'escape':\n case 'tab':\n case 'shiftTab':\n case 'altUp':\n if (this.isPopupOpen) {\n e.preventDefault();\n this.hidePopup(e);\n }\n break;\n case 'moveDown':\n case 'moveUp':\n case 'home':\n case 'end':\n this.updateSelectedItem(e);\n break;\n }\n };\n MultiColumnComboBox.prototype.updateSelectedItem = function (e, isUpdateIndex) {\n if (isUpdateIndex === void 0) { isUpdateIndex = true; }\n if (this.isPopupOpen) {\n var index = !this.fields.groupBy ? this.gridObj.selectedRowIndex : this.gridObj.selectedRowIndex ? this.gridObj.selectedRowIndex : 0;\n if ((index === -1 && (e.action === 'moveDown' || e.action === 'moveUp')) || (e.action === 'home')) {\n index = 0;\n }\n else if ((index >= this.gridObj.getRows().length && e.action === 'moveDown') || (e.action === 'end')) {\n index = this.gridObj.getRows().length - 1;\n }\n else if (e.action === 'moveDown' && (index >= 0 && index <= this.gridObj.getRows().length) && this.fields.groupBy) {\n index += 1;\n }\n else if (e.action === 'moveUp' && index > 0 && this.fields.groupBy) {\n index -= 1;\n }\n this.gridObj.selectRow(index);\n this.gridObj.selectedRowIndex = index;\n var focusedEle = this.gridEle.querySelector('.e-row-focus');\n if (focusedEle) {\n focusedEle.classList.remove('e-row-focus');\n }\n if (isUpdateIndex) {\n this.selectedGridRow(this.gridObj.getRows()[index], e, true);\n }\n }\n };\n /**\n * Sets the focus to the component for interaction.component for interaction.\n *\n * @param {FocusEvent | MouseEvent | KeyboardEvent | TouchEvent} e - Specifies the event.\n * @returns {void}\n */\n MultiColumnComboBox.prototype.focusIn = function (e) {\n if (this.disabled || this.readonly) {\n return;\n }\n addClass([this.inputWrapper], [INPUTFOCUS]);\n this.inputWrapper.tabIndex = 0;\n this.inputWrapper.focus();\n var clearIconEle = this.inputWrapper.querySelector('.e-clear-icon');\n if (clearIconEle && (this.value && this.value.toString() !== '' || this.text && this.text !== '')) {\n clearIconEle.classList.remove('e-clear-icon-hide');\n }\n this.trigger('focus', e);\n if (this.floatLabelType !== 'Never') {\n Input.calculateWidth(this.inputEle, this.inputWrapper);\n }\n };\n /**\n * Moves the focus from the component if the component is already focused.\n *\n * @param {MouseEvent | KeyboardEvent} e - Specifies the event.\n * @returns {void}\n */\n MultiColumnComboBox.prototype.focusOut = function (e) {\n if (this.disabled || this.readonly) {\n return;\n }\n this.hidePopup(e);\n removeClass([this.inputWrapper], [INPUTFOCUS]);\n this.inputWrapper.tabIndex = -1;\n var clearIconEle = this.inputWrapper.querySelector('.e-clear-icon');\n if (clearIconEle) {\n clearIconEle.classList.add('e-clear-icon-hide');\n }\n if (this.floatLabelType !== 'Never') {\n Input.calculateWidth(this.inputEle, this.inputWrapper);\n }\n };\n /**\n * Opens the popup that displays the list of items.\n *\n * @param {MouseEvent | KeyboardEventArgs | TouchEvent} e - Specifies the event.\n * @returns {void}\n */\n MultiColumnComboBox.prototype.showPopup = function (e, isInputOpen) {\n var _this = this;\n var animModel = { name: 'FadeIn', duration: 100 };\n var eventArgs = { popup: this.popupObj, event: e, cancel: false, animation: animModel };\n this.trigger('open', eventArgs, function (eventArgs) {\n if (!eventArgs.cancel && !_this.isPopupOpen) {\n _this.isPopupOpen = true;\n _this.popupObj.refreshPosition();\n addClass([_this.inputWrapper], [ICONANIMATION]);\n attributes(_this.inputEle, { 'aria-expanded': 'true', 'aria-owns': _this.element.id + '_popup', 'aria-controls': _this.element.id });\n if (!isInputOpen) {\n if ((_this.value || _this.text || _this.index)) {\n var dataRows = _this.gridObj.currentViewData;\n dataRows.forEach(function (data, index) {\n _this.selectDataRow(data, index);\n });\n }\n _this.focusIn(e);\n }\n _this.popupObj.show(new Animation(eventArgs.animation), _this.popupEle);\n }\n });\n };\n /**\n * Hides the popup if it is in open state.\n *\n * @param {MouseEvent | KeyboardEventArgs | TouchEvent} e - Specifies the event.\n * @returns {void}\n */\n MultiColumnComboBox.prototype.hidePopup = function (e) {\n var _this = this;\n var animModel = { name: 'FadeOut', duration: 100 };\n var eventArgs = { popup: this.popupObj, event: e || null, cancel: false, animation: animModel };\n this.trigger('close', eventArgs, function (eventArgs) {\n if (!eventArgs.cancel) {\n _this.isPopupOpen = false;\n removeClass([_this.inputWrapper], [ICONANIMATION]);\n attributes(_this.inputEle, { 'aria-expanded': 'false' });\n _this.popupObj.hide(new Animation(eventArgs.animation));\n _this.inputEle.value = _this.text ? _this.text.toString() : '';\n if (e) {\n var target = e.target;\n if (target.classList.contains('e-multicolumn-list-icon') || target.classList.contains('e-rowcell')) {\n if (!_this.value) {\n _this.gridObj.refreshColumns();\n }\n _this.focusIn(e);\n }\n else {\n _this.focusOut();\n }\n }\n }\n });\n setTimeout(function () {\n if (_this.gridObj) {\n _this.gridObj.dataSource = _this.dataSource;\n _this.updateGridHeight(true, false);\n }\n }, 100);\n };\n /**\n * Adds a new item to the popup list. By default, new item appends to the list as the last item,\n * but you can insert based on the index parameter.\n *\n * @param { Object[] } items - Specifies an array of JSON data or a JSON data.\n * @param { number } index - Specifies the index to place the newly added item in the popup list.\n * @returns {void}\n */\n MultiColumnComboBox.prototype.addItems = function (items, index) {\n var prevOnChange = this.isProtectedOnChange;\n this.isProtectedOnChange = true;\n this.gridObj.editSettings.allowAdding = true;\n this.gridObj.dataBind();\n this.isProtectedOnChange = prevOnChange;\n this.gridObj.addRecord(items, index);\n };\n /* eslint-disable valid-jsdoc, jsdoc/require-returns-description */\n /**\n * Gets all the list items bound on this component.\n *\n * @returns {Element[]}\n */\n MultiColumnComboBox.prototype.getItems = function () {\n return this.gridObj.getDataRows();\n };\n /**\n * Gets the data Object that matches the given value.\n *\n * @param { string } value - Specifies the value of the list item.\n * @returns {Object}\n */\n MultiColumnComboBox.prototype.getDataByValue = function (value) {\n var _this = this;\n if (!isNOU(this.dataSource) && this.dataSource instanceof Array) {\n return this.dataSource.filter(function (item) {\n return item[_this.fields.value].toString() === value;\n })[0];\n }\n else if (!isNOU(this.dataSource) && this.dataSource instanceof DataManager) {\n this.dataSource.executeQuery(new Query()).then(function (e) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var dataLists = e.result;\n return dataLists.filter(function (item) {\n return item[_this.fields.value].toString() === value;\n })[0];\n });\n }\n return null;\n };\n MultiColumnComboBox.prototype.destroy = function () {\n this.unWireEvents();\n if (this.gridObj) {\n this.gridObj.destroy();\n detach(this.gridObj.element);\n }\n if (this.popupObj) {\n this.popupObj.destroy();\n detach(this.popupObj.element);\n }\n if (this.inputEle) {\n var attrArray = ['placeholder', 'aria-expanded', 'spellcheck', 'aria-label', 'role', 'tabindex', 'type', 'id', 'aria-owns', 'aria-controls'];\n for (var i = 0; i < attrArray.length; i++) {\n this.inputEle.removeAttribute(attrArray[i]);\n }\n this.inputEle.classList.remove('e-input');\n Input.setValue('', this.inputEle, this.floatLabelType, this.showClearButton);\n }\n if (this.element.tagName !== this.getDirective()) {\n this.inputWrapper.parentElement.insertBefore(this.element, this.inputWrapper);\n }\n if (this.inputObj) {\n detach(this.inputObj.container);\n this.inputObj = null;\n }\n Input.destroy({\n element: this.inputEle,\n floatLabelType: this.floatLabelType,\n properties: this.properties\n });\n detach(this.inputWrapper);\n detach(this.popupDiv);\n this.inputEle = null;\n this.previousItemElement = null;\n this.inputWrapper.innerHTML = '';\n this.inputWrapper = null;\n this.popupDiv = null;\n this.popupObj = null;\n this.gridObj = null;\n this.gridEle = null;\n this.popupEle = null;\n this.footer = null;\n this.noRecord = null;\n _super.prototype.destroy.call(this);\n };\n /**\n * Called internally if any of the property value changed.\n *\n * @param {MultiColumnComboBoxModel} newProp - Specifies new properties\n * @param {MultiColumnComboBoxModel} oldProp - Specifies old properties\n * @returns {void}\n * @private\n */\n MultiColumnComboBox.prototype.onPropertyChanged = function (newProp, oldProp) {\n for (var _i = 0, _a = Object.keys(newProp); _i < _a.length; _i++) {\n var prop = _a[_i];\n var gridColumns = void 0;\n switch (prop) {\n case 'width':\n case 'popupWidth':\n if (prop === 'width') {\n this.setElementWidth(newProp.width);\n }\n if (this.popupObj) {\n this.popupObj.element.style.width = this.getSize(true);\n }\n break;\n case 'popupHeight':\n if (this.popupObj) {\n var height = this.getSize(false);\n this.popupObj.element.style.maxHeight = height;\n this.popupDiv.style.maxHeight = height;\n this.gridObj.height = height;\n }\n break;\n case 'placeholder':\n Input.setPlaceholder(newProp.placeholder, this.inputEle);\n break;\n case 'readonly':\n Input.setReadonly(this.readonly, this.inputEle);\n break;\n case 'disabled':\n Input.setEnabled(!this.disabled, this.inputEle);\n this.setEnable();\n break;\n case 'cssClass':\n this.setCssClass(newProp.cssClass, oldProp.cssClass);\n break;\n case 'floatLabelType':\n Input.removeFloating(this.inputObj);\n Input.addFloating(this.inputEle, this.floatLabelType, this.placeholder);\n break;\n case 'showClearButton':\n Input.setClearButton(newProp.showClearButton, this.inputEle, this.inputObj);\n break;\n case 'value':\n this.initValue(true, true);\n break;\n case 'text':\n this.initValue(true, false);\n break;\n case 'index':\n this.initValue();\n break;\n case 'sortOrder':\n if (this.gridObj) {\n this.gridObj.sortSettings.columns = [{ field: this.fields.text, direction: newProp.sortOrder === SortOrder.Ascending ?\n SortOrder.Ascending : SortOrder.Descending }];\n }\n break;\n case 'htmlAttributes':\n this.setHTMLAttributes();\n break;\n case 'noRecordsTemplate':\n this.l10nUpdate();\n break;\n case 'actionFailureTemplate':\n this.l10nUpdate(true);\n break;\n case 'footerTemplate':\n this.setFooterTemplate();\n break;\n case 'itemTemplate':\n if (this.gridObj) {\n this.gridObj.rowTemplate = newProp.itemTemplate;\n }\n break;\n case 'groupTemplate':\n this.groupTemplate = newProp.groupTemplate;\n this.updateGroupByField();\n break;\n case 'enableRtl':\n if (this.gridObj && this.popupObj) {\n this.gridObj.enableRtl = newProp.enableRtl;\n Input.setEnableRtl(newProp.enableRtl, [this.inputWrapper]);\n this.popupObj.enableRtl = newProp.enableRtl;\n }\n break;\n case 'dataSource':\n if (this.gridObj) {\n this.gridObj.dataSource = newProp.dataSource;\n }\n break;\n case 'query':\n if (this.gridObj) {\n this.gridObj.query = newProp.query;\n }\n break;\n case 'gridSettings':\n if (this.gridObj) {\n this.gridObj.gridLines = newProp.gridSettings.gridLines;\n this.gridObj.rowHeight = newProp.gridSettings.rowHeight;\n this.gridObj.enableAltRow = newProp.gridSettings.enableAltRow;\n }\n break;\n case 'fields':\n this.fields = newProp.fields;\n this.updateGroupByField();\n break;\n case 'filterType':\n this.filterType = newProp.filterType;\n break;\n case 'enableVirtualization':\n if (this.gridObj) {\n this.enableVirtualization = this.gridObj.enableVirtualization = newProp.enableVirtualization;\n }\n break;\n case 'sortType':\n this.sortType = newProp.sortType;\n break;\n case 'allowFiltering':\n this.allowFiltering = newProp.allowFiltering;\n break;\n case 'allowSorting':\n if (this.gridObj) {\n this.allowSorting = this.gridObj.allowSorting = newProp.allowSorting;\n }\n break;\n case 'columns':\n if (this.gridObj) {\n gridColumns = this.getGridColumns();\n this.gridObj.columns = gridColumns;\n }\n break;\n }\n }\n };\n __decorate([\n Property([])\n ], MultiColumnComboBox.prototype, \"dataSource\", void 0);\n __decorate([\n Property(null)\n ], MultiColumnComboBox.prototype, \"text\", void 0);\n __decorate([\n Property(null)\n ], MultiColumnComboBox.prototype, \"value\", void 0);\n __decorate([\n Property(null)\n ], MultiColumnComboBox.prototype, \"index\", void 0);\n __decorate([\n Property('100%')\n ], MultiColumnComboBox.prototype, \"width\", void 0);\n __decorate([\n Property('300px')\n ], MultiColumnComboBox.prototype, \"popupHeight\", void 0);\n __decorate([\n Property('100%')\n ], MultiColumnComboBox.prototype, \"popupWidth\", void 0);\n __decorate([\n Property(null)\n ], MultiColumnComboBox.prototype, \"placeholder\", void 0);\n __decorate([\n Property(true)\n ], MultiColumnComboBox.prototype, \"allowFiltering\", void 0);\n __decorate([\n Property(true)\n ], MultiColumnComboBox.prototype, \"allowSorting\", void 0);\n __decorate([\n Property(false)\n ], MultiColumnComboBox.prototype, \"showClearButton\", void 0);\n __decorate([\n Property('')\n ], MultiColumnComboBox.prototype, \"cssClass\", void 0);\n __decorate([\n Complex({ text: null, value: null, groupBy: null }, FieldSettings)\n ], MultiColumnComboBox.prototype, \"fields\", void 0);\n __decorate([\n Collection([], Column)\n ], MultiColumnComboBox.prototype, \"columns\", void 0);\n __decorate([\n Complex({}, GridSettings)\n ], MultiColumnComboBox.prototype, \"gridSettings\", void 0);\n __decorate([\n Property(FilterType.StartsWith)\n ], MultiColumnComboBox.prototype, \"filterType\", void 0);\n __decorate([\n Property('Never')\n ], MultiColumnComboBox.prototype, \"floatLabelType\", void 0);\n __decorate([\n Property(SortOrder.None)\n ], MultiColumnComboBox.prototype, \"sortOrder\", void 0);\n __decorate([\n Property(SortType.OneColumn)\n ], MultiColumnComboBox.prototype, \"sortType\", void 0);\n __decorate([\n Property(false)\n ], MultiColumnComboBox.prototype, \"enableVirtualization\", void 0);\n __decorate([\n Property(false)\n ], MultiColumnComboBox.prototype, \"disabled\", void 0);\n __decorate([\n Property(false)\n ], MultiColumnComboBox.prototype, \"readonly\", void 0);\n __decorate([\n Property(false)\n ], MultiColumnComboBox.prototype, \"enablePersistence\", void 0);\n __decorate([\n Property()\n ], MultiColumnComboBox.prototype, \"query\", void 0);\n __decorate([\n Property(null)\n ], MultiColumnComboBox.prototype, \"itemTemplate\", void 0);\n __decorate([\n Property(null)\n ], MultiColumnComboBox.prototype, \"footerTemplate\", void 0);\n __decorate([\n Property(null)\n ], MultiColumnComboBox.prototype, \"groupTemplate\", void 0);\n __decorate([\n Property('Request Failed')\n ], MultiColumnComboBox.prototype, \"actionFailureTemplate\", void 0);\n __decorate([\n Property('No records found')\n ], MultiColumnComboBox.prototype, \"noRecordsTemplate\", void 0);\n __decorate([\n Property({})\n ], MultiColumnComboBox.prototype, \"htmlAttributes\", void 0);\n __decorate([\n Event()\n ], MultiColumnComboBox.prototype, \"created\", void 0);\n __decorate([\n Event()\n ], MultiColumnComboBox.prototype, \"open\", void 0);\n __decorate([\n Event()\n ], MultiColumnComboBox.prototype, \"close\", void 0);\n __decorate([\n Event()\n ], MultiColumnComboBox.prototype, \"actionFailure\", void 0);\n __decorate([\n Event()\n ], MultiColumnComboBox.prototype, \"actionBegin\", void 0);\n __decorate([\n Event()\n ], MultiColumnComboBox.prototype, \"actionComplete\", void 0);\n __decorate([\n Event()\n ], MultiColumnComboBox.prototype, \"filtering\", void 0);\n __decorate([\n Event()\n ], MultiColumnComboBox.prototype, \"select\", void 0);\n __decorate([\n Event()\n ], MultiColumnComboBox.prototype, \"change\", void 0);\n MultiColumnComboBox = __decorate([\n NotifyPropertyChanges\n ], MultiColumnComboBox);\n return MultiColumnComboBox;\n}(Component));\nexport { MultiColumnComboBox };\n"],"names":["this","GridGroup","isNOU"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
this.ej=this.ej||{},this.ej.multicolumncombobox=function(t,e,i,r,o,n){"use strict";var s=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),a=function(t,e,i,r){var o,n=arguments.length,s=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,i):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,r);else for(var a=t.length-1;a>=0;a--)(o=t[a])&&(s=(n<3?o(s):n>3?o(e,i,s):o(e,i))||s);return n>3&&s&&Object.defineProperty(e,i,s),s},l="e-nodata",p=function(){function t(){}return t.prototype.InjectModules=function(){n.Grid.Inject(n.VirtualScroll,n.Group,n.Edit,n.Sort)},t}();!function(t){t.StartsWith="StartsWith",t.EndsWith="EndsWith",t.Contains="Contains"}(t.FilterType||(t.FilterType={})),function(t){t.None="None",t.Ascending="Ascending",t.Descending="Descending"}(t.SortOrder||(t.SortOrder={})),function(t){t.OneColumn="OneColumn",t.MultipleColumns="MultipleColumns"}(t.SortType||(t.SortType={}));var u=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return s(i,t),a([e.Property()],i.prototype,"text",void 0),a([e.Property()],i.prototype,"value",void 0),a([e.Property()],i.prototype,"groupBy",void 0),i}(e.ChildProperty),d=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return s(i,t),a([e.Property("")],i.prototype,"field",void 0),a([e.Property("")],i.prototype,"header",void 0),a([e.Property("")],i.prototype,"width",void 0),a([e.Property("")],i.prototype,"textAlign",void 0),a([e.Property(null)],i.prototype,"format",void 0),a([e.Property(!1)],i.prototype,"displayAsCheckBox",void 0),a([e.Property(null)],i.prototype,"template",void 0),a([e.Property(null)],i.prototype,"headerTemplate",void 0),a([e.Property(null)],i.prototype,"customAttributes",void 0),i}(e.ChildProperty),h=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return s(i,t),a([e.Property(!1)],i.prototype,"enableAltRow",void 0),a([e.Property(null)],i.prototype,"rowHeight",void 0),a([e.Property("Default")],i.prototype,"gridLines",void 0),i}(e.ChildProperty),c=function(c){function g(t,e){var i=c.call(this,t,e)||this;return i.gridInject=new p,i.gridInject.InjectModules(),i}return s(g,c),g.prototype.preRender=function(){this.element.id||(this.element.id=e.getUniqueID("e-"+this.getModuleName())),this.keyConfigs={escape:"escape",altUp:"alt+uparrow",altDown:"alt+downarrow",tab:"tab",shiftTab:"shift+tab",end:"end",enter:"enter",home:"home",moveDown:"downarrow",moveUp:"uparrow"},this.matchedRowEle=this.matchedContent=null,this.persistData()},g.prototype.getDirective=function(){return"EJS-MULTICOLUMNCOMBOBOX"},g.prototype.getModuleName=function(){return"multicolumncombobox"},g.prototype.getPersistData=function(){return this.addOnPersist(["value"])},g.prototype.persistData=function(){if(this.enablePersistence){this.element.id=this.element.id+"_wrapper";var t=window.localStorage.getItem(this.getModuleName()+this.element.id);e.isNullOrUndefined(t)||""===t||this.setProperties(JSON.parse(t),!0)}},g.prototype.render=function(){this.renderGrid(),this.renderInput(),this.popupDiv=this.createElement("div",{className:"e-popup-content"}),this.popupDiv.appendChild(this.gridEle),this.setHTMLAttributes(),this.renderPopup(),this.wireEvents()},g.prototype.renderGrid=function(){var i=this,r=this.getGridColumns();this.gridObj=new n.Grid({dataSource:this.dataSource,columns:r,allowSorting:this.allowSorting,enableStickyHeader:!0,gridLines:this.gridSettings.gridLines,rowHeight:this.gridSettings.rowHeight,enableAltRow:this.gridSettings.enableAltRow,enableVirtualization:this.enableVirtualization,enableRtl:this.enableRtl,editSettings:{allowAdding:!1},query:this.query,height:this.popupHeight,allowMultiSorting:"multiplecolumns"===this.sortType.toString().toLowerCase()&&this.allowSorting,rowTemplate:this.itemTemplate,dataBound:function(){i.onDataBound()},actionFailure:function(t){i.onActionFailure(t)},actionBegin:function(t){i.trigger("actionBegin",t)},actionComplete:function(t){i.trigger("actionComplete",t),"sorting"===t.requestType&&i.updateRowSelection(t);var e=t.rows;i.isDataFiltered&&e.length>0&&""!==i.inputEle.value&&"sorting"!==t.requestType&&i.gridObj.getRows()[0].classList.add("e-row-focus"),i.popupObj.refreshPosition()},keyPressed:function(t){"Enter"===t.key&&(t.cancel=!0,i.isPopupOpen&&(i.selectedGridRow(i.gridObj.getRows()[i.gridObj.selectedRowIndex],t,!0),i.hidePopup(t),i.focusIn(t))),i.fields.groupBy&&(t.cancel=!0,i.gridKeyActionHandler(t,!0))}}),this.gridEle=this.createElement("div",{id:e.getUniqueID("grid"),className:"e-multicolumn-grid"}),this.updateGroupByField();var o=this.sortOrder.toString().toLowerCase();this.gridObj.columns[0].isPrimaryKey=!0,"none"!==o&&(this.gridObj.sortSettings={columns:[{field:this.fields.text,direction:"ascending"===o?t.SortOrder.Ascending:t.SortOrder.Descending}]}),this.gridObj.appendTo(this.gridEle)},g.prototype.isRowMatching=function(t,e,i){var r=Object.values(t).map(String);return r.includes(e)&&r.includes(i)},g.prototype.updateRowSelection=function(t){var e=this;t&&t.rows.forEach(function(t){var i=t.data,r=t.index;e.selectDataRow(i,r)})},g.prototype.selectDataRow=function(t,e){if(this.isRowMatching(t,this.value?this.value.toString():"",this.text?this.text.toString():"")){this.gridObj.selectRow(e);var i=this.isProtectedOnChange;return this.isProtectedOnChange=!0,this.index=e,void(this.isProtectedOnChange=i)}},g.prototype.findIndex=function(t,e){return t.findIndex(function(t){return Object.keys(e).every(function(i){return t[i]===e[i]})})},g.prototype.getGridColumns=function(){var t=this;return this.columns.map(function(e){return{field:e.field,headerText:e.header,width:e.width,textAlign:""===e.textAlign&&t.enableRtl?"Right":e.textAlign,format:e.format,displayAsCheckBox:e.displayAsCheckBox,template:e.template,headerTemplate:e.headerTemplate,customAttributes:e.customAttributes,type:e.displayAsCheckBox?"boolean":"string"}})},g.prototype.updateGroupByField=function(){if(""!==this.fields.groupBy&&!e.isNullOrUndefined(this.fields.groupBy)){"multiplecolumns"!==this.sortType.toString().toLowerCase()&&this.gridEle.classList.add("e-multicolumn-group");var t=this.isProtectedOnChange;this.isProtectedOnChange=!0,this.gridObj.allowGrouping=!0,this.gridObj.groupSettings={showDropArea:!1,columns:[this.fields.groupBy],captionTemplate:this.groupTemplate&&""!==this.fields.groupBy&&!e.isNullOrUndefined(this.fields.groupBy)?this.groupTemplate:"${key}"},this.isVue&&(this.gridObj.isVue=this.isVue),this.isProtectedOnChange=t}},g.prototype.onDataBound=function(){var t=this.dataSource.length,i=this.popupDiv.querySelector(".e-multicolumn-grid");if(t<=0&&i)this.l10nUpdate(),this.popupDiv.removeChild(this.gridEle),e.addClass([this.popupDiv],[l]);else if(this.popupDiv.classList.contains(l)&&t>=1){e.removeClass([this.popupDiv],[l]);var r=this.popupDiv.querySelector(".e-no-records");r&&this.popupDiv.removeChild(r)}},g.prototype.onActionFailure=function(t){this.trigger("actionFailure",t),this.l10nUpdate(!0),e.addClass([this.popupDiv],[l])},g.prototype.renderInput=function(){"INPUT"===this.element.tagName?(this.inputEle=this.element,e.isNullOrUndefined(this.inputEle.getAttribute("role"))&&this.inputEle.setAttribute("role","combobox"),e.isNullOrUndefined(this.inputEle.getAttribute("type"))&&this.inputEle.setAttribute("type","text"),this.inputEle.setAttribute("aria-expanded","false"),this.inputEle.setAttribute("aria-readOnly",this.readonly.toString()),this.inputEle.setAttribute("aria-disabled",this.disabled.toString()),this.inputEle.setAttribute("tabindex","0")):(this.inputEle=this.createElement("input",{attrs:{role:"textbox",type:"text"}}),this.element.parentElement.insertBefore(this.inputEle,this.element)),this.inputObj=i.Input.createInput({element:this.inputEle,buttons:["e-input-group-icon e-multicolumn-list-icon e-icons"],floatLabelType:this.floatLabelType,properties:{enabled:!this.disabled,readonly:this.readonly,placeholder:this.placeholder,enableRtl:this.enableRtl,showClearButton:this.showClearButton,cssClass:this.cssClass}},this.createElement),this.inputWrapper=this.inputObj.container,this.inputWrapper.classList.add("e-multicolumn-list"),this.inputWrapper.setAttribute("spellcheck","false"),this.element.tagName===this.getDirective()&&this.element.appendChild(this.inputWrapper),this.setElementWidth(this.width),e.isNullOrUndefined(this.value)&&e.isNullOrUndefined(this.text)&&e.isNullOrUndefined(this.index)||this.initValue(null,null,!0)},g.prototype.setElementWidth=function(t){var i=this.inputWrapper;e.isNullOrUndefined(t)||("number"==typeof t?i.style.width=e.formatUnit(t):"string"==typeof t&&(i.style.width=t.match(/px|%|em/)?t:e.formatUnit(t)))},g.prototype.setHTMLAttributes=function(){if(Object.keys(this.htmlAttributes).length)for(var t=0,e=Object.keys(this.htmlAttributes);t<e.length;t++){var r=e[t];"class"===r?this.inputWrapper.classList.add(this.htmlAttributes[""+r]):"disabled"===r?(this.setProperties({enabled:!1},!0),this.setEnable()):"readonly"===r?(this.setProperties({readonly:!0},!0),this.dataBind()):"style"===r?this.inputWrapper.setAttribute("style",this.htmlAttributes[""+r]):["title","id","placeholder","role","autocomplete","autocapitalize","spellcheck","minlength","maxlength"].indexOf(r)>-1&&"placeholder"===r?i.Input.setPlaceholder(this.htmlAttributes[""+r],this.inputEle):this.inputEle.setAttribute(r,this.htmlAttributes[""+r])}},g.prototype.setEnable=function(){i.Input.setEnabled(!this.disabled,this.inputEle),this.disabled?(this.isPopupOpen&&this.hidePopup(),e.addClass([this.inputWrapper],"e-disabled"),this.inputWrapper&&this.inputWrapper.classList.contains("e-input-focus")&&e.removeClass([this.inputWrapper],["e-input-focus"]),this.inputEle.setAttribute("aria-disabled","true"),this.inputWrapper.setAttribute("aria-disabled","true")):(e.removeClass([this.inputWrapper],"e-disabled"),this.inputEle.setAttribute("aria-disabled","false"),this.inputWrapper.setAttribute("aria-disabled","false"))},g.prototype.initValue=function(t,i,o){var n,s,a,l,p=this,u=this.gridObj.getSelectedRecords()[0],d=this.gridObj.getSelectedRows()[0],h=this.isProtectedOnChange;this.isProtectedOnChange=!0,this.value=this.value?this.value.toString():this.value,this.isProtectedOnChange=h;var c=function(t){var e=p.updateCurrentValues(n,t);s=e.currentValue,a=e.currentText,l=e.currentIndex};if(!t&&(!e.isNullOrUndefined(this.value)||!e.isNullOrUndefined(this.text))||t&&void 0!==i){var g=t?i?this.value:this.text:e.isNullOrUndefined(this.value)?this.text:this.value;!e.isNullOrUndefined(this.dataSource)&&this.dataSource instanceof r.DataManager?this.dataSource.executeQuery(new r.Query).then(function(r){var h=r.result,f=h.filter(function(r){return r[t?i?p.fields.value:p.fields.text:e.isNullOrUndefined(p.value)?p.fields.text:p.fields.value].toString()===g});f.length>0&&(n=f[0],c(h),p.updateChangeEvent(n,u,d,s,a,l,t,o),p.gridObj.selectRow(p.index))}):!e.isNullOrUndefined(this.dataSource)&&this.dataSource instanceof Array&&(n=this.dataSource.filter(function(r){return r[t?i?p.fields.value:p.fields.text:e.isNullOrUndefined(p.value)?p.fields.text:p.fields.value].toString()===g})[0],c(this.dataSource))}else e.isNullOrUndefined(this.index)||(!e.isNullOrUndefined(this.dataSource)&&this.dataSource instanceof r.DataManager?this.dataSource.executeQuery(new r.Query).then(function(e){var i=e.result;n=i[p.index],c(i),p.updateChangeEvent(n,u,d,s,a,l,t,o),p.gridObj.selectRow(p.index)}):!e.isNullOrUndefined(this.dataSource)&&this.dataSource instanceof Array&&(n=this.dataSource[this.index],c(this.dataSource)));this.dataSource instanceof r.DataManager||this.updateChangeEvent(n,u,d,s,a,l,t,o)},g.prototype.updateChangeEvent=function(t,e,i,r,o,n,s,a){var l={value:t?t[this.fields.value].toString():null,itemData:{text:o,value:r},item:this.getDataByValue(this.value),previousItemData:e,previousItemElement:i,itemElement:this.inputWrapper,event:null,isInteracted:!s};this.updateValues(r,o,n,l,a)},g.prototype.updateCurrentValues=function(t,r){return e.isNullOrUndefined(t)?{currentValue:null,currentText:null,currentIndex:null}:(i.Input.setValue(t[this.fields.text].toString(),this.inputEle,this.floatLabelType,this.showClearButton),{currentValue:t[this.fields.value].toString(),currentText:t[this.fields.text].toString(),currentIndex:r.indexOf(t)})},g.prototype.renderPopup=function(){this.popupEle=this.createElement("div",{id:this.element.id+"_options",className:"e-multicolumn-list e-popup "+(null!==this.cssClass?this.cssClass:"")}),e.attributes(this.popupEle,{"aria-label":this.element.id,role:"dialog"}),document.body.appendChild(this.popupEle),this.createPopup(this.popupEle),e.prepend([this.popupDiv],this.popupEle),this.footerTemplate&&this.setFooterTemplate();var t=this.getSize(!1);if(this.popupEle.style.maxHeight=t,this.footerTemplate){this.footer=this.footer?this.footer:this.popupEle.querySelector(".e-popup-footer");var i=Math.round(this.footer.getBoundingClientRect().height);t=e.formatUnit(parseInt(t,10)-i+"px")}this.popupDiv.style.maxHeight=t,this.popupRowHeight=this.popupDiv.querySelector(".e-gridcontent tr").getBoundingClientRect().height,this.updateGridHeight(),this.popupObj.hide()},g.prototype.updateGridHeight=function(t,i,r){var o;if(t){var n=this.gridObj.getContent().querySelector(".e-content"),s=n.offsetHeight-n.clientHeight,a=r*this.popupRowHeight;""===this.fields.groupBy||e.isNullOrUndefined(this.fields.groupBy)||(a+=this.popupRowHeight),o=i&&a<this.prevGridHeight?a+s+"px":this.prevGridHeight+"px"}else this.prevGridHeight=this.popupDiv.getBoundingClientRect().height-this.popupDiv.querySelector(".e-gridheader").getBoundingClientRect().height,o=this.prevGridHeight+"px";var l=this.isProtectedOnChange;this.isProtectedOnChange=!0,this.gridObj.height=o,this.isProtectedOnChange=l},g.prototype.createPopup=function(t){var i=this;this.popupObj=new o.Popup(t,{width:this.getSize(!0),targetType:"relative",collision:{X:"flip",Y:"flip"},relateTo:this.inputWrapper,enableRtl:this.enableRtl,position:{X:"left",Y:"bottom"},targetExitViewport:function(){e.Browser.isDevice||i.hidePopup()}})},g.prototype.setFooterTemplate=function(){this.footer?this.isReact&&"function"==typeof this.footerTemplate?this.clearTemplate(["footerTemplate"]):this.footer.innerHTML="":(this.footer=this.createElement("div"),e.addClass([this.footer],"e-popup-footer"));var t=this.getTemplateFunction(this.footerTemplate)({count:this.dataSource.length},this,"footerTemplate",this.element.id+"footerTemplate",this.isStringTemplate,void 0,this.footer);t&&(t=Array.prototype.slice.call(t),e.append(t,this.footer)),e.append([this.footer],this.popupEle)},g.prototype.l10nUpdate=function(t){if(this.noRecord?this.noRecord.innerHTML="":this.noRecord=this.createElement("div"),"No records found"!==this.noRecordsTemplate||"Request Failed"!==this.actionFailureTemplate){var i=t?this.actionFailureTemplate:this.noRecordsTemplate,r=t?this.element.id+"_actionFailure":this.element.id+"_noRecords",o=t?"actionFailureTemplate":"noRecordsTemplate",n=this.getTemplateFunction(i)({},this,o,r,this.isStringTemplate,void 0,this.noRecord);n&&(n=Array.prototype.slice.call(n),e.append(n,this.noRecord))}else{var s={noRecordsTemplate:"No records found",actionFailureTemplate:"Request Failed"};this.l10n=new e.L10n("multicolumncombobox",s,this.locale),this.noRecord.innerHTML=t?this.l10n.getConstant("actionFailureTemplate"):this.l10n.getConstant("noRecordsTemplate")}e.addClass([this.noRecord],"e-no-records"),e.prepend([this.noRecord],this.popupDiv),this.popupObj.refreshPosition()},g.prototype.getTemplateFunction=function(t){if("string"==typeof t){var i="";try{var r=e.select(t);i=r?"SCRIPT"===r.tagName?r.innerHTML:r.outerHTML:t}catch(e){i=t}return e.compile(i)}return e.compile(t)},g.prototype.getSize=function(t){var i=t?this.popupWidth:this.popupHeight,r=e.formatUnit(i);return r.indexOf("%")>-1?r=((t?this.inputWrapper.offsetWidth:document.documentElement.clientHeight)*parseFloat(r)/100).toString()+"px":"string"==typeof i&&(r=i.match(/px|em/)?i:r),r},g.prototype.selectedGridRow=function(t,e,r){var o=this,n={isInteracted:!!e,item:this.gridObj.getSelectedRecords()[0],itemElement:t,itemData:this.gridObj.getSelectedRecords()[0],event:e,cancel:!1},s=this.gridObj.getSelectedRecords()[0],a=s?s[this.fields.text].toString():"",l=s?s[this.fields.value].toString():"",p={isInteracted:!!e,item:s,itemElement:t,itemData:{text:a,value:l},event:e,cancel:!1,value:l,previousItemData:{text:this.text,value:this.value},previousItemElement:this.previousItemElement};this.trigger("select",n,function(t){if(!t.cancel&&t.itemData){var n=t.itemData;(!r||r&&"Enter"===e.key)&&o.updateValues(n[o.fields.value],n[o.fields.text],o.gridObj.selectedRowIndex,p),i.Input.setValue(n[o.fields.text],o.inputEle,o.floatLabelType,o.showClearButton),(!r||r&&"Enter"===e.key)&&o.hidePopup(e)}})},g.prototype.updateValues=function(t,i,r,o,n){this.previousItemElement=o.itemElement;var s=this.isProtectedOnChange;this.isProtectedOnChange=!0,this.text=i||this.text,this.value=t||this.value,this.index=e.isNullOrUndefined(r)?this.index:r,this.isProtectedOnChange=s,n||this.triggerChangeEvent(o)},g.prototype.triggerChangeEvent=function(t){this.trigger("change",t,function(t){t.cancel})},g.prototype.inputHandler=function(t){var e=this;if(this.showPopup(null,!0),this.allowFiltering){var i=t.target.value.toLowerCase(),r=!1,o={preventDefaultAction:!1,text:i,updateData:function(t,n,s){o.cancel||(r=!0,e.filterAction(t,i,n,s))},event:t,cancel:!1};this.trigger("filtering",o,function(t){t.cancel||t.preventDefaultAction||r||e.filterAction(e.dataSource,i,e.query,e.fields)})}this.updateInputValue(t.target.value)},g.prototype.updateInputValue=function(t){var e,i=this;if(this.dataSource instanceof r.DataManager){var o=new r.Query;this.dataSource.executeQuery(o).then(function(r){var o=r.result;e=o.filter(function(e){return e[i.fields.text].toString().toLowerCase().startsWith(t.toLowerCase())}),i.selectFilteredRows(e)})}else Array.isArray(this.dataSource)&&(e=this.dataSource.filter(function(e){return e[i.fields.text].toString().toLowerCase().startsWith(t.toLowerCase())}),this.selectFilteredRows(e))},g.prototype.selectFilteredRows=function(t){if(t.length>0?this.matchedContent=t[0]:this.matchedContent=null,this.matchedContent){var e=this.findIndex(this.gridObj.currentViewData,this.matchedContent);this.matchedRowEle=this.gridObj.getRowByIndex(e)}else this.matchedRowEle=null},g.prototype.filterAction=function(t,e,i,o){var n,s=this,a=this.filterType.toString().toLowerCase(),l=i||new r.Query;t instanceof r.DataManager?t.executeQuery(l).then(function(t){var i=t.result,r=i.length;n=i.filter(function(t){return s.filterData(t,a,e,o)}),s.updateGridDataSource(n,r)}):Array.isArray(t)&&(n=t.filter(function(t){return s.filterData(t,a,e,o)}),this.updateGridDataSource(n))},g.prototype.filterData=function(t,e,i,r){var o=t[r?r.text:this.fields.text].toString().toLowerCase();switch(e){case"startswith":return o.startsWith(i);case"endswith":return o.endsWith(i);case"contains":return o.includes(i);default:return!1}},g.prototype.updateGridDataSource=function(t,i){var o=!0;if(t.length>0){o=(this.dataSource instanceof r.DataManager?i:this.dataSource.length)!==t.length,e.removeClass([this.popupDiv],[l]);var n=this.popupDiv.querySelector(".e-no-records");n&&this.popupDiv.removeChild(n),this.gridObj.dataSource=t,this.isDataFiltered=!0}else this.l10nUpdate(),e.addClass([this.popupDiv],[l]);this.updateGridHeight(!0,o,t.length)},g.prototype.wireEvents=function(){var t=this.inputWrapper.querySelector(".e-input-group-icon"),i=this.inputWrapper.querySelector(".e-clear-icon");e.EventHandler.add(t,"mousedown",this.dropDownClick,this),e.EventHandler.add(document,"mousedown",this.onDocumentClick,this),e.EventHandler.add(this.gridEle,"click",this.onMouseClick,this),e.EventHandler.add(this.inputEle,"input",this.inputHandler,this),e.EventHandler.add(this.inputWrapper,"focus",this.focusIn,this),i&&e.EventHandler.add(i,"click",this.clearText,this),e.EventHandler.add(window,"resize",this.windowResize,this),this.keyboardModule=new e.KeyboardEvents(this.inputWrapper,{keyAction:this.keyActionHandler.bind(this),keyConfigs:this.keyConfigs,eventName:"keydown"}),this.keyboardModule=new e.KeyboardEvents(this.gridEle,{keyAction:this.gridKeyActionHandler.bind(this),keyConfigs:this.keyConfigs,eventName:"keydown"})},g.prototype.unWireEvents=function(){var t=this.inputWrapper.querySelector(".e-input-group-icon"),i=this.inputWrapper.querySelector(".e-clear-icon");e.EventHandler.remove(t,"mousedown",this.dropDownClick),e.EventHandler.remove(document,"mousedown",this.onDocumentClick),e.EventHandler.remove(this.inputEle,"input",this.inputHandler),e.EventHandler.remove(this.inputWrapper,"focus",this.focusIn),e.EventHandler.remove(window,"resize",this.windowResize),e.EventHandler.remove(this.gridEle,"click",this.onMouseClick),i&&e.EventHandler.remove(i,"click",this.clearText),this.keyboardModule&&this.keyboardModule.destroy()},g.prototype.dropDownClick=function(t){if(!this.disabled&&!this.readonly){var e=this.gridEle.querySelector(".e-row-focus");e&&e.classList.remove("e-row-focus"),this.isPopupOpen?this.hidePopup(t):this.showPopup(t)}},g.prototype.onMouseClick=function(t){var i=t.target,r=e.closest(i,".e-row"),o=this.gridObj.selectedRowIndex;r&&(o>=0?this.selectedGridRow(r,t):(this.gridObj.selectedRowIndex=this.gridObj.getRows().indexOf(r),this.gridObj.selectRow(this.gridObj.selectedRowIndex),this.hidePopup(t)))},g.prototype.onDocumentClick=function(t){if(this.disabled||this.readonly||!this.isPopupOpen)return void(t.target.closest(".e-multicolumn-list")||this.focusOut());var i=t.target;i.classList.contains("e-multicolumn-list-icon")||e.closest(i,".e-popup")?t.preventDefault():i.classList.contains("e-multicolumncombobox")||i.classList.contains("e-clear-icon")||this.updateValuesOnInput(t),e.closest(i,".e-multicolumn-list")||(this.inputWrapper.tabIndex=-1)},g.prototype.updateValuesOnInput=function(t,e,i){var r=this,o=t||e;if(this.hidePopup(o),this.matchedRowEle&&!i){s=this.isProtectedOnChange;this.isProtectedOnChange=!0,setTimeout(function(){r.inputEle.value=r.matchedContent[r.fields.text].toString(),r.value=r.matchedContent[r.fields.value].toString();var t=r.findIndex(r.gridObj.currentViewData,r.matchedContent);r.index=t,r.text=r.matchedContent[r.fields.text].toString(),r.gridObj.selectRow(t),r.selectedGridRow(r.gridObj.getRowByIndex(t),o),r.previousItemElement=r.gridObj.getSelectedRows()[0]},100),this.isProtectedOnChange=s}else if(this.isDataFiltered){this.inputEle.value="";var n={value:null,itemData:{text:null,value:null},item:null,previousItemData:{text:this.text,value:this.value},previousItemElement:this.previousItemElement,itemElement:null,event:o,isInteracted:!0,cancel:!1},s=this.isProtectedOnChange;this.isProtectedOnChange=!0,this.text=this.value=this.index=null,this.gridObj.refreshColumns(),this.isProtectedOnChange=s,this.triggerChangeEvent(n),this.isDataFiltered=!1,this.matchedContent=this.matchedRowEle=null}},g.prototype.clearText=function(t){this.isDataFiltered=!0,this.updateValuesOnInput(t,null,!0)},g.prototype.windowResize=function(){this.popupObj&&(this.popupObj.setProperties({width:this.getSize(!0)}),this.popupObj.refreshPosition())},g.prototype.setCssClass=function(t,i){var r=this.popupObj?[this.inputWrapper,this.popupObj.element]:[this.inputWrapper];e.isNullOrUndefined(i)||""===i||e.removeClass(r,i.split(" ")),e.isNullOrUndefined(t)||""===t||e.addClass(r,t.split(" "))},g.prototype.keyActionHandler=function(t){switch(t.action){case"escape":case"altUp":case"shiftTab":case"tab":this.isPopupOpen&&this.hidePopup(t);break;case"altDown":this.isPopupOpen||(this.showPopup(t),this.updateSelectedItem(t,!1));break;case"moveDown":case"moveUp":this.updateSelectedItem(t);break;case"enter":this.updateValuesOnInput(null,t),this.focusIn(t);break;case"home":case"end":this.updateSelectedItem(t)}},g.prototype.gridKeyActionHandler=function(t,e){switch(e&&("ArrowDown"===t.key?t.action="moveDown":"ArrowUp"===t.key?t.action="moveUp":"End"===t.key?t.action="end":"Home"===t.key&&(t.action="home"),t.altKey&&"ArrowUp"===t.key&&(t.action="altUp")),t.action){case"escape":case"tab":case"shiftTab":case"altUp":this.isPopupOpen&&(t.preventDefault(),this.hidePopup(t));break;case"moveDown":case"moveUp":case"home":case"end":this.updateSelectedItem(t)}},g.prototype.updateSelectedItem=function(t,e){if(void 0===e&&(e=!0),this.isPopupOpen){var i=this.fields.groupBy?this.gridObj.selectedRowIndex?this.gridObj.selectedRowIndex:0:this.gridObj.selectedRowIndex;-1===i&&("moveDown"===t.action||"moveUp"===t.action)||"home"===t.action?i=0:i>=this.gridObj.getRows().length&&"moveDown"===t.action||"end"===t.action?i=this.gridObj.getRows().length-1:"moveDown"===t.action&&i>=0&&i<=this.gridObj.getRows().length&&this.fields.groupBy?i+=1:"moveUp"===t.action&&i>0&&this.fields.groupBy&&(i-=1),this.gridObj.selectRow(i),this.gridObj.selectedRowIndex=i;var r=this.gridEle.querySelector(".e-row-focus");r&&r.classList.remove("e-row-focus"),e&&this.selectedGridRow(this.gridObj.getRows()[i],t,!0)}},g.prototype.focusIn=function(t){if(!this.disabled&&!this.readonly){e.addClass([this.inputWrapper],["e-input-focus"]),this.inputWrapper.tabIndex=0,this.inputWrapper.focus();var r=this.inputWrapper.querySelector(".e-clear-icon");r&&(this.value&&""!==this.value.toString()||this.text&&""!==this.text)&&r.classList.remove("e-clear-icon-hide"),this.trigger("focus",t),"Never"!==this.floatLabelType&&i.Input.calculateWidth(this.inputEle,this.inputWrapper)}},g.prototype.focusOut=function(t){if(!this.disabled&&!this.readonly){this.hidePopup(t),e.removeClass([this.inputWrapper],["e-input-focus"]),this.inputWrapper.tabIndex=-1;var r=this.inputWrapper.querySelector(".e-clear-icon");r&&r.classList.add("e-clear-icon-hide"),"Never"!==this.floatLabelType&&i.Input.calculateWidth(this.inputEle,this.inputWrapper)}},g.prototype.showPopup=function(t,i){var r=this,o={name:"FadeIn",duration:100},n={popup:this.popupObj,event:t,cancel:!1,animation:o};this.trigger("open",n,function(o){o.cancel||r.isPopupOpen||(r.isPopupOpen=!0,r.popupObj.refreshPosition(),e.addClass([r.inputWrapper],["e-icon-anim"]),e.attributes(r.inputEle,{"aria-expanded":"true","aria-owns":r.element.id+"_popup","aria-controls":r.element.id}),i||((r.value||r.text||r.index)&&r.gridObj.currentViewData.forEach(function(t,e){r.selectDataRow(t,e)}),r.focusIn(t)),r.popupObj.show(new e.Animation(o.animation),r.popupEle))})},g.prototype.hidePopup=function(t){var i=this,r={name:"FadeOut",duration:100},o={popup:this.popupObj,event:t||null,cancel:!1,animation:r};this.trigger("close",o,function(r){if(!r.cancel&&(i.isPopupOpen=!1,e.removeClass([i.inputWrapper],["e-icon-anim"]),e.attributes(i.inputEle,{"aria-expanded":"false"}),i.popupObj.hide(new e.Animation(r.animation)),i.inputEle.value=i.text?i.text.toString():"",t)){var o=t.target;o.classList.contains("e-multicolumn-list-icon")||o.classList.contains("e-rowcell")?(i.value||i.gridObj.refreshColumns(),i.focusIn(t)):i.focusOut()}}),setTimeout(function(){i.gridObj&&(i.gridObj.dataSource=i.dataSource,i.updateGridHeight(!0,!1))},100)},g.prototype.addItems=function(t,e){var i=this.isProtectedOnChange;this.isProtectedOnChange=!0,this.gridObj.editSettings.allowAdding=!0,this.gridObj.dataBind(),this.isProtectedOnChange=i,this.gridObj.addRecord(t,e)},g.prototype.getItems=function(){return this.gridObj.getDataRows()},g.prototype.getDataByValue=function(t){var i=this;return!e.isNullOrUndefined(this.dataSource)&&this.dataSource instanceof Array?this.dataSource.filter(function(e){return e[i.fields.value].toString()===t})[0]:(!e.isNullOrUndefined(this.dataSource)&&this.dataSource instanceof r.DataManager&&this.dataSource.executeQuery(new r.Query).then(function(e){return e.result.filter(function(e){return e[i.fields.value].toString()===t})[0]}),null)},g.prototype.destroy=function(){if(this.unWireEvents(),this.gridObj&&(this.gridObj.destroy(),e.detach(this.gridObj.element)),this.popupObj&&(this.popupObj.destroy(),e.detach(this.popupObj.element)),this.inputEle){for(var t=["placeholder","aria-expanded","spellcheck","aria-label","role","tabindex","type","id","aria-owns","aria-controls"],r=0;r<t.length;r++)this.inputEle.removeAttribute(t[r]);this.inputEle.classList.remove("e-input"),i.Input.setValue("",this.inputEle,this.floatLabelType,this.showClearButton)}this.element.tagName!==this.getDirective()&&this.inputWrapper.parentElement.insertBefore(this.element,this.inputWrapper),this.inputObj&&(e.detach(this.inputObj.container),this.inputObj=null),i.Input.destroy({element:this.inputEle,floatLabelType:this.floatLabelType,properties:this.properties}),e.detach(this.inputWrapper),e.detach(this.popupDiv),this.inputEle=null,this.previousItemElement=null,this.inputWrapper.innerHTML="",this.inputWrapper=null,this.popupDiv=null,this.popupObj=null,this.gridObj=null,this.gridEle=null,this.popupEle=null,this.footer=null,this.noRecord=null,c.prototype.destroy.call(this)},g.prototype.onPropertyChanged=function(e,r){for(var o=0,n=Object.keys(e);o<n.length;o++){var s=n[o],a=void 0;switch(s){case"width":case"popupWidth":"width"===s&&this.setElementWidth(e.width),this.popupObj&&(this.popupObj.element.style.width=this.getSize(!0));break;case"popupHeight":if(this.popupObj){var l=this.getSize(!1);this.popupObj.element.style.maxHeight=l,this.popupDiv.style.maxHeight=l,this.gridObj.height=l}break;case"placeholder":i.Input.setPlaceholder(e.placeholder,this.inputEle);break;case"readonly":i.Input.setReadonly(this.readonly,this.inputEle);break;case"disabled":i.Input.setEnabled(!this.disabled,this.inputEle),this.setEnable();break;case"cssClass":this.setCssClass(e.cssClass,r.cssClass);break;case"floatLabelType":i.Input.removeFloating(this.inputObj),i.Input.addFloating(this.inputEle,this.floatLabelType,this.placeholder);break;case"showClearButton":i.Input.setClearButton(e.showClearButton,this.inputEle,this.inputObj);break;case"value":this.initValue(!0,!0);break;case"text":this.initValue(!0,!1);break;case"index":this.initValue();break;case"sortOrder":this.gridObj&&(this.gridObj.sortSettings.columns=[{field:this.fields.text,direction:e.sortOrder===t.SortOrder.Ascending?t.SortOrder.Ascending:t.SortOrder.Descending}]);break;case"htmlAttributes":this.setHTMLAttributes();break;case"noRecordsTemplate":this.l10nUpdate();break;case"actionFailureTemplate":this.l10nUpdate(!0);break;case"footerTemplate":this.setFooterTemplate();break;case"itemTemplate":this.gridObj&&(this.gridObj.rowTemplate=e.itemTemplate);break;case"groupTemplate":this.groupTemplate=e.groupTemplate,this.updateGroupByField();break;case"enableRtl":this.gridObj&&this.popupObj&&(this.gridObj.enableRtl=e.enableRtl,i.Input.setEnableRtl(e.enableRtl,[this.inputWrapper]),this.popupObj.enableRtl=e.enableRtl);break;case"dataSource":this.gridObj&&(this.gridObj.dataSource=e.dataSource);break;case"query":this.gridObj&&(this.gridObj.query=e.query);break;case"gridSettings":this.gridObj&&(this.gridObj.gridLines=e.gridSettings.gridLines,this.gridObj.rowHeight=e.gridSettings.rowHeight,this.gridObj.enableAltRow=e.gridSettings.enableAltRow);break;case"fields":this.fields=e.fields,this.updateGroupByField();break;case"filterType":this.filterType=e.filterType;break;case"enableVirtualization":this.gridObj&&(this.enableVirtualization=this.gridObj.enableVirtualization=e.enableVirtualization);break;case"sortType":this.sortType=e.sortType;break;case"allowFiltering":this.allowFiltering=e.allowFiltering;break;case"allowSorting":this.gridObj&&(this.allowSorting=this.gridObj.allowSorting=e.allowSorting);break;case"columns":this.gridObj&&(a=this.getGridColumns(),this.gridObj.columns=a)}}},a([e.Property([])],g.prototype,"dataSource",void 0),a([e.Property(null)],g.prototype,"text",void 0),a([e.Property(null)],g.prototype,"value",void 0),a([e.Property(null)],g.prototype,"index",void 0),a([e.Property("100%")],g.prototype,"width",void 0),a([e.Property("300px")],g.prototype,"popupHeight",void 0),a([e.Property("100%")],g.prototype,"popupWidth",void 0),a([e.Property(null)],g.prototype,"placeholder",void 0),a([e.Property(!0)],g.prototype,"allowFiltering",void 0),a([e.Property(!0)],g.prototype,"allowSorting",void 0),a([e.Property(!1)],g.prototype,"showClearButton",void 0),a([e.Property("")],g.prototype,"cssClass",void 0),a([e.Complex({text:null,value:null,groupBy:null},u)],g.prototype,"fields",void 0),a([e.Collection([],d)],g.prototype,"columns",void 0),a([e.Complex({},h)],g.prototype,"gridSettings",void 0),a([e.Property(t.FilterType.StartsWith)],g.prototype,"filterType",void 0),a([e.Property("Never")],g.prototype,"floatLabelType",void 0),a([e.Property(t.SortOrder.None)],g.prototype,"sortOrder",void 0),a([e.Property(t.SortType.OneColumn)],g.prototype,"sortType",void 0),a([e.Property(!1)],g.prototype,"enableVirtualization",void 0),a([e.Property(!1)],g.prototype,"disabled",void 0),a([e.Property(!1)],g.prototype,"readonly",void 0),a([e.Property(!1)],g.prototype,"enablePersistence",void 0),a([e.Property()],g.prototype,"query",void 0),a([e.Property(null)],g.prototype,"itemTemplate",void 0),a([e.Property(null)],g.prototype,"footerTemplate",void 0),a([e.Property(null)],g.prototype,"groupTemplate",void 0),a([e.Property("Request Failed")],g.prototype,"actionFailureTemplate",void 0),a([e.Property("No records found")],g.prototype,"noRecordsTemplate",void 0),a([e.Property({})],g.prototype,"htmlAttributes",void 0),a([e.Event()],g.prototype,"created",void 0),a([e.Event()],g.prototype,"open",void 0),a([e.Event()],g.prototype,"close",void 0),a([e.Event()],g.prototype,"actionFailure",void 0),a([e.Event()],g.prototype,"actionBegin",void 0),a([e.Event()],g.prototype,"actionComplete",void 0),a([e.Event()],g.prototype,"filtering",void 0),a([e.Event()],g.prototype,"select",void 0),a([e.Event()],g.prototype,"change",void 0),g=a([e.NotifyPropertyChanges],g)}(e.Component);return c.Inject(n.VirtualScroll,n.Sort,n.Edit,n.Group),Object.defineProperty(t,"Edit",{enumerable:!0,get:function(){return n.Edit}}),Object.defineProperty(t,"Group",{enumerable:!0,get:function(){return n.Group}}),Object.defineProperty(t,"Sort",{enumerable:!0,get:function(){return n.Sort}}),Object.defineProperty(t,"VirtualScroll",{enumerable:!0,get:function(){return n.VirtualScroll}}),t.Column=d,t.FieldSettings=u,t.GridSettings=h,t.MultiColumnComboBox=c,t.MultiColumnGrid=p,t}({},ej.base,ej.inputs,ej.data,ej.popups,index),this.ejs=ej;
|
|
2
|
+
//# sourceMappingURL=ej2-multicolumn-combobox.min.js.map
|