@m3e/web 2.2.0 → 2.2.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.
Files changed (69) hide show
  1. package/README.md +2 -2
  2. package/dist/all.js +166 -63
  3. package/dist/all.js.map +1 -1
  4. package/dist/all.min.js +45 -45
  5. package/dist/all.min.js.map +1 -1
  6. package/dist/autocomplete.js +55 -15
  7. package/dist/autocomplete.js.map +1 -1
  8. package/dist/autocomplete.min.js +1 -1
  9. package/dist/autocomplete.min.js.map +1 -1
  10. package/dist/core.js +1 -1
  11. package/dist/core.js.map +1 -1
  12. package/dist/core.min.js.map +1 -1
  13. package/dist/css-custom-data.json +806 -806
  14. package/dist/custom-elements.json +12497 -12242
  15. package/dist/datepicker.js +36 -15
  16. package/dist/datepicker.js.map +1 -1
  17. package/dist/datepicker.min.js +1 -1
  18. package/dist/datepicker.min.js.map +1 -1
  19. package/dist/drawer-container.js +10 -4
  20. package/dist/drawer-container.js.map +1 -1
  21. package/dist/drawer-container.min.js +1 -1
  22. package/dist/drawer-container.min.js.map +1 -1
  23. package/dist/html-custom-data.json +252 -252
  24. package/dist/nav-bar.js +17 -7
  25. package/dist/nav-bar.js.map +1 -1
  26. package/dist/nav-bar.min.js +1 -1
  27. package/dist/nav-bar.min.js.map +1 -1
  28. package/dist/option.js +1 -1
  29. package/dist/option.js.map +1 -1
  30. package/dist/option.min.js +1 -1
  31. package/dist/option.min.js.map +1 -1
  32. package/dist/search.js +27 -11
  33. package/dist/search.js.map +1 -1
  34. package/dist/search.min.js +1 -1
  35. package/dist/search.min.js.map +1 -1
  36. package/dist/segmented-button.js +2 -2
  37. package/dist/segmented-button.js.map +1 -1
  38. package/dist/segmented-button.min.js.map +1 -1
  39. package/dist/select.js +1 -1
  40. package/dist/select.js.map +1 -1
  41. package/dist/select.min.js +1 -1
  42. package/dist/select.min.js.map +1 -1
  43. package/dist/split-button.js +1 -1
  44. package/dist/split-button.js.map +1 -1
  45. package/dist/split-button.min.js.map +1 -1
  46. package/dist/src/autocomplete/AutocompleteElement.d.ts +5 -0
  47. package/dist/src/autocomplete/AutocompleteElement.d.ts.map +1 -1
  48. package/dist/src/core/shared/utils/registerStyleSheet.d.ts +1 -1
  49. package/dist/src/datepicker/DatepickerElement.d.ts +3 -1
  50. package/dist/src/datepicker/DatepickerElement.d.ts.map +1 -1
  51. package/dist/src/drawer-container/DrawerContainerElement.d.ts +2 -2
  52. package/dist/src/drawer-container/DrawerContainerElement.d.ts.map +1 -1
  53. package/dist/src/nav-bar/NavBarElement.d.ts +3 -1
  54. package/dist/src/nav-bar/NavBarElement.d.ts.map +1 -1
  55. package/dist/src/search/SearchViewElement.d.ts +5 -1
  56. package/dist/src/search/SearchViewElement.d.ts.map +1 -1
  57. package/dist/src/segmented-button/ButtonSegmentElement.d.ts +2 -2
  58. package/dist/src/split-button/SplitButtonElement.d.ts +1 -1
  59. package/dist/src/stepper/StepperElement.d.ts +3 -1
  60. package/dist/src/stepper/StepperElement.d.ts.map +1 -1
  61. package/dist/src/switch/SwitchElement.d.ts +2 -2
  62. package/dist/stepper.js +17 -7
  63. package/dist/stepper.js.map +1 -1
  64. package/dist/stepper.min.js +1 -1
  65. package/dist/stepper.min.js.map +1 -1
  66. package/dist/switch.js +2 -2
  67. package/dist/switch.js.map +1 -1
  68. package/dist/switch.min.js.map +1 -1
  69. package/package.json +1 -1
package/README.md CHANGED
@@ -8,10 +8,10 @@ This project is not affiliated with or endorsed by Google. “Material Design”
8
8
 
9
9
  ## ✨ Features
10
10
 
11
- - **Expressive Components**: Leverage Material 3s design tokens, dynamic color, shape and motion systems for highly customizable UI elements.
11
+ - **Expressive Components**: Leverage Material 3's design tokens, dynamic color, shape and motion systems for highly customizable UI elements.
12
12
  - **Unified Architecture**: Modularized for easy maintenance, scalability, and rapid development.
13
13
  - **Accessibility First**: Built-in support for accessibility standards, ensuring inclusive experiences for all users.
14
- - **Theming & Personalization**: Effortlessly adapt components to your brand or user preferences with Material 3s advanced theming capabilities.
14
+ - **Theming & Personalization**: Effortlessly adapt components to your brand or user preferences with Material 3's advanced theming capabilities.
15
15
  - **Performance Optimized**: Lightweight, fast-loading components designed for modern web platforms.
16
16
  - **Security Conscious**: Built with secure-by-default patterns, including XSS-safe templating, Trusted Types compatibility, and support for strong Content Security Policies (CSP) to enforce safe DOM interactions and mitigate injection risks.
17
17
 
