@m3e/select 1.1.11 → 1.2.0

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/index.js CHANGED
@@ -4,7 +4,7 @@
4
4
  * See LICENSE file in the project root for full license text.
5
5
  */
6
6
  import { LitElement, html, css } from 'lit';
7
- import { Focusable, Labelled, RequiredConstraintValidation, Dirty, Touched, Required, ConstraintValidation, FormAssociated, Disabled, AttachInternals, Role, ResizeController, formValue, DesignToken, scrollIntoViewIfNeeded, prefersReducedMotion, forcedColorsActive } from '@m3e/core';
7
+ import { Focusable, Labelled, RequiredConstraintValidation, Dirty, Touched, Required, ConstraintValidation, FormAssociated, Disabled, AttachInternals, Role, ResizeController, formValue, DesignToken, prefersReducedMotion, scrollIntoViewIfNeeded, forcedColorsActive } from '@m3e/core';
8
8
  import { ListKeyManager } from '@m3e/core/a11y';
9
9
 
10
10
  /******************************************************************************
@@ -1003,7 +1003,6 @@ _M3eSelectElement_handleSlotChange = function _M3eSelectElement_handleSlotChange
1003
1003
  } = this._listKeyManager.setItems([...this.querySelectorAll("m3e-option")]);
1004
1004
  added.forEach(x => {
1005
1005
  x.id = x.id || `${__classPrivateFieldGet(this, _M3eSelectElement_id, "f")}-option-${this._listKeyManager.items.indexOf(x)}`;
1006
- x.classList.toggle("-multi", this.multi);
1007
1006
  x.classList.toggle("-hide-selection-indicator", this.hideSelectionIndicator);
1008
1007
  });
1009
1008
  __classPrivateFieldGet(this, _M3eSelectElement_instances, "a", _M3eSelectElement_formField_get)?.notifyControlStateChange();
@@ -1023,7 +1022,15 @@ _M3eSelectElement_handleKeyDown = function _M3eSelectElement_handleKeyDown(e) {
1023
1022
  if (__classPrivateFieldGet(this, _M3eSelectElement_menu, "f") && this._listKeyManager.activeItem) {
1024
1023
  __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_selectOption).call(this, this._listKeyManager.activeItem);
1025
1024
  }
1026
- __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_toggleMenu).call(this);
1025
+ if (__classPrivateFieldGet(this, _M3eSelectElement_menu, "f")?.isOpen) {
1026
+ if (!prefersReducedMotion()) {
1027
+ setTimeout(() => __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_hideMenu).call(this), 150);
1028
+ } else {
1029
+ __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_hideMenu).call(this);
1030
+ }
1031
+ } else {
1032
+ __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_showMenu).call(this);
1033
+ }
1027
1034
  } else if (!__classPrivateFieldGet(this, _M3eSelectElement_menu, "f")) {
1028
1035
  __classPrivateFieldSet(this, _M3eSelectElement_ignoreKeyUp, true, "f");
1029
1036
  __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_toggleMenu).call(this);
@@ -1070,6 +1077,7 @@ _M3eSelectElement_handleKeyUp = function _M3eSelectElement_handleKeyUp(e) {
1070
1077
  }
1071
1078
  };
1072
1079
  _M3eSelectElement_handleMenuPointerDown = function _M3eSelectElement_handleMenuPointerDown(e) {
1080
+ if (e.button === 2) return;
1073
1081
  e.preventDefault();
1074
1082
  e.stopImmediatePropagation();
1075
1083
  const option = e.composedPath().find(x => x instanceof HTMLElement && x.tagName === "M3E-OPTION");
@@ -1077,7 +1085,11 @@ _M3eSelectElement_handleMenuPointerDown = function _M3eSelectElement_handleMenuP
1077
1085
  __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_selectOption).call(this, option);
1078
1086
  this._listKeyManager.setActiveItem(option);
1079
1087
  if (!this.multi) {
1080
- __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_hideMenu).call(this);
1088
+ if (!prefersReducedMotion()) {
1089
+ setTimeout(() => __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_hideMenu).call(this), 150);
1090
+ } else {
1091
+ __classPrivateFieldGet(this, _M3eSelectElement_instances, "m", _M3eSelectElement_hideMenu).call(this);
1092
+ }
1081
1093
  } else {
1082
1094
  this.requestUpdate();
1083
1095
  }