@drecchia/tom-select 2.5.2-virtual-scroll.0 → 2.5.2-virtual-scroll.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/constants.js +16 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/contrib/highlight.js +69 -0
- package/dist/cjs/contrib/highlight.js.map +1 -0
- package/dist/cjs/contrib/microevent.js +64 -0
- package/dist/cjs/contrib/microevent.js.map +1 -0
- package/dist/cjs/contrib/microplugin.js +112 -0
- package/dist/cjs/contrib/microplugin.js.map +1 -0
- package/dist/cjs/defaults.js +85 -0
- package/dist/cjs/defaults.js.map +1 -0
- package/dist/cjs/getSettings.js +146 -0
- package/dist/cjs/getSettings.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/plugins/caret_position/plugin.js +66 -0
- package/dist/cjs/plugins/caret_position/plugin.js.map +1 -0
- package/dist/cjs/plugins/change_listener/plugin.js +25 -0
- package/dist/cjs/plugins/change_listener/plugin.js.map +1 -0
- package/dist/cjs/plugins/checkbox_options/plugin.js +108 -0
- package/dist/cjs/plugins/checkbox_options/plugin.js.map +1 -0
- package/dist/cjs/plugins/checkbox_options/types.js +3 -0
- package/dist/cjs/plugins/checkbox_options/types.js.map +1 -0
- package/dist/cjs/plugins/clear_button/plugin.js +47 -0
- package/dist/cjs/plugins/clear_button/plugin.js.map +1 -0
- package/dist/cjs/plugins/clear_button/types.js +3 -0
- package/dist/cjs/plugins/clear_button/types.js.map +1 -0
- package/dist/cjs/plugins/drag_drop/plugin.js +117 -0
- package/dist/cjs/plugins/drag_drop/plugin.js.map +1 -0
- package/dist/cjs/plugins/dropdown_header/plugin.js +50 -0
- package/dist/cjs/plugins/dropdown_header/plugin.js.map +1 -0
- package/dist/cjs/plugins/dropdown_header/types.js +3 -0
- package/dist/cjs/plugins/dropdown_header/types.js.map +1 -0
- package/dist/cjs/plugins/dropdown_input/plugin.js +88 -0
- package/dist/cjs/plugins/dropdown_input/plugin.js.map +1 -0
- package/dist/cjs/plugins/input_autogrow/plugin.js +47 -0
- package/dist/cjs/plugins/input_autogrow/plugin.js.map +1 -0
- package/dist/cjs/plugins/local_virtual_scroll/plugin.js +293 -0
- package/dist/cjs/plugins/local_virtual_scroll/plugin.js.map +1 -0
- package/dist/cjs/plugins/local_virtual_scroll/types.js +3 -0
- package/dist/cjs/plugins/local_virtual_scroll/types.js.map +1 -0
- package/dist/cjs/plugins/no_active_items/plugin.js +22 -0
- package/dist/cjs/plugins/no_active_items/plugin.js.map +1 -0
- package/dist/cjs/plugins/no_backspace_delete/plugin.js +28 -0
- package/dist/cjs/plugins/no_backspace_delete/plugin.js.map +1 -0
- package/dist/cjs/plugins/optgroup_columns/plugin.js +51 -0
- package/dist/cjs/plugins/optgroup_columns/plugin.js.map +1 -0
- package/dist/cjs/plugins/remove_button/plugin.js +61 -0
- package/dist/cjs/plugins/remove_button/plugin.js.map +1 -0
- package/dist/cjs/plugins/remove_button/types.js +3 -0
- package/dist/cjs/plugins/remove_button/types.js.map +1 -0
- package/dist/cjs/plugins/restore_on_backspace/plugin.js +24 -0
- package/dist/cjs/plugins/restore_on_backspace/plugin.js.map +1 -0
- package/dist/cjs/plugins/virtual_scroll/plugin.js +170 -0
- package/dist/cjs/plugins/virtual_scroll/plugin.js.map +1 -0
- package/dist/cjs/tom-select.complete.js +35 -0
- package/dist/cjs/tom-select.complete.js.map +1 -0
- package/dist/cjs/tom-select.js +2303 -0
- package/dist/cjs/tom-select.js.map +1 -0
- package/dist/cjs/tom-select.popular.js +15 -0
- package/dist/cjs/tom-select.popular.js.map +1 -0
- package/dist/cjs/types/core.js +3 -0
- package/dist/cjs/types/core.js.map +1 -0
- package/dist/cjs/types/index.js +19 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/settings.js +3 -0
- package/dist/cjs/types/settings.js.map +1 -0
- package/dist/cjs/utils.js +212 -0
- package/dist/cjs/utils.js.map +1 -0
- package/dist/cjs/vanilla.js +190 -0
- package/dist/cjs/vanilla.js.map +1 -0
- package/dist/css/tom-select.bootstrap4.css +16 -4
- package/dist/css/tom-select.bootstrap4.css.map +1 -0
- package/dist/css/tom-select.bootstrap4.min.css +2 -0
- package/dist/css/tom-select.bootstrap4.min.css.map +1 -0
- package/dist/css/tom-select.bootstrap5.css +16 -4
- package/dist/css/tom-select.bootstrap5.css.map +1 -0
- package/dist/css/tom-select.bootstrap5.min.css +2 -0
- package/dist/css/tom-select.bootstrap5.min.css.map +1 -0
- package/dist/css/tom-select.css +12 -4
- package/dist/css/tom-select.css.map +1 -0
- package/dist/css/tom-select.default.css +11 -5
- package/dist/css/tom-select.default.css.map +1 -1
- package/dist/css/tom-select.default.min.css +2 -0
- package/dist/css/tom-select.default.min.css.map +1 -0
- package/dist/css/tom-select.min.css +2 -0
- package/dist/css/tom-select.min.css.map +1 -0
- package/dist/esm/constants.d.ts +12 -0
- package/dist/esm/constants.js +13 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/contrib/highlight.d.ts +13 -0
- package/dist/esm/contrib/highlight.js +64 -0
- package/dist/esm/contrib/highlight.js.map +1 -0
- package/dist/esm/contrib/microevent.d.ts +20 -0
- package/dist/esm/contrib/microevent.js +61 -0
- package/dist/esm/contrib/microevent.js.map +1 -0
- package/dist/esm/contrib/microplugin.d.ts +71 -0
- package/dist/esm/contrib/microplugin.js +109 -0
- package/dist/esm/contrib/microplugin.js.map +1 -0
- package/dist/esm/defaults.d.ts +53 -0
- package/dist/esm/defaults.js +83 -0
- package/dist/esm/defaults.js.map +1 -0
- package/dist/esm/getSettings.d.ts +3 -0
- package/dist/esm/getSettings.js +143 -0
- package/dist/esm/getSettings.js.map +1 -0
- package/dist/esm/plugins/caret_position/plugin.d.ts +16 -0
- package/dist/esm/plugins/caret_position/plugin.js +1 -1
- package/dist/esm/plugins/change_listener/plugin.d.ts +16 -0
- package/dist/esm/plugins/change_listener/plugin.js +1 -1
- package/dist/esm/plugins/checkbox_options/plugin.d.ts +17 -0
- package/dist/esm/plugins/checkbox_options/plugin.js +1 -1
- package/dist/esm/plugins/checkbox_options/types.d.ts +14 -0
- package/dist/esm/plugins/checkbox_options/types.js +2 -0
- package/dist/esm/plugins/checkbox_options/types.js.map +1 -0
- package/dist/esm/plugins/clear_button/plugin.d.ts +17 -0
- package/dist/esm/plugins/clear_button/plugin.js +1 -1
- package/dist/esm/plugins/clear_button/types.d.ts +7 -0
- package/dist/esm/plugins/clear_button/types.js +2 -0
- package/dist/esm/plugins/clear_button/types.js.map +1 -0
- package/dist/esm/plugins/drag_drop/plugin.d.ts +16 -0
- package/dist/esm/plugins/drag_drop/plugin.js +1 -1
- package/dist/esm/plugins/dropdown_header/plugin.d.ts +17 -0
- package/dist/esm/plugins/dropdown_header/plugin.js +1 -1
- package/dist/esm/plugins/dropdown_header/types.d.ts +8 -0
- package/dist/esm/plugins/dropdown_header/types.js +2 -0
- package/dist/esm/plugins/dropdown_header/types.js.map +1 -0
- package/dist/esm/plugins/dropdown_input/plugin.d.ts +16 -0
- package/dist/esm/plugins/dropdown_input/plugin.js +1 -1
- package/dist/esm/plugins/input_autogrow/plugin.d.ts +15 -0
- package/dist/esm/plugins/input_autogrow/plugin.js +1 -1
- package/dist/esm/plugins/local_virtual_scroll/plugin.d.ts +19 -0
- package/dist/esm/plugins/local_virtual_scroll/plugin.js +92 -1
- package/dist/esm/plugins/local_virtual_scroll/plugin.js.map +1 -1
- package/dist/esm/plugins/local_virtual_scroll/types.d.ts +14 -0
- package/dist/esm/plugins/local_virtual_scroll/types.js +2 -0
- package/dist/esm/plugins/local_virtual_scroll/types.js.map +1 -0
- package/dist/esm/plugins/no_active_items/plugin.d.ts +15 -0
- package/dist/esm/plugins/no_active_items/plugin.js +1 -1
- package/dist/esm/plugins/no_backspace_delete/plugin.d.ts +15 -0
- package/dist/esm/plugins/no_backspace_delete/plugin.js +1 -1
- package/dist/esm/plugins/optgroup_columns/plugin.d.ts +16 -0
- package/dist/esm/plugins/optgroup_columns/plugin.js +1 -1
- package/dist/esm/plugins/remove_button/plugin.d.ts +17 -0
- package/dist/esm/plugins/remove_button/plugin.js +1 -1
- package/dist/esm/plugins/remove_button/types.d.ts +6 -0
- package/dist/esm/plugins/remove_button/types.js +2 -0
- package/dist/esm/plugins/remove_button/types.js.map +1 -0
- package/dist/esm/plugins/restore_on_backspace/plugin.d.ts +21 -0
- package/dist/esm/plugins/restore_on_backspace/plugin.js +1 -1
- package/dist/esm/plugins/virtual_scroll/plugin.d.ts +16 -0
- package/dist/esm/plugins/virtual_scroll/plugin.js +1 -1
- package/dist/esm/tom-select.complete.d.ts +2 -0
- package/dist/esm/tom-select.complete.js +33 -0
- package/dist/esm/tom-select.complete.js.map +1 -0
- package/dist/esm/tom-select.d.ts +594 -0
- package/dist/esm/tom-select.js +2300 -0
- package/dist/esm/tom-select.js.map +1 -0
- package/dist/esm/tom-select.popular.d.ts +2 -0
- package/dist/esm/tom-select.popular.js +13 -0
- package/dist/esm/tom-select.popular.js.map +1 -0
- package/dist/esm/types/core.d.ts +50 -0
- package/dist/esm/types/core.js +2 -0
- package/dist/esm/types/core.js.map +1 -0
- package/dist/esm/types/index.d.ts +2 -0
- package/dist/esm/types/index.js +3 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/settings.d.ts +81 -0
- package/dist/esm/types/settings.js +2 -0
- package/dist/esm/types/settings.js.map +1 -0
- package/dist/esm/utils.d.ts +95 -0
- package/dist/esm/utils.js +195 -0
- package/dist/esm/utils.js.map +1 -0
- package/dist/esm/vanilla.d.ts +76 -0
- package/dist/esm/vanilla.js +172 -0
- package/dist/esm/vanilla.js.map +1 -0
- package/dist/js/package.json +1 -0
- package/dist/js/plugins/caret_position.js +1 -1
- package/dist/js/plugins/change_listener.js +1 -1
- package/dist/js/plugins/checkbox_options.js +1 -1
- package/dist/js/plugins/clear_button.js +1 -1
- package/dist/js/plugins/drag_drop.js +1 -1
- package/dist/js/plugins/dropdown_header.js +1 -1
- package/dist/js/plugins/dropdown_input.js +1 -1
- package/dist/js/plugins/input_autogrow.js +1 -1
- package/dist/js/plugins/local_virtual_scroll.js +92 -1
- package/dist/js/plugins/local_virtual_scroll.js.map +1 -1
- package/dist/js/plugins/no_active_items.js +1 -1
- package/dist/js/plugins/no_backspace_delete.js +1 -1
- package/dist/js/plugins/optgroup_columns.js +1 -1
- package/dist/js/plugins/remove_button.js +1 -1
- package/dist/js/plugins/restore_on_backspace.js +1 -1
- package/dist/js/plugins/virtual_scroll.js +1 -1
- package/dist/js/tom-select.base.js +1 -1
- package/dist/js/tom-select.base.min.js +1 -1
- package/dist/js/tom-select.complete.js +19 -1
- package/dist/js/tom-select.complete.js.map +1 -1
- package/dist/js/tom-select.complete.min.js +51 -45
- package/dist/js/tom-select.complete.min.js.map +1 -1
- package/dist/js/tom-select.popular.js +1 -1
- package/dist/js/tom-select.popular.min.js +1 -1
- package/dist/scss/_dropdown.scss +99 -0
- package/dist/scss/_items.scss +114 -0
- package/dist/scss/plugins/checkbox_options.scss +11 -0
- package/dist/scss/plugins/clear_button.scss +33 -0
- package/dist/scss/plugins/drag_drop.scss +10 -0
- package/dist/scss/plugins/dropdown_header.scss +24 -0
- package/dist/scss/plugins/dropdown_input.scss +43 -0
- package/dist/scss/plugins/input_autogrow.scss +15 -0
- package/dist/scss/plugins/optgroup_columns.scss +25 -0
- package/dist/scss/plugins/remove_button.scss +70 -0
- package/dist/scss/tom-select.bootstrap4.scss +218 -0
- package/dist/scss/tom-select.bootstrap5.scss +270 -0
- package/dist/scss/tom-select.default.scss +89 -0
- package/dist/scss/tom-select.scss +179 -0
- package/package.json +2 -2
- package/src/plugins/local_virtual_scroll/plugin.ts +19 -0
- /package/dist/{types → cjs}/constants.d.ts +0 -0
- /package/dist/{types → cjs}/contrib/highlight.d.ts +0 -0
- /package/dist/{types → cjs}/contrib/microevent.d.ts +0 -0
- /package/dist/{types → cjs}/contrib/microplugin.d.ts +0 -0
- /package/dist/{types → cjs}/defaults.d.ts +0 -0
- /package/dist/{types → cjs}/getSettings.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/caret_position/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/change_listener/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/checkbox_options/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/checkbox_options/types.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/clear_button/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/clear_button/types.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/drag_drop/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/dropdown_header/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/dropdown_header/types.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/dropdown_input/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/input_autogrow/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/local_virtual_scroll/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/local_virtual_scroll/types.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/no_active_items/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/no_backspace_delete/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/optgroup_columns/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/remove_button/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/remove_button/types.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/restore_on_backspace/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/plugins/virtual_scroll/plugin.d.ts +0 -0
- /package/dist/{types → cjs}/tom-select.complete.d.ts +0 -0
- /package/dist/{types → cjs}/tom-select.d.ts +0 -0
- /package/dist/{types → cjs}/tom-select.popular.d.ts +0 -0
- /package/dist/{types → cjs}/types/core.d.ts +0 -0
- /package/dist/{types → cjs}/types/index.d.ts +0 -0
- /package/dist/{types → cjs}/types/settings.d.ts +0 -0
- /package/dist/{types → cjs}/utils.d.ts +0 -0
- /package/dist/{types → cjs}/vanilla.d.ts +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Tom Select v2.5.2
|
|
2
|
+
* Tom Select v2.5.2-virtual-scroll.1
|
|
3
3
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -5176,6 +5176,19 @@
|
|
|
5176
5176
|
return self.getOption(item.id, true);
|
|
5177
5177
|
};
|
|
5178
5178
|
|
|
5179
|
+
// ─── Re-apply search highlights to an element ─────────────────────────
|
|
5180
|
+
|
|
5181
|
+
const applyHighlights = el => {
|
|
5182
|
+
if (!self.settings.highlight) return;
|
|
5183
|
+
removeHighlight(el);
|
|
5184
|
+
const results = self.currentResults;
|
|
5185
|
+
if (results && results.query.length && results.tokens.length) {
|
|
5186
|
+
for (const tok of results.tokens) {
|
|
5187
|
+
if (tok.regex) highlight(el, tok.regex);
|
|
5188
|
+
}
|
|
5189
|
+
}
|
|
5190
|
+
};
|
|
5191
|
+
|
|
5179
5192
|
// ─── Helpers ─────────────────────────────────────────────────────────
|
|
5180
5193
|
|
|
5181
5194
|
const measureHeight = elements => elements.reduce((h, el) => {
|
|
@@ -5225,6 +5238,7 @@
|
|
|
5225
5238
|
const to = Math.min(flat_list.length, visible_end + page_size * pages);
|
|
5226
5239
|
const new_els = renderRange(from, to);
|
|
5227
5240
|
for (const el of new_els) dropdown_content.append(el);
|
|
5241
|
+
for (const el of new_els) applyHighlights(el);
|
|
5228
5242
|
visible_end = to;
|
|
5229
5243
|
|
|
5230
5244
|
// Recycle items from top to stay within max_dom
|
|
@@ -5253,6 +5267,7 @@
|
|
|
5253
5267
|
// Prepend before current first child
|
|
5254
5268
|
const first_child = dropdown_content.firstChild;
|
|
5255
5269
|
for (const el of new_els) dropdown_content.insertBefore(el, first_child);
|
|
5270
|
+
for (const el of new_els) applyHighlights(el);
|
|
5256
5271
|
|
|
5257
5272
|
// Compensate scrollTop so existing content stays in place
|
|
5258
5273
|
setScrollTop(dropdown_content.scrollTop + measureHeight(new_els));
|
|
@@ -5313,6 +5328,9 @@
|
|
|
5313
5328
|
dropdown_content.innerHTML = '';
|
|
5314
5329
|
const first_page = renderRange(0, visible_end);
|
|
5315
5330
|
for (const el of first_page) dropdown_content.append(el);
|
|
5331
|
+
// Re-apply highlights: the core applied them before we cleared the DOM,
|
|
5332
|
+
// and items from optgroup expansion never went through the core highlight pass.
|
|
5333
|
+
applyHighlights(dropdown_content);
|
|
5316
5334
|
}
|
|
5317
5335
|
updateSentinel();
|
|
5318
5336
|
});
|