package/dist/all.js CHANGED
@@ -358,7 +358,7 @@ __decorate([property({
358
358
  __decorate([debounce$1(40)], M3eAppBarElement.prototype, "_updateScroll", null);
359
359
  M3eAppBarElement = __decorate([customElement$1("m3e-app-bar")], M3eAppBarElement);
360
360
 
361
- var _M3eAutocompleteElement_instances, _M3eAutocompleteElement_id, _M3eAutocompleteElement_menuId, _M3eAutocompleteElement_clone, _M3eAutocompleteElement_ignoreFocusVisible, _M3eAutocompleteElement_menu, _M3eAutocompleteElement_ignoreHideMenuOnBlur, _M3eAutocompleteElement_inputChanged, _M3eAutocompleteElement_hasFocus, _M3eAutocompleteElement_mutationAbortController, _M3eAutocompleteElement_clickHandler, _M3eAutocompleteElement_formFieldPointerDownHandler, _M3eAutocompleteElement_focusHandler, _M3eAutocompleteElement_blurHandler, _M3eAutocompleteElement_keyDownHandler, _M3eAutocompleteElement_inputHandler, _M3eAutocompleteElement_changeHandler, _M3eAutocompleteElement_menuToggleHandler, _M3eAutocompleteElement_menuPointerDownHandler, _M3eAutocompleteElement_options_get, _M3eAutocompleteElement_input_get, _M3eAutocompleteElement_hasNoDataSlot_get, _M3eAutocompleteElement_hasLoadingSlot_get, _M3eAutocompleteElement_shouldShowMenu_get, _M3eAutocompleteElement_formField_get, _M3eAutocompleteElement_handleMutation, _M3eAutocompleteElement_handleClick, _M3eAutocompleteElement_handleFormFieldPointerDown, _M3eAutocompleteElement_handleFocus, _M3eAutocompleteElement_handleBlur, _M3eAutocompleteElement_handleInput, _M3eAutocompleteElement_handleChange, _M3eAutocompleteElement_handleKeyDown, _M3eAutocompleteElement_handleMenuPointerDown, _M3eAutocompleteElement_handleMenuToggle, _M3eAutocompleteElement_destroyMenu, _M3eAutocompleteElement_showMenu, _M3eAutocompleteElement_projectClone, _M3eAutocompleteElement_updateMenuState, _M3eAutocompleteElement_hideMenu, _M3eAutocompleteElement_activateOption, _M3eAutocompleteElement_updateSelectionState, _M3eAutocompleteElement_selectOption, _M3eAutocompleteElement_filterOption, _M3eAutocompleteElement_filterOptions, _M3eAutocompleteElement_announceResults, _M3eAutocompleteElement_autoActivate, _M3eAutocompleteElement_deactivateOption;
361
+ var _M3eAutocompleteElement_instances, _M3eAutocompleteElement_id, _M3eAutocompleteElement_menuId, _M3eAutocompleteElement_clone, _M3eAutocompleteElement_ignoreFocusVisible, _M3eAutocompleteElement_menu, _M3eAutocompleteElement_ignoreHideMenuOnBlur, _M3eAutocompleteElement_inputChanged, _M3eAutocompleteElement_hasFocus, _M3eAutocompleteElement_mutationAbortController, _M3eAutocompleteElement_clickHandler, _M3eAutocompleteElement_formFieldPointerDownHandler, _M3eAutocompleteElement_focusHandler, _M3eAutocompleteElement_blurHandler, _M3eAutocompleteElement_keyDownHandler, _M3eAutocompleteElement_inputHandler, _M3eAutocompleteElement_changeHandler, _M3eAutocompleteElement_menuToggleHandler, _M3eAutocompleteElement_menuPointerDownHandler, _M3eAutocompleteElement_options_get, _M3eAutocompleteElement_input_get, _M3eAutocompleteElement_hasNoDataSlot_get, _M3eAutocompleteElement_hasLoadingSlot_get, _M3eAutocompleteElement_shouldShowMenu_get, _M3eAutocompleteElement_formField_get, _M3eAutocompleteElement_handleMutation, _M3eAutocompleteElement_handleClick, _M3eAutocompleteElement_handleFormFieldPointerDown, _M3eAutocompleteElement_handleFocus, _M3eAutocompleteElement_handleBlur, _M3eAutocompleteElement_handleInput, _M3eAutocompleteElement_handleChange, _M3eAutocompleteElement_handleKeyDown, _M3eAutocompleteElement_handleMenuPointerDown, _M3eAutocompleteElement_handleMenuToggle, _M3eAutocompleteElement_destroyMenu, _M3eAutocompleteElement_showMenu, _M3eAutocompleteElement_projectClone, _M3eAutocompleteElement_updateMenuState, _M3eAutocompleteElement_hideMenu, _M3eAutocompleteElement_activateOption, _M3eAutocompleteElement_updateSelectionState, _M3eAutocompleteElement_selectOption, _M3eAutocompleteElement_filterOption, _M3eAutocompleteElement_filterOptions, _M3eAutocompleteElement_clearOptions, _M3eAutocompleteElement_announceResults, _M3eAutocompleteElement_autoActivate, _M3eAutocompleteElement_deactivateOption;
362
362
  var M3eAutocompleteElement_1;
363
363
  /**
364
364
  * Enhances a text input with suggested options.
@@ -405,6 +405,7 @@ var M3eAutocompleteElement_1;
405
405
  *
406
406
  * @fires toggle - Emitted when the options menu opens or closes.
407
407
  * @fires query - Emitted when the input is focused or when the user modifies its value.
408
+ * @fires change - Emitted when the committed value changes due to selecting an option or clearing the input.
408
409
  */
409
410
  let M3eAutocompleteElement = M3eAutocompleteElement_1 = class M3eAutocompleteElement extends EventAttribute$1(HtmlFor$1(LitElement), "query") {
410
411
  constructor() {
@@ -449,7 +450,7 @@ let M3eAutocompleteElement = M3eAutocompleteElement_1 = class M3eAutocompleteEle
449
450
  /** @private */
450
451
  _M3eAutocompleteElement_menuPointerDownHandler.set(this, e => __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_handleMenuPointerDown).call(this, e));
451
452
  /** @private */
452
- this._listKeyManager = new ListKeyManager().withWrap().withHomeAndEnd().withPageUpAndDown().withVerticalOrientation().withSkipPredicate(item => item.disabled || item.hidden).onActiveItemChange(() => {
453
+ this._listKeyManager = new ListKeyManager().withWrap().withHomeAndEnd().withPageUpAndDown().withVerticalOrientation().withSkipPredicate(item => item.disabled || item.hidden === true).onActiveItemChange(() => {
453
454
  if (this._listKeyManager.activeItem) {
454
455
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_activateOption).call(this, this._listKeyManager.activeItem);
455
456
  }
@@ -526,6 +527,15 @@ let M3eAutocompleteElement = M3eAutocompleteElement_1 = class M3eAutocompleteEle
526
527
  get options() {
527
528
  return this._options ?? [];
528
529
  }
530
+ /** The selected option. */
531
+ get selected() {
532
+ return this.options.find(x => x.selected) ?? null;
533
+ }
534
+ /** The selected (enabled) value. */
535
+ get value() {
536
+ const selected = this.selected;
537
+ return selected && !selected.disabled ? selected.value : null;
538
+ }
529
539
  /** @inheritdoc */
530
540
  attach(control) {
531
541
  if (!(control instanceof HTMLInputElement)) return;
@@ -565,6 +575,11 @@ let M3eAutocompleteElement = M3eAutocompleteElement_1 = class M3eAutocompleteEle
565
575
  clear(restoreFocus = false) {
566
576
  if (!__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get)) return;
567
577
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).value = "";
578
+ if (__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_clearOptions).call(this)) {
579
+ this.dispatchEvent(new Event("change", {
580
+ bubbles: true
581
+ }));
582
+ }
568
583
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_filterOptions).call(this);
569
584
  if (restoreFocus) {
570
585
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).focus();
@@ -639,7 +654,7 @@ _M3eAutocompleteElement_hasLoadingSlot_get = function _M3eAutocompleteElement_ha
639
654
  return (__classPrivateFieldGet(this, _M3eAutocompleteElement_clone, "f")?.querySelector("[slot='loading']") ?? null) !== null;
640
655
  };
641
656
  _M3eAutocompleteElement_shouldShowMenu_get = function _M3eAutocompleteElement_shouldShowMenu_get() {
642
- return __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_options_get).some(x => !x.hidden) || this.loading && !this.hideLoading && this.loadingLabel.length > 0 || !this.loading && !this.hideNoData && this.noDataLabel.length > 0;
657
+ return __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_options_get).some(x => x.hidden === false) || this.loading && !this.hideLoading && this.loadingLabel.length > 0 || !this.loading && !this.hideNoData && this.noDataLabel.length > 0;
643
658
  };
644
659
  _M3eAutocompleteElement_formField_get = function _M3eAutocompleteElement_formField_get() {
645
660
  return this.control?.closest("m3e-form-field") ?? null;
@@ -719,6 +734,11 @@ _M3eAutocompleteElement_handleInput = function _M3eAutocompleteElement_handleInp
719
734
  bubbles: true,
720
735
  composed: true
721
736
  }));
737
+ if (__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).value === "" && __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_clearOptions).call(this)) {
738
+ this.dispatchEvent(new Event("change", {
739
+ bubbles: true
740
+ }));
741
+ }
722
742
  __classPrivateFieldSet(this, _M3eAutocompleteElement_inputChanged, true, "f");
723
743
  try {
724
744
  if (!__classPrivateFieldGet(this, _M3eAutocompleteElement_menu, "f")) {
@@ -735,8 +755,15 @@ _M3eAutocompleteElement_handleInput = function _M3eAutocompleteElement_handleInp
735
755
  }
736
756
  };
737
757
  _M3eAutocompleteElement_handleChange = function _M3eAutocompleteElement_handleChange() {
738
- if (__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get) && this.required && !__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_options_get).some(x => x.selected && !x.disabled)) {
739
- __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).value = "";
758
+ if (__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get)) {
759
+ const selected = this.selected;
760
+ if (this.required) {
761
+ __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).value = selected?.label ?? "";
762
+ } else if (selected && selected.label !== __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).value && __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_clearOptions).call(this)) {
763
+ this.dispatchEvent(new Event("change", {
764
+ bubbles: true
765
+ }));
766
+ }
740
767
  }
741
768
  };
742
769
  _M3eAutocompleteElement_handleKeyDown = function _M3eAutocompleteElement_handleKeyDown(e) {
@@ -842,6 +869,7 @@ _M3eAutocompleteElement_destroyMenu = function _M3eAutocompleteElement_destroyMe
842
869
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).ariaExpanded = "false";
843
870
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).removeAttribute("aria-controls");
844
871
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).removeAttribute("aria-owns");
872
+ __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).removeAttribute("aria-activedescendant");
845
873
  }
846
874
  this.requestUpdate();
