@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.
Files changed (141) hide show
  1. package/README.md +47 -0
  2. package/dist/ej2-multicolumn-combobox.umd.min.js +2 -0
  3. package/dist/ej2-multicolumn-combobox.umd.min.js.map +1 -0
  4. package/dist/es6/ej2-multicolumn-combobox.es2015.js +1612 -0
  5. package/dist/es6/ej2-multicolumn-combobox.es2015.js.map +1 -0
  6. package/dist/es6/ej2-multicolumn-combobox.es5.js +1663 -0
  7. package/dist/es6/ej2-multicolumn-combobox.es5.js.map +1 -0
  8. package/dist/global/ej2-multicolumn-combobox.min.js +2 -0
  9. package/dist/global/ej2-multicolumn-combobox.min.js.map +1 -0
  10. package/dist/global/index.d.ts +5 -0
  11. package/index.d.ts +4 -0
  12. package/index.js +4 -0
  13. package/license +10 -0
  14. package/multicolumn-combobox.d.ts +4 -0
  15. package/multicolumn-combobox.js +4 -0
  16. package/package.json +62 -0
  17. package/src/global.js +3 -0
  18. package/src/index.d.ts +1 -0
  19. package/src/index.js +3 -0
  20. package/src/multicolumn-combobox/index.d.ts +6 -0
  21. package/src/multicolumn-combobox/index.js +5 -0
  22. package/src/multicolumn-combobox/multi-column-combo-box-model.d.ts +527 -0
  23. package/src/multicolumn-combobox/multi-column-combo-box.d.ts +860 -0
  24. package/src/multicolumn-combobox/multi-column-combo-box.js +1666 -0
  25. package/styles/bootstrap-dark.css +331 -0
  26. package/styles/bootstrap-dark.scss +10 -0
  27. package/styles/bootstrap.css +331 -0
  28. package/styles/bootstrap.scss +10 -0
  29. package/styles/bootstrap4.css +395 -0
  30. package/styles/bootstrap4.scss +10 -0
  31. package/styles/bootstrap5-dark.css +399 -0
  32. package/styles/bootstrap5-dark.scss +10 -0
  33. package/styles/bootstrap5.css +399 -0
  34. package/styles/bootstrap5.scss +10 -0
  35. package/styles/fabric-dark.css +306 -0
  36. package/styles/fabric-dark.scss +10 -0
  37. package/styles/fabric.css +299 -0
  38. package/styles/fabric.scss +10 -0
  39. package/styles/fluent-dark.css +379 -0
  40. package/styles/fluent-dark.scss +10 -0
  41. package/styles/fluent.css +379 -0
  42. package/styles/fluent.scss +10 -0
  43. package/styles/fluent2.css +1408 -0
  44. package/styles/fluent2.scss +10 -0
  45. package/styles/highcontrast-light.css +317 -0
  46. package/styles/highcontrast-light.scss +10 -0
  47. package/styles/highcontrast.css +317 -0
  48. package/styles/highcontrast.scss +10 -0
  49. package/styles/material-dark.css +339 -0
  50. package/styles/material-dark.scss +10 -0
  51. package/styles/material.css +364 -0
  52. package/styles/material.scss +10 -0
  53. package/styles/material3-dark.css +431 -0
  54. package/styles/material3-dark.scss +12 -0
  55. package/styles/material3.css +487 -0
  56. package/styles/material3.scss +12 -0
  57. package/styles/multicolumn-combobox/_all.scss +2 -0
  58. package/styles/multicolumn-combobox/_bds-definition.scss +29 -0
  59. package/styles/multicolumn-combobox/_bootstrap-dark-definition.scss +29 -0
  60. package/styles/multicolumn-combobox/_bootstrap-definition.scss +29 -0
  61. package/styles/multicolumn-combobox/_bootstrap4-definition.scss +29 -0
  62. package/styles/multicolumn-combobox/_bootstrap5-dark-definition.scss +1 -0
  63. package/styles/multicolumn-combobox/_bootstrap5-definition.scss +29 -0
  64. package/styles/multicolumn-combobox/_bootstrap5.3-definition.scss +29 -0
  65. package/styles/multicolumn-combobox/_fabric-dark-definition.scss +29 -0
  66. package/styles/multicolumn-combobox/_fabric-definition.scss +29 -0
  67. package/styles/multicolumn-combobox/_fluent-dark-definition.scss +1 -0
  68. package/styles/multicolumn-combobox/_fluent-definition.scss +29 -0
  69. package/styles/multicolumn-combobox/_fluent2-definition.scss +29 -0
  70. package/styles/multicolumn-combobox/_fusionnew-definition.scss +29 -0
  71. package/styles/multicolumn-combobox/_highcontrast-definition.scss +29 -0
  72. package/styles/multicolumn-combobox/_highcontrast-light-definition.scss +29 -0
  73. package/styles/multicolumn-combobox/_layout.scss +130 -0
  74. package/styles/multicolumn-combobox/_material-dark-definition.scss +29 -0
  75. package/styles/multicolumn-combobox/_material-definition.scss +29 -0
  76. package/styles/multicolumn-combobox/_material3-dark-definition.scss +1 -0
  77. package/styles/multicolumn-combobox/_material3-definition.scss +29 -0
  78. package/styles/multicolumn-combobox/_tailwind-dark-definition.scss +1 -0
  79. package/styles/multicolumn-combobox/_tailwind-definition.scss +29 -0
  80. package/styles/multicolumn-combobox/_theme.scss +49 -0
  81. package/styles/multicolumn-combobox/bootstrap-dark.css +331 -0
  82. package/styles/multicolumn-combobox/bootstrap-dark.scss +10 -0
  83. package/styles/multicolumn-combobox/bootstrap.css +331 -0
  84. package/styles/multicolumn-combobox/bootstrap.scss +10 -0
  85. package/styles/multicolumn-combobox/bootstrap4.css +395 -0
  86. package/styles/multicolumn-combobox/bootstrap4.scss +10 -0
  87. package/styles/multicolumn-combobox/bootstrap5-dark.css +399 -0
  88. package/styles/multicolumn-combobox/bootstrap5-dark.scss +10 -0
  89. package/styles/multicolumn-combobox/bootstrap5.css +399 -0
  90. package/styles/multicolumn-combobox/bootstrap5.scss +10 -0
  91. package/styles/multicolumn-combobox/fabric-dark.css +306 -0
  92. package/styles/multicolumn-combobox/fabric-dark.scss +10 -0
  93. package/styles/multicolumn-combobox/fabric.css +299 -0
  94. package/styles/multicolumn-combobox/fabric.scss +10 -0
  95. package/styles/multicolumn-combobox/fluent-dark.css +379 -0
  96. package/styles/multicolumn-combobox/fluent-dark.scss +10 -0
  97. package/styles/multicolumn-combobox/fluent.css +379 -0
  98. package/styles/multicolumn-combobox/fluent.scss +10 -0
  99. package/styles/multicolumn-combobox/fluent2.css +1408 -0
  100. package/styles/multicolumn-combobox/fluent2.scss +10 -0
  101. package/styles/multicolumn-combobox/highcontrast-light.css +317 -0
  102. package/styles/multicolumn-combobox/highcontrast-light.scss +10 -0
  103. package/styles/multicolumn-combobox/highcontrast.css +317 -0
  104. package/styles/multicolumn-combobox/highcontrast.scss +10 -0
  105. package/styles/multicolumn-combobox/icons/_bds.scss +6 -0
  106. package/styles/multicolumn-combobox/icons/_bootstrap-dark.scss +6 -0
  107. package/styles/multicolumn-combobox/icons/_bootstrap.scss +6 -0
  108. package/styles/multicolumn-combobox/icons/_bootstrap4.scss +6 -0
  109. package/styles/multicolumn-combobox/icons/_bootstrap5-dark.scss +1 -0
  110. package/styles/multicolumn-combobox/icons/_bootstrap5.3.scss +6 -0
  111. package/styles/multicolumn-combobox/icons/_bootstrap5.scss +6 -0
  112. package/styles/multicolumn-combobox/icons/_fabric-dark.scss +6 -0
  113. package/styles/multicolumn-combobox/icons/_fabric.scss +6 -0
  114. package/styles/multicolumn-combobox/icons/_fluent-dark.scss +1 -0
  115. package/styles/multicolumn-combobox/icons/_fluent.scss +6 -0
  116. package/styles/multicolumn-combobox/icons/_fluent2.scss +6 -0
  117. package/styles/multicolumn-combobox/icons/_fusionnew.scss +6 -0
  118. package/styles/multicolumn-combobox/icons/_highcontrast-light.scss +6 -0
  119. package/styles/multicolumn-combobox/icons/_highcontrast.scss +6 -0
  120. package/styles/multicolumn-combobox/icons/_material-dark.scss +6 -0
  121. package/styles/multicolumn-combobox/icons/_material.scss +6 -0
  122. package/styles/multicolumn-combobox/icons/_material3-dark.scss +1 -0
  123. package/styles/multicolumn-combobox/icons/_material3.scss +6 -0
  124. package/styles/multicolumn-combobox/icons/_tailwind-dark.scss +1 -0
  125. package/styles/multicolumn-combobox/icons/_tailwind.scss +6 -0
  126. package/styles/multicolumn-combobox/material-dark.css +339 -0
  127. package/styles/multicolumn-combobox/material-dark.scss +10 -0
  128. package/styles/multicolumn-combobox/material.css +364 -0
  129. package/styles/multicolumn-combobox/material.scss +10 -0
  130. package/styles/multicolumn-combobox/material3-dark.css +431 -0
  131. package/styles/multicolumn-combobox/material3-dark.scss +11 -0
  132. package/styles/multicolumn-combobox/material3.css +487 -0
  133. package/styles/multicolumn-combobox/material3.scss +11 -0
  134. package/styles/multicolumn-combobox/tailwind-dark.css +363 -0
  135. package/styles/multicolumn-combobox/tailwind-dark.scss +10 -0
  136. package/styles/multicolumn-combobox/tailwind.css +363 -0
  137. package/styles/multicolumn-combobox/tailwind.scss +10 -0
  138. package/styles/tailwind-dark.css +363 -0
  139. package/styles/tailwind-dark.scss +10 -0
  140. package/styles/tailwind.css +363 -0
  141. package/styles/tailwind.scss +10 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ej2-multicolumn-combobox.min.js","sources":["../../src/multicolumn-combobox/multi-column-combo-box.js","../../src/global.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","import * as index from './index';\nindex.MultiColumnComboBox.Inject(index.VirtualScroll, index.Sort, index.Edit, index.Group);\nexport * from './index';\n"],"names":["__extends","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__","this","constructor","prototype","create","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","NODATA","MultiColumnGrid","InjectModules","Grid","Inject","VirtualScroll","GridGroup","Edit","Sort","FilterType","SortOrder","SortType","FieldSettings","_super","apply","Property","ChildProperty","Column","GridSettings","MultiColumnComboBox","options","element","_this","call","gridInject","preRender","id","getUniqueID","getModuleName","keyConfigs","escape","altUp","altDown","tab","shiftTab","end","enter","home","moveDown","moveUp","matchedRowEle","matchedContent","persistData","getDirective","getPersistData","addOnPersist","enablePersistence","data","window","localStorage","getItem","isNOU","setProperties","JSON","parse","render","renderGrid","renderInput","popupDiv","createElement","className","appendChild","gridEle","setHTMLAttributes","renderPopup","wireEvents","gridColumns","getGridColumns","gridObj","dataSource","columns","allowSorting","enableStickyHeader","gridLines","gridSettings","rowHeight","enableAltRow","enableVirtualization","enableRtl","editSettings","allowAdding","query","height","popupHeight","allowMultiSorting","sortType","toString","toLowerCase","rowTemplate","itemTemplate","dataBound","onDataBound","actionFailure","args","onActionFailure","actionBegin","trigger","actionComplete","requestType","updateRowSelection","dataRows","rows","isDataFiltered","inputEle","value","getRows","classList","add","popupObj","refreshPosition","keyPressed","cancel","isPopupOpen","selectedGridRow","selectedRowIndex","hidePopup","focusIn","fields","groupBy","gridKeyActionHandler","updateGroupByField","sortOrder","isPrimaryKey","sortSettings","field","text","direction","Ascending","Descending","appendTo","isRowMatching","selectedValue","selectedText","values","map","String","includes","forEach","row","index","selectDataRow","selectRow","prevOnChange","isProtectedOnChange","findIndex","arr","obj","item","keys","every","column","headerText","header","width","textAlign","format","displayAsCheckBox","template","headerTemplate","customAttributes","type","allowGrouping","groupSettings","showDropArea","captionTemplate","groupTemplate","isVue","dataCount","popupChild","querySelector","l10nUpdate","removeChild","addClass","contains","removeClass","noRecordEle","tagName","getAttribute","setAttribute","readonly","disabled","attrs","role","parentElement","insertBefore","inputObj","Input","createInput","buttons","floatLabelType","properties","enabled","placeholder","showClearButton","cssClass","inputWrapper","container","setElementWidth","initValue","inputWidth","ddElement","style","formatUnit","match","htmlAttributes","_i","_a","htmlAttr","setEnable","dataBind","indexOf","setPlaceholder","setEnabled","isRerender","isValue","isInitial","currentValue","currentText","currentIndex","prevItemData","getSelectedRecords","prevItemEle","getSelectedRows","updateValues","dataList","result","updateCurrentValues","undefined","value_1","DataManager","executeQuery","Query","then","e","dataLists","filteredData","filter","updateChangeEvent","ChangeEventArgs","itemData","getDataByValue","previousItemData","previousItemElement","itemElement","event","isInteracted","setValue","popupEle","MULTICOLUMNLIST","attributes","aria-label","document","body","createPopup","prepend","footerTemplate","setFooterTemplate","getSize","maxHeight","footer","Math","round","getBoundingClientRect","parseInt","popupRowHeight","updateGridHeight","hide","isFilter","autoHeight","dataSourceCount","gridContentEle","getContent","scrollBarHeight","offsetHeight","clientHeight","totalRowHeight","prevGridHeight","Popup","targetType","collision","X","Y","relateTo","position","targetExitViewport","Browser","isDevice","isReact","clearTemplate","innerHTML","tempArr","getTemplateFunction","count","isStringTemplate","slice","append","noRecord","noRecordsTemplate","actionFailureTemplate","templateId","templatestring","l10nLocale","l10n","L10n","locale","getConstant","content","tempEle","select","outerHTML","compile","ispopupWidth","currentDimension","popupWidth","size","offsetWidth","documentElement","parseFloat","isKeyNav","eventArgs","selectedRecords","fieldText","fieldValue","selectedRecord","triggerChangeEvent","inputHandler","showPopup","allowFiltering","inputValue_1","customFiltering_1","eventArgs_1","preventDefaultAction","updateData","filterAction","updateInputValue","inputValue","totaldata","startsWith","selectFilteredRows","isArray","selectedIndex","currentViewData","getRowByIndex","filterType","isQuery","dataLength","filterData","updateGridDataSource","itemValue","endsWith","ddbIcon","clearIcon","EventHandler","dropDownClick","onDocumentClick","onMouseClick","clearText","windowResize","keyboardModule","KeyboardEvents","keyAction","keyActionHandler","bind","eventName","unWireEvents","remove","destroy","focusedEle","closest","focusOut","preventDefault","updateValuesOnInput","tabIndex","mouseEvent","keyEvent","isClearValues","setTimeout","selectIndex","refreshColumns","setCssClass","newClass","oldClass","elements","split","action","updateSelectedItem","isGroup","altKey","isUpdateIndex","focus","clearIconEle","calculateWidth","isInputOpen","animModel","name","duration","popup","animation","aria-expanded","aria-owns","aria-controls","show","Animation","addItems","items","addRecord","getItems","getDataRows","detach","attrArray","removeAttribute","onPropertyChanged","newProp","oldProp","prop","setReadonly","removeFloating","addFloating","setClearButton","setEnableRtl","Complex","Collection","StartsWith","None","OneColumn","Event","NotifyPropertyChanges","Component","index.VirtualScroll","index.Sort","index.Edit","index.Group"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import * as _multicolumncombobox from '@syncfusion/ej2-multicolumn-combobox';
