tomselect updated to 2.5.1 see #665

This commit is contained in:
mic 2026-02-19 22:28:04 +01:00
parent 45b1927490
commit fc47603f1f
2 changed files with 17 additions and 2 deletions

View file

@ -2,7 +2,7 @@ file: pages\_lib\list.js
source: https://raw.githubusercontent.com/javve/list.js/v2.3.1/dist/list.js source: https://raw.githubusercontent.com/javve/list.js/v2.3.1/dist/list.js
file: pages\_lib\tom-select.base.js file: pages\_lib\tom-select.base.js
source: https://cdn.jsdelivr.net/npm/tom-select@2.4.6/dist/js/tom-select.base.js source: https://cdn.jsdelivr.net/npm/tom-select@2.5.1/dist/js/tom-select.base.js
file: js\lib\diff.js file: js\lib\diff.js
source: https://cdnjs.cloudflare.com/ajax/libs/jsdiff/7.0.0/diff.js source: https://cdnjs.cloudflare.com/ajax/libs/jsdiff/7.0.0/diff.js

View file

@ -1,5 +1,5 @@
/** /**
* Tom Select v2.4.6 * Tom Select v2.5.1
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
*/ */
@ -1502,6 +1502,7 @@
create: null, create: null,
createOnBlur: false, createOnBlur: false,
createFilter: null, createFilter: null,
clearAfterSelect: false,
highlight: true, highlight: true,
openOnFocus: true, openOnFocus: true,
shouldOpen: null, shouldOpen: null,
@ -2444,6 +2445,8 @@
self.createItem(null, () => { self.createItem(null, () => {
if (self.settings.closeAfterSelect) { if (self.settings.closeAfterSelect) {
self.close(); self.close();
} else if (self.settings.clearAfterSelect) {
self.setTextboxValue();
} }
}); });
} else { } else {
@ -2453,6 +2456,8 @@
self.addItem(value); self.addItem(value);
if (self.settings.closeAfterSelect) { if (self.settings.closeAfterSelect) {
self.close(); self.close();
} else if (self.settings.clearAfterSelect) {
self.setTextboxValue();
} }
if (!self.settings.hideSelected && evt.type && /click/.test(evt.type)) { if (!self.settings.hideSelected && evt.type && /click/.test(evt.type)) {
self.setActiveOption(option); self.setActiveOption(option);
@ -2884,6 +2889,11 @@
// perform search // perform search
if (query !== self.lastQuery) { if (query !== self.lastQuery) {
self.lastQuery = query; self.lastQuery = query;
// temp fix for https://github.com/orchidjs/tom-select/issues/987
// UI crashed when more than 30 same chars in a row, prevent search and return empt result
if (/(.)\1{15,}/.test(query)) {
query = '';
}
result = self.sifter.search(query, Object.assign(options, { result = self.sifter.search(query, Object.assign(options, {
score: calculateScore score: calculateScore
})); }));
@ -3446,6 +3456,11 @@
} else if (!self.isPending) { } else if (!self.isPending) {
self.positionDropdown(); self.positionDropdown();
} }
//remove input value when enabled
if (self.settings.clearAfterSelect) {
self.setTextboxValue();
}
self.trigger('item_add', hashed, item); self.trigger('item_add', hashed, item);
if (!self.isPending) { if (!self.isPending) {
self.updateOriginalInput({ self.updateOriginalInput({