@keenthemes/ktui 1.0.11 → 1.0.13

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 (123) hide show
  1. package/dist/ktui.js +1687 -1517
  2. package/dist/ktui.min.js +1 -1
  3. package/dist/ktui.min.js.map +1 -1
  4. package/dist/styles.css +5822 -0
  5. package/examples/select/avatar.html +47 -0
  6. package/examples/select/basic-usage.html +39 -0
  7. package/examples/select/combobox-icons_.html +59 -0
  8. package/examples/select/combobox_.html +46 -0
  9. package/examples/select/country.html +43 -0
  10. package/examples/select/description.html +53 -0
  11. package/examples/select/disable-option.html +37 -0
  12. package/examples/select/disable-select.html +35 -0
  13. package/examples/select/icon-multiple.html +50 -0
  14. package/examples/select/icon.html +48 -0
  15. package/examples/select/max-selection.html +38 -0
  16. package/examples/select/modal.html +72 -0
  17. package/examples/select/multiple.html +40 -0
  18. package/examples/select/placeholder.html +40 -0
  19. package/examples/select/remote-data_.html +32 -0
  20. package/examples/select/search.html +57 -0
  21. package/examples/select/sizes.html +94 -0
  22. package/examples/select/tags-icons_.html +58 -0
  23. package/examples/select/tags-selected_.html +59 -0
  24. package/examples/select/tags_.html +58 -0
  25. package/examples/select/template-customization.html +62 -0
  26. package/examples/toast/example.html +427 -0
  27. package/lib/cjs/components/datatable/datatable.js +23 -7
  28. package/lib/cjs/components/datatable/datatable.js.map +1 -1
  29. package/lib/cjs/components/select/combobox.js +94 -141
  30. package/lib/cjs/components/select/combobox.js.map +1 -1
  31. package/lib/cjs/components/select/config.js +4 -18
  32. package/lib/cjs/components/select/config.js.map +1 -1
  33. package/lib/cjs/components/select/dropdown.js +35 -138
  34. package/lib/cjs/components/select/dropdown.js.map +1 -1
  35. package/lib/cjs/components/select/index.js +2 -1
  36. package/lib/cjs/components/select/index.js.map +1 -1
  37. package/lib/cjs/components/select/option.js +56 -6
  38. package/lib/cjs/components/select/option.js.map +1 -1
  39. package/lib/cjs/components/select/remote.js +1 -37
  40. package/lib/cjs/components/select/remote.js.map +1 -1
  41. package/lib/cjs/components/select/search.js +147 -128
  42. package/lib/cjs/components/select/search.js.map +1 -1
  43. package/lib/cjs/components/select/select.js +332 -391
  44. package/lib/cjs/components/select/select.js.map +1 -1
  45. package/lib/cjs/components/select/tags.js +38 -56
  46. package/lib/cjs/components/select/tags.js.map +1 -1
  47. package/lib/cjs/components/select/templates.js +168 -200
  48. package/lib/cjs/components/select/templates.js.map +1 -1
  49. package/lib/cjs/components/select/types.js +0 -12
  50. package/lib/cjs/components/select/types.js.map +1 -1
  51. package/lib/cjs/components/select/utils.js +187 -339
  52. package/lib/cjs/components/select/utils.js.map +1 -1
  53. package/lib/cjs/components/toast/index.js +10 -0
  54. package/lib/cjs/components/toast/index.js.map +1 -0
  55. package/lib/cjs/components/toast/toast.js +543 -0
  56. package/lib/cjs/components/toast/toast.js.map +1 -0
  57. package/lib/cjs/components/toast/types.js +7 -0
  58. package/lib/cjs/components/toast/types.js.map +1 -0
  59. package/lib/cjs/index.js +5 -1
  60. package/lib/cjs/index.js.map +1 -1
  61. package/lib/esm/components/datatable/datatable.js +23 -7
  62. package/lib/esm/components/datatable/datatable.js.map +1 -1
  63. package/lib/esm/components/select/combobox.js +95 -142
  64. package/lib/esm/components/select/combobox.js.map +1 -1
  65. package/lib/esm/components/select/config.js +3 -17
  66. package/lib/esm/components/select/config.js.map +1 -1
  67. package/lib/esm/components/select/dropdown.js +35 -138
  68. package/lib/esm/components/select/dropdown.js.map +1 -1
  69. package/lib/esm/components/select/index.js +1 -1
  70. package/lib/esm/components/select/index.js.map +1 -1
  71. package/lib/esm/components/select/option.js +56 -6
  72. package/lib/esm/components/select/option.js.map +1 -1
  73. package/lib/esm/components/select/remote.js +1 -37
  74. package/lib/esm/components/select/remote.js.map +1 -1
  75. package/lib/esm/components/select/search.js +148 -129
  76. package/lib/esm/components/select/search.js.map +1 -1
  77. package/lib/esm/components/select/select.js +333 -392
  78. package/lib/esm/components/select/select.js.map +1 -1
  79. package/lib/esm/components/select/tags.js +38 -56
  80. package/lib/esm/components/select/tags.js.map +1 -1
  81. package/lib/esm/components/select/templates.js +167 -199
  82. package/lib/esm/components/select/templates.js.map +1 -1
  83. package/lib/esm/components/select/types.js +1 -11
  84. package/lib/esm/components/select/types.js.map +1 -1
  85. package/lib/esm/components/select/utils.js +184 -336
  86. package/lib/esm/components/select/utils.js.map +1 -1
  87. package/lib/esm/components/toast/index.js +6 -0
  88. package/lib/esm/components/toast/index.js.map +1 -0
  89. package/lib/esm/components/toast/toast.js +540 -0
  90. package/lib/esm/components/toast/toast.js.map +1 -0
  91. package/lib/esm/components/toast/types.js +6 -0
  92. package/lib/esm/components/toast/types.js.map +1 -0
  93. package/lib/esm/index.js +3 -0
  94. package/lib/esm/index.js.map +1 -1
  95. package/package.json +14 -9
  96. package/src/components/alert/alert.css +15 -2
  97. package/src/components/datatable/datatable.ts +25 -17
  98. package/src/components/input/input.css +3 -1
  99. package/src/components/link/link.css +2 -2
  100. package/src/components/scrollable/scrollable.css +9 -5
  101. package/src/components/select/combobox.ts +96 -192
  102. package/src/components/select/config.ts +35 -36
  103. package/src/components/select/dropdown.ts +43 -155
  104. package/src/components/select/index.ts +1 -1
  105. package/src/components/select/option.ts +50 -10
  106. package/src/components/select/remote.ts +2 -42
  107. package/src/components/select/search.ts +159 -158
  108. package/src/components/select/select.css +137 -18
  109. package/src/components/select/select.ts +354 -506
  110. package/src/components/select/tags.ts +37 -60
  111. package/src/components/select/templates.ts +254 -328
  112. package/src/components/select/types.ts +0 -10
  113. package/src/components/select/utils.ts +190 -416
  114. package/src/components/textarea/textarea.css +2 -1
  115. package/src/components/toast/index.ts +7 -0
  116. package/src/components/toast/toast.css +60 -0
  117. package/src/components/toast/toast.ts +605 -0
  118. package/src/components/toast/types.ts +169 -0
  119. package/src/index.ts +4 -0
  120. package/styles/main.css +3 -0
  121. package/styles/vars.css +138 -0
  122. package/styles.css +1 -0
  123. package/webpack.config.js +6 -1