847
875
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_formField_get)?.notifyControlStateChange();
@@ -849,6 +877,9 @@ _M3eAutocompleteElement_destroyMenu = function _M3eAutocompleteElement_destroyMe
849
877
  oldState: e.oldState,
850
878
  newState: e.newState
851
879
  }));
880
+ if (__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get)?.slot === "input" && __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).parentElement?.tagName === "M3E-INPUT-CHIP-SET") {
881
+ __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_clearOptions).call(this);
882
+ }
852
883
  };
853
884
  _M3eAutocompleteElement_showMenu = function _M3eAutocompleteElement_showMenu() {
854
885
  if (__classPrivateFieldGet(this, _M3eAutocompleteElement_menu, "f") || !__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get) || __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).readOnly || __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).disabled) return;
@@ -901,7 +932,6 @@ _M3eAutocompleteElement_updateMenuState = function _M3eAutocompleteElement_updat
901
932
  };
902
933
  _M3eAutocompleteElement_hideMenu = function _M3eAutocompleteElement_hideMenu() {
903
934
  __classPrivateFieldGet(this, _M3eAutocompleteElement_menu, "f")?.hide();
904
- __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get)?.removeAttribute("aria-activedescendant");
905
935
  };
906
936
  _M3eAutocompleteElement_activateOption = function _M3eAutocompleteElement_activateOption(option, forceFocusVisible = false) {
907
937
  if (!__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get)) return;
@@ -947,8 +977,11 @@ async function _M3eAutocompleteElement_selectOption(option) {
947
977
  await this.updateComplete;
948
978
  }
949
979
  if (__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get)) {
950
- __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).value = option.value;
980
+ __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).value = option.label;
951
981
  }
982
+ this.dispatchEvent(new Event("change", {
983
+ bubbles: true
984
+ }));
952
985
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_formField_get)?.notifyControlStateChange(true);
953
986
  };
954
987
  _M3eAutocompleteElement_filterOption = function _M3eAutocompleteElement_filterOption(clone, option, term, exactTerm) {
@@ -976,7 +1009,7 @@ _M3eAutocompleteElement_filterOption = function _M3eAutocompleteElement_filterOp
976
1009
  };
977
1010
  _M3eAutocompleteElement_filterOptions = function _M3eAutocompleteElement_filterOptions() {
978
1011
  if (!__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get)) return 0;
979
- const oldCount = __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_options_get).filter(x => !x.hidden).length;
1012
+ const oldCount = __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_options_get).filter(x => x.hidden === false).length;
980
1013
  const shouldAnnounce = !this.loading && __classPrivateFieldGet(this, _M3eAutocompleteElement_inputChanged, "f");
981
1014
  __classPrivateFieldSet(this, _M3eAutocompleteElement_inputChanged, false, "f");
982
1015
  const exactTerm = __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_input_get).value;
@@ -988,7 +1021,7 @@ _M3eAutocompleteElement_filterOptions = function _M3eAutocompleteElement_filterO
988
1021
  const clone = __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_options_get)[i];
989
1022
  const option = this._options[i];
990
1023
  clone.hidden = !__classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_filterOption).call(this, clone, option, term, exactTerm);
991
- if (clone.hidden) {
1024
+ if (clone.hidden === true) {
992
1025
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_deactivateOption).call(this, clone);
993
1026
  deleteCustomState$1(clone, "-first");
994
1027
  deleteCustomState$1(clone, "-last");
@@ -1008,17 +1041,13 @@ _M3eAutocompleteElement_filterOptions = function _M3eAutocompleteElement_filterO
1008
1041
  last = clone;
1009
1042
  }
1010
1043
  }
1011
- if (clone.selected && option.value !== exactTerm) {
1012
- clone.selected = false;
1013
- __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_updateSelectionState).call(this, clone);
1014
- }
1015
1044
  }
1016
1045
  if (__classPrivateFieldGet(this, _M3eAutocompleteElement_menu, "f")) {
1017
1046
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_updateMenuState).call(this, __classPrivateFieldGet(this, _M3eAutocompleteElement_menu, "f"), newCount);
1018
1047
  }
1019
1048
  const groups = __classPrivateFieldGet(this, _M3eAutocompleteElement_menu, "f")?.querySelectorAll("m3e-optgroup") ?? __classPrivateFieldGet(this, _M3eAutocompleteElement_clone, "f")?.querySelectorAll("m3e-optgroup") ?? [];
1020
1049
  for (const group of groups) {
1021
- group.hidden = [...group.querySelectorAll("m3e-option")].every(x => x.hidden);
1050
+ group.hidden = [...group.querySelectorAll("m3e-option")].every(x => x.hidden === true);
1022
1051
  }
1023
1052
  if (shouldAnnounce) {
1024
1053
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_announceResults).call(this, oldCount, newCount);
@@ -1026,6 +1055,17 @@ _M3eAutocompleteElement_filterOptions = function _M3eAutocompleteElement_filterO
1026
1055
  __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_autoActivate).call(this);
1027
1056
  return newCount;
1028
1057
  };