2
+
3
+ export declare namespace ej {
4
+ const multicolumncombobox: typeof _multicolumncombobox;
5
+ }
package/index.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ /**
2
+ * index
3
+ */
4
+ export * from './src/index';
package/index.js ADDED
@@ -0,0 +1,4 @@
1
+ /**
2
+ * index
3
+ */
4
+ export * from './src/index';
package/license ADDED
@@ -0,0 +1,10 @@
1
+ Essential JS 2 library is available under the Syncfusion Essential Studio program, and can be licensed either under the Syncfusion Community License Program or the Syncfusion commercial license.
2
+
3
+ To be qualified for the Syncfusion Community License Program you must have a gross revenue of less than one (1) million U.S. dollars ($1,000,000.00 USD) per year and have less than five (5) developers in your organization, and agree to be bound by Syncfusion’s terms and conditions.
4
+
5
+ Customers who do not qualify for the community license can contact sales@syncfusion.com for commercial licensing options.
6
+
7
+ Under no circumstances can you use this product without (1) either a Community License or a commercial license and (2) without agreeing and abiding by Syncfusion’s license containing all terms and conditions.
8
+
9
+ The Syncfusion license that contains the terms and conditions can be found at
10
+ https://www.syncfusion.com/content/downloads/syncfusion_license.pdf
@@ -0,0 +1,4 @@
1
+ /**
2
+ * multicolumn-combobox
3
+ */
4
+ export * from './src/multicolumn-combobox/index';
@@ -0,0 +1,4 @@
1
+ /**
2
+ * multicolumn-combobox
3
+ */
4
+ export * from './src/multicolumn-combobox/index';
package/package.json ADDED
@@ -0,0 +1,62 @@
1
+ {
2
+ "_from": "@syncfusion/ej2-multicolumn-combobox@*",
3
+ "_id": "@syncfusion/ej2-multicolumn-combobox@21.29.0",
4
+ "_inBundle": false,
5
+ "_integrity": "sha512-7CdtO5I6nlPIkgKIikVRfI0Cynsyddf/Oh5wruH73dlktb6xArbSsSiLcnJ4AUWyXANg51CJBeftS4glY60Hog==",
6
+ "_location": "/@syncfusion/ej2-multicolumn-combobox",
7
+ "_phantomChildren": {},
8
+ "_requested": {
9
+ "type": "range",
10
+ "registry": true,
11
+ "raw": "@syncfusion/ej2-multicolumn-combobox@*",
12
+ "name": "@syncfusion/ej2-multicolumn-combobox",
13
+ "escapedName": "@syncfusion%2fej2-multicolumn-combobox",
14
+ "scope": "@syncfusion",
15
+ "rawSpec": "*",
16
+ "saveSpec": null,
17
+ "fetchSpec": "*"
18
+ },
19
+ "_requiredBy": [
20
+ "/",
21
+ "/@syncfusion/ej2",
22
+ "/@syncfusion/ej2-angular-multicolumn-combobox",
23
+ "/@syncfusion/ej2-react-multicolumn-combobox",
24
+ "/@syncfusion/ej2-vue-multicolumn-combobox"
25
+ ],
26
+ "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-release/@syncfusion/ej2-multicolumn-combobox/-/ej2-multicolumn-combobox-21.29.0.tgz",
27
+ "_shasum": "dcfc5390e6af047a8831ee05b39690b2411ba032",
28
+ "_spec": "@syncfusion/ej2-multicolumn-combobox@*",
29
+ "_where": "/jenkins/workspace/elease-automation_release_26.1.1/packages/included",
30
+ "author": {
31
+ "name": "Syncfusion Inc."
32
+ },
33
+ "bugs": {
34
+ "url": "https://github.com/syncfusion/ej2-multicolumn-combobox-component/issues"
35
+ },
36
+ "bundleDependencies": false,
37
+ "dependencies": {
38
+ "@syncfusion/ej2-base": "~26.1.35",
39
+ "@syncfusion/ej2-grids": "~26.1.35"
40
+ },
41
+ "deprecated": false,
42
+ "description": "Essential JS 2 Component",
43
+ "devDependencies": {},
44
+ "es2015": "./dist/es6/ej2-multicolumn-combobox.es5.js",
45
+ "homepage": "https://www.syncfusion.com/javascript-ui-controls",
46
+ "keywords": [
47
+ "ej2",
48
+ "syncfusion",
49
+ "ej2-multicolumn-combobox"
50
+ ],
51
+ "license": "SEE LICENSE IN license",
52
+ "main": "./dist/ej2-multicolumn-combobox.umd.min.js",
53
+ "module": "./index.js",
54
+ "name": "@syncfusion/ej2-multicolumn-combobox",
55
+ "repository": {
56
+ "type": "git",
57
+ "url": "git+https://github.com/syncfusion/ej2-multicolumn-combobox-component.git"
58
+ },
59
+ "typings": "index.d.ts",
60
+ "version": "26.1.35",
61
+ "sideEffects": false
62
+ }
package/src/global.js ADDED
@@ -0,0 +1,3 @@
1
+ import * as index from './index';
2
+ index.MultiColumnComboBox.Inject(index.VirtualScroll, index.Sort, index.Edit, index.Group);
3
+ export * from './index';
package/src/index.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './multicolumn-combobox/index';
package/src/index.js ADDED
@@ -0,0 +1,3 @@
1
+ // export all modules from current location
2
+ // example: export * from './module'
3
+ export * from './multicolumn-combobox/index';
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Ribbon modules
3
+ */
4
+ export * from './multi-column-combo-box';
5
+ export * from './multi-column-combo-box-model';
6
+ export { Sort, VirtualScroll, Group, Edit } from '@syncfusion/ej2-grids';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Ribbon modules
3
+ */
4
+ export * from './multi-column-combo-box';
5
+ export { Sort, VirtualScroll, Group, Edit } from '@syncfusion/ej2-grids';