@m3e/web 2.5.14 → 2.5.15

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 (49) hide show
  1. package/dist/all.js +133 -81
  2. package/dist/all.js.map +1 -1
  3. package/dist/all.min.js +35 -35
  4. package/dist/all.min.js.map +1 -1
  5. package/dist/core.js +46 -11
  6. package/dist/core.js.map +1 -1
  7. package/dist/core.min.js +1 -1
  8. package/dist/core.min.js.map +1 -1
  9. package/dist/css-custom-data.json +20 -0
  10. package/dist/custom-elements.json +89 -30
  11. package/dist/datepicker.js +0 -2
  12. package/dist/datepicker.js.map +1 -1
  13. package/dist/datepicker.min.js +1 -1
  14. package/dist/datepicker.min.js.map +1 -1
  15. package/dist/form-field.js +1 -1
  16. package/dist/form-field.js.map +1 -1
  17. package/dist/form-field.min.js +1 -1
  18. package/dist/form-field.min.js.map +1 -1
  19. package/dist/html-custom-data.json +2 -2
  20. package/dist/nav-bar.js +4 -2
  21. package/dist/nav-bar.js.map +1 -1
  22. package/dist/nav-bar.min.js +1 -1
  23. package/dist/nav-bar.min.js.map +1 -1
  24. package/dist/nav-rail.js +1 -1
  25. package/dist/nav-rail.js.map +1 -1
  26. package/dist/nav-rail.min.js +1 -1
  27. package/dist/nav-rail.min.js.map +1 -1
  28. package/dist/skeleton.js +81 -65
  29. package/dist/skeleton.js.map +1 -1
  30. package/dist/skeleton.min.js +1 -1
  31. package/dist/skeleton.min.js.map +1 -1
  32. package/dist/slider.js +1 -0
  33. package/dist/slider.js.map +1 -1
  34. package/dist/slider.min.js +1 -1
  35. package/dist/slider.min.js.map +1 -1
  36. package/dist/src/core/shared/primitives/CollapsibleElement.d.ts +1 -1
  37. package/dist/src/core/shared/primitives/CollapsibleElement.d.ts.map +1 -1
  38. package/dist/src/core/shared/primitives/CollapsibleOrientation.d.ts +1 -1
  39. package/dist/src/core/shared/primitives/CollapsibleOrientation.d.ts.map +1 -1
  40. package/dist/src/datepicker/DatepickerElement.d.ts.map +1 -1
  41. package/dist/src/form-field/FormFieldElement.d.ts.map +1 -1
  42. package/dist/src/nav-bar/NavBarElement.d.ts +2 -0
  43. package/dist/src/nav-bar/NavBarElement.d.ts.map +1 -1
  44. package/dist/src/nav-bar/NavItemElement.d.ts.map +1 -1
  45. package/dist/src/nav-rail/NavRailElement.d.ts.map +1 -1
  46. package/dist/src/skeleton/SkeletonElement.d.ts +12 -6
  47. package/dist/src/skeleton/SkeletonElement.d.ts.map +1 -1
  48. package/dist/src/slider/SliderElement.d.ts.map +1 -1
  49. package/package.json +1 -1