1058
+ _M3eAutocompleteElement_clearOptions = function _M3eAutocompleteElement_clearOptions() {
1059
+ const selected = this._listKeyManager.items.filter(x => x.selected);
1060
+ if (selected.length > 0) {
1061
+ selected.forEach(x => {
1062
+ x.selected = false;
1063
+ __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "m", _M3eAutocompleteElement_updateSelectionState).call(this, x);
1064
+ });
1065
+ return true;
1066
+ }
1067
+ return false;
1068
+ };
1029
1069
  _M3eAutocompleteElement_announceResults = function _M3eAutocompleteElement_announceResults(oldCount, newCount) {
1030
1070
  if (!__classPrivateFieldGet(this, _M3eAutocompleteElement_hasFocus, "f")) return;
1031
1071
  if (newCount == 0) {
@@ -1041,7 +1081,7 @@ _M3eAutocompleteElement_announceResults = function _M3eAutocompleteElement_annou
1041
1081
  };
1042
1082
  _M3eAutocompleteElement_autoActivate = function _M3eAutocompleteElement_autoActivate() {
1043
1083
  if (this.autoActivate && (!this._listKeyManager.activeItem || !this._listKeyManager.activeItem.selected)) {
1044
- const option = __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_options_get).find(x => !x.disabled && !x.hidden);
1084
+ const option = __classPrivateFieldGet(this, _M3eAutocompleteElement_instances, "a", _M3eAutocompleteElement_options_get).find(x => !x.disabled && x.hidden === false);
1045
1085
  if (option) {
1046
1086
  this._listKeyManager.setActiveItem(option);
1047
1087
  if (__classPrivateFieldGet(this, _M3eAutocompleteElement_menu, "f")) {
@@ -6826,7 +6866,7 @@ function prefersReducedMotion() {
6826
6866
  }
6827
6867
 
6828
6868
  /**
6829
- * Registers a constructable stylesheet in the documents `adoptedStyleSheets`.
6869
+ * Registers a constructable stylesheet in the document's `adoptedStyleSheets`.
6830
6870
  * @param css - A `CSSResult` (e.g., from `css```) whose text will be injected into a constructable stylesheet.
6831
6871
  */
6832
6872
  function registerStyleSheet(css) {
@@ -11406,7 +11446,7 @@ let M3eTextOverflowElement = class M3eTextOverflowElement extends LitElement {
11406
11446
  M3eTextOverflowElement.styles = css`:host { flex: 1 1 auto; display: inline-flex; align-items: center; flex-wrap: nowrap; min-width: 0; } .base { flex: 1 1 auto; display: inline; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }`;
11407
11447
  M3eTextOverflowElement = __decorate([customElement("m3e-text-overflow")], M3eTextOverflowElement);
11408
11448
 
11409
- var _M3eDatepickerElement_instances, _M3eDatepickerElement_breakpointUnobserve, _M3eDatepickerElement_trigger, _M3eDatepickerElement_anchor, _M3eDatepickerElement_anchorCleanup, _M3eDatepickerElement_scrollLockController, _M3eDatepickerElement_inertController, _M3eDatepickerElement_documentClickHandler, _M3eDatepickerElement_documentKeyDownHandler, _M3eDatepickerElement_toggleHandler, _M3eDatepickerElement_renderHeader, _M3eDatepickerElement_handleDocumentClick, _M3eDatepickerElement_handleCalendarChange, _M3eDatepickerElement_handleClearClick, _M3eDatepickerElement_handleDismissClick, _M3eDatepickerElement_handleConfirmClick, _M3eDatepickerElement_handleDocumentKeyDown, _M3eDatepickerElement_updateVariant, _M3eDatepickerElement_updatePosition, _M3eDatepickerElement_clearSelectionState;
11449
+ var _M3eDatepickerElement_instances, _M3eDatepickerElement_breakpointUnobserve, _M3eDatepickerElement_trigger, _M3eDatepickerElement_anchor, _M3eDatepickerElement_anchorCleanup, _M3eDatepickerElement_scrollLockController, _M3eDatepickerElement_inertController, _M3eDatepickerElement_documentClickHandler, _M3eDatepickerElement_documentKeyDownHandler, _M3eDatepickerElement_toggleHandler, _M3eDatepickerElement_renderHeader, _M3eDatepickerElement_handleDocumentClick, _M3eDatepickerElement_handleCalendarChange, _M3eDatepickerElement_handleClearClick, _M3eDatepickerElement_handleDismissClick, _M3eDatepickerElement_handleConfirmClick, _M3eDatepickerElement_handleDocumentKeyDown, _M3eDatepickerElement_initBreakpointMonitoring, _M3eDatepickerElement_updateVariant, _M3eDatepickerElement_updatePosition, _M3eDatepickerElement_clearAnchoring, _M3eDatepickerElement_clearSelectionState;
11410
11450
  var M3eDatepickerElement_1;
11411
11451
  /**
11412
11452
  * Presents a date picker on a temporary surface.
@@ -11473,7 +11513,7 @@ var M3eDatepickerElement_1;
11473
11513
  * @cssprop --m3e-dialog-scrim-color - Base color used for the modal scrim behind the picker.
11474
11514
  * @cssprop --m3e-dialog-scrim-opacity - Opacity applied to the scrim color in modal mode.
11475
11515
  */
11476
- let M3eDatepickerElement = M3eDatepickerElement_1 = class M3eDatepickerElement extends SuppressInitialAnimation$1(AttachInternals$1(Role$1(LitElement, "dialog"))) {
11516
+ let M3eDatepickerElement = M3eDatepickerElement_1 = class M3eDatepickerElement extends SuppressInitialAnimation$1(ReconnectedCallback$1(AttachInternals$1(Role$1(LitElement, "dialog")))) {
11477
11517
  constructor() {
11478
11518
  super(...arguments);
11479
11519
  _M3eDatepickerElement_instances.add(this);
@@ -11628,12 +11668,20 @@ let M3eDatepickerElement = M3eDatepickerElement_1 = class M3eDatepickerElement e
11628
11668
  super.disconnectedCallback();
11629
11669
  this._variant = undefined;
11630
11670
  __classPrivateFieldGet(this, _M3eDatepickerElement_breakpointUnobserve, "f")?.call(this);
11671
+ __classPrivateFieldGet(this, _M3eDatepickerElement_instances, "m", _M3eDatepickerElement_clearAnchoring).call(this);
11631
11672
  deleteCustomState$1(this, "-docked");
11632
11673
  deleteCustomState$1(this, "-modal");
11633
11674
  this.removeEventListener("toggle", __classPrivateFieldGet(this, _M3eDatepickerElement_toggleHandler, "f"));
11634
11675
  document.removeEventListener("click", __classPrivateFieldGet(this, _M3eDatepickerElement_documentClickHandler, "f"));
11635
11676
  document.removeEventListener("keydown", __classPrivateFieldGet(this, _M3eDatepickerElement_documentKeyDownHandler, "f"));
11636
11677
  }
11678
+ /** @inheritdoc */
11679
+ reconnectedCallback() {
11680
+ super.reconnectedCallback();
11681
+ if (this.variant === "auto") {
11682
+ __classPrivateFieldGet(this, _M3eDatepickerElement_instances, "m", _M3eDatepickerElement_initBreakpointMonitoring).call(this);
11683
+ }
11684
+ }
11637
11685
  /**
11638
11686
  * Opens the picker.
11639
11687
  * @param {HTMLElement} trigger The element that triggered the picker.
@@ -11648,9 +11696,15 @@ let M3eDatepickerElement = M3eDatepickerElement_1 = class M3eDatepickerElement e
11648
11696
  __classPrivateFieldGet(this, _M3eDatepickerElement_scrollLockController, "f").lock();
11649
11697
  __classPrivateFieldGet(this, _M3eDatepickerElement_inertController, "f").lock();
11650
11698
  }
11651
- this._calendar.date = this.date;
11652
- this._calendar.rangeStart = this.rangeStart;
11653
- this._calendar.rangeEnd = this.rangeEnd;
11699
+ const calendar = this._calendar;
11700
+ calendar.date = this.date;
11701
+ calendar.rangeStart = this.rangeStart;
11702
+ calendar.rangeEnd = this.rangeEnd;
11703
+ // Reset the start-view
11704
+ calendar.requestUpdate("startView");
11705
+ if (calendar.isUpdatePending) {
11706
+ await calendar.updateComplete;
11707
+ }
11654
11708
  __classPrivateFieldSet(this, _M3eDatepickerElement_trigger, trigger, "f");
11655
11709
  __classPrivateFieldGet(this, _M3eDatepickerElement_trigger, "f").ariaExpanded = "true";
11656
11710
  __classPrivateFieldSet(this, _M3eDatepickerElement_anchor, anchor, "f");
@@ -11702,10 +11756,7 @@ let M3eDatepickerElement = M3eDatepickerElement_1 = class M3eDatepickerElement e
11702
11756
  if (changedProperties.has("variant")) {
11703
11757
  __classPrivateFieldGet(this, _M3eDatepickerElement_breakpointUnobserve, "f")?.call(this);
11704
11758
  if (this.variant === "auto") {
11705
- __classPrivateFieldSet(this, _M3eDatepickerElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall, Breakpoint.Small], matches => {
11706
- this._variant = matches.get(Breakpoint.XSmall) || matches.get(Breakpoint.Small) ? "modal" : "docked";
11707
- __classPrivateFieldGet(this, _M3eDatepickerElement_instances, "m", _M3eDatepickerElement_updateVariant).call(this);
11708
- }), "f");
11759
+ __classPrivateFieldGet(this, _M3eDatepickerElement_instances, "m", _M3eDatepickerElement_initBreakpointMonitoring).call(this);
11709
11760
  } else {
11710
11761
  this._variant = undefined;
11711
11762
  __classPrivateFieldGet(this, _M3eDatepickerElement_instances, "m", _M3eDatepickerElement_updateVariant).call(this);
@@ -11777,6 +11828,12 @@ _M3eDatepickerElement_handleDocumentKeyDown = function _M3eDatepickerElement_han
11777
11828
  this.hide(true);
11778
11829
  }
11779
11830
  };
11831
+ _M3eDatepickerElement_initBreakpointMonitoring = function _M3eDatepickerElement_initBreakpointMonitoring() {
11832
+ __classPrivateFieldSet(this, _M3eDatepickerElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall, Breakpoint.Small], matches => {
11833
+ this._variant = matches.get(Breakpoint.XSmall) || matches.get(Breakpoint.Small) ? "modal" : "docked";
11834
+ __classPrivateFieldGet(this, _M3eDatepickerElement_instances, "m", _M3eDatepickerElement_updateVariant).call(this);
11835
+ }), "f");
11836
+ };
11780
11837
  _M3eDatepickerElement_updateVariant = function _M3eDatepickerElement_updateVariant() {
11781
11838
  switch (this.currentVariant) {
11782
11839
  case "docked":
@@ -11803,6 +11860,7 @@ _M3eDatepickerElement_updateVariant = function _M3eDatepickerElement_updateVaria
11803
11860
  _M3eDatepickerElement_updatePosition = /** @private */
11804
11861
  async function _M3eDatepickerElement_updatePosition() {
11805
11862
  if (this.currentVariant === "docked" && __classPrivateFieldGet(this, _M3eDatepickerElement_trigger, "f")) {
11863
+ __classPrivateFieldGet(this, _M3eDatepickerElement_anchorCleanup, "f")?.call(this);
11806
11864
  __classPrivateFieldSet(this, _M3eDatepickerElement_anchorCleanup, await positionAnchor(this, __classPrivateFieldGet(this, _M3eDatepickerElement_anchor, "f") ?? __classPrivateFieldGet(this, _M3eDatepickerElement_trigger, "f"), {
11807
11865
  position: "bottom-start",
11808
11866
  inline: true,
@@ -11821,13 +11879,16 @@ async function _M3eDatepickerElement_updatePosition() {
11821
11879
  this.style.top = `${y}px`;
11822
11880
  }), "f");
11823
11881
  } else {
11824
- __classPrivateFieldGet(this, _M3eDatepickerElement_anchorCleanup, "f")?.call(this);
11825
- __classPrivateFieldSet(this, _M3eDatepickerElement_anchorCleanup, undefined, "f");
11826
- this.style.left = "";
11827
- this.style.right = "";
11828
- this.style.top = "";
11882
+ __classPrivateFieldGet(this, _M3eDatepickerElement_instances, "m", _M3eDatepickerElement_clearAnchoring).call(this);
11829
11883
  }
11830
11884
  };
11885
+ _M3eDatepickerElement_clearAnchoring = function _M3eDatepickerElement_clearAnchoring() {
11886
+ __classPrivateFieldGet(this, _M3eDatepickerElement_anchorCleanup, "f")?.call(this);
11887
+ __classPrivateFieldSet(this, _M3eDatepickerElement_anchorCleanup, undefined, "f");
11888
+ this.style.left = "";
11889
+ this.style.right = "";
11890
+ this.style.top = "";
11891
+ };
11831
11892
  _M3eDatepickerElement_clearSelectionState = function _M3eDatepickerElement_clearSelectionState() {
11832
11893
  this._date = this._rangeStart = this._rangeEnd = undefined;
11833
11894
  };
@@ -12367,7 +12428,7 @@ const DrawerContainerStyle = css`:host { display: block; position: relative; ove
12367
12428
  visibility ${DesignToken$1.motion.duration.medium4} ${DesignToken$1.motion.easing.standard} allow-discrete`)}; } @starting-style { .scrim { opacity: 0; } } :host(:state(-start-push)[start]) .scrim, :host(:state(-end-push)[end]) .scrim, :host(:state(-start-over)[start]) .scrim, :host(:state(-end-over)[end]) .scrim { visibility: visible; opacity: ${DrawerContainerToken.scrimOpacity}; } :host(:state(-start-push)) .start, :host(:state(-start-over)) .start { border-start-end-radius: ${DrawerContainerToken.cornerShape}; border-end-end-radius: ${DrawerContainerToken.cornerShape}; } :host(:state(-end-push)) .end, :host(:state(-end-over)) .end { border-start-start-radius: ${DrawerContainerToken.cornerShape}; border-end-start-radius: ${DrawerContainerToken.cornerShape}; } :host(:state(-start-push)) .start, :host(:state(-end-push)) .end, :host(:state(-start-over)) .start, :host(:state(-end-over)) .end { background-color: ${DrawerContainerToken.modalContainerColor}; box-shadow: ${DrawerContainerToken.modalContainerElevation}; } :host([start-divider]) .start { border-inline-end-color: transparent; border-inline-end-width: ${DrawerContainerToken.dividerThickness}; border-inline-end-style: solid; box-sizing: border-box; } :host([start-divider]:state(-start-side)[start]:not(:state(-end-push)[end]):not(:state(-end-over)[end])) .start { border-inline-end-color: ${DrawerContainerToken.dividerColor}; } :host([end-divider]) .end { border-inline-start-color: transparent; border-inline-start-width: ${DrawerContainerToken.dividerThickness}; border-inline-start-style: solid; box-sizing: border-box; } :host([end-divider]:state(-end-side)[end]:not(:state(-start-push)[start]):not(:state(-start-over)[start])) .end { border-inline-start-color: ${DrawerContainerToken.dividerColor}; } :host(:state(-no-animate)) .start, :host(:state(-no-animate)) .end, :host(:state(-no-animate)) .content { transition: none; } @media (forced-colors: active) { .start, .end { background-color: Canvas; box-shadow: unset; transition: ${unsafeCSS(`margin ${DesignToken$1.motion.duration.medium4} ${DesignToken$1.motion.easing.standard},
12368
12429
  visibility ${DesignToken$1.motion.duration.medium4} ${DesignToken$1.motion.easing.standard} allow-discrete`)}; } :host(:state(-start-push)) .start, :host(:state(-end-push)) .end, :host(:state(-start-over)) .start, :host(:state(-end-over)) .end { background-color: Canvas; box-shadow: unset; border-color: CanvasText; } .start, .end { border-style: solid; border-color: Canvas; border-width: 1px; } .start { border-inline-start-style: none; } .end { border-inline-end-style: none; } :host([start-divider]:state(-start-side)[start]:not(:state(-end-push)[end]):not(:state(-end-over)[end])) .start { border-inline-end-color: GrayText; } :host([end-divider]:state(-end-side)[end]:not(:state(-start-push)[start]):not(:state(-start-over)[start])) .end { border-inline-start-color: GrayText; } } @media (prefers-reduced-motion) { .start, .end, .content, .scrim { transition: none; } }`;
12369
12430
 
12370
- var _M3eDrawerContainerElement_instances, _M3eDrawerContainerElement_breakpointUnobserve, _M3eDrawerContainerElement_disableStartFocusTrap, _M3eDrawerContainerElement_disableEndFocusTrap, _M3eDrawerContainerElement_resizeController, _M3eDrawerContainerElement_initialize, _M3eDrawerContainerElement_handleScrimClick, _M3eDrawerContainerElement_handleStartSlotChange, _M3eDrawerContainerElement_handleEndSlotChange, _M3eDrawerContainerElement_handleDrawerResize, _M3eDrawerContainerElement_clearMode, _M3eDrawerContainerElement_updateMode;
12431
+ var _M3eDrawerContainerElement_instances, _M3eDrawerContainerElement_breakpointUnobserve, _M3eDrawerContainerElement_disableStartFocusTrap, _M3eDrawerContainerElement_disableEndFocusTrap, _M3eDrawerContainerElement_resizeController, _M3eDrawerContainerElement_initialize, _M3eDrawerContainerElement_handleScrimClick, _M3eDrawerContainerElement_handleStartSlotChange, _M3eDrawerContainerElement_handleEndSlotChange, _M3eDrawerContainerElement_handleDrawerResize, _M3eDrawerContainerElement_initBreakpointMonitoring, _M3eDrawerContainerElement_clearMode, _M3eDrawerContainerElement_updateMode;
12371
12432
  /**
12372
12433
  * A container for one or two sliding drawers.
12373
12434
  *
@@ -12412,8 +12473,8 @@ var _M3eDrawerContainerElement_instances, _M3eDrawerContainerElement_breakpointU
12412
12473
  * @cssprop --m3e-drawer-container-elevation - The elevation level of the drawer container.
12413
12474
  * @cssprop --m3e-drawer-container-width - The width of the drawer container.
12414
12475
  * @cssprop --m3e-drawer-container-scrim-opacity - The opacity of the scrim behind the drawer.
12415
- * @cssprop --m3e-modal-drawer-start-shape - The shape of the drawers start edge (typically left in LTR).
12416
- * @cssprop --m3e-modal-drawer-end-shape - The shape of the drawers end edge (typically right in LTR).
12476
+ * @cssprop --m3e-modal-drawer-start-shape - The shape of the drawer's start edge (typically left in LTR).
12477
+ * @cssprop --m3e-modal-drawer-end-shape - The shape of the drawer's end edge (typically right in LTR).
12417
12478
  * @cssprop --m3e-modal-drawer-container-color - The background color of the modal drawer container.
12418
12479
  * @cssprop --m3e-modal-drawer-elevation - The elevation level of the modal drawer container.
12419
12480
  * @cssprop --m3e-drawer-divider-color - The color of the divider between drawer sections.
@@ -12487,7 +12548,7 @@ let M3eDrawerContainerElement = class M3eDrawerContainerElement extends Reconnec
12487
12548
  if (changedProperties.has("startMode") || changedProperties.has("endMode")) {
12488
12549
  __classPrivateFieldGet(this, _M3eDrawerContainerElement_breakpointUnobserve, "f")?.call(this);
12489
12550
  if (this.startMode === "auto" || this.endMode === "auto") {
12490
- __classPrivateFieldSet(this, _M3eDrawerContainerElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall, Breakpoint.Small], matches => __classPrivateFieldGet(this, _M3eDrawerContainerElement_instances, "m", _M3eDrawerContainerElement_updateMode).call(this, matches, true)), "f");
12551
+ __classPrivateFieldGet(this, _M3eDrawerContainerElement_instances, "m", _M3eDrawerContainerElement_initBreakpointMonitoring).call(this);
12491
12552
  } else {
12492
12553
  __classPrivateFieldGet(this, _M3eDrawerContainerElement_instances, "m", _M3eDrawerContainerElement_updateMode).call(this);
12493
12554
  }
@@ -12512,6 +12573,9 @@ let M3eDrawerContainerElement = class M3eDrawerContainerElement extends Reconnec
12512
12573
  reconnectedCallback() {
12513
12574
  super.reconnectedCallback();
12514
12575
  __classPrivateFieldGet(this, _M3eDrawerContainerElement_instances, "m", _M3eDrawerContainerElement_initialize).call(this);
12576
+ if (this.startMode === "auto" || this.endMode === "auto") {
12577
+ __classPrivateFieldGet(this, _M3eDrawerContainerElement_instances, "m", _M3eDrawerContainerElement_initBreakpointMonitoring).call(this);
12578
+ }
12515
12579
  }
12516
12580
  /** @inheritdoc */
12517
12581
  firstUpdated(_changedProperties) {
@@ -12566,6 +12630,9 @@ _M3eDrawerContainerElement_handleDrawerResize = function _M3eDrawerContainerElem
12566
12630
  deleteCustomState$1(this, "-no-animate");
12567
12631
  }
12568
12632
  };
12633
+ _M3eDrawerContainerElement_initBreakpointMonitoring = function _M3eDrawerContainerElement_initBreakpointMonitoring() {
12634
+ __classPrivateFieldSet(this, _M3eDrawerContainerElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall, Breakpoint.Small], matches => __classPrivateFieldGet(this, _M3eDrawerContainerElement_instances, "m", _M3eDrawerContainerElement_updateMode).call(this, matches, true)), "f");
12635
+ };
12569
12636
  _M3eDrawerContainerElement_clearMode = function _M3eDrawerContainerElement_clearMode() {
12570
12637
  deleteCustomState$1(this, "-start-over");
12571
12638
  deleteCustomState$1(this, "-start-push");
@@ -18760,7 +18827,7 @@ _M3eMenuItemRadioElement_handleMouseEnter = function _M3eMenuItemRadioElement_ha
18760
18827
  M3eMenuItemRadioElement.styles = M3eMenuItemCheckboxElement.styles;
18761
18828
  M3eMenuItemRadioElement = __decorate([customElement$1("m3e-menu-item-radio")], M3eMenuItemRadioElement);
18762
18829
 
18763
- var _M3eNavBarElement_instances, _M3eNavBarElement_breakpointUnobserve, _M3eNavBarElement_handleSlotChange, _M3eNavBarElement_handleChange, _a$6;
18830
+ var _M3eNavBarElement_instances, _M3eNavBarElement_breakpointUnobserve, _M3eNavBarElement_initBreakpointMonitoring, _M3eNavBarElement_handleSlotChange, _M3eNavBarElement_handleChange, _a$6;
18764
18831
  /**
18765
18832
  * A horizontal bar, typically used on smaller devices, that allows a user to switch between 3-5 views.
18766
18833
  *
@@ -18792,7 +18859,7 @@ var _M3eNavBarElement_instances, _M3eNavBarElement_breakpointUnobserve, _M3eNavB
18792
18859
  * @cssprop --m3e-nav-bar-container-color - Background color of the navigation bar container.
18793
18860
  * @cssprop --m3e-nav-bar-vertical-item-width - Minimum width of vertical nav items.
18794
18861
  */
18795
- let M3eNavBarElement = class M3eNavBarElement extends AttachInternals$1(Role$1(LitElement, "navigation")) {
18862
+ let M3eNavBarElement = class M3eNavBarElement extends ReconnectedCallback$1(AttachInternals$1(Role$1(LitElement, "navigation"))) {
18796
18863
  constructor() {
18797
18864
  super(...arguments);
18798
18865
  _M3eNavBarElement_instances.add(this);
@@ -18828,15 +18895,19 @@ let M3eNavBarElement = class M3eNavBarElement extends AttachInternals$1(Role$1(L
18828
18895
  __classPrivateFieldGet(this, _M3eNavBarElement_breakpointUnobserve, "f")?.call(this);
18829
18896
  }
18830
18897
  /** @inheritdoc */
18898
+ reconnectedCallback() {
18899
+ super.reconnectedCallback();
18900
+ if (this.mode === "auto") {
18901
+ __classPrivateFieldGet(this, _M3eNavBarElement_instances, "m", _M3eNavBarElement_initBreakpointMonitoring).call(this);
18902
+ }
18903
+ }
18904
+ /** @inheritdoc */
18831
18905
  willUpdate(changedProperties) {
18832
18906
  super.willUpdate(changedProperties);
18833
18907
  if (changedProperties.has("mode")) {
18834
18908
  __classPrivateFieldGet(this, _M3eNavBarElement_breakpointUnobserve, "f")?.call(this);
18835
18909
  if (this.mode === "auto") {
18836
- __classPrivateFieldSet(this, _M3eNavBarElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall, Breakpoint.Small], matches => {
18837
- this._mode = matches.get(Breakpoint.XSmall) || matches.get(Breakpoint.Small) ? "compact" : "expanded";
18838
- this._updateItems();
18839
- }), "f");
18910
+ __classPrivateFieldGet(this, _M3eNavBarElement_instances, "m", _M3eNavBarElement_initBreakpointMonitoring).call(this);
18840
18911
  } else {
18841
18912
  this._mode = undefined;
18842
18913
  this._updateItems();
@@ -18864,6 +18935,12 @@ let M3eNavBarElement = class M3eNavBarElement extends AttachInternals$1(Role$1(L
18864
18935
  _M3eNavBarElement_breakpointUnobserve = new WeakMap();
18865
18936
  _M3eNavBarElement_instances = new WeakSet();
18866
18937
  _a$6 = selectionManager;
18938
+ _M3eNavBarElement_initBreakpointMonitoring = function _M3eNavBarElement_initBreakpointMonitoring() {
18939
+ __classPrivateFieldSet(this, _M3eNavBarElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall, Breakpoint.Small], matches => {
18940
+ this._mode = matches.get(Breakpoint.XSmall) || matches.get(Breakpoint.Small) ? "compact" : "expanded";
18941
+ this._updateItems();
18942
+ }), "f");
18943
+ };
18867
18944
  _M3eNavBarElement_handleSlotChange = function _M3eNavBarElement_handleSlotChange() {
18868
18945
  this[selectionManager].setItems([...this.querySelectorAll("m3e-nav-item")]);
18869
18946
  this._updateItems();
@@ -20249,7 +20326,7 @@ _M3eOptionPanelElement_handleMutation = function _M3eOptionPanelElement_handleMu
20249
20326
  let last;
20250
20327
  for (let i = 0; i < options.length; i++) {
20251
20328
  const option = options[i];
20252
- if (option.hidden) {
20329
+ if (option.hidden === true) {
20253
20330
  deleteCustomState$1(option, "-first");
20254
20331
  deleteCustomState$1(option, "-last");
20255
20332
  } else if (!first && !(option.parentElement instanceof M3eOptGroupElement)) {
@@ -21749,7 +21826,7 @@ __decorate([property({
21749
21826
  })], M3eSearchBarElement.prototype, "clearLabel", void 0);
21750
21827
  M3eSearchBarElement = __decorate([customElement$1("m3e-search-bar")], M3eSearchBarElement);
21751
21828
 
21752
- var _M3eSearchViewElement_instances, _M3eSearchViewElement_input, _M3eSearchViewElement_closeOnInputFocus, _M3eSearchViewElement_inputInputHandler, _M3eSearchViewElement_inputFocusHandler, _M3eSearchViewElement_inputKeyDownHandler, _M3eSearchViewElement_inputPointerHandler, _M3eSearchViewElement_scrollLockController, _M3eSearchViewElement_inertController, _M3eSearchViewElement_openMode, _M3eSearchViewElement_anchorCleanup, _M3eSearchViewElement_breakpointUnobserve, _M3eSearchViewElement_renderIconOrBackButton, _M3eSearchViewElement_renderIcon, _M3eSearchViewElement_renderBackButton, _M3eSearchViewElement_renderClearButton, _M3eSearchViewElement_handleInputSlotChange, _M3eSearchViewElement_handleInputInput, _M3eSearchViewElement_updateMode, _M3eSearchViewElement_updateClearableState, _M3eSearchViewElement_handleInputFocus, _M3eSearchViewElement_handleCloseClick, _M3eSearchViewElement_handleClearClick, _M3eSearchViewElement_handleInputPointerDown, _M3eSearchViewElement_handleInputKeyDown, _M3eSearchViewElement_handleKeyDown, _M3eSearchViewElement_openDocked, _M3eSearchViewElement_closeDocked, _M3eSearchViewElement_hideDocked, _M3eSearchViewElement_openFullscreen, _M3eSearchViewElement_closeFullscreen;
21829
+ var _M3eSearchViewElement_instances, _M3eSearchViewElement_input, _M3eSearchViewElement_closeOnInputFocus, _M3eSearchViewElement_inputInputHandler, _M3eSearchViewElement_inputFocusHandler, _M3eSearchViewElement_inputKeyDownHandler, _M3eSearchViewElement_inputPointerHandler, _M3eSearchViewElement_scrollLockController, _M3eSearchViewElement_inertController, _M3eSearchViewElement_openMode, _M3eSearchViewElement_anchorCleanup, _M3eSearchViewElement_breakpointUnobserve, _M3eSearchViewElement_renderIconOrBackButton, _M3eSearchViewElement_renderIcon, _M3eSearchViewElement_renderBackButton, _M3eSearchViewElement_renderClearButton, _M3eSearchViewElement_initBreakpointMonitoring, _M3eSearchViewElement_handleInputSlotChange, _M3eSearchViewElement_handleInputInput, _M3eSearchViewElement_updateMode, _M3eSearchViewElement_updateClearableState, _M3eSearchViewElement_handleInputFocus, _M3eSearchViewElement_handleCloseClick, _M3eSearchViewElement_handleClearClick, _M3eSearchViewElement_handleInputPointerDown, _M3eSearchViewElement_handleInputKeyDown, _M3eSearchViewElement_handleKeyDown, _M3eSearchViewElement_openDocked, _M3eSearchViewElement_closeDocked, _M3eSearchViewElement_hideDocked, _M3eSearchViewElement_openFullscreen, _M3eSearchViewElement_closeFullscreen;
21753
21830
  /**
21754
21831
  * A surface that presents suggestions and results for a search.
21755
21832
  *
@@ -21818,7 +21895,7 @@ var _M3eSearchViewElement_instances, _M3eSearchViewElement_input, _M3eSearchView
21818
21895
  * @cssprop --m3e-search-view-docked-scrim-color - Color of the scrim behind the docked view.
21819
21896
  * @cssprop --m3e-search-view-docked-scrim-opacity - Opacity of the scrim behind the docked view.
21820
21897
  */
21821
- let M3eSearchViewElement = class M3eSearchViewElement extends EventAttribute$1(AttachInternals$1(LitElement), "clear", "query") {
21898
+ let M3eSearchViewElement = class M3eSearchViewElement extends EventAttribute$1(ReconnectedCallback$1(AttachInternals$1(LitElement)), "clear", "query") {
21822
21899
  constructor() {
21823
21900
  super();
21824
21901
  _M3eSearchViewElement_instances.add(this);
@@ -21905,6 +21982,19 @@ let M3eSearchViewElement = class M3eSearchViewElement extends EventAttribute$1(A
21905
21982
  }));
21906
21983
  }
21907
21984
  /** @inheritdoc */
21985
+ disconnectedCallback() {
21986
+ super.disconnectedCallback();
21987
+ this._mode = undefined;
21988
+ __classPrivateFieldGet(this, _M3eSearchViewElement_breakpointUnobserve, "f")?.call(this);
21989
+ }
21990
+ /** @inheritdoc */
21991
+ reconnectedCallback() {
21992
+ super.reconnectedCallback();
21993
+ if (this.mode === "auto") {
21994
+ __classPrivateFieldGet(this, _M3eSearchViewElement_instances, "m", _M3eSearchViewElement_initBreakpointMonitoring).call(this);
21995
+ }
21996
+ }
21997
+ /** @inheritdoc */
21908
21998
  willUpdate(changedProperties) {
21909
21999
  super.willUpdate(changedProperties);
21910
22000
  if (changedProperties.has("mode")) {
@@ -21914,14 +22004,7 @@ let M3eSearchViewElement = class M3eSearchViewElement extends EventAttribute$1(A
21914
22004
  this.open = false;
21915
22005
  }
21916
22006
  if (this.mode === "auto") {
21917
- __classPrivateFieldSet(this, _M3eSearchViewElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall], matches => {
21918
- const currentMode = this.currentMode;
21919
- this._mode = matches.get(Breakpoint.XSmall) ? "fullscreen" : "docked";
21920
- if (currentMode !== this._mode && this.open) {
21921
- this.open = false;
21922
- }
21923
- __classPrivateFieldGet(this, _M3eSearchViewElement_instances, "m", _M3eSearchViewElement_updateMode).call(this);
21924
- }), "f");
22007
+ __classPrivateFieldGet(this, _M3eSearchViewElement_instances, "m", _M3eSearchViewElement_initBreakpointMonitoring).call(this);
21925
22008
  } else {
21926
22009
  this._mode = undefined;
21927
22010
  __classPrivateFieldGet(this, _M3eSearchViewElement_instances, "m", _M3eSearchViewElement_updateMode).call(this);
@@ -21987,6 +22070,16 @@ _M3eSearchViewElement_renderBackButton = function _M3eSearchViewElement_renderBa
21987
22070
  _M3eSearchViewElement_renderClearButton = function _M3eSearchViewElement_renderClearButton() {
21988
22071
  return html`<m3e-icon-button class="clear" slot="trailing" aria-label="${this.open && !this._clearable ? this.closeLabel : this.clearLabel}" @click="${__classPrivateFieldGet(this, _M3eSearchViewElement_instances, "m", _M3eSearchViewElement_handleClearClick)}"><slot name="clear-icon"><svg class="clear-icon" viewBox="0 -960 960 960" fill="currentColor"><path d="m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z"/></svg></slot></m3e-icon-button>`;
21989
22072
  };
22073
+ _M3eSearchViewElement_initBreakpointMonitoring = function _M3eSearchViewElement_initBreakpointMonitoring() {
22074
+ __classPrivateFieldSet(this, _M3eSearchViewElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall], matches => {
22075
+ const currentMode = this.currentMode;
22076
+ this._mode = matches.get(Breakpoint.XSmall) ? "fullscreen" : "docked";
22077
+ if (currentMode !== this._mode && this.open) {
22078
+ this.open = false;
22079
+ }
22080
+ __classPrivateFieldGet(this, _M3eSearchViewElement_instances, "m", _M3eSearchViewElement_updateMode).call(this);
22081
+ }), "f");
22082
+ };
21990
22083
  _M3eSearchViewElement_handleInputSlotChange = function _M3eSearchViewElement_handleInputSlotChange(e) {
21991
22084
  const input = e.target.assignedElements({
21992
22085
  flatten: true
@@ -22357,8 +22450,8 @@ var M3eButtonSegmentElement_1;
22357
22450
  * @fires click - Emitted when the element is clicked.
22358
22451
  *
22359
22452
  * @cssprop --m3e-segmented-button-height - Total height of the segmented button.
22360
- * @cssprop --m3e-segmented-button-outline-thickness - Thickness of the buttons border.
22361
- * @cssprop --m3e-segmented-button-outline-color - Color of the buttons border.
22453
+ * @cssprop --m3e-segmented-button-outline-thickness - Thickness of the button's border.
22454
+ * @cssprop --m3e-segmented-button-outline-color - Color of the button's border.
22362
22455
  * @cssprop --m3e-segmented-button-padding-start - Padding on the leading edge of the button content.
22363
22456
  * @cssprop --m3e-segmented-button-padding-end - Padding on the trailing edge of the button content.
22364
22457
  * @cssprop --m3e-segmented-button-spacing - Horizontal gap between icon and label.
@@ -23012,6 +23105,7 @@ _M3eSelectElement_destroyMenu = function _M3eSelectElement_destroyMenu(e) {
23012
23105
  this.ariaExpanded = "false";
23013
23106
  this.removeAttribute("aria-controls");
23014
23107
  this.removeAttribute("aria-owns");
23108
+ this.removeAttribute("aria-activedescendant");
23015
23109
  this.requestUpdate();
23016
23110
  deleteCustomState$1(this, "-open");
23017
23111
  __classPrivateFieldGet(this, _M3eSelectElement_instances, "a", _M3eSelectElement_formField_get)?.notifyControlStateChange();
@@ -23060,7 +23154,6 @@ _M3eSelectElement_showMenu = function _M3eSelectElement_showMenu() {
23060
23154
  _M3eSelectElement_hideMenu = function _M3eSelectElement_hideMenu() {
23061
23155
  if (!__classPrivateFieldGet(this, _M3eSelectElement_menu, "f")) return;
23062
23156
  __classPrivateFieldGet(this, _M3eSelectElement_menu, "f").hide();
23063
- this.removeAttribute("aria-activedescendant");
23064
23157
  deleteCustomState$1(this, "-open");
23065
23158
  };
23066
23159
  _M3eSelectElement_activateOption = function _M3eSelectElement_activateOption(option) {
@@ -24270,7 +24363,7 @@ var _M3eSplitButtonElement_instances, _M3eSplitButtonElement_leadingButton, _M3e
24270
24363
  * `filled`, `tonal`, and `outlined` variants, and adapts to all button sizes. The leading button triggers
24271
24364
  * the main action, while the trailing icon button reveals additional options, enabling efficient workflows
24272
24365
  * and clear visual hierarchy. The split button ensures accessible, adaptive, and visually harmonious
24273
- * interactions, reflecting Material 3s principles of clarity, flexibility, and expressive design.
24366
+ * interactions, reflecting Material 3's principles of clarity, flexibility, and expressive design.
24274
24367
  *
24275
24368
  * @example
24276
24369
  * The following example illustrates use of the `m3e-split-button` to combine the `m3e-button`,
@@ -24834,7 +24927,7 @@ class StepperButtonElementBase extends ActionElementBase$1 {
24834
24927
  }
24835
24928
  _StepperButtonElementBase_action = new WeakMap();
24836
24929
 
24837
- var _M3eStepperElement_instances, _M3eStepperElement_breakpointUnobserve, _M3eStepperElement_renderHeader, _M3eStepperElement_handleChange, _M3eStepperElement_handleSlotChange, _M3eStepperElement_handleKeyDown, _M3eStepperElement_handleSelectedChange, _M3eStepperElement_checkValidity, _M3eStepperElement_updateDisplayOrder, _a$3;
24930
+ var _M3eStepperElement_instances, _M3eStepperElement_breakpointUnobserve, _M3eStepperElement_renderHeader, _M3eStepperElement_handleChange, _M3eStepperElement_handleSlotChange, _M3eStepperElement_handleKeyDown, _M3eStepperElement_handleSelectedChange, _M3eStepperElement_checkValidity, _M3eStepperElement_initBreakpointMonitoring, _M3eStepperElement_updateDisplayOrder, _a$3;
24838
24931
  /**
24839
24932
  * Provides a wizard-like workflow by dividing content into logical steps.
24840
24933
  *
@@ -24900,7 +24993,7 @@ var _M3eStepperElement_instances, _M3eStepperElement_breakpointUnobserve, _M3eSt
24900
24993
  * @cssprop --m3e-step-divider-color - Color of the divider line between steps.
24901
24994
  * @cssprop --m3e-step-divider-inset - Inset offset for divider alignment within step layout.
24902
24995
  */
24903
- let M3eStepperElement = class M3eStepperElement extends AttachInternals$1(LitElement) {
24996
+ let M3eStepperElement = class M3eStepperElement extends ReconnectedCallback$1(AttachInternals$1(LitElement)) {
24904
24997
  constructor() {
24905
24998
  super(...arguments);
24906
24999
  _M3eStepperElement_instances.add(this);
@@ -25030,15 +25123,19 @@ let M3eStepperElement = class M3eStepperElement extends AttachInternals$1(LitEle
25030
25123
  __classPrivateFieldGet(this, _M3eStepperElement_breakpointUnobserve, "f")?.call(this);
25031
25124
  }
25032
25125
  /** @inheritdoc */
25126
+ reconnectedCallback() {
25127
+ super.reconnectedCallback();
25128
+ if (this.orientation === "auto") {
25129
+ __classPrivateFieldGet(this, _M3eStepperElement_instances, "m", _M3eStepperElement_initBreakpointMonitoring).call(this);
25130
+ }
25131
+ }
25132
+ /** @inheritdoc */
25033
25133
  willUpdate(changedProperties) {
25034
25134
  super.willUpdate(changedProperties);
25035
25135
  if (changedProperties.has("orientation")) {
25036
25136
  __classPrivateFieldGet(this, _M3eStepperElement_breakpointUnobserve, "f")?.call(this);
25037
25137
  if (this.orientation === "auto") {
25038
- __classPrivateFieldSet(this, _M3eStepperElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall], matches => {
25039
- this._orientation = matches.get(Breakpoint.XSmall) ? "vertical" : "horizontal";
25040
- __classPrivateFieldGet(this, _M3eStepperElement_instances, "m", _M3eStepperElement_updateDisplayOrder).call(this);
25041
- }), "f");
25138
+ __classPrivateFieldGet(this, _M3eStepperElement_instances, "m", _M3eStepperElement_initBreakpointMonitoring).call(this);
25042
25139
  } else {
25043
25140
  this._orientation = undefined;
25044
25141
  __classPrivateFieldGet(this, _M3eStepperElement_instances, "m", _M3eStepperElement_updateDisplayOrder).call(this);
@@ -25130,6 +25227,12 @@ _M3eStepperElement_checkValidity = function _M3eStepperElement_checkValidity() {
25130
25227
  }
25131
25228
  return valid;
25132
25229
  };
25230
+ _M3eStepperElement_initBreakpointMonitoring = function _M3eStepperElement_initBreakpointMonitoring() {
25231
+ __classPrivateFieldSet(this, _M3eStepperElement_breakpointUnobserve, M3eBreakpointObserver.observe([Breakpoint.XSmall], matches => {
25232
+ this._orientation = matches.get(Breakpoint.XSmall) ? "vertical" : "horizontal";
25233
+ __classPrivateFieldGet(this, _M3eStepperElement_instances, "m", _M3eStepperElement_updateDisplayOrder).call(this);
25234
+ }), "f");
25235
+ };
25133
25236
  _M3eStepperElement_updateDisplayOrder = function _M3eStepperElement_updateDisplayOrder() {
25134
25237
  this[selectionManager].vertical = (this._orientation ?? this.orientation) === "vertical";
25135
25238
  setCustomState$1(this, "-vertical", this[selectionManager].vertical);
@@ -25369,8 +25472,8 @@ var _M3eSwitchElement_instances, _M3eSwitchElement_clickHandler, _M3eSwitchEleme
25369
25472
  * @cssprop --m3e-switch-unselected-icon-size - Size of the icon in the unselected state.
25370
25473
  * @cssprop --m3e-switch-track-height - Height of the switch track.
25371
25474
  * @cssprop --m3e-switch-track-width - Width of the switch track.
25372
- * @cssprop --m3e-switch-track-outline-color - Color of the tracks outline.
25373
- * @cssprop --m3e-switch-track-outline-width - Thickness of the tracks outline.
25475
+ * @cssprop --m3e-switch-track-outline-color - Color of the track's outline.
25476
+ * @cssprop --m3e-switch-track-outline-width - Thickness of the track's outline.
25374
25477
  * @cssprop --m3e-switch-track-shape - Corner shape of the track.
25375
25478
  * @cssprop --m3e-switch-selected-track-color - Track color when selected.
25376
25479
  * @cssprop --m3e-switch-unselected-track-color - Track color when unselected.