@@ -15,7 +15,6 @@ var KTSelectSearch = /** @class */ (function () {
15
15
  this._searchInput = select.getSearchInput();
16
16
  this._eventManager = new utils_1.EventManager();
17
17
  this._focusManager = new utils_1.FocusManager(this._select.getDropdownElement(), '[data-kt-select-option]', select.getConfig());
18
- this._boundKeyNavHandler = this._handleKeyboardNavigation.bind(this);
19
18
  this.handleSearchInput = this._handleSearchInput.bind(this);
20
19
  this._config = select.getConfig();
21
20
  this._cacheOriginalOptionContents();
@@ -29,15 +28,17 @@ var KTSelectSearch = /** @class */ (function () {
29
28
  console.log('Initializing search module with input:', this._searchInput);
30
29
  // First remove any existing listeners to prevent duplicates
31
30
  this._removeEventListeners();
32
- // Add the event listener
31
+ // Add the input event listener for filtering
33
32
  this._eventManager.addListener(this._searchInput, 'input', this.handleSearchInput);
33
+ // Add keydown event listener for navigation, selection, and escape
34
+ this._eventManager.addListener(this._searchInput, 'keydown', this._handleSearchKeyDown.bind(this));
34
35
  // Add blur event listener to ensure highlights are cleared when focus is lost
35
36
  this._eventManager.addListener(this._searchInput, 'blur', function () {
36
37
  // Small delay to prevent race conditions with selection
37
38
  setTimeout(function () {
38
39
  if (!_this._searchInput.value) {
39
40
  _this._resetAllOptions();
40
- _this.clearSearchHighlights();
41
+ _this.clearSearch();
41
42
  }
42
43
  }, 100);
43
44
  });
@@ -55,47 +56,48 @@ var KTSelectSearch = /** @class */ (function () {
55
56
  _this.refreshOptionCache();
56
57
  });
57
58
  }
58
- // Add keyboard navigation for search results
59
- // This is stopping event propagation to prevent conflicts
60
- this._eventManager.addListener(this._searchInput, 'keydown', this._boundKeyNavHandler);
61
- // Listen for dropdown close to reset options if search is empty
62
- this._select.getElement().addEventListener('dropdown.close', function () {
59
+ // Listen for dropdown close to reset options - ATTACH TO WRAPPER
60
+ this._select.getWrapperElement().addEventListener('dropdown.close', function () {
63
61
  _this._focusManager.resetFocus();
64
- // Always clear highlights when dropdown closes
65
- _this.clearSearchHighlights();
66
- if (!_this._searchInput.value) {
67
- _this._resetAllOptions();
68
- }
69
- // Clear the search input when dropdown closes if configured
70
- if (_this._select.getConfig().clearSearchOnClose) {
71
- _this._searchInput.value = '';
72
- }
62
+ // If clearSearchOnClose is false and there's a value, the search term and filtered state should persist.
63
+ // KTSelect's closeDropdown method already calls this._searchModule.clearSearch() (which clears highlights)
64
+ // and conditionally clears the input value based on KTSelect's config.clearSearchOnClose.
65
+ // This listener in search.ts seems to unconditionally clear everything.
66
+ // For now, keeping its original behavior:
67
+ _this.clearSearch(); // Clears highlights from current options
68
+ _this._searchInput.value = ''; // Clears the search input field
69
+ _this._resetAllOptions(); // Shows all options, restores original text, removes highlights
70
+ _this._clearNoResultsMessage(); // Clears any "no results" message
73
71
  });
74
- // Clear highlights when an option is selected
72
+ // Clear highlights when an option is selected - ATTACH TO ORIGINAL SELECT (standard 'change' event)
75
73
  this._select.getElement().addEventListener('change', function () {
76
- _this.clearSearchHighlights();
74
+ _this.clearSearch();
77
75
  // Close dropdown if configured to do so
78
- if (_this._select.getConfig().closeOnSelect &&
79
- !_this._select.getConfig().multiple) {
80
- _this._select.closeDropdown();
81
- }
76
+ _this._select.closeDropdown();
82
77
  });
83
- // Autofocus on search input
84
- if (this._select.getConfig().searchAutofocus) {
85
- this._select.getElement().addEventListener('dropdown.show', function () {
78
+ // Consolidated 'dropdown.show' event listener - ATTACH TO WRAPPER
79
+ this._select.getWrapperElement().addEventListener('dropdown.show', function () {
80
+ var _a;
81
+ _this._focusManager.resetFocus(); // Always clear previous focus state
82
+ if ((_a = _this._searchInput) === null || _a === void 0 ? void 0 : _a.value) {
83
+ // If there's an existing search term:
84
+ // 1. Re-filter options. This ensures the display (hidden/visible) is correct
85
+ // and "no results" message is handled if query yields nothing.
86
+ _this._filterOptions(_this._searchInput.value);
87
+ }
88
+ else {
89
+ // If search input is empty:
90
+ // 1. Reset all options to their full, unfiltered, original state.
91
+ _this._resetAllOptions(); // Shows all, clears highlights from options, restores original text
92
+ // 2. Clear any "no results" message.
93
+ _this._clearNoResultsMessage();
94
+ }
95
+ // Handle autofocus for the search input (this was one of the original separate listeners)
96
+ if (_this._select.getConfig().searchAutofocus) {
86
97
  setTimeout(function () {
87
98
  var _a;
88
- // Add slight delay to ensure the dropdown and search input are visible
89
- (_a = _this._searchInput) === null || _a === void 0 ? void 0 : _a.focus();
90
- }, 50);
91
- });
92
- }
93
- // Listen for explicit dropdown open event to clear highlights if needed
94
- this._select.getElement().addEventListener('dropdown.show', function () {
95
- var _a;
96
- // If search input is empty, ensure highlights are cleared on open
97
- if (!((_a = _this._searchInput) === null || _a === void 0 ? void 0 : _a.value)) {
98
- _this.clearSearchHighlights();
99
+ (_a = _this._searchInput) === null || _a === void 0 ? void 0 : _a.focus(); // Focus search input
100
+ }, 50); // Delay to ensure dropdown is visible
99
101
  }
100
102
  });
101
103
  }
@@ -110,45 +112,42 @@ var KTSelectSearch = /** @class */ (function () {
110
112
  }
111
113
  };
112
114
  /**
113
- * Handle keyboard navigation for search results
115
+ * Handles keydown events on the search input for navigation and actions.
114
116
  */
115
- KTSelectSearch.prototype._handleKeyboardNavigation = function (event) {
116
- var _this = this;
117
- // Stop propagation to prevent multiple handlers from firing
118
- event.stopPropagation();
119
- if (this._config.debug)
120
- console.log('Search module keydown:', event.key);
121
- var visibleOptions = this._focusManager.getVisibleOptions();
122
- if (visibleOptions.length === 0)
123
- return;
124
- // Use the shared keyboard navigation handler with custom callbacks
125
- (0, utils_1.handleDropdownKeyNavigation)(event, this._select, {
126
- multiple: this._select.getConfig().multiple,
127
- closeOnSelect: this._select.getConfig().closeOnSelect,
128
- }, {
129
- onArrowDown: function () { return _this._focusManager.focusNext(); },
130
- onArrowUp: function () { return _this._focusManager.focusPrevious(); },
131
- onEnter: function () { return _this._selectFocusedOption(); },
132
- onClose: function () {
133
- if (event.key === 'Escape') {
134
- _this.clearSearchHighlights();
117
+ KTSelectSearch.prototype._handleSearchKeyDown = function (event) {
118
+ var key = event.key;
119
+ switch (key) {
120
+ case 'ArrowDown':
121
+ event.preventDefault();
122
+ this._focusManager.focusNext();
123
+ break;
124
+ case 'ArrowUp':
125
+ event.preventDefault();
126
+ this._focusManager.focusPrevious();
127
+ break;
128
+ case 'Enter':
129
+ event.preventDefault();
130
+ // Always attempt to select the first available option in the list.
131
+ // focusFirst() finds, focuses, and returns the first visible, non-disabled option.
132
+ var firstAvailableOption = this._focusManager.focusFirst();
133
+ if (firstAvailableOption) {
134
+ var optionValue = firstAvailableOption.getAttribute('data-value');
135
+ if (optionValue) {
136
+ this._select.toggleSelection(optionValue);
137
+ // KTSelect.toggleSelection handles closing the dropdown based on config.closeOnSelect and config.multiple
138
+ }
135
139
  }
136
- },
137
- });
138
- };
139
- /**
140
- * Select the currently focused option
141
- */
142
- KTSelectSearch.prototype._selectFocusedOption = function () {
143
- var focusedOption = this._focusManager.getFocusedOption();
144
- if (focusedOption) {
145
- var optionValue = focusedOption.getAttribute('data-value');
146
- if (optionValue) {
147
- // Ensure highlights are cleared before selection
148
- this.clearSearchHighlights();
149
- // Trigger the selection in the main select component
150
- this._select['_selectOption'](optionValue);
151
- }
140
+ break;
141
+ case 'Escape':
142
+ event.preventDefault();
143
+ this._searchInput.value = '';
144
+ this.clearSearch();
145
+ this._resetAllOptions();
146
+ this._clearNoResultsMessage();
147
+ this._focusManager.focusFirst();
148
+ break;
149
+ default:
150
+ break;
152
151
  }
153
152
  };
154
153
  /**
@@ -159,42 +158,66 @@ var KTSelectSearch = /** @class */ (function () {
159
158
  var _this = this;
160
159
  // Wait for options to be initialized
161
160
  setTimeout(function () {
161
+ _this._originalOptionContents.clear(); // Clear before re-caching
162
162
  var options = Array.from(_this._select.getOptionsElement());
163
163
  options.forEach(function (option) {
164
164
  var value = option.getAttribute('data-value');
165
165
  if (value) {
166
+ // Store the full innerHTML as the original content
166
167
  _this._originalOptionContents.set(value, option.innerHTML);
167
168
  }
168
169
  });
169
170
  }, 0);
170
171
  };
172
+ /**
173
+ * Restores the innerHTML of all options from the cache if they have been modified.
174
+ * This is typically called before applying new filters/highlights.
175
+ */
176
+ KTSelectSearch.prototype._restoreOptionContentsBeforeFilter = function () {
177
+ var _this = this;
178
+ var options = Array.from(this._select.getOptionsElement());
179
+ options.forEach(function (option) {
180
+ var value = option.getAttribute('data-value');
181
+ if (value && _this._originalOptionContents.has(value)) {
182
+ var originalContent = _this._originalOptionContents.get(value);
183
+ // Only restore if current content is different, to avoid unnecessary DOM manipulation
184
+ if (option.innerHTML !== originalContent) {
185
+ option.innerHTML = originalContent;
186
+ }
187
+ }
188
+ });
189
+ };
171
190
  KTSelectSearch.prototype._handleSearchInput = function (event) {
172
- var query = event.target.value.toLowerCase();
191
+ var query = event.target.value;
173
192
  var config = this._select.getConfig();
174
193
  // Reset focused option when search changes
175
194
  this._focusManager.resetFocus();
176
- // If search query is empty, clear all highlights
195
+ // Restore original content for all options before filtering/highlighting again
196
+ this._restoreOptionContentsBeforeFilter();
177
197
  if (query.trim() === '') {
178
- this.clearSearchHighlights();
198
+ this._resetAllOptions();
199
+ this._focusManager.focusFirst(); // Focus first option when search is cleared
200
+ return;
179
201
  }
180
- // For remote search, we don't filter locally
181
- // The KTSelect component will handle the remote search
202
+ // For remote search, KTSelect component handles it.
203
+ // KTSelect will call refreshAfterSearch on this module when remote data is updated.
182
204
  if (config.remote && config.searchParam) {
183
- // If query is too short, reset all options to visible state
184
205
  if (query.length < config.searchMinLength) {
185
206
  this._resetAllOptions();
186
207
  this._clearNoResultsMessage();
208
+ this._focusManager.focusFirst(); // Focus first if query too short
187
209
  }
188
- // Otherwise, let KTSelect handle remote search
189
210
  return;
190
211
  }
191
212
  // For local search
192
213
  if (query.length >= config.searchMinLength) {
193
214
  this._filterOptions(query);
215
+ this._focusManager.focusFirst(); // Focus first visible option after local filtering
194
216
  }
195
217
  else {
196
218
  this._resetAllOptions();
197
219
  this._clearNoResultsMessage();
220
+ this._focusManager.focusFirst(); // Focus first if query too short and not remote
198
221
  }
199
222
  };
200
223
  KTSelectSearch.prototype._filterOptions = function (query) {
@@ -206,20 +229,11 @@ var KTSelectSearch = /** @class */ (function () {
206
229
  if (this._originalOptionContents.size === 0) {
207
230
  this._cacheOriginalOptionContents();
208
231
  }
209
- // Use the shared filterOptions utility
210
- (0, utils_1.filterOptions)(options, query, config, dropdownElement, function (visibleCount) {
211
- return _this._handleNoResults(visibleCount);
232
+ // Restore original content before filtering, so highlighting is applied fresh.
233
+ this._restoreOptionContentsBeforeFilter();
234
+ var visibleCount = (0, utils_1.filterOptions)(options, query, config, dropdownElement, function (count) {
235
+ return _this._handleNoResults(count);
212
236
  });
213
- // Apply specialized text highlighting if needed
214
- if (config.searchHighlight && query.trim() !== '') {
215
- this._applyHighlightToDisplay(query);
216
- }
217
- };
218
- /**
219
- * Apply highlighting to the display element for multi-select
220
- */
221
- KTSelectSearch.prototype._applyHighlightToDisplay = function (query) {
222
- // Implementation for display highlighting
223
237
  };
224
238
  /**
225
239
  * Reset all options to their original state
@@ -228,34 +242,29 @@ var KTSelectSearch = /** @class */ (function () {
228
242
  var _this = this;
229
243
  // Show all options
230
244
  var options = Array.from(this._select.getOptionsElement());
231
- // Cache original option HTML if not already cached
245
+ // Ensure the cache is populated if it's somehow empty here
232
246
  if (this._originalOptionContents.size === 0) {
233
247
  this._cacheOriginalOptionContents();
234
248
  }
235
249
  options.forEach(function (option) {
236
- // Remove the hidden class
237
250
  option.classList.remove('hidden');
251
+ if (option.style.display === 'none')
252
+ option.style.display = ''; // Ensure visible
238
253
  // Restore original HTML content (remove highlights)
239
254
  var value = option.getAttribute('data-value');
240
255
  if (value && _this._originalOptionContents.has(value)) {
241
- option.innerHTML = _this._originalOptionContents.get(value);
242
- }
243
- // Remove any display styling
244
- if (option.hasAttribute('style') &&
245
- option.getAttribute('style').includes('display:')) {
246
- var styleAttr = option.getAttribute('style');
247
- if (styleAttr.trim() === 'display: none;' ||
248
- styleAttr.trim() === 'display: block;') {
249
- option.removeAttribute('style');
250
- }
251
- else {
252
- option.setAttribute('style', styleAttr.replace(/display:\s*[^;]+;?/gi, '').trim());
256
+ var originalContent = _this._originalOptionContents.get(value);
257
+ // Only update if different, to minimize DOM changes
258
+ if (option.innerHTML !== originalContent) {
259
+ option.innerHTML = originalContent;
253
260
  }
254
261
  }
255
262
  });
263
+ this._clearNoResultsMessage(); // Ensure no results message is cleared when resetting
256
264
  };
257
265
  KTSelectSearch.prototype._handleNoResults = function (visibleOptionsCount) {
258
- if (visibleOptionsCount === 0 && this._searchInput.value.trim() !== '') {
266
+ var _a, _b;
267
+ if (visibleOptionsCount === 0 && ((_b = (_a = this._searchInput) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.trim()) !== '') {
259
268
  this._showNoResultsMessage();
260
269
  }
261
270
  else {
@@ -265,9 +274,9 @@ var KTSelectSearch = /** @class */ (function () {
265
274
  KTSelectSearch.prototype._showNoResultsMessage = function () {
266
275
  this._clearNoResultsMessage();
267
276
  var config = this._select.getConfig();
268
- this._noResultsElement = templates_1.defaultTemplates.noResults(config);
277
+ this._noResultsElement = templates_1.defaultTemplates.empty(config);
269
278
  var dropdownElement = this._select.getDropdownElement();
270
- var optionsContainer = dropdownElement.querySelector('[data-kt-select-options-container]');
279
+ var optionsContainer = dropdownElement.querySelector('[data-kt-select-options]');
271
280
  if (optionsContainer) {
272
281
  optionsContainer.appendChild(this._noResultsElement);
273
282
  }
@@ -285,24 +294,24 @@ var KTSelectSearch = /** @class */ (function () {
285
294
  * Public method to explicitly clear all search highlights
286
295
  * This is called when search is reset or selection changes
287
296
  */
288
- KTSelectSearch.prototype.clearSearchHighlights = function () {
297
+ KTSelectSearch.prototype.clearSearch = function () {
289
298
  var _this = this;
290
299
  // Restore original option content (removes highlighting)
291
- var options = Array.from(this._select.getOptionsElement());
292
- options.forEach(function (option) {
300
+ var optionsToClear = Array.from(this._select.getOptionsElement());
301
+ // Ensure cache is available
302
+ if (this._originalOptionContents.size === 0 && optionsToClear.length > 0) {
303
+ this._cacheOriginalOptionContents();
304
+ }
305
+ optionsToClear.forEach(function (option) {
293
306
  var value = option.getAttribute('data-value');
294
307
  if (value && _this._originalOptionContents.has(value)) {
295
- option.innerHTML = _this._originalOptionContents.get(value);
308
+ var originalContent = _this._originalOptionContents.get(value);
309
+ // Only restore if different
310
+ if (option.innerHTML !== originalContent) {
311
+ option.innerHTML = originalContent;
312
+ }
296
313
  }
297
314
  });
298
- // Also clear highlights from the display element
299
- this._clearDisplayHighlights();
300
- };
301
- /**
302
- * Clear any highlights from the display element (selected values)
303
- */
304
- KTSelectSearch.prototype._clearDisplayHighlights = function () {
305
- // Implementation for clearing display highlights
306
315
  };
307
316
  /**
308
317
  * This ensures that search highlighting works correctly with new options
@@ -311,14 +320,23 @@ var KTSelectSearch = /** @class */ (function () {
311
320
  var _this = this;
312
321
  // Re-cache all option contents
313
322
  this._originalOptionContents.clear();
314
- var options = Array.from(this._select.getOptionsElement());
315
- options.forEach(function (option) {
323
+ var currentOptions = Array.from(this._select.getOptionsElement());
324
+ currentOptions.forEach(function (option) {
316
325
  var value = option.getAttribute('data-value');
317
326
  if (value) {
318
327
  _this._originalOptionContents.set(value, option.innerHTML);
319
328
  }
320
329
  });
321
330
  };
331
+ /**
332
+ * Called after search (local or remote via KTSelect) to reset focus.
333
+ */
334
+ KTSelectSearch.prototype.refreshAfterSearch = function () {
335
+ this._focusManager.resetFocus();
336
+ this._focusManager.focusFirst();
337
+ // Re-cache original contents as options might have changed (especially after remote search)
338
+ this.refreshOptionCache();
339
+ };
322
340
  /**
323
341
  * Clean up all resources used by the search module
324
342
  */
@@ -326,12 +344,13 @@ var KTSelectSearch = /** @class */ (function () {
326
344
  // Remove all event listeners
327
345
  this._removeEventListeners();
328
346
  // Clear all references
329
- this._focusManager.dispose();
330
- this._eventManager.removeAllListeners(null);
347
+ if (this._focusManager) {
348
+ this._focusManager.dispose();
349
+ }
331
350
  // Clear cached content
332
351
  this._originalOptionContents.clear();
333
352
  // Clear highlight elements
334
- this.clearSearchHighlights();
353
+ this.clearSearch();
335
354
  };
336
355
  return KTSelectSearch;
337
356
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../src/components/select/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../src/components/select/search.ts"],"names":[],"mappings":"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"}