package/dist/all.js CHANGED
@@ -4792,6 +4792,7 @@ let M3eCollapsibleElement = class M3eCollapsibleElement extends AttachInternals(
4792
4792
  /** @inheritdoc */
4793
4793
  update(changedProperties) {
4794
4794
  super.update(changedProperties);
4795
+ const noAnimate = this.noAnimate || changedProperties.has("orientation") && !changedProperties.has("open");
4795
4796
  addCustomState(this, "--no-animate");
4796
4797
  if (!__classPrivateFieldGet(this, _M3eCollapsibleElement_slotChanged, "f")) {
4797
4798
  if (this.open) {
@@ -4804,9 +4805,9 @@ let M3eCollapsibleElement = class M3eCollapsibleElement extends AttachInternals(
4804
4805
  this.toggleAttribute("inert", !this.open);
4805
4806
  if (this.open) {
4806
4807
  __classPrivateFieldSet(this, _M3eCollapsibleElement_hasOpened, true, "f");
4807
- if (!(prefersReducedMotion() || this.noAnimate)) {
4808
+ if (!(noAnimate || prefersReducedMotion())) {
4808
4809
  __classPrivateFieldGet(this, _M3eCollapsibleElement_instances, "m", _M3eCollapsibleElement_autoSize).call(this);
4809
- setCustomState(this, "--overflows", this.orientation === "vertical" ? this.clientHeight < this.scrollHeight : this.clientWidth < this.scrollWidth);
4810
+ setCustomState(this, "--overflows", this.orientation === "vertical" ? this.clientHeight < this.scrollHeight : this.orientation === "horizontal" ? this.clientWidth < this.scrollWidth : this.clientHeight < this.scrollHeight || this.clientWidth < this.scrollWidth);
4810
4811
  __classPrivateFieldGet(this, _M3eCollapsibleElement_instances, "m", _M3eCollapsibleElement_clearSize).call(this);
4811
4812
  }
4812
4813
  deleteCustomState(this, "--closing");
@@ -4815,7 +4816,7 @@ let M3eCollapsibleElement = class M3eCollapsibleElement extends AttachInternals(
4815
4816
  __classPrivateFieldGet(this, _M3eCollapsibleElement_instances, "m", _M3eCollapsibleElement_clearSize).call(this);
4816
4817
  deleteCustomState(this, "--no-animate");
4817
4818
  __classPrivateFieldGet(this, _M3eCollapsibleElement_instances, "m", _M3eCollapsibleElement_actualSize).call(this);
4818
- if (prefersReducedMotion() || this.noAnimate) {
4819
+ if (noAnimate || prefersReducedMotion()) {
4819
4820
  __classPrivateFieldGet(this, _M3eCollapsibleElement_instances, "m", _M3eCollapsibleElement_autoSize).call(this);
4820
4821
  deleteCustomState(this, "--opening");
4821
4822
  this.dispatchEvent(new Event("opened"));
@@ -4838,7 +4839,7 @@ let M3eCollapsibleElement = class M3eCollapsibleElement extends AttachInternals(
4838
4839
  if (__classPrivateFieldGet(this, _M3eCollapsibleElement_hasOpened, "f")) {
4839
4840
  deleteCustomState(this, "--no-animate");
4840
4841
  }
4841
- if (prefersReducedMotion() || this.noAnimate) {
4842
+ if (noAnimate || prefersReducedMotion()) {
4842
4843
  __classPrivateFieldGet(this, _M3eCollapsibleElement_instances, "m", _M3eCollapsibleElement_clearSize).call(this);
4843
4844
  deleteCustomState(this, "--closing");
4844
4845
  this.dispatchEvent(new Event("closed"));
@@ -4869,16 +4870,43 @@ _M3eCollapsibleElement_handleSlotChange = function _M3eCollapsibleElement_handle
4869
4870
  __classPrivateFieldSet(this, _M3eCollapsibleElement_slotChanged, true, "f");
4870
4871
  };
4871
4872
  _M3eCollapsibleElement_autoSize = function _M3eCollapsibleElement_autoSize() {
4872
- this.style[this.orientation === "vertical" ? "height" : "width"] = "auto";
4873
+ switch (this.orientation) {
4874
+ case "vertical":
4875
+ this.style.height = "auto";
4876
+ break;
4877
+ case "horizontal":
4878
+ this.style.width = "auto";
4879
+ break;
4880
+ case "both":
4881
+ this.style.height = this.style.width = "auto";
4882
+ break;
4883
+ }
4873
4884
  };
4874
4885
  _M3eCollapsibleElement_clearSize = function _M3eCollapsibleElement_clearSize() {
4875
- this.style[this.orientation === "vertical" ? "height" : "width"] = "";
4886
+ switch (this.orientation) {
4887
+ case "vertical":
4888
+ this.style.height = "";
4889
+ break;
4890
+ case "horizontal":
4891
+ this.style.width = "";
4892
+ break;
4893
+ case "both":
4894
+ this.style.height = this.style.width = "";
4895
+ break;
4896
+ }
4876
4897
  };
4877
4898
  _M3eCollapsibleElement_actualSize = function _M3eCollapsibleElement_actualSize() {
4878
- if (this.orientation === "vertical") {
4879
- this.style.height = `${this.scrollHeight}px`;
4880
- } else {
4881
- this.style.width = `${this.scrollWidth}px`;
4899
+ switch (this.orientation) {
4900
+ case "vertical":
4901
+ this.style.height = `${this.scrollHeight}px`;
4902
+ break;
4903
+ case "horizontal":
4904
+ this.style.width = `${this.scrollWidth}px`;
4905
+ break;
4906
+ case "both":
4907
+ this.style.height = `${this.scrollHeight}px`;
4908
+ this.style.width = `${this.scrollWidth}px`;
4909
+ break;
4882
4910
  }
4883
4911
  };
4884
4912
  /** The styles of the element. */
@@ -4896,7 +4924,14 @@ M3eCollapsibleElement.styles = i$4`:host { display: block; overflow: hidden; } :
4896
4924
  padding-left var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
4897
4925
  ${DesignToken.motion.easing.standard},
4898
4926
  padding-right var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
4899
- ${DesignToken.motion.easing.standard}`)}; } :host(:not(:is(:state(--closing), :--closing)):not([open])) { visibility: hidden; } :host([orientation="vertical"]:not([open])) { min-height: unset !important; padding-top: 0px !important; padding-bottom: 0px !important; } :host([orientation="horizontal"]:not([open])) { min-width: unset !important; padding-left: 0px !important; padding-right: 0px !important; } :host([no-animate]), :host(:is(:state(--no-animate), :--no-animate)) { transition-duration: 0ms; } :host([orientation="vertical"]:is(:state(--opening), :--opening)), :host([orientation="vertical"]:is(:state(--closing), :--closing)) { overflow-y: hidden !important; } :host([orientation="horizontal"]:is(:state(--opening), :--opening)), :host([orientation="horizontal"]:is(:state(--closing), :--closing)) { overflow-x: hidden !important; } :host(:is(:state(--overflows), :--overflows)) { scrollbar-gutter: stable; } ::slotted(*) { --m3e-collapsible-animation-duration: initial; } @media (prefers-reduced-motion) { :host { transition: none; } }`;
4927
+ ${DesignToken.motion.easing.standard}`)}; } :host([orientation="both"]) { height: 0px; width: 0px; transition: ${r$4(`visibility var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
4928
+ ${DesignToken.motion.easing.standard},
4929
+ width var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
4930
+ ${DesignToken.motion.easing.standard},
4931
+ height var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
4932
+ ${DesignToken.motion.easing.standard},
4933
+ padding var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
4934
+ ${DesignToken.motion.easing.standard}`)}; } :host(:not(:is(:state(--closing), :--closing)):not([open])) { visibility: hidden; } :host([orientation="vertical"]:not([open])) { min-height: unset !important; padding-top: 0px !important; padding-bottom: 0px !important; } :host([orientation="horizontal"]:not([open])) { min-width: unset !important; padding-left: 0px !important; padding-right: 0px !important; } :host([orientation="both"]:not([open])) { min-height: unset !important; min-width: unset !important; padding: 0px !important; } :host([no-animate]), :host(:is(:state(--no-animate), :--no-animate)) { transition-duration: 0ms; } :host([orientation="vertical"]:is(:state(--opening), :--opening)), :host([orientation="vertical"]:is(:state(--closing), :--closing)) { overflow-y: hidden !important; } :host([orientation="horizontal"]:is(:state(--opening), :--opening)), :host([orientation="horizontal"]:is(:state(--closing), :--closing)) { overflow-x: hidden !important; } :host([orientation="both"]:is(:state(--opening), :--opening)), :host([orientation="both"]:is(:state(--closing), :--closing)) { overflow-y: hidden !important; overflow-x: hidden !important; } :host(:is(:state(--overflows), :--overflows)) { scrollbar-gutter: stable; } ::slotted(*) { --m3e-collapsible-animation-duration: initial; } @media (prefers-reduced-motion) { :host { transition: none; } }`;
4900
4935
  __decorate([n({
4901
4936
  type: Boolean,
4902
4937
  reflect: true
@@ -18849,8 +18884,6 @@ let M3eDatepickerElement = class M3eDatepickerElement extends SuppressInitialAni
18849
18884
  calendar.rangeEnd = this.rangeEnd;
18850
18885
  calendar.specialDates = this.specialDates;
18851
18886
  calendar.blackoutDates = this.blackoutDates;
18852
- // Ensure the active view is reset
18853
- calendar.resetActiveView();
18854
18887
  if (calendar.isUpdatePending) {
18855
18888
  await calendar.updateComplete;
18856
18889
  }
@@ -22377,7 +22410,7 @@ _M3eFormFieldElement_handleErrorChange = function _M3eFormFieldElement_handleErr
22377
22410
  }
22378
22411
  };
22379
22412
  (() => {
22380
- registerStyleSheet(i$4`m3e-form-field input::placeholder, m3e-form-field textarea::placeholder { user-select: none; color: currentColor; transition: opacity ${DesignToken.motion.duration.extraLong1}; } m3e-form-field[float-label="auto"]:not(:is(:state(--float-label), :--float-label)):is( :state(--with-label), :--with-label ) input::placeholder, m3e-form-field[float-label="auto"]:not(:is(:state(--float-label), :--float-label)):is( :state(--with-label), :--with-label ) textarea::placeholder { opacity: 0; transition: opacity 0s; } m3e-form-field[variant="outlined"] m3e-input-chip-set { margin-block: calc(calc(3.5rem + ${DesignToken.density.calc(-3)}) / 4); } @media (prefers-reduced-motion) { m3e-form-field input::placeholder, m3e-form-field textarea::placeholder { transition: none !important; } }`);
22413
+ registerStyleSheet(i$4`m3e-form-field input::placeholder, m3e-form-field textarea::placeholder { user-select: none; color: currentColor; transition: opacity ${DesignToken.motion.duration.extraLong1}; } m3e-form-field[float-label="auto"]:not(:is(:state(--float-label), :--float-label)):is( :state(--with-label), :--with-label ) input::placeholder, m3e-form-field[float-label="auto"]:not(:is(:state(--float-label), :--float-label)):is( :state(--with-label), :--with-label ) textarea::placeholder { opacity: 0; transition: opacity 0s; } m3e-form-field[variant="outlined"] m3e-input-chip-set { margin-block: calc(calc(3.5rem + ${DesignToken.density.calc(-3)}) / 4); } m3e-form-field[variant="outlined"] textarea { margin-block: calc( var(--m3e-form-field-label-line-height, var(--md-sys-typescale-body-small-line-height, 1rem)) / 2 ); } @media (prefers-reduced-motion) { m3e-form-field input::placeholder, m3e-form-field textarea::placeholder { transition: none !important; } }`);
22381
22414
  })();
22382
22415
  /** The styles of the element. */
22383
22416
  M3eFormFieldElement.styles = i$4`:host { display: inline-flex; flex-direction: column; vertical-align: middle; font-size: var(--m3e-form-field-font-size, ${DesignToken.typescale.standard.body.large.fontSize}); font-weight: var(--m3e-form-field-font-weight, ${DesignToken.typescale.standard.body.large.fontWeight}); line-height: var(--m3e-form-field-line-height, ${DesignToken.typescale.standard.body.large.lineHeight}); letter-spacing: var(--m3e-form-field-tracking, ${DesignToken.typescale.standard.body.large.tracking}); width: var(--m3e-form-field-width, 14.5rem); color: var(--_form-field-color); } :host(:not(:is(:state(--disabled), :--disabled))) .base { cursor: var(--_form-field-cursor); } .base { display: flex; align-items: center; position: relative; min-height: calc(3.5rem + ${DesignToken.density.calc(-3)}); --_form-field-label-font-size: var( --m3e-form-field-label-font-size, ${DesignToken.typescale.standard.body.small.fontSize} ); --_form-field-label-line-height: var( --m3e-form-field-label-line-height, ${DesignToken.typescale.standard.body.small.lineHeight} ); } .content { display: flex; align-items: center; position: relative; flex: 1 1 auto; min-width: 0; min-height: var(--m3e-form-field-icon-size, 1.5rem); } .prefix, .suffix { display: flex; align-items: center; position: relative; user-select: none; flex: none; font-size: var(--m3e-form-field-icon-size, 1.5rem); } .prefix-text, .suffix-text { opacity: 1; transition: opacity ${DesignToken.motion.duration.extraLong1}; user-select: none; flex: none; } .input { display: inline-flex; flex-wrap: wrap; flex: 1 1 auto; min-width: 0; } .label { display: flex; position: absolute; pointer-events: none; user-select: none; top: 0; left: 0; right: 0; font-size: var(--m3e-form-field-label-font-size, ${DesignToken.typescale.standard.body.small.fontSize}); font-weight: var(--m3e-form-field-label-font-weight, ${DesignToken.typescale.standard.body.small.fontWeight}); line-height: var(--m3e-form-field-label-line-height, ${DesignToken.typescale.standard.body.small.lineHeight}); letter-spacing: var(--m3e-form-field-label-tracking, ${DesignToken.typescale.standard.body.small.tracking}); color: var(--_form-field-label-color, inherit); transition: ${r$4(`top ${DesignToken.motion.duration.short4},
@@ -25188,6 +25221,8 @@ var _M3eNavBarElement_instances, _M3eNavBarElement_breakpointUnobserve, _M3eNavB
25188
25221
  * @cssprop --m3e-nav-bar-height - Height of the navigation bar.
25189
25222
  * @cssprop --m3e-nav-bar-container-color - Background color of the navigation bar container.
25190
25223
  * @cssprop --m3e-nav-bar-vertical-item-width - Minimum width of vertical nav items.
25224
+ * @cssprop --m3e-nav-bar-horizontal-nav-item-leading-space - Leading space for horizontal nav items.
25225
+ * @cssprop --m3e-nav-bar-horizontal-nav-item-trailing-space - Trailing space for horizontal nav items.
25191
25226
  */
25192
25227
  let M3eNavBarElement = class M3eNavBarElement extends ReconnectedCallback(AttachInternals(Role(i$1, "navigation"))) {
25193
25228
  constructor() {
@@ -25282,7 +25317,7 @@ _M3eNavBarElement_handleChange = function _M3eNavBarElement_handleChange(e) {
25282
25317
  }));
25283
25318
  };
25284
25319
  /** The styles of the element. */
25285
- M3eNavBarElement.styles = i$4`:host { display: block; overflow-x: auto; overflow-y: hidden; scrollbar-width: ${DesignToken.scrollbar.thinWidth}; scrollbar-color: ${DesignToken.scrollbar.color}; min-height: var(--m3e-nav-bar-height, 4rem); } .base { contain: layout style; display: flex; align-items: stretch; justify-content: center; box-sizing: border-box; min-height: inherit; height: inherit; width: 100%; background-color: var(--m3e-nav-bar-container-color, ${DesignToken.color.surfaceContainer}); --_nav-item-min-width: var(--m3e-nav-bar-vertical-item-width, 7rem); }`;
25320
+ M3eNavBarElement.styles = i$4`:host { display: block; overflow-x: auto; overflow-y: hidden; scrollbar-width: ${DesignToken.scrollbar.thinWidth}; scrollbar-color: ${DesignToken.scrollbar.color}; min-height: var(--m3e-nav-bar-height, 4rem); } .base { contain: layout style; display: flex; align-items: stretch; justify-content: center; box-sizing: border-box; min-height: inherit; height: inherit; width: 100%; background-color: var(--m3e-nav-bar-container-color, ${DesignToken.color.surfaceContainer}); --_vertical-nav-item-min-width: var(--m3e-nav-bar-vertical-item-width, 7rem); --_horizontal-nav-item-leading-space: var(--m3e-nav-bar-horizontal-nav-item-leading-space, 1rem); --_horizontal-nav-item-trailing-space: var(--m3e-nav-bar-horizontal-nav-item-trailing-space, 1rem); }`;
25286
25321
  __decorate([r()], M3eNavBarElement.prototype, "_mode", void 0);
25287
25322
  __decorate([n({
25288
25323
  reflect: true
@@ -25470,7 +25505,7 @@ _M3eNavItemElement_initResizeObserver = function _M3eNavItemElement_initResizeOb
25470
25505
  }
25471
25506
  };
25472
25507
  /** The styles of the element. */
25473
- M3eNavItemElement.styles = i$4`:host { display: inline-block; vertical-align: middle; position: relative; outline: none; user-select: none; flex: 1; font-size: var(--m3e-nav-item-label-text-font-size, ${DesignToken.typescale.standard.label.medium.fontSize}); font-weight: var( --m3e-nav-item-label-text-font-weight, ${DesignToken.typescale.standard.label.medium.fontWeight} ); line-height: var( --m3e-nav-item-label-text-line-height, ${DesignToken.typescale.standard.label.medium.lineHeight} ); letter-spacing: var(--m3e-nav-item-label-text-tracking, ${DesignToken.typescale.standard.label.medium.tracking}); border-radius: var(--m3e-nav-item-shape, ${DesignToken.shape.corner.full}); min-width: var(--_nav-item-min-width); align-self: var(--_nav-item-align-self); -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } :host([orientation="horizontal"]) { max-width: fit-content; } :host(:not(:disabled):not([disabled-interactive])) { cursor: pointer; } :host([disabled-interactive]) { cursor: not-allowed; } .outer { height: 100%; } .outer, .inner { display: flex; align-items: center; justify-content: var(--_nav-item-justify-content, center); position: relative; border-radius: inherit; } .icon-wrapper { position: relative; flex: none; } .base { contain: layout style; justify-content: unset; box-sizing: border-box; vertical-align: middle; display: inline-flex; align-items: center; justify-content: center; position: relative; width: 100%; } :host(:not(:is(:state(--no-animate), :--no-animate))) .base { transition: ${r$4(`margin-top ${DesignToken.motion.duration.short1} ${DesignToken.motion.easing.standard}`)}; } .icon { position: absolute; } .label { vertical-align: middle; } :host([orientation="horizontal"]) .label { white-space: nowrap; } ::slotted([slot="icon"]), ::slotted([slot="selected-icon"]) { width: 1em; font-size: var(--m3e-nav-item-icon-size, 1.5rem) !important; } :host(:not(:is(:state(--no-animate), :--no-animate))) .state-layer, :host(:not(:is(:state(--no-animate), :--no-animate))) .ripple { transition: ${r$4(`height ${DesignToken.motion.duration.short1} ${DesignToken.motion.easing.standard}`)}; } :host(:not([selected])) slot[name="selected-icon"], :host(:not(:is(:state(--with-selected-icon), :--with-selected-icon))) slot[name="selected-icon"], :host([selected]:is(:state(--with-selected-icon), :--with-selected-icon)) slot[name="icon"] { display: none; } :host(:not([selected]):not(:disabled):not([disabled-interactive])) .outer { --m3e-state-layer-hover-color: var( --m3e-nav-item-inactive-hover-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); --m3e-state-layer-focus-color: var( --m3e-nav-item-inactive-focus-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); --m3e-ripple-color: var( --m3e-nav-item-inactive-pressed-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); } :host(:not([selected]):not(:disabled):not([disabled-interactive])) .label { color: var(--m3e-nav-item-inactive-label-text-color, ${DesignToken.color.onSurfaceVariant}); } :host(:not([selected]):not(:disabled):not([disabled-interactive])) .icon { color: var(--m3e-nav-item-inactive-icon-color, ${DesignToken.color.onSurfaceVariant}); } :host([selected]:not(:disabled):not([disabled-interactive])) .outer { --m3e-state-layer-hover-color: var( --m3e-nav-item-active-hover-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); --m3e-state-layer-focus-color: var( --m3e-nav-item-active-focus-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); --m3e-ripple-color: var( --m3e-nav-item-active-pressed-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); } :host([selected]:not(:disabled):not([disabled-interactive]):not([orientation="horizontal"])) .label { color: var(--m3e-nav-item-active-label-text-color, ${DesignToken.color.secondary}); } :host([selected]:not(:disabled):not([disabled-interactive])) .state-layer { background-color: var(--m3e-nav-item-active-container-color, ${DesignToken.color.secondaryContainer}); } :host([selected]:not(:disabled):not([disabled-interactive])[orientation="horizontal"]) .label, :host([selected]:not(:disabled):not([disabled-interactive])) .icon { color: var(--m3e-nav-item-active-icon-color, ${DesignToken.color.onSecondaryContainer}); } :host([orientation="vertical"]) .outer { align-self: stretch; align-items: flex-start; } :host([orientation="vertical"]) .label { text-align: center; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-clamp: 2; } :host([orientation="vertical"]) .base { flex-direction: column; row-gap: var(--m3e-nav-item-spacing, 0.25rem); } :host([orientation="horizongal"]) .base { margin-top: 0; } :host([orientation="vertical"]) .base { margin-top: var(--m3e-vertical-nav-item-active-indicator-margin, 0.375rem); margin-bottom: var(--m3e-vertical-nav-item-active-indicator-margin, 0.375rem); } :host([orientation="vertical"]) .state-layer, :host([orientation="vertical"]) .ripple { top: var(--m3e-vertical-nav-item-active-indicator-margin, 0.375rem); bottom: unset; } :host([orientation="vertical"]) .state-layer, :host([orientation="vertical"]) .ripple, :host([orientation="vertical"]) .icon-wrapper { width: var(--m3e-vertical-nav-item-active-indicator-width, 3.5rem); } :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .state-layer, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .ripple { animation: collapse ${DesignToken.motion.duration.medium1}; } @keyframes collapse { from { width: var(--_expanded-width, var(--m3e-vertical-nav-item-active-indicator-width, 3.5rem)); } to { width: var(--m3e-vertical-nav-item-active-indicator-width, 3.5rem); } } :host([orientation="vertical"]) .state-layer, :host([orientation="vertical"]) .ripple, :host([orientation="vertical"]) .icon-wrapper { height: var(--m3e-vertical-nav-item-active-indicator-height, 2rem); } :host([orientation="vertical"]) .icon { top: calc( calc(var(--m3e-vertical-nav-item-active-indicator-height, 2rem) / 2) - calc( var(--m3e-nav-item-icon-size, 1.5rem) / 2 ) ); left: calc( calc(var(--m3e-vertical-nav-item-active-indicator-width, 3.5rem) / 2) - calc( var(--m3e-nav-item-icon-size, 1.5rem) / 2 ) ); } :host([orientation="vertical"]) .focus-ring { border-radius: var(--m3e-nav-item-focus-ring-shape, ${DesignToken.shape.corner.medium}); } :host([orientation="horizontal"]) .icon-wrapper { width: var(--m3e-nav-item-icon-size, 1.5rem); height: var(--m3e-nav-item-icon-size, 1.5rem); } :host([orientation="horizontal"]) .base { padding: var(--m3e-horizontal-nav-item-padding, 1rem); } :host([orientation="horizontal"]) .label { flex: 1 1 auto; } :host([orientation="horizontal"]) .base { column-gap: var(--m3e-nav-item-spacing, 0.25rem); } :host([orientation="horizontal"]) .state-layer, :host([orientation="horizontal"]) .ripple, :host([orientation="horizontal"]) .inner { height: var(--m3e-horizontal-nav-item-active-indicator-height, 2.5rem); } :host([orientation="horizontal"]) .inner { width: fit-content; } .state-layer, .ripple { margin-inline: auto; } :host(:is(:state(--first), :--first):not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .icon-wrapper, :host(:not(:is(:state(--first), :--first)):not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .icon-wrapper { animation: ${r$4(`slide-down ${DesignToken.motion.duration.short2} ${DesignToken.motion.easing.standard}`)}; } :host(:not(:is(:state(--first), :--first)):not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .icon-wrapper, :host(:is(:state(--first), :--first):not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .icon-wrapper { animation: ${r$4(`slide-up ${DesignToken.motion.duration.short2} ${DesignToken.motion.easing.standard}`)}; } @keyframes slide-down { from { transform: translateY(-4px); } to { transform: translateY(0); } } @keyframes slide-up { from { transform: translateY(4px); } to { transform: translateY(0); } } :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .label { animation: horizontal-fade-in ${DesignToken.motion.duration.medium1}; } :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .label { animation: vertical-fade-in ${DesignToken.motion.duration.medium1}; } @keyframes horizontal-fade-in { from { opacity: 0; } to { opacity: 1; } } @keyframes vertical-fade-in { from { opacity: 0; } to { opacity: 1; } } :host(:disabled) .label, :host([disabled-interactive]) .label { color: color-mix( in srgb, var(--m3e-nav-item-disabled-label-text-color, ${DesignToken.color.onSurface}) var(--m3e-nav-item-disabled-label-text-opacity, 38%), transparent ); } :host(:disabled) .icon, :host([disabled-interactive]) .icon { color: color-mix( in srgb, var(--m3e-nav-item-disabled-icon-color, ${DesignToken.color.onSurface}) var(--m3e-nav-item-disabled-icon-opacity, 38%), transparent ); } a { all: unset; display: block; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; z-index: 1; } @media (prefers-reduced-motion) { :host(:is(:state(--first), :--first):not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .icon-wrapper, :host(:not(:is(:state(--first), :--first)):not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .icon-wrapper, :host( :not(:is(:state(--first), :--first)):not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"] ) .icon-wrapper, :host(:is(:state(--first), :--first):not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .icon-wrapper, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .state-layer, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .ripple, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .label, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .label { animation: none; } :host(:not(:is(:state(--no-animate), :--no-animate))) .state-layer, :host(:not(:is(:state(--no-animate), :--no-animate))) .ripple, :host(:not(:is(:state(--no-animate), :--no-animate))) .base { transition: none; } } @media (forced-colors: active) { :host(:disabled) .label, :host([disabled-interactive]) .label, :host(:disabled) .icon, :host([disabled-interactive]) .icon { color: GrayText; } :host(:not([selected]):not(:disabled):not([disabled-interactive])) .label, :host(:not([selected]):not(:disabled):not([disabled-interactive])) .icon { color: ButtonText; } :host([selected]:not(:disabled):not([disabled-interactive])) .state-layer { background-color: ButtonText; } :host([orientation="vertical"][selected]:not(:disabled):not([disabled-interactive])) .label { color: ButtonText; } :host([orientation="horizontal"][selected]:not(:disabled):not([disabled-interactive])) .label, :host([selected]:not(:disabled):not([disabled-interactive])) .icon { forced-color-adjust: none; color: ButtonFace; } }`;
25508
+ M3eNavItemElement.styles = i$4`:host { display: inline-block; vertical-align: middle; position: relative; outline: none; user-select: none; flex: 1; font-size: var(--m3e-nav-item-label-text-font-size, ${DesignToken.typescale.standard.label.medium.fontSize}); font-weight: var( --m3e-nav-item-label-text-font-weight, ${DesignToken.typescale.standard.label.medium.fontWeight} ); line-height: var( --m3e-nav-item-label-text-line-height, ${DesignToken.typescale.standard.label.medium.lineHeight} ); letter-spacing: var(--m3e-nav-item-label-text-tracking, ${DesignToken.typescale.standard.label.medium.tracking}); border-radius: var(--m3e-nav-item-shape, ${DesignToken.shape.corner.full}); align-self: var(--_nav-item-align-self); -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } :host([orientation="vertical"]) { min-width: var(--_vertical-nav-item-min-width); width: var(--_vertical-nav-item-width); margin-inline: var(--_vertical-nav-item-margin-inline); } :host([orientation="horizontal"]) { max-width: fit-content; } :host([orientation="horizontal"]) .outer { margin-inline-start: var(--_horizontal-nav-item-leading-space); margin-inline-end: var(--_horizontal-nav-item-trailing-space); } :host(:not(:disabled):not([disabled-interactive])) { cursor: pointer; } :host([disabled-interactive]) { cursor: not-allowed; } .outer { height: 100%; } .outer, .inner { display: flex; align-items: center; justify-content: var(--_nav-item-justify-content, center); position: relative; border-radius: inherit; } .icon-wrapper { position: relative; flex: none; } .base { contain: layout style; justify-content: unset; box-sizing: border-box; vertical-align: middle; display: inline-flex; align-items: center; justify-content: center; position: relative; width: 100%; } :host(:not(:is(:state(--no-animate), :--no-animate))) .base { transition: ${r$4(`margin-top ${DesignToken.motion.duration.short1} ${DesignToken.motion.easing.standard}`)}; } .icon { position: absolute; } .label { vertical-align: middle; } :host([orientation="horizontal"]) .label { white-space: nowrap; } ::slotted([slot="icon"]), ::slotted([slot="selected-icon"]) { width: 1em; font-size: var(--m3e-nav-item-icon-size, 1.5rem) !important; } :host(:not(:is(:state(--no-animate), :--no-animate))) .state-layer, :host(:not(:is(:state(--no-animate), :--no-animate))) .ripple { transition: ${r$4(`height ${DesignToken.motion.duration.short1} ${DesignToken.motion.easing.standard}`)}; } :host(:not([selected])) slot[name="selected-icon"], :host(:not(:is(:state(--with-selected-icon), :--with-selected-icon))) slot[name="selected-icon"], :host([selected]:is(:state(--with-selected-icon), :--with-selected-icon)) slot[name="icon"] { display: none; } :host(:not([selected]):not(:disabled):not([disabled-interactive])) .outer { --m3e-state-layer-hover-color: var( --m3e-nav-item-inactive-hover-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); --m3e-state-layer-focus-color: var( --m3e-nav-item-inactive-focus-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); --m3e-ripple-color: var( --m3e-nav-item-inactive-pressed-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); } :host(:not([selected]):not(:disabled):not([disabled-interactive])) .label { color: var(--m3e-nav-item-inactive-label-text-color, ${DesignToken.color.onSurfaceVariant}); } :host(:not([selected]):not(:disabled):not([disabled-interactive])) .icon { color: var(--m3e-nav-item-inactive-icon-color, ${DesignToken.color.onSurfaceVariant}); } :host([selected]:not(:disabled):not([disabled-interactive])) .outer { --m3e-state-layer-hover-color: var( --m3e-nav-item-active-hover-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); --m3e-state-layer-focus-color: var( --m3e-nav-item-active-focus-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); --m3e-ripple-color: var( --m3e-nav-item-active-pressed-state-layer-color, ${DesignToken.color.onSecondaryContainer} ); } :host([selected]:not(:disabled):not([disabled-interactive]):not([orientation="horizontal"])) .label { color: var(--m3e-nav-item-active-label-text-color, ${DesignToken.color.secondary}); } :host([selected]:not(:disabled):not([disabled-interactive])) .state-layer { background-color: var(--m3e-nav-item-active-container-color, ${DesignToken.color.secondaryContainer}); } :host([selected]:not(:disabled):not([disabled-interactive])[orientation="horizontal"]) .label, :host([selected]:not(:disabled):not([disabled-interactive])) .icon { color: var(--m3e-nav-item-active-icon-color, ${DesignToken.color.onSecondaryContainer}); } :host([orientation="vertical"]) .outer { align-self: stretch; align-items: flex-start; } :host([orientation="vertical"]) .label { text-align: center; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-clamp: 2; } :host([orientation="vertical"]) .base { flex-direction: column; row-gap: var(--m3e-nav-item-spacing, 0.25rem); } :host([orientation="horizongal"]) .base { margin-top: 0; } :host([orientation="vertical"]) .base { margin-top: var(--m3e-vertical-nav-item-active-indicator-margin, 0.375rem); margin-bottom: var(--m3e-vertical-nav-item-active-indicator-margin, 0.375rem); } :host([orientation="vertical"]) .state-layer, :host([orientation="vertical"]) .ripple { top: var(--m3e-vertical-nav-item-active-indicator-margin, 0.375rem); inset-inline-start: var(--_vertical-nav-item-inset-start); right: unset; bottom: unset; } :host([orientation="vertical"]) .state-layer, :host([orientation="vertical"]) .ripple, :host([orientation="vertical"]) .icon-wrapper { min-width: var(--m3e-vertical-nav-item-active-indicator-width, 3.5rem); } :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .state-layer, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .ripple { animation: collapse ${DesignToken.motion.duration.medium1}; } @keyframes collapse { from { width: var(--_expanded-width, var(--m3e-vertical-nav-item-active-indicator-width, 3.5rem)); } to { width: var(--m3e-vertical-nav-item-active-indicator-width, 3.5rem); } } :host([orientation="vertical"]) .state-layer, :host([orientation="vertical"]) .ripple, :host([orientation="vertical"]) .icon-wrapper { height: var(--m3e-vertical-nav-item-active-indicator-height, 2rem); } :host([orientation="vertical"]) .icon { top: calc( calc(var(--m3e-vertical-nav-item-active-indicator-height, 2rem) / 2) - calc( var(--m3e-nav-item-icon-size, 1.5rem) / 2 ) ); left: calc( calc(var(--m3e-vertical-nav-item-active-indicator-width, 3.5rem) / 2) - calc( var(--m3e-nav-item-icon-size, 1.5rem) / 2 ) ); } :host([orientation="vertical"]) .focus-ring { border-radius: var(--m3e-nav-item-focus-ring-shape, ${DesignToken.shape.corner.medium}); } :host([orientation="horizontal"]) .icon-wrapper { width: var(--m3e-nav-item-icon-size, 1.5rem); height: var(--m3e-nav-item-icon-size, 1.5rem); } :host([orientation="horizontal"]) .base { padding: var(--m3e-horizontal-nav-item-padding, 1rem); } :host([orientation="horizontal"]) .label { flex: 1 1 auto; } :host([orientation="horizontal"]) .base { column-gap: var(--m3e-nav-item-spacing, 0.25rem); } :host([orientation="horizontal"]) .state-layer, :host([orientation="horizontal"]) .ripple, :host([orientation="horizontal"]) .inner { height: var(--m3e-horizontal-nav-item-active-indicator-height, 2.5rem); } :host([orientation="horizontal"]) .inner { width: fit-content; } .state-layer, .ripple { margin-inline: auto; } :host(:is(:state(--first), :--first):not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .icon-wrapper, :host(:not(:is(:state(--first), :--first)):not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .icon-wrapper { animation: ${r$4(`slide-down ${DesignToken.motion.duration.short2} ${DesignToken.motion.easing.standard}`)}; } :host(:not(:is(:state(--first), :--first)):not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .icon-wrapper, :host(:is(:state(--first), :--first):not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .icon-wrapper { animation: ${r$4(`slide-up ${DesignToken.motion.duration.short2} ${DesignToken.motion.easing.standard}`)}; } @keyframes slide-down { from { transform: translateY(-4px); } to { transform: translateY(0); } } @keyframes slide-up { from { transform: translateY(4px); } to { transform: translateY(0); } } :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .label { animation: horizontal-fade-in ${DesignToken.motion.duration.medium1}; } :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .label { animation: vertical-fade-in ${DesignToken.motion.duration.medium1}; } @keyframes horizontal-fade-in { from { opacity: 0; } to { opacity: 1; } } @keyframes vertical-fade-in { from { opacity: 0; } to { opacity: 1; } } :host(:disabled) .label, :host([disabled-interactive]) .label { color: color-mix( in srgb, var(--m3e-nav-item-disabled-label-text-color, ${DesignToken.color.onSurface}) var(--m3e-nav-item-disabled-label-text-opacity, 38%), transparent ); } :host(:disabled) .icon, :host([disabled-interactive]) .icon { color: color-mix( in srgb, var(--m3e-nav-item-disabled-icon-color, ${DesignToken.color.onSurface}) var(--m3e-nav-item-disabled-icon-opacity, 38%), transparent ); } a { all: unset; display: block; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; z-index: 1; } @media (prefers-reduced-motion) { :host(:is(:state(--first), :--first):not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .icon-wrapper, :host(:not(:is(:state(--first), :--first)):not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .icon-wrapper, :host( :not(:is(:state(--first), :--first)):not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"] ) .icon-wrapper, :host(:is(:state(--first), :--first):not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .icon-wrapper, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .state-layer, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .ripple, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="horizontal"]) .label, :host(:not(:is(:state(--no-animate), :--no-animate))[orientation="vertical"]) .label { animation: none; } :host(:not(:is(:state(--no-animate), :--no-animate))) .state-layer, :host(:not(:is(:state(--no-animate), :--no-animate))) .ripple, :host(:not(:is(:state(--no-animate), :--no-animate))) .base { transition: none; } } @media (forced-colors: active) { :host(:disabled) .label, :host([disabled-interactive]) .label, :host(:disabled) .icon, :host([disabled-interactive]) .icon { color: GrayText; } :host(:not([selected]):not(:disabled):not([disabled-interactive])) .label, :host(:not([selected]):not(:disabled):not([disabled-interactive])) .icon { color: ButtonText; } :host([selected]:not(:disabled):not([disabled-interactive])) .state-layer { background-color: ButtonText; } :host([orientation="vertical"][selected]:not(:disabled):not([disabled-interactive])) .label { color: ButtonText; } :host([orientation="horizontal"][selected]:not(:disabled):not([disabled-interactive])) .label, :host([selected]:not(:disabled):not([disabled-interactive])) .icon { forced-color-adjust: none; color: ButtonFace; } }`;
25474
25509
  __decorate([e$2(".focus-ring")], M3eNavItemElement.prototype, "_focusRing", void 0);
25475
25510
  __decorate([e$2(".state-layer")], M3eNavItemElement.prototype, "_stateLayer", void 0);
25476
25511
  __decorate([e$2(".ripple")], M3eNavItemElement.prototype, "_ripple", void 0);
@@ -26315,7 +26350,7 @@ _M3eNavRailElement_handleKeyDown = function _M3eNavRailElement_handleKeyDown(e)
26315
26350
  registerStyleSheet(i$4`m3e-nav-rail > m3e-icon-button, m3e-nav-rail > m3e-fab { margin-block-end: var(--m3e-nav-rail-button-item-space, 1rem); } m3e-nav-rail > m3e-icon-button { margin-inline-start: var(--m3e-nav-rail-icon-button-inset, 0.5rem); }`);
26316
26351
  })();
26317
26352
  /** The styles of the element. */
26318
- M3eNavRailElement.styles = i$4`:host { display: block; overflow-x: hidden; overflow-y: auto; scrollbar-width: ${DesignToken.scrollbar.thinWidth}; scrollbar-color: ${DesignToken.scrollbar.color}; } :host(:not(:is(:state(--no-animate), :--no-animate))) { transition: ${r$4(`width ${DesignToken.motion.duration.medium2} ${DesignToken.motion.easing.standard}`)}; } .base { contain: layout style; display: flex; width: inherit; flex-direction: column; align-items: flex-start; box-sizing: border-box; padding-block-start: var(--m3e-nav-rail-top-space, 2.75rem); padding-block-end: var(--m3e-nav-rail-bottom-space, 0.5rem); padding-inline: var(--m3e-nav-rail-inline-padding, 1.25rem); } :host(:is(:state(--compact), :--compact)) { width: var(--m3e-nav-rail-compact-width, 6rem); } :host(:not(:is(:state(--compact), :--compact))) { width: var(--m3e-nav-rail-expanded-width, 13.75rem); } :host(:not(:is(:state(--compact), :--compact))) { --m3e-horizontal-nav-item-active-indicator-height: var(--m3e-nav-rail-expanded-item-height, 3.5rem); --_nav-item-align-self: stretch; --_nav-item-justify-content: flex-start; } ::slotted(*) { flex: none; } ::slotted(m3e-fab) { --m3e-fab-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-disabled-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-focus-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-pressed-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-hover-container-elevation: ${DesignToken.elevation.level1}; --m3e-fab-lowered-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-lowered-disabled-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-lowered-focus-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-lowered-pressed-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-lowered-hover-container-elevation: ${DesignToken.elevation.level1}; } @media (prefers-reduced-motion) { :host(:not(:is(:state(--no-animate), :--no-animate))) { transition: none; } }`;
26353
+ M3eNavRailElement.styles = i$4`:host { display: block; overflow-x: hidden; overflow-y: auto; scrollbar-width: ${DesignToken.scrollbar.thinWidth}; scrollbar-color: ${DesignToken.scrollbar.color}; } :host(:not(:is(:state(--no-animate), :--no-animate))) { transition: ${r$4(`width ${DesignToken.motion.duration.medium2} ${DesignToken.motion.easing.standard}`)}; } .base { contain: layout style; display: flex; width: inherit; flex-direction: column; align-items: flex-start; box-sizing: border-box; padding-block-start: var(--m3e-nav-rail-top-space, 2.75rem); padding-block-end: var(--m3e-nav-rail-bottom-space, 0.5rem); padding-inline: var(--m3e-nav-rail-inline-padding, 1.25rem); } :host(:is(:state(--compact), :--compact)) { width: var(--m3e-nav-rail-compact-width, 6rem); } :host(:is(:state(--compact), :--compact)) .base { --_vertical-nav-item-width: var(--m3e-nav-rail-compact-width, 6rem); --_vertical-nav-item-margin-inline: calc(0px - var(--m3e-nav-rail-inline-padding, 1.25rem)); --_vertical-nav-item-inset-start: calc( 50% - calc(var(--m3e-vertical-nav-item-active-indicator-width, 3.5rem)) / 2 ); } :host(:not(:is(:state(--compact), :--compact))) { width: var(--m3e-nav-rail-expanded-width, 13.75rem); } :host(:not(:is(:state(--compact), :--compact))) { --m3e-horizontal-nav-item-active-indicator-height: var(--m3e-nav-rail-expanded-item-height, 3.5rem); --_nav-item-align-self: stretch; --_nav-item-justify-content: flex-start; } ::slotted(*) { flex: none; } ::slotted(m3e-fab) { --m3e-fab-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-disabled-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-focus-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-pressed-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-hover-container-elevation: ${DesignToken.elevation.level1}; --m3e-fab-lowered-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-lowered-disabled-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-lowered-focus-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-lowered-pressed-container-elevation: ${DesignToken.elevation.level0}; --m3e-fab-lowered-hover-container-elevation: ${DesignToken.elevation.level1}; } @media (prefers-reduced-motion) { :host(:not(:is(:state(--no-animate), :--no-animate))) { transition: none; } }`;
26319
26354
  M3eNavRailElement = __decorate([customElement("m3e-nav-rail")], M3eNavRailElement);
26320
26355
 
26321
26356
  var _M3eNavRailToggleElement_instances, _M3eNavRailToggleElement_mutationController, _M3eNavRailToggleElement_updateToggle;
@@ -29476,7 +29511,7 @@ __decorate([n({
29476
29511
  })], M3eShapeElement.prototype, "name", void 0);
29477
29512
  M3eShapeElement = __decorate([customElement("m3e-shape")], M3eShapeElement);
29478
29513
 
29479
- var _M3eSkeletonElement_instances, _M3eSkeletonElement_anchoringCleanupMap, _M3eSkeletonElement_handleSlotChange, _M3eSkeletonElement_clearShapes, _M3eSkeletonElement_createShapes, _M3eSkeletonElement_createShape, _M3eSkeletonElement_updateLoading, _M3eSkeletonElement_registerLoading, _M3eSkeletonElement_unregisterLoading;
29514
+ var _M3eSkeletonElement_instances, _M3eSkeletonElement_anchoringCleanupMap, _M3eSkeletonElement_animation, _M3eSkeletonElement_animationMode, _M3eSkeletonElement_handleSlotChange, _M3eSkeletonElement_clearShapes, _M3eSkeletonElement_createShapes, _M3eSkeletonElement_createShape, _M3eSkeletonElement_updateLoading, _M3eSkeletonElement_startMotion, _M3eSkeletonElement_stopMotion, _M3eSkeletonElement_syncMotionState;
29480
29515
  var M3eSkeletonElement_1;
29481
29516
  /**
29482
29517
  * A visual placeholder that mimics the layout of content while it's still loading.
@@ -29520,6 +29555,10 @@ let M3eSkeletonElement = M3eSkeletonElement_1 = class M3eSkeletonElement extends
29520
29555
  _M3eSkeletonElement_instances.add(this);
29521
29556
  /** @private */
29522
29557
  _M3eSkeletonElement_anchoringCleanupMap.set(this, new Map());
29558
+ /** @private */
29559
+ _M3eSkeletonElement_animation.set(this, null);
29560
+ /** The animation mode `#animation` was created for, so mode changes recreate it. @private */
29561
+ _M3eSkeletonElement_animationMode.set(this, null);
29523
29562
  /**
29524
29563
  * The shape of the skeleton.
29525
29564
  * @default "auto"
@@ -29540,7 +29579,7 @@ let M3eSkeletonElement = M3eSkeletonElement_1 = class M3eSkeletonElement extends
29540
29579
  disconnectedCallback() {
29541
29580
  super.disconnectedCallback();
29542
29581
  __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_clearShapes).call(this);
29543
- __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_unregisterLoading).call(this);
29582
+ __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_stopMotion).call(this);
29544
29583
  }
29545
29584
  /** @inheritdoc */
29546
29585
  reconnectedCallback() {
@@ -29559,22 +29598,24 @@ let M3eSkeletonElement = M3eSkeletonElement_1 = class M3eSkeletonElement extends
29559
29598
  render() {
29560
29599
  return b`<slot ?inert="${!this.loaded}" @slotchange="${__classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_handleSlotChange)}"></slot>`;
29561
29600
  }
29562
- /** @private */
29563
- static __updateAnimations() {
29564
- const pause = M3eSkeletonElement_1.__forcedColorsMediaQuery.matches || M3eSkeletonElement_1.__reducedMediaQuery.matches;
29565
- if (M3eSkeletonElement_1.__pulseLoading.size === 0 || pause) {
29566
- M3eSkeletonElement_1.__pulseAnimation.pause();
29567
- } else if (M3eSkeletonElement_1.__pulseLoading.size > 0 && M3eSkeletonElement_1.__pulseAnimation.playState === "paused") {
29568
- M3eSkeletonElement_1.__pulseAnimation.play();
29569
- }
29570
- if (M3eSkeletonElement_1.__waveLoading.size === 0 || pause) {
29571
- M3eSkeletonElement_1.__waveAnimation.pause();
29572
- } else if (M3eSkeletonElement_1.__waveLoading.size > 0 && M3eSkeletonElement_1.__waveAnimation.playState === "paused") {
29573
- M3eSkeletonElement_1.__waveAnimation.play();
29601
+ /** Whether motion is currently suppressed for accessibility or forced-colors reasons. @private */
29602
+ static __motionDisabled() {
29603
+ return M3eSkeletonElement_1.__reducedMediaQuery.matches || M3eSkeletonElement_1.__forcedColorsMediaQuery.matches;
29604
+ }
29605
+ /**
29606
+ * Re-applies the current motion preference to every animating skeleton. Invoked when
29607
+ * the reduced-motion or forced-colors preference changes.
29608
+ * @private
29609
+ */
29610
+ static __updateMotion() {
29611
+ for (const skeleton of M3eSkeletonElement_1.__animating) {
29612
+ __classPrivateFieldGet(skeleton, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_syncMotionState).call(skeleton);
29574
29613
  }
29575
29614
  }
29576
29615
  };
29577
29616
  _M3eSkeletonElement_anchoringCleanupMap = new WeakMap();
29617
+ _M3eSkeletonElement_animation = new WeakMap();
29618
+ _M3eSkeletonElement_animationMode = new WeakMap();
29578
29619
  _M3eSkeletonElement_instances = new WeakSet();
29579
29620
  _M3eSkeletonElement_handleSlotChange = /** @private */
29580
29621
  async function _M3eSkeletonElement_handleSlotChange() {
@@ -29627,68 +29668,78 @@ async function _M3eSkeletonElement_createShape(element) {
29627
29668
  this.shadowRoot?.appendChild(shape);
29628
29669
  };
29629
29670
  _M3eSkeletonElement_updateLoading = function _M3eSkeletonElement_updateLoading() {
29630
- if (!this.loaded && this.animation !== "none") {
29631
- __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_registerLoading).call(this);
29671
+ if (this.isConnected && !this.loaded && (this.animation === "wave" || this.animation === "pulse")) {
29672
+ __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_startMotion).call(this);
29632
29673
  } else {
29633
- __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_unregisterLoading).call(this);
29674
+ __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_stopMotion).call(this);
29634
29675
  }
29635
29676
  };
29636
- _M3eSkeletonElement_registerLoading = function _M3eSkeletonElement_registerLoading() {
29637
- switch (this.animation) {
29638
- case "pulse":
29639
- M3eSkeletonElement_1.__waveLoading.delete(this);
29640
- if (!M3eSkeletonElement_1.__pulseLoading.has(this)) {
29641
- M3eSkeletonElement_1.__pulseLoading.add(this);
29642
- M3eSkeletonElement_1.__updateAnimations();
29643
- }
29644
- break;
29645
- case "wave":
29646
- M3eSkeletonElement_1.__pulseLoading.delete(this);
29647
- if (!M3eSkeletonElement_1.__waveLoading.has(this)) {
29648
- M3eSkeletonElement_1.__waveLoading.add(this);
29649
- M3eSkeletonElement_1.__updateAnimations();
29650
- }
29651
- break;
29677
+ _M3eSkeletonElement_startMotion = function _M3eSkeletonElement_startMotion() {
29678
+ if (__classPrivateFieldGet(this, _M3eSkeletonElement_animation, "f")) {
29679
+ if (__classPrivateFieldGet(this, _M3eSkeletonElement_animationMode, "f") === this.animation) {
29680
+ // Already running for the current mode; nothing to do but re-sync motion state.
29681
+ __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_syncMotionState).call(this);
29682
+ return;
29683
+ }
29684
+ // Effect mode changed (wave <-> pulse); tear down and recreate below.
29685
+ __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_stopMotion).call(this);
29686
+ }
29687
+ M3eSkeletonElement_1.__motionOrigin ??= document.timeline.currentTime ?? 0;
29688
+ const animation = this.animation === "pulse" ? this.animate([{
29689
+ ["--_m3e-skeleton-pulse-norm"]: 0
29690
+ }, {
29691
+ ["--_m3e-skeleton-pulse-norm"]: 1
29692
+ }, {
29693
+ ["--_m3e-skeleton-pulse-norm"]: 0
29694
+ }], {
29695
+ duration: 1200,
29696
+ iterations: Infinity,
29697
+ easing: "ease-in-out"
29698
+ }) : this.animate([{
29699
+ ["--_m3e-skeleton-wave-pct"]: 0
29700
+ }, {
29701
+ ["--_m3e-skeleton-wave-pct"]: 1
29702
+ }], {
29703
+ duration: 2100,
29704
+ iterations: Infinity,
29705
+ easing: "linear"
29706
+ });
29707
+ animation.startTime = M3eSkeletonElement_1.__motionOrigin;
29708
+ __classPrivateFieldSet(this, _M3eSkeletonElement_animation, animation, "f");
29709
+ __classPrivateFieldSet(this, _M3eSkeletonElement_animationMode, this.animation, "f");
29710
+ M3eSkeletonElement_1.__animating.add(this);
29711
+ __classPrivateFieldGet(this, _M3eSkeletonElement_instances, "m", _M3eSkeletonElement_syncMotionState).call(this);
29712
+ };
29713
+ _M3eSkeletonElement_stopMotion = function _M3eSkeletonElement_stopMotion() {
29714
+ if (!__classPrivateFieldGet(this, _M3eSkeletonElement_animation, "f")) {
29715
+ return;
29652
29716
  }
29717
+ __classPrivateFieldGet(this, _M3eSkeletonElement_animation, "f").cancel();
29718
+ __classPrivateFieldSet(this, _M3eSkeletonElement_animation, null, "f");
29719
+ __classPrivateFieldSet(this, _M3eSkeletonElement_animationMode, null, "f");
29720
+ M3eSkeletonElement_1.__animating.delete(this);
29653
29721
  };
29654
- _M3eSkeletonElement_unregisterLoading = function _M3eSkeletonElement_unregisterLoading() {
29655
- if (M3eSkeletonElement_1.__pulseLoading.delete(this) || M3eSkeletonElement_1.__waveLoading.delete(this)) {
29656
- M3eSkeletonElement_1.__updateAnimations();
29722
+ _M3eSkeletonElement_syncMotionState = function _M3eSkeletonElement_syncMotionState() {
29723
+ if (!__classPrivateFieldGet(this, _M3eSkeletonElement_animation, "f")) {
29724
+ return;
29725
+ }
29726
+ if (M3eSkeletonElement_1.__motionDisabled()) {
29727
+ __classPrivateFieldGet(this, _M3eSkeletonElement_animation, "f").pause();
29728
+ } else {
29729
+ __classPrivateFieldGet(this, _M3eSkeletonElement_animation, "f").play();
29657
29730
  }
29658
29731
  };
29659
- /** @private */
29660
- M3eSkeletonElement.__pulseLoading = new Set();
29661
- /** @private */
29662
- M3eSkeletonElement.__waveLoading = new Set();
29732
+ /** Skeletons with a live per-instance animation, so preference changes re-sync them all. @private */
29733
+ M3eSkeletonElement.__animating = new Set();
29734
+ /** Shared timeline origin so every skeleton's wave/pulse stays in phase. @private */
29735
+ M3eSkeletonElement.__motionOrigin = null;
29663
29736
  (() => {
29664
29737
  if (typeof window !== "undefined") {
29665
29738
  registerStyleSheet(i$4`@property --_m3e-skeleton-wave-pct { syntax: "<number>"; inherits: true; initial-value: 0; } @property --_m3e-skeleton-pulse-norm { syntax: "<number>"; inherits: true; initial-value: 0; } :root { --_m3e-skeleton-wave-span: 40vw; --_m3e-skeleton-pulse-min: 0.06; }</number></number>`);
29666
- M3eSkeletonElement_1.__waveAnimation = document.documentElement.animate([{
29667
- ["--_m3e-skeleton-wave-pct"]: 0
29668
- }, {
29669
- ["--_m3e-skeleton-wave-pct"]: 1
29670
- }], {
29671
- duration: 2100,
29672
- iterations: Infinity,
29673
- easing: "linear"
29674
- });
29675
- M3eSkeletonElement_1.__pulseAnimation = document.documentElement.animate([{
29676
- ["--_m3e-skeleton-pulse-norm"]: 0
29677
- }, {
29678
- ["--_m3e-skeleton-pulse-norm"]: 1
29679
- }, {
29680
- ["--_m3e-skeleton-pulse-norm"]: 0
29681
- }], {
29682
- duration: 1200,
29683
- iterations: Infinity,
29684
- easing: "ease-in-out"
29685
- });
29686
- M3eSkeletonElement_1.__waveAnimation.pause();
29687
- M3eSkeletonElement_1.__pulseAnimation.pause();
29688
29739
  M3eSkeletonElement_1.__reducedMediaQuery = window.matchMedia("(prefers-reduced-motion: reduce)");
29689
29740
  M3eSkeletonElement_1.__forcedColorsMediaQuery = window.matchMedia("(forced-colors: active)");
29690
- M3eSkeletonElement_1.__reducedMediaQuery.addEventListener("change", () => M3eSkeletonElement_1.__updateAnimations());
29691
- M3eSkeletonElement_1.__forcedColorsMediaQuery.addEventListener("change", () => M3eSkeletonElement_1.__updateAnimations());
29741
+ M3eSkeletonElement_1.__reducedMediaQuery.addEventListener("change", () => M3eSkeletonElement_1.__updateMotion());
29742
+ M3eSkeletonElement_1.__forcedColorsMediaQuery.addEventListener("change", () => M3eSkeletonElement_1.__updateMotion());
29692
29743
  }
29693
29744
  })();
29694
29745
  /** The styles of the element. */
@@ -30311,6 +30362,7 @@ _M3eSliderElement_updateTicks = function _M3eSliderElement_updateTicks(active) {
30311
30362
  }
30312
30363
  };
30313
30364
  _M3eSliderElement_handlePointerDown = function _M3eSliderElement_handlePointerDown(e) {
30365
+ __classPrivateFieldGet(this, _M3eSliderElement_instances, "m", _M3eSliderElement_updateCachedDimensions).call(this, true);
30314
30366
  if (e.pointerType === "mouse" && e.button > 1) return;
30315
30367
  if (!this.lowerThumb || this.disabled) return;
30316
30368
  if (e.target instanceof HTMLElement) {