@danielgindi/selectbox 1.0.80 → 1.0.83
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/lib.cjs.js +16 -11
- package/dist/lib.cjs.js.map +1 -1
- package/dist/lib.cjs.min.js +2 -2
- package/dist/lib.cjs.min.js.map +1 -1
- package/dist/lib.es6.js +16 -11
- package/dist/lib.es6.js.map +1 -1
- package/dist/lib.es6.min.js +2 -2
- package/dist/lib.es6.min.js.map +1 -1
- package/dist/lib.umd.js +16 -11
- package/dist/lib.umd.js.map +1 -1
- package/dist/lib.umd.min.js +2 -2
- package/dist/lib.umd.min.js.map +1 -1
- package/lib/SelectBox.js +15 -10
- package/package.json +1 -1
package/dist/lib.es6.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @danielgindi/selectbox 1.0.
|
|
2
|
+
* @danielgindi/selectbox 1.0.83
|
|
3
3
|
* git://github.com/danielgindi/selectbox.git
|
|
4
4
|
*/
|
|
5
5
|
import { createElement, closestUntil, setElementAttrs, next, prev } from '@danielgindi/dom-utils/lib/Dom';
|
|
@@ -4114,6 +4114,13 @@ class SelectBox {
|
|
|
4114
4114
|
},
|
|
4115
4115
|
});
|
|
4116
4116
|
|
|
4117
|
+
p.sink.add(dropList.el, 'mousedown', (event) => {
|
|
4118
|
+
const li = closestUntil(event.target, 'li', event.currentTarget);
|
|
4119
|
+
if (!li) return;
|
|
4120
|
+
|
|
4121
|
+
event.preventDefault();
|
|
4122
|
+
});
|
|
4123
|
+
|
|
4117
4124
|
this._registerDropdownEvents();
|
|
4118
4125
|
}
|
|
4119
4126
|
|
|
@@ -4142,6 +4149,9 @@ class SelectBox {
|
|
|
4142
4149
|
return;
|
|
4143
4150
|
|
|
4144
4151
|
let suppressEnterSpaceToggle = false;
|
|
4152
|
+
let lastKeyAllowsNonTypeKeys = p.lastKeyAllowsNonTypeKeys;
|
|
4153
|
+
p.lastKeyAllowsNonTypeKeys = false;
|
|
4154
|
+
let hasInputText = p.input && p.input.value.length > 0;
|
|
4145
4155
|
|
|
4146
4156
|
switch (evt.key) {
|
|
4147
4157
|
case VALUE_PAGE_UP:
|
|
@@ -4151,12 +4161,13 @@ class SelectBox {
|
|
|
4151
4161
|
case VALUE_HOME:
|
|
4152
4162
|
case VALUE_END:
|
|
4153
4163
|
if ((evt.key === VALUE_HOME || evt.key === VALUE_END) &&
|
|
4154
|
-
|
|
4164
|
+
hasInputText && !lastKeyAllowsNonTypeKeys) {
|
|
4155
4165
|
// Allow using HOME/END button within the textbox
|
|
4156
4166
|
dropList._keydownFreeType(evt);
|
|
4157
4167
|
break;
|
|
4158
4168
|
}
|
|
4159
4169
|
|
|
4170
|
+
p.lastKeyAllowsNonTypeKeys = true;
|
|
4160
4171
|
evt.preventDefault();
|
|
4161
4172
|
|
|
4162
4173
|
switch (evt.key) {
|
|
@@ -4194,7 +4205,9 @@ class SelectBox {
|
|
|
4194
4205
|
break;
|
|
4195
4206
|
|
|
4196
4207
|
case VALUE_SPACE:
|
|
4197
|
-
if (
|
|
4208
|
+
if (lastKeyAllowsNonTypeKeys) {
|
|
4209
|
+
p.lastKeyAllowsNonTypeKeys = true;
|
|
4210
|
+
|
|
4198
4211
|
if (dropList.isVisible() && dropList.hasFocusedItem()) {
|
|
4199
4212
|
suppressEnterSpaceToggle = true;
|
|
4200
4213
|
if (p.multi)
|
|
@@ -4232,14 +4245,6 @@ class SelectBox {
|
|
|
4232
4245
|
break;
|
|
4233
4246
|
}
|
|
4234
4247
|
|
|
4235
|
-
p.lastKeyAllowsNonTypeKeys = evt.key === VALUE_UP ||
|
|
4236
|
-
evt.key === VALUE_DOWN ||
|
|
4237
|
-
evt.key === VALUE_PAGE_UP ||
|
|
4238
|
-
evt.key === VALUE_PAGE_DOWN ||
|
|
4239
|
-
evt.key === VALUE_HOME ||
|
|
4240
|
-
evt.key === VALUE_END ||
|
|
4241
|
-
(evt.key === VALUE_SPACE && !!p.lastKeyAllowsNonTypeKeys);
|
|
4242
|
-
|
|
4243
4248
|
if (!suppressEnterSpaceToggle) {
|
|
4244
4249
|
if (evt.key === VALUE_ENTER || (
|
|
4245
4250
|
evt.key === VALUE_SPACE &&
|