@lmvz-ds/components 0.12.5 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/dist/{esm/Effect-BhQLGXPs.js → cjs/assets-CB5ikzmP.js} +857 -4832
  2. package/dist/cjs/{icons-7wUEcWEo.js → icons-DM_TTn48.js} +363 -113
  3. package/dist/cjs/{index-CVw4GUo6.js → index-Bp6Dd2i1.js} +4 -2
  4. package/dist/cjs/{index-9ZJx0550.js → index-D3BMpL5w.js} +0 -3
  5. package/dist/cjs/index.cjs.js +4 -6
  6. package/dist/cjs/lmvz-action.cjs.entry.js +1 -1
  7. package/dist/cjs/lmvz-button.cjs.entry.js +7 -10
  8. package/dist/cjs/lmvz-card.cjs.entry.js +3 -4
  9. package/dist/cjs/lmvz-chip.cjs.entry.js +1 -1
  10. package/dist/cjs/lmvz-components.cjs.js +1 -1
  11. package/dist/cjs/lmvz-header.cjs.entry.js +13 -12
  12. package/dist/cjs/lmvz-icon.cjs.entry.js +8 -10
  13. package/dist/cjs/lmvz-input.cjs.entry.js +8 -11
  14. package/dist/cjs/lmvz-menuitem.cjs.entry.js +5 -7
  15. package/dist/cjs/loader.cjs.js +1 -1
  16. package/dist/cjs/reactive-controller-host-BMDEj1kX.js +168 -0
  17. package/dist/collection/components/lmvz-button/lmvz-button.js +3 -3
  18. package/dist/collection/components/lmvz-header/lmvz-header.js +11 -8
  19. package/dist/collection/components/lmvz-icon/lmvz-icon.js +2 -2
  20. package/dist/collection/components/lmvz-icon/test/icons.unit.js +21 -12
  21. package/dist/collection/components/lmvz-input/lmvz-input.css +5 -2
  22. package/dist/collection/components/lmvz-input/lmvz-input.js +3 -3
  23. package/dist/collection/components/lmvz-menuitem/lmvz-menuitem.js +3 -3
  24. package/dist/collection/integration/header-integration.js +3 -1
  25. package/dist/collection/utils/{validation → aria}/aria-validation-controller.js +15 -34
  26. package/dist/collection/utils/{list-keyboard-controller.js → aria/list-keyboard-controller.js} +1 -1
  27. package/dist/collection/utils/{http.test.js → http.unit.js} +7 -6
  28. package/dist/components/index.js +1 -1
  29. package/dist/components/lmvz-action.js +1 -1
  30. package/dist/components/lmvz-button.js +1 -1
  31. package/dist/components/lmvz-card.js +1 -1
  32. package/dist/components/lmvz-chip.js +1 -1
  33. package/dist/components/lmvz-header.js +1 -1
  34. package/dist/components/lmvz-icon.js +1 -1
  35. package/dist/components/lmvz-input.js +1 -1
  36. package/dist/components/lmvz-menuitem.js +1 -1
  37. package/dist/components/p-BBDH9X49.js +1 -0
  38. package/dist/components/{p-DMLRPGid.js → p-BfTCfPZ1.js} +1 -1
  39. package/dist/components/p-Bs6_m7Uw.js +1 -0
  40. package/dist/components/p-CMteT-Yo.js +1 -0
  41. package/dist/components/p-vi4YzJmv.js +1 -0
  42. package/dist/{cjs/Effect-CNhHt4Xb.js → esm/assets-ozES4zSA.js} +785 -5032
  43. package/dist/esm/{icons-Bx1wWPM2.js → icons-kpJZ1u9g.js} +268 -18
  44. package/dist/esm/{index-Bt32KzDW.js → index-BfTCfPZ1.js} +3 -1
  45. package/dist/esm/{index-smGPjoDX.js → index-T5ljELGS.js} +1 -3
  46. package/dist/esm/index.js +3 -5
  47. package/dist/esm/lmvz-action.entry.js +1 -1
  48. package/dist/esm/lmvz-button.entry.js +5 -8
  49. package/dist/esm/lmvz-card.entry.js +2 -3
  50. package/dist/esm/lmvz-chip.entry.js +1 -1
  51. package/dist/esm/lmvz-components.js +2 -2
  52. package/dist/esm/lmvz-header.entry.js +11 -10
  53. package/dist/esm/lmvz-icon.entry.js +5 -7
  54. package/dist/esm/lmvz-input.entry.js +6 -9
  55. package/dist/esm/lmvz-menuitem.entry.js +3 -5
  56. package/dist/esm/loader.js +2 -2
  57. package/dist/esm/reactive-controller-host-CZ3dGAjR.js +165 -0
  58. package/dist/lmvz-components/index.esm.js +1 -1
  59. package/dist/lmvz-components/lmvz-components.esm.js +1 -1
  60. package/dist/lmvz-components/p-16878d4c.entry.js +1 -0
  61. package/dist/lmvz-components/p-4ad8c332.entry.js +1 -0
  62. package/dist/lmvz-components/p-5eee0752.entry.js +1 -0
  63. package/dist/lmvz-components/p-8ea1a349.entry.js +1 -0
  64. package/dist/lmvz-components/{p-d4b68381.entry.js → p-980688a0.entry.js} +1 -1
  65. package/dist/lmvz-components/{p-DMLRPGid.js → p-BfTCfPZ1.js} +1 -1
  66. package/dist/lmvz-components/p-CZ3dGAjR.js +1 -0
  67. package/dist/lmvz-components/p-D9lc4ayG.js +1 -0
  68. package/dist/lmvz-components/p-T5ljELGS.js +2 -0
  69. package/dist/lmvz-components/p-a34542fa.entry.js +1 -0
  70. package/dist/lmvz-components/p-d2bf6a3f.entry.js +1 -0
  71. package/dist/lmvz-components/{p-9faac8f3.entry.js → p-feda2ec5.entry.js} +1 -1
  72. package/dist/lmvz-components/p-iviTjlUy.js +1 -0
  73. package/dist/manifest.json +1 -1
  74. package/dist/types/components/lmvz-button/lmvz-button.d.ts +2 -2
  75. package/dist/types/components/lmvz-header/lmvz-header.d.ts +5 -4
  76. package/dist/types/components/lmvz-icon/lmvz-icon.d.ts +1 -1
  77. package/dist/types/components/lmvz-input/lmvz-input.d.ts +1 -1
  78. package/dist/types/components/lmvz-menuitem/lmvz-menuitem.d.ts +2 -2
  79. package/dist/types/utils/{validation → aria}/aria-validation-controller.d.ts +1 -5
  80. package/dist/types/utils/{element-activation-controller.d.ts → aria/element-activation-controller.d.ts} +2 -2
  81. package/dist/types/utils/{list-keyboard-controller.d.ts → aria/list-keyboard-controller.d.ts} +1 -1
  82. package/hydrate/index.js +9610 -50169
  83. package/hydrate/index.mjs +9610 -50169
  84. package/package.json +17 -18
  85. package/readme.md +18 -0
  86. package/dist/cjs/MutableQueue-Bk9tBfaK.js +0 -462
  87. package/dist/cjs/_commonjsHelpers-CFO10eej.js +0 -7
  88. package/dist/cjs/aria-validation-controller-B3hMkau3.js +0 -2930
  89. package/dist/cjs/assets-BguFB3wV.js +0 -71
  90. package/dist/cjs/axe-BNqwbBGU.js +0 -32834
  91. package/dist/components/p-3I3wZmp8.js +0 -1
  92. package/dist/components/p-B85MJLTf.js +0 -1
  93. package/dist/components/p-BaPwpeMs.js +0 -1
  94. package/dist/components/p-CAi33KTt.js +0 -1
  95. package/dist/components/p-CdofjRtQ.js +0 -1
  96. package/dist/components/p-D1HbKFuh.js +0 -12
  97. package/dist/components/p-UwhTS2ue.js +0 -1
  98. package/dist/esm/MutableQueue-CNlEFklh.js +0 -431
  99. package/dist/esm/_commonjsHelpers-B85MJLTf.js +0 -5
  100. package/dist/esm/aria-validation-controller-iA4YWFG-.js +0 -2927
  101. package/dist/esm/assets-Iu8neKuE.js +0 -67
  102. package/dist/esm/axe-cRQ9Ux1I.js +0 -32832
  103. package/dist/lmvz-components/p-1a10fcbd.entry.js +0 -1
  104. package/dist/lmvz-components/p-274c36df.entry.js +0 -1
  105. package/dist/lmvz-components/p-2ba68483.entry.js +0 -1
  106. package/dist/lmvz-components/p-4XIjw3k8.js +0 -1
  107. package/dist/lmvz-components/p-51Fb_qqD.js +0 -1
  108. package/dist/lmvz-components/p-77e26e71.entry.js +0 -1
  109. package/dist/lmvz-components/p-B85MJLTf.js +0 -1
  110. package/dist/lmvz-components/p-BhQLGXPs.js +0 -1
  111. package/dist/lmvz-components/p-CXWyvf0D.js +0 -1
  112. package/dist/lmvz-components/p-D1HbKFuh.js +0 -12
  113. package/dist/lmvz-components/p-D7I-Bc5i.js +0 -1
  114. package/dist/lmvz-components/p-a5fe62b6.entry.js +0 -1
  115. package/dist/lmvz-components/p-c8b78793.entry.js +0 -1
  116. package/dist/lmvz-components/p-smGPjoDX.js +0 -2
  117. /package/dist/collection/utils/{element-activation-controller.js → aria/element-activation-controller.js} +0 -0
  118. /package/dist/types/utils/{http.test.d.ts → http.unit.d.ts} +0 -0
@@ -1,6 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var _commonjsHelpers = require('./_commonjsHelpers-CFO10eej.js');
3
+ function getDefaultExportFromCjs (x) {
4
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
5
+ }
4
6
 
5
7
  var classnames = {exports: {}};
6
8
 
@@ -87,6 +89,6 @@ function requireClassnames () {
87
89
  }
88
90
 
89
91
  var classnamesExports = requireClassnames();
90
- var classNames = /*@__PURE__*/_commonjsHelpers.getDefaultExportFromCjs(classnamesExports);
92
+ var classNames = /*@__PURE__*/getDefaultExportFromCjs(classnamesExports);
91
93
 
92
94
  exports.classNames = classNames;
@@ -7,8 +7,6 @@ const BUILD = /* lmvz-components */ { hotModuleReplacement: false, hydratedSelec
7
7
  Stencil Client Platform v4.43.2 | MIT Licensed | https://stenciljs.com
8
8
  */
9
9
 
10
- var Build = {
11
- isDev: false};
12
10
  var PrimitiveType = /* @__PURE__ */ ((PrimitiveType2) => {
13
11
  PrimitiveType2["Undefined"] = "undefined";
14
12
  PrimitiveType2["Null"] = "null";
@@ -2740,7 +2738,6 @@ function transformTag(tag) {
2740
2738
  return tag;
2741
2739
  }
2742
2740
 
2743
- exports.Build = Build;
2744
2741
  exports.Host = Host;
2745
2742
  exports.bootstrapLazy = bootstrapLazy;
2746
2743
  exports.createEvent = createEvent;
@@ -1,10 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var icons = require('./icons-7wUEcWEo.js');
4
- var Effect = require('./Effect-CNhHt4Xb.js');
5
- require('./MutableQueue-Bk9tBfaK.js');
6
- require('./assets-BguFB3wV.js');
7
- require('./index-9ZJx0550.js');
3
+ var icons = require('./icons-DM_TTn48.js');
4
+ var assets = require('./assets-CB5ikzmP.js');
5
+ require('./index-D3BMpL5w.js');
8
6
 
9
7
  const variants = ['primary', 'secondary', 'tertiary'];
10
8
  const scaleValues = ['small', 'default', 'large'];
@@ -81,7 +79,7 @@ const iconNames = [
81
79
  ];
82
80
 
83
81
  function run(effect) {
84
- return Effect.runPromise(effect).catch(error => {
82
+ return assets.runPromise(effect).catch(error => {
85
83
  console.error('Unhandled error in Effect:', error);
86
84
  });
87
85
  }
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
4
 
5
5
  const lmvzActionCss = () => `:host{display:block}`;
6
6
 
@@ -1,17 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
4
- var index$1 = require('./index-CVw4GUo6.js');
5
- var component = require('./component-CRc6eHcV.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
+ var index$1 = require('./index-Bp6Dd2i1.js');
5
+ var reactiveControllerHost = require('./reactive-controller-host-BMDEj1kX.js');
6
6
  var elementActivationController = require('./element-activation-controller-DC_6T0Rt.js');
7
- var ariaValidationController = require('./aria-validation-controller-B3hMkau3.js');
8
- require('./_commonjsHelpers-CFO10eej.js');
9
- require('./Effect-CNhHt4Xb.js');
10
- require('./MutableQueue-Bk9tBfaK.js');
7
+ var component = require('./component-CRc6eHcV.js');
11
8
 
12
9
  const lmvzButtonCss = () => ` @layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } @layer lmvz-ds.reset { h1, h2, h3, h4, h5, h6 { margin: 0; } } :host { button { --lmvz-button-color: var(--lmvz-component-color, var(--lmvz-semantic-color-int-on-primary, #ffffff)); --lmvz-button-padding-inline: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-padding-block: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); --lmvz-button-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-button-border-width: 0; --lmvz-button-border-color: transparent; --lmvz-button-background: var(--lmvz-semantic-color-int-primary, #000000); display: inline-flex; align-items: center; justify-content: center; gap: var(--lmvz-button-gap); padding-block: var(--lmvz-button-padding-block); padding-inline: var(--lmvz-button-padding-inline); border-radius: var(--lmvz-button-radius); border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color); background-color: var(--lmvz-button-background); color: var(--lmvz-button-color); cursor: pointer; font: var(--lmvz-button-font); text-align: center; text-decoration: none; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease; } button > * { font: inherit; color: inherit; } button:focus-visible { outline: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-status-selected, #f1f9fe); outline-offset: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); } button:is([disabled], .disabled) { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); } button:not([disabled]):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-hover, #2e2e2e); } button:not([disabled]):active { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-active, #545454); } button.secondary { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); --lmvz-button-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-button-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-button-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); } button.secondary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0); --lmvz-button-border-color: var(--lmvz-semantic-color-border-hover, #c7c7c7); } button.secondary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-active, #d4d4d4); --lmvz-button-border-color: var(--lmvz-semantic-color-border-active, #d4d4d4); } button.tertiary { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-button-color: var(--lmvz-semantic-color-int-on-tertiary, #545454); } button.tertiary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } button.tertiary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } button.small { --lmvz-button-padding-inline: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-padding-block: var(--lmvz-component-input-sm-padding-y, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-gap: var(--lmvz-component-input-sm-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } button.large { --lmvz-button-padding-inline: var(--lmvz-component-input-lg-padding-x, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-padding-block: var(--lmvz-component-input-lg-padding-y, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-gap: var(--lmvz-component-input-lg-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); } display: contents; } ::slotted(*) { --lmvz-component-color: var(--lmvz-button-color); } `;
13
10
 
14
- const LmvzButton = class extends ariaValidationController.ReactiveControllerHost {
11
+ const LmvzButton = class extends reactiveControllerHost.ReactiveControllerHost {
15
12
  get el() { return index.getElement(this); }
16
13
  inheritedAttributes = {};
17
14
  formEl = null;
@@ -29,7 +26,7 @@ const LmvzButton = class extends ariaValidationController.ReactiveControllerHost
29
26
  super();
30
27
  index.registerInstance(this, hostRef);
31
28
  this.lmvzActivation = index.createEvent(this, "lmvzActivation");
32
- this.addController(new ariaValidationController.AriaValidationController(this));
29
+ this.addController(new reactiveControllerHost.AriaValidationController(this));
33
30
  this.addController(new elementActivationController.ElementActivationController(this, {
34
31
  localHandler: this.handleClick.bind(this),
35
32
  keys: ['Enter'],
@@ -64,7 +61,7 @@ const LmvzButton = class extends ariaValidationController.ReactiveControllerHost
64
61
  };
65
62
  render() {
66
63
  this.renderHiddenButton();
67
- return (index.h(index.Host, { key: '578b9f70209fba3a23bd20c3d8b3832cb3005311', "aria-disabled": this.disabled ? 'true' : null }, index.h("button", { key: '6b25bee333bec8a36eb1bf77b8e11cd9691a998f', disabled: this.disabled, class: index$1.classNames(this.variant, { [this.scale ?? '']: !!this.scale, disabled: this.disabled }), ...this.inheritedAttributes }, index.h("slot", { key: '5e63d9c069ffa7c10585e1fda980d8087cb43cc9' }))));
64
+ return (index.h(index.Host, { key: 'cd4a63b866c801ad7f96f59d15e561a54bfe9ec2', "aria-disabled": this.disabled ? 'true' : null }, index.h("button", { key: 'a1e3ecb88fb84d724df4939519bb22d4b6725c1d', disabled: this.disabled, class: index$1.classNames(this.variant, { [this.scale ?? '']: !!this.scale, disabled: this.disabled }), ...this.inheritedAttributes }, index.h("slot", { key: 'f1fd32c993b1ef9f6d62d6f3affa169c9368df78' }))));
68
65
  }
69
66
  static get delegatesFocus() { return true; }
70
67
  };
@@ -1,8 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
4
- var Effect = require('./Effect-CNhHt4Xb.js');
5
- var assets = require('./assets-BguFB3wV.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
+ var assets = require('./assets-CB5ikzmP.js');
6
5
 
7
6
  const lmvzCardCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } @layer lmvz-ds.reset { h1, h2, h3, h4, h5, h6 { margin: 0; } } .sc-lmvz-card-h { button { --lmvz-button-color: var(--lmvz-component-color, var(--lmvz-semantic-color-int-on-primary, #ffffff)); --lmvz-button-padding-inline: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-padding-block: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); --lmvz-button-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-button-border-width: 0; --lmvz-button-border-color: transparent; --lmvz-button-background: var(--lmvz-semantic-color-int-primary, #000000); display: inline-flex; align-items: center; justify-content: center; gap: var(--lmvz-button-gap); padding-block: var(--lmvz-button-padding-block); padding-inline: var(--lmvz-button-padding-inline); border-radius: var(--lmvz-button-radius); border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color); background-color: var(--lmvz-button-background); color: var(--lmvz-button-color); cursor: pointer; font: var(--lmvz-button-font); text-align: center; text-decoration: none; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease; } button > * { font: inherit; color: inherit; } button:focus-visible { outline: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-status-selected, #f1f9fe); outline-offset: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); } button:is([disabled], .disabled) { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); } button:not([disabled]):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-hover, #2e2e2e); } button:not([disabled]):active { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-active, #545454); } button.secondary { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); --lmvz-button-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-button-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-button-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); } button.secondary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0); --lmvz-button-border-color: var(--lmvz-semantic-color-border-hover, #c7c7c7); } button.secondary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-active, #d4d4d4); --lmvz-button-border-color: var(--lmvz-semantic-color-border-active, #d4d4d4); } button.tertiary { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-button-color: var(--lmvz-semantic-color-int-on-tertiary, #545454); } button.tertiary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } button.tertiary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } button.small { --lmvz-button-padding-inline: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-padding-block: var(--lmvz-component-input-sm-padding-y, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-gap: var(--lmvz-component-input-sm-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } button.large { --lmvz-button-padding-inline: var(--lmvz-component-input-lg-padding-x, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-padding-block: var(--lmvz-component-input-lg-padding-y, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-gap: var(--lmvz-component-input-lg-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); } display: flex; min-width: var(--lmvz-other-component-card-minwidth, 20.4375rem); max-width: var(--lmvz-other-component-card-maxwidth, 21.6875rem); flex-direction: column; align-items: flex-start; border-radius: var(--lmvz-semantic-border-radius-lg, 14px); border: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-border-default, #e0e0e0); background: var(--lmvz-semantic-color-surface-primary, #ffffff); } *.sc-lmvz-card { color: var(--lmvz-semantic-color-on-surface-primary, #000000); font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } .top.sc-lmvz-card { display: flex; padding: var(--lmvz-dimension-8-12, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); flex-direction: column; justify-content: center; align-items: center; align-self: stretch; } .bottom.sc-lmvz-card { display: flex; min-width: 150px; padding: var(--lmvz-dimension-4-6, clamp(0.25rem, 0.22rem + 0.13vw, 0.38rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)); flex-direction: column; align-items: flex-start; align-self: stretch; } .title.sc-lmvz-card { margin: 0; display: flex; justify-content: center; align-items: center; align-self: stretch; padding-bottom: var(--lmvz-global-s4, 4px); overflow-wrap: break-word; font: var(--lmvz-typography-heading-2xl, 500 clamp(2rem, 1.94rem + 0.26vw, 2.25rem) / 1.2 Router); } .description.sc-lmvz-card { display: flex; margin: 0; padding-bottom: var(--lmvz-component-body-sm-padding-bottom, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); align-items: flex-start; align-self: stretch; white-space: pre-line; font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } .image-wrapper.sc-lmvz-card { aspect-ratio: 4 / 3; width: 100%; background-size: cover; background-position: center; flex: 1 0 0; align-self: stretch; border-radius: var(--lmvz-semantic-border-radius-md, 6px); } .actions.sc-lmvz-card { margin-top: var(--lmvz-component-form-wrapper-gap-y, clamp(1.13rem, 0.97rem + 0.65vw, 1.75rem)); display: flex; align-items: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); align-self: stretch; } button.primary.sc-lmvz-card, lmvz-button.primary.sc-lmvz-card { display: flex; justify-content: center; align-items: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); flex: 1 0 0; }`;
8
7
 
@@ -17,7 +16,7 @@ const LmvzCard = class {
17
16
  primaryActionLabel = '';
18
17
  primaryAction;
19
18
  get fallbackImage() {
20
- return Effect.runSync(assets.syncCreateAssetUrlSafely('card-placeholder.svg'));
19
+ return assets.runSync(assets.syncCreateAssetUrlSafely('card-placeholder.svg'));
21
20
  }
22
21
  _onPrimaryClick() {
23
22
  this.primaryAction.emit();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
4
 
5
5
  const lmvzChipCss = () => `:host{display:block}`;
6
6
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
4
  var appGlobals = require('./app-globals-V2Kpy_OQ.js');
5
5
 
6
6
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
@@ -1,10 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
+ var reactiveControllerHost = require('./reactive-controller-host-BMDEj1kX.js');
4
5
  var component = require('./component-CRc6eHcV.js');
5
- var ariaValidationController = require('./aria-validation-controller-B3hMkau3.js');
6
- require('./Effect-CNhHt4Xb.js');
7
- require('./MutableQueue-Bk9tBfaK.js');
8
6
 
9
7
  class ListKeyboardNavigationController {
10
8
  host;
@@ -52,7 +50,7 @@ class ListKeyboardNavigationController {
52
50
 
53
51
  const lmvzHeaderCss = () => `:host{display:flex;width:100vw;flex-direction:row;align-items:center;box-sizing:border-box;background-color:var(--lmvz-semantic-color-surface-primary, #ffffff);--lmvz-header-x-spacing-level-1:var(--lmvz-dimension-8-28, clamp(0.5rem, 0.2rem + 1.29vw, 1.75rem));--lmvz-header-x-spacing-level-2:var(--lmvz-component-buttongroup-wrapper-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem));padding:var(--lmvz-dimension-8-16, clamp(0.5rem, 0.38rem + 0.52vw, 1rem)) var(--lmvz-header-x-spacing-level-1);gap:var(--lmvz-header-x-spacing-level-1);.brand{display:inline-flex;justify-content:center;align-items:center}#fallback-logo-lmvz{height:34px;width:auto}nav{flex-grow:1}.primary-menubar{display:flex;flex-direction:row;align-items:center}.secondary-menubar{display:flex;flex-direction:row;align-items:center;margin-left:var(--lmvz-header-x-spacing-level-2);padding-left:var(--lmvz-header-x-spacing-level-2);border-left:1px solid var(--lmvz-semantic-color-border-default, #e0e0e0)}}`;
54
52
 
55
- const LmvzHeader = class extends ariaValidationController.ReactiveControllerHost {
53
+ const LmvzHeader = class extends reactiveControllerHost.ReactiveControllerHost {
56
54
  get el() { return index.getElement(this); }
57
55
  primarySlot;
58
56
  secondarySlot;
@@ -74,18 +72,18 @@ const LmvzHeader = class extends ariaValidationController.ReactiveControllerHost
74
72
  constructor(hostRef) {
75
73
  super();
76
74
  index.registerInstance(this, hostRef);
77
- this.addController(new ariaValidationController.AriaValidationController(this, { reValidateOnPropChanges: true }));
75
+ this.addController(new reactiveControllerHost.AriaValidationController(this, { reValidateOnPropChanges: true }));
78
76
  this.addController(this.keyboardNavigationController);
79
77
  }
80
78
  handleActiveNavChange() {
81
79
  this.updateElementsActive();
82
80
  }
83
81
  componentDidLoad() {
84
- this.primarySlot.addEventListener('slotchange', this.handlePrimaryNavChange.bind(this));
85
- this.handlePrimaryNavChange();
86
- this.secondarySlot.addEventListener('slotchange', this.handleSecondaryNavChange.bind(this));
82
+ this.primarySlot.addEventListener('slotchange', this.handlePrimaryNavItemsChange.bind(this));
83
+ this.handlePrimaryNavItemsChange();
84
+ this.secondarySlot.addEventListener('slotchange', this.handleSecondaryNavItemsChange.bind(this));
87
85
  }
88
- handlePrimaryNavChange() {
86
+ handlePrimaryNavItemsChange() {
89
87
  const items = this.primaryMenuitems;
90
88
  if (!items.length) {
91
89
  console.warn('Primary slot has no assigned elements. Please add navigation items to the primary slot.');
@@ -97,11 +95,14 @@ const LmvzHeader = class extends ariaValidationController.ReactiveControllerHost
97
95
  });
98
96
  this.updateElementsActive();
99
97
  }
100
- handleSecondaryNavChange() {
98
+ handleSecondaryNavItemsChange() {
101
99
  const items = this.secondaryMenuitems;
102
100
  if (!items.length) {
103
101
  return;
104
102
  }
103
+ this.updateKeyboardNavSubjects();
104
+ }
105
+ updateKeyboardNavSubjects() {
105
106
  this.keyboardNavigationController.updateElements([...this.primaryMenuitems, ...this.secondaryMenuitems]);
106
107
  }
107
108
  updateElementsActive() {
@@ -122,7 +123,7 @@ const LmvzHeader = class extends ariaValidationController.ReactiveControllerHost
122
123
  }
123
124
  }
124
125
  render() {
125
- return (index.h(index.Host, { key: '58934683ff442801eb34f025ac809631f93a27e8', onFocus: this.delegateFocus.bind(this) }, index.h("div", { key: '35d3eadfabb70f83b313f946c8d31f9c223e8344', class: "brand" }, index.h("slot", { key: '5ce98314d980d63e1c87f508d96119aca2e702a9', name: "brand" }, index.h("lmvz-icon", { key: 'b24e61a9071d81948d506a8c545e012d3f0e5dd2', id: "fallback-logo-lmvz", icon: "Logo", size: "inherit", "aria-label": "Lehrmittelverlag Z\u00FCrich" }))), index.h("nav", { key: '1d5cc9010ef90e6cebc8a7b054db595f35f9e040', "aria-label": "Hauptnavigation" }, index.h("div", { key: '488a1b1544242562b57d76169f1988d84c611de4', role: "menubar", class: "primary-menubar" }, index.h("slot", { key: '59c6dd1442290931ed9a55f7bacc65ea4bb9ff6d', name: "nav-primary", ref: el => (this.primarySlot = el) }), index.h("separator", { key: '2729f0e8b115614c50c4a16b6684a3bdb21856b8' }), index.h("div", { key: '6b5bed5951bad9173fefdc78039e71c4ccc120b2', role: "menu", id: "nav-secondary", class: "secondary-menubar", hidden: !this.lmvzActiveNav, ref: el => (this.secondaryNav = el) }, index.h("slot", { key: '02f5a13e8851372c1698e3f786a8757a0a09c32f', name: this.secondarySlotName, ref: el => (this.secondarySlot = el) })))), index.h("div", { key: '53aafe8139bcea27d3039f64a48974cdb5aac5f9', class: "actions" }, index.h("slot", { key: 'f12ee19831073253e6ba8e251ba31ec403c21035', name: "actions" }))));
126
+ return (index.h(index.Host, { key: '783c855e49e1a2447107d6205a1b2c50285ccfff', onFocus: this.delegateFocus.bind(this) }, index.h("div", { key: '84a78b0ed3e170c49a711fa4091f80dbc7003b2f', class: "brand" }, index.h("slot", { key: '76cc54f17a7bc5f825433fc56351666a93891fd2', name: "brand" }, index.h("lmvz-icon", { key: 'e196e43720cb4b4c3f79b3071d534b50480f6206', id: "fallback-logo-lmvz", icon: "Logo", size: "inherit", "aria-label": "Lehrmittelverlag Z\u00FCrich" }))), index.h("nav", { key: 'd25a719752bd4085da5ad18af94afc66e9cabd5e', "aria-label": "Hauptnavigation" }, index.h("div", { key: '8a12c2c53bd061b3559ce9693780e592b3d7aa32', role: "menubar", class: "primary-menubar" }, index.h("slot", { key: '4461632675dc657f675883e8ef618e371ace0ad7', name: "nav-primary", ref: el => (this.primarySlot = el) }), index.h("div", { key: 'c1dabc588ac376db667df32d3edbdd6dce60aaad', role: "menu", id: "nav-secondary", class: "secondary-menubar", hidden: !this.lmvzActiveNav, ref: el => (this.secondaryNav = el) }, index.h("slot", { key: '74ca44ee2f755ffe9ea3ebc19cc2b227ae22df8b', name: this.secondarySlotName, ref: el => (this.secondarySlot = el) })))), index.h("div", { key: 'a4d250a5fcd10390aed1f5369c28ddec9aa9ee8d', class: "actions" }, index.h("slot", { key: '77a499ce12d269e79221ca971cc1b203d179f459', name: "actions" }))));
126
127
  }
127
128
  static get watchers() { return {
128
129
  "lmvzActiveNav": [{
@@ -1,15 +1,13 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
4
- var Effect = require('./Effect-CNhHt4Xb.js');
5
- var ariaValidationController = require('./aria-validation-controller-B3hMkau3.js');
6
- var icons = require('./icons-7wUEcWEo.js');
7
- require('./MutableQueue-Bk9tBfaK.js');
8
- require('./assets-BguFB3wV.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
+ var assets = require('./assets-CB5ikzmP.js');
5
+ var reactiveControllerHost = require('./reactive-controller-host-BMDEj1kX.js');
6
+ var icons = require('./icons-DM_TTn48.js');
9
7
 
10
8
  const lmvzIconCss = () => `.sc-lmvz-icon-h{--lmvz-icon-color:var(--lmvz-component-color, var(--lmvz-semantic-color-on-surface-input-primary, #000000));display:inline-block;line-height:0;svg{display:block}svg>path{stroke:var(--lmvz-icon-color);fill:none}}[size='xs'].sc-lmvz-icon-h{svg{width:var(--lmvz-component-icon-size-xs, clamp(0.75rem, 0.69rem + 0.26vw, 1rem));height:var(--lmvz-component-icon-size-xs, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))}}[size='sm'].sc-lmvz-icon-h{svg{width:var(--lmvz-component-icon-size-sm, clamp(0.88rem, 0.81rem + 0.26vw, 1.13rem));height:var(--lmvz-component-icon-size-sm, clamp(0.88rem, 0.81rem + 0.26vw, 1.13rem))}}[size='md'].sc-lmvz-icon-h{svg{width:var(--lmvz-component-icon-size-md, clamp(1rem, 0.88rem + 0.52vw, 1.5rem));height:var(--lmvz-component-icon-size-md, clamp(1rem, 0.88rem + 0.52vw, 1.5rem))}}[size='lg'].sc-lmvz-icon-h{svg{width:var(--lmvz-component-icon-size-lg, clamp(1.5rem, 1.38rem + 0.52vw, 2rem));height:var(--lmvz-component-icon-size-lg, clamp(1.5rem, 1.38rem + 0.52vw, 2rem))}}[size='inherit'].sc-lmvz-icon-h{svg{width:inherit;height:inherit}}[weight='light'].sc-lmvz-icon-h{svg>path{stroke-width:1}}[weight='medium'].sc-lmvz-icon-h{svg>path{stroke-width:1.5}}[weight='bold'].sc-lmvz-icon-h{svg>path{stroke-width:2}}[weight='filled'].sc-lmvz-icon-h{svg>path{stroke-width:2;fill:var(--lmvz-icon-color)}}`;
11
9
 
12
- const LmvzIcon = class extends ariaValidationController.ReactiveControllerHost {
10
+ const LmvzIcon = class extends reactiveControllerHost.ReactiveControllerHost {
13
11
  intersectionObserver;
14
12
  get el() { return index.getElement(this); }
15
13
  icon;
@@ -24,7 +22,7 @@ const LmvzIcon = class extends ariaValidationController.ReactiveControllerHost {
24
22
  constructor(hostRef) {
25
23
  super();
26
24
  index.registerInstance(this, hostRef);
27
- this.addController(new ariaValidationController.AriaValidationController(this));
25
+ this.addController(new reactiveControllerHost.AriaValidationController(this));
28
26
  }
29
27
  connectedCallback() {
30
28
  this.waitUntilVisible(() => {
@@ -43,10 +41,10 @@ const LmvzIcon = class extends ariaValidationController.ReactiveControllerHost {
43
41
  if (!icon || !visible) {
44
42
  return;
45
43
  }
46
- this.iconData = await Effect.runPromise(icons.fetchIconSvg(this.icon).pipe(Effect.tapError(error => Effect.logError(`Error loading icon "${icon}":`, error.message, error.cause, error.stack)), Effect.catchAll(() => Effect.succeed(icons.emptyDefaultSvg()))));
44
+ this.iconData = await assets.runPromise(icons.fetchIconSvg(this.icon).pipe(assets.tapError(error => assets.logError(`Error loading icon "${icon}":`, error.message, error.cause, error.stack)), assets.catchAll(() => assets.succeed(icons.emptyDefaultSvg()))));
47
45
  }
48
46
  render() {
49
- return index.h(index.Host, { key: '50d0f96ec5085a47ca7783e5232dfb503fa32d29', role: "img", "aria-hidden": `${this.ariaHidden}`, innerHTML: this.iconData });
47
+ return index.h(index.Host, { key: 'd4c1cbfbaf39ebf6aa26415d46100763b9f89b5b', role: "img", "aria-hidden": `${this.ariaHidden}`, innerHTML: this.iconData });
50
48
  }
51
49
  waitUntilVisible(callback, rootMargin = 50) {
52
50
  if (typeof window === 'undefined' || !window.IntersectionObserver) {
@@ -1,17 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
4
- var index$1 = require('./index-CVw4GUo6.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
+ var index$1 = require('./index-Bp6Dd2i1.js');
5
+ var reactiveControllerHost = require('./reactive-controller-host-BMDEj1kX.js');
5
6
  var component = require('./component-CRc6eHcV.js');
6
- var ariaValidationController = require('./aria-validation-controller-B3hMkau3.js');
7
- require('./_commonjsHelpers-CFO10eej.js');
8
- require('./Effect-CNhHt4Xb.js');
9
- require('./MutableQueue-Bk9tBfaK.js');
10
7
 
11
- const lmvzInputCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } .sc-lmvz-input-h { display: block; font-family: var(--lmvz-global-font-family-default, Router); --input-radius: var(--lmvz-component-input-radius-default, 999px); --input-bg: var(--lmvz-semantic-color-surface-input-primary, #ffffff); --input-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); --input-border-color-hover: var(--lmvz-semantic-color-border-hover, #c7c7c7); --input-border-color-focus: var(--lmvz-semantic-color-status-on-selected, #0e7ab4); --input-border-width: var(--lmvz-semantic-border-width-default, 1px); --input-height: 48px; --input-padding-x: 16px; --label-color: var(--lmvz-semantic-color-on-surface-input-secondary, #7a7a7a); --input-text-color: var(--lmvz-semantic-color-on-surface-input-primary, #000000); --helper-text-color: var(--lmvz-semantic-color-on-surface-input-secondary, #7a7a7a); --error-text-color: var(--lmvz-semantic-color-status-on-danger, #e52a31); --label-floating-scale: 0.85; --label-minimized-top: -6px; --label-minimized-bg: var(--input-bg); --label-minimized-padding-x: 4px; --input-disabled-opacity: var(--lmvz-component-input-disabled-opacity, 40%); } .input-container.sc-lmvz-input { display: flex; flex-direction: column; position: relative; width: 100%; } .input-wrapper.sc-lmvz-input { background-color: var(--input-bg); border: var(--input-border-width) solid var(--input-border-color); border-radius: var(--input-radius); display: flex; align-items: center; height: var(--input-height); padding: 0 var(--input-padding-x); position: relative; transition: border-color 0.2s ease; gap: 8px; } [disabled].sc-lmvz-input-h .input-wrapper.sc-lmvz-input { opacity: var(--input-disabled-opacity); cursor: not-allowed; pointer-events: none; } .input-container.sc-lmvz-input:focus-within .input-wrapper.sc-lmvz-input { border-color: var(--input-border-color-focus); outline: 2px solid var(--input-border-color-focus); outline-offset: 2px; } .input-container.sc-lmvz-input:has(input:focus-visible) .input-wrapper.sc-lmvz-input { box-shadow: 0 0 0 3px rgb(0 86 214 / 20%); } [error].sc-lmvz-input-h .input-wrapper.sc-lmvz-input { border-color: var(--error-text-color); } [error].sc-lmvz-input-h:focus-within .input-wrapper.sc-lmvz-input { border-color: var(--error-text-color); outline-color: var(--error-text-color); } .sc-lmvz-input-h:not([disabled]) .input-wrapper.sc-lmvz-input:hover { border-color: var(--input-border-color-hover); } .label-input-group.sc-lmvz-input { position: relative; flex-grow: 1; display: flex; align-items: center; height: 100%; } label.sc-lmvz-input { position: absolute; left: 0; top: 50%; transform: translateY(-50%); color: var(--label-color); font-size: 14px; font-family: Router, sans-serif; font-weight: 400; pointer-events: none; transition: all 0.2s ease-out; background-color: transparent; padding: 0; margin: 0; line-height: normal; white-space: nowrap; } label.floating.sc-lmvz-input { top: 0; transform: translateY(-50%) scale(0.85); transform-origin: left top; background-color: var(--label-minimized-bg); padding: 0 var(--label-minimized-padding-x); left: -2px; color: var(--input-text-color); font-weight: 500; } .required-indicator.sc-lmvz-input { color: var(--error-text-color); margin-left: 2px; } input.sc-lmvz-input { border: none; background: transparent; width: 100%; height: 100%; color: var(--input-text-color); font-family: inherit; font-size: 14px; outline: none; padding: 0; margin: 0; font-weight: 400; } input.sc-lmvz-input::placeholder { color: var(--label-color); } .helper-text.sc-lmvz-input { padding-top: 8px; padding-left: 12px; font-size: 12px; color: var(--helper-text-color); font-family: Router, sans-serif; font-weight: 500; } .error-message.sc-lmvz-input { padding-top: 8px; padding-left: 12px; font-size: 12px; color: var(--error-text-color); font-family: Router, sans-serif; font-weight: 500; } .sc-lmvz-input-s > lmvz-button { --lmvz-button-padding: 4px; }`;
8
+ const lmvzInputCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } .sc-lmvz-input-h { display: block; font-family: var(--lmvz-global-font-family-default, Router); --input-radius: var(--lmvz-component-input-radius-default, 999px); --input-bg: var(--lmvz-semantic-color-surface-input-primary, #ffffff); --input-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); --input-border-color-hover: var(--lmvz-semantic-color-border-hover, #c7c7c7); --input-border-color-focus: var(--lmvz-semantic-color-status-on-selected, #0e7ab4); --input-border-width: var(--lmvz-semantic-border-width-default, 1px); --input-height: 48px; --input-padding-x: 16px; --label-color: var(--lmvz-semantic-color-on-surface-input-secondary, #7a7a7a); --input-text-color: var(--lmvz-semantic-color-on-surface-input-primary, #000000); --helper-text-color: var(--lmvz-semantic-color-on-surface-input-secondary, #7a7a7a); --error-text-color: var(--lmvz-semantic-color-status-on-danger, #e52a31); --label-floating-scale: 0.85; --label-minimized-top: -6px; --label-minimized-bg: var(--input-bg); --label-minimized-padding-x: 4px; --input-disabled-opacity: var(--lmvz-component-input-disabled-opacity, 40%); } .input-container.sc-lmvz-input { display: flex; flex-direction: column; position: relative; width: 100%; } .input-wrapper.sc-lmvz-input { background-color: var(--input-bg); border: var(--input-border-width) solid var(--input-border-color); border-radius: var(--input-radius); display: flex; align-items: center; height: var(--input-height); padding: 0 var(--input-padding-x); position: relative; transition: border-color 0.2s ease; gap: 8px; } [disabled].sc-lmvz-input-h .input-wrapper.sc-lmvz-input { opacity: var(--input-disabled-opacity); cursor: not-allowed; pointer-events: none; } .input-container.sc-lmvz-input:focus-within .input-wrapper.sc-lmvz-input { border-color: var(--input-border-color-focus); outline: 2px solid var(--input-border-color-focus); outline-offset: 2px; } .input-container.sc-lmvz-input:has(input:focus-visible) .input-wrapper.sc-lmvz-input { box-shadow: 0 0 0 3px rgb(0 86 214 / 20%); } [error].sc-lmvz-input-h .input-wrapper.sc-lmvz-input { border-color: var(--error-text-color); } [error].sc-lmvz-input-h:focus-within .input-wrapper.sc-lmvz-input { border-color: var(--error-text-color); outline-color: var(--error-text-color); } .sc-lmvz-input-h:not([disabled]) .input-wrapper.sc-lmvz-input:hover { border-color: var(--input-border-color-hover); } .label-input-group.sc-lmvz-input { position: relative; flex-grow: 1; display: flex; align-items: center; height: 100%; } label.sc-lmvz-input { position: absolute; left: 0; top: 50%; transform: translateY(-50%); color: var(--label-color); font-size: 14px; font-family: Router, sans-serif; font-weight: 400; pointer-events: none; transition: all 0.2s ease-out; background-color: transparent; padding: 0; margin: 0; line-height: normal; white-space: nowrap; } label.floating.sc-lmvz-input { top: 0; transform: translateY(-50%) scale(0.85); transform-origin: left top; background-color: var(--label-minimized-bg); padding: 0 var(--label-minimized-padding-x); left: -2px; color: var(--input-text-color); font-weight: 500; } .required-indicator.sc-lmvz-input { color: var(--error-text-color); margin-left: 2px; } input.sc-lmvz-input { border: none; background: transparent; width: 100%; height: 100%; color: var(--input-text-color); font-family: inherit; font-size: 14px; outline: none; padding: 0; margin: 0; font-weight: 400; } input.sc-lmvz-input::placeholder { color: var(--label-color); } div.sc-lmvz-input:empty { display: none; } [role='status'].sc-lmvz-input { padding-top: 8px; padding-left: 12px; font-size: 12px; color: var(--helper-text-color); font-family: Router, sans-serif; font-weight: 500; } [role='alert'].sc-lmvz-input { padding-top: 8px; padding-left: 12px; font-size: 12px; color: var(--error-text-color); font-family: Router, sans-serif; font-weight: 500; } .sc-lmvz-input-s > lmvz-button { --lmvz-button-padding: 4px; }`;
12
9
 
13
10
  let inputIdCounter = 0;
14
- const LmvzInput = class extends ariaValidationController.ReactiveControllerHost {
11
+ const LmvzInput = class extends reactiveControllerHost.ReactiveControllerHost {
15
12
  get el() { return index.getElement(this); }
16
13
  lmvzInput;
17
14
  internals;
@@ -104,7 +101,7 @@ const LmvzInput = class extends ariaValidationController.ReactiveControllerHost
104
101
  this.internals = hostRef.$hostElement$.attachInternals();
105
102
  hostRef.$hostElement$["s-ei"] = this.internals;
106
103
  }
107
- this.addController(new ariaValidationController.AriaValidationController(this, {
104
+ this.addController(new reactiveControllerHost.AriaValidationController(this, {
108
105
  reValidateOnPropChanges: true,
109
106
  }));
110
107
  }
@@ -158,9 +155,9 @@ const LmvzInput = class extends ariaValidationController.ReactiveControllerHost
158
155
  render() {
159
156
  const hasValue = Boolean(this.value);
160
157
  const shouldFloatLabel = hasValue || Boolean(this.placeholder);
161
- return (index.h("div", { key: '402189a211eec970a9f5b8fcc551c6c3508bec05', class: index$1.classNames('input-container', {
158
+ return (index.h("div", { key: '4dffa432df9b8ca5d89c02b59cfe25b9321ca162', class: index$1.classNames('input-container', {
162
159
  'interaction-filled': hasValue,
163
- }) }, index.h("div", { key: '1cbe6011f14774e1226406ef4fe301fd94338444', class: "input-wrapper" }, index.h("slot", { key: 'ea0f30124315c88e9721bb4457126bd6cf18110a', name: "before-input" }), index.h("div", { key: 'f630b5f3a33a961f94b5a782b0ce6b4d49d1958c', class: "label-input-group" }, index.h("label", { key: 'dbb3fe066ebf93f7fcbe6973a1e37685d7206888', htmlFor: this.inputId, class: index$1.classNames({ floating: shouldFloatLabel }) }, this.label, this.required && (index.h("span", { key: '7c1a2458b66becb45c730bfe3ff0c570293f702f', class: "required-indicator", "aria-hidden": "true" }, ' ', "*"))), index.h("input", { key: '14b14457e200d20faf9053848662743dfe1cf417', id: this.inputId, ref: el => (this.nativeInputElement = el), type: this.type, min: this.min, max: this.max, step: this.step, value: this.value, name: this.name, placeholder: this.placeholder, disabled: this.disabled, readOnly: this.readonly, required: this.required, form: this.form, autocomplete: this.autocomplete, inputmode: this.inputmode, autocorrect: this.autocorrect, autocapitalize: this.autocapitalize, spellcheck: this.spellcheck, autofocus: this.autofocus, minlength: this.minlength, maxlength: this.maxlength, pattern: this.pattern, "aria-invalid": this.error ? 'true' : 'false', "aria-required": this.required ? 'true' : 'false', "aria-describedby": this.describedBy, "aria-errormessage": this.errorId, onInput: this.handleInput, onChange: this.handleChange, onFocus: this.handleFocus, onBlur: this.handleBlur })), index.h("slot", { key: '4b530738ff7404eb1bcecc10a0388570e2243cf3', name: "after-input" })), this.helperText && (index.h("div", { key: 'f1a287047e9b4d58aa90af157d50b3d564555e9b', id: this.helperId, class: "helper-text" }, this.helperText)), this.showErrorMessage && (index.h("div", { key: '2a25c4a88a63363cdd814f1d4fead5e8a238621b', id: this.errorId, class: "error-message", role: "alert" }, this.errorMessage))));
160
+ }) }, index.h("div", { key: 'ade1cd1137acce218d458c1b66b2eb29cf887b70', class: "input-wrapper" }, index.h("slot", { key: '013dff3540481724658ff754bf3db0585ec3b6f4', name: "before-input" }), index.h("div", { key: '6587bb63c79f97c31abff5be0a91eb16374971d5', class: "label-input-group" }, index.h("label", { key: '2ef0a35fbd38b255423d2793415568a661476db3', htmlFor: this.inputId, class: index$1.classNames({ floating: shouldFloatLabel }) }, this.label, this.required && (index.h("span", { key: '0785826710ee4ecea96037cc689c34a43113552e', class: "required-indicator", "aria-hidden": "true" }, ' ', "*"))), index.h("input", { key: '5ad0d4b2d1c11dd89824db87e331232ba703a05e', id: this.inputId, ref: el => (this.nativeInputElement = el), type: this.type, min: this.min, max: this.max, step: this.step, value: this.value, name: this.name, placeholder: this.placeholder, disabled: this.disabled, readOnly: this.readonly, required: this.required, form: this.form, autocomplete: this.autocomplete, inputmode: this.inputmode, autocorrect: this.autocorrect, autocapitalize: this.autocapitalize, spellcheck: this.spellcheck, autofocus: this.autofocus, minlength: this.minlength, maxlength: this.maxlength, pattern: this.pattern, "aria-invalid": this.error ? 'true' : 'false', "aria-required": this.required ? 'true' : 'false', "aria-describedby": this.describedBy, "aria-errormessage": this.errorId, onInput: this.handleInput, onChange: this.handleChange, onFocus: this.handleFocus, onBlur: this.handleBlur })), index.h("slot", { key: 'a23676cc830cac7fbf87fef81a8d05b50b831725', name: "after-input" })), index.h("div", { key: 'e0a05138954d70508f840b6d5c4f53e74c2f2979', id: this.helperId, role: "status" }, this.helperText || null), index.h("div", { key: 'fcba57be2d596b3b8aa0ac97b2fd31dc3e77e14b', id: this.errorId, role: "alert" }, (this.showErrorMessage && this.errorMessage) || null)));
164
161
  }
165
162
  static get formAssociated() { return true; }
166
163
  static get watchers() { return {
@@ -1,14 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
+ var reactiveControllerHost = require('./reactive-controller-host-BMDEj1kX.js');
4
5
  var elementActivationController = require('./element-activation-controller-DC_6T0Rt.js');
5
- var ariaValidationController = require('./aria-validation-controller-B3hMkau3.js');
6
- require('./Effect-CNhHt4Xb.js');
7
- require('./MutableQueue-Bk9tBfaK.js');
8
6
 
9
7
  const lmvzMenuitemCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } .sc-lmvz-menuitem-h { display: inline-flex; flex-direction: row; align-items: center; justify-content: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); border-radius: var(--lmvz-semantic-border-radius-lg, 14px); font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); padding: var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)) var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)); cursor: pointer; --lmvz-menuitem-color: var(--lmvz-semantic-color-int-on-tertiary, #545454); --lmvz-menuitem-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); background: var(--lmvz-menuitem-background); color: var(--lmvz-menuitem-color); } .sc-lmvz-menuitem-h:hover { --lmvz-menuitem-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } .sc-lmvz-menuitem-h:active { --lmvz-menuitem-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } .sc-lmvz-menuitem-h:focus-visible { z-index: 1; } [aria-expanded='true'].sc-lmvz-menuitem-h { --lmvz-menuitem-background: var(--lmvz-semantic-color-status-selected, #f1f9fe); --lmvz-menuitem-color: var(--lmvz-semantic-color-status-on-selected, #0e7ab4); }`;
10
8
 
11
- const LmvzMenuItem = class extends ariaValidationController.ReactiveControllerHost {
9
+ const LmvzMenuItem = class extends reactiveControllerHost.ReactiveControllerHost {
12
10
  get el() { return index.getElement(this); }
13
11
  get role() {
14
12
  return 'menuitem';
@@ -21,11 +19,11 @@ const LmvzMenuItem = class extends ariaValidationController.ReactiveControllerHo
21
19
  super();
22
20
  index.registerInstance(this, hostRef);
23
21
  this.lmvzActivation = index.createEvent(this, "lmvzActivation");
24
- this.addController(new ariaValidationController.AriaValidationController(this));
22
+ this.addController(new reactiveControllerHost.AriaValidationController(this));
25
23
  this.addController(new elementActivationController.ElementActivationController(this));
26
24
  }
27
25
  render() {
28
- return (index.h(index.Host, { key: '26714142bd3559ee06b8454a669322744d006714' }, index.h("slot", { key: '9b9af4cb5aeb61b4f030d148505e18ceefef6da9' })));
26
+ return (index.h(index.Host, { key: 'c4a21e628aaf4e983d51ce7b1f38ff66c47ec3ac' }, index.h("slot", { key: '0040d27a11c4bdd5a49dd54f352ba7d17b53ff7b' })));
29
27
  }
30
28
  };
31
29
  LmvzMenuItem.style = lmvzMenuitemCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-9ZJx0550.js');
3
+ var index = require('./index-D3BMpL5w.js');
4
4
  var appGlobals = require('./app-globals-V2Kpy_OQ.js');
5
5
 
6
6
  const defineCustomElements = async (win, options) => {
@@ -0,0 +1,168 @@
1
+ 'use strict';
2
+
3
+ const GLOBAL_STATE_KEY = Symbol('__lmvzAriaValidationRuntimeState');
4
+ const ARIA_VALIDATION_RUNTIME_CHANGED_EVENT = 'lmvz:aria-validation-runtime-changed';
5
+ const getRuntimeState = () => {
6
+ const globalState = globalThis;
7
+ if (!globalState[GLOBAL_STATE_KEY]) {
8
+ globalState[GLOBAL_STATE_KEY] = {
9
+ enabled: false,
10
+ };
11
+ }
12
+ return globalState[GLOBAL_STATE_KEY];
13
+ };
14
+ const isAriaValidationEnabled = () => getRuntimeState().enabled;
15
+ function queueValidation(...args) {
16
+ const state = getRuntimeState();
17
+ if (!state.enabled || !state.runtime)
18
+ return;
19
+ state.runtime.enqueueValidation(...args);
20
+ }
21
+
22
+ class AriaValidationController {
23
+ host;
24
+ config;
25
+ visibilityObserver;
26
+ elementQueued = false;
27
+ elementValidated = false;
28
+ knownValidationErrors = [];
29
+ get disabled() {
30
+ return !isAriaValidationEnabled();
31
+ }
32
+ constructor(host, config) {
33
+ this.host = host;
34
+ this.config = config;
35
+ }
36
+ onRuntimeConfigChange = () => {
37
+ if (!isAriaValidationEnabled())
38
+ return;
39
+ this.checkLazyValidation();
40
+ };
41
+ hostDidLoad() {
42
+ if (typeof window !== 'undefined') {
43
+ window.addEventListener(ARIA_VALIDATION_RUNTIME_CHANGED_EVENT, this.onRuntimeConfigChange);
44
+ }
45
+ if (this.elementQueued || this.elementValidated)
46
+ return;
47
+ if (!this.host.el.checkVisibility()) {
48
+ this.observeVisibilityOnce();
49
+ return;
50
+ }
51
+ this.enqueueValidation();
52
+ }
53
+ hostDidUpdate() {
54
+ this.checkLazyValidation();
55
+ }
56
+ hostDisconnected() {
57
+ this.discardVisibilityObserver();
58
+ if (typeof window !== 'undefined') {
59
+ window.removeEventListener(ARIA_VALIDATION_RUNTIME_CHANGED_EVENT, this.onRuntimeConfigChange);
60
+ }
61
+ }
62
+ observeVisibilityOnce() {
63
+ this.visibilityObserver = new IntersectionObserver(entries => {
64
+ for (const entry of entries) {
65
+ if (entry.target !== this.host.el)
66
+ continue;
67
+ if (!entry.isIntersecting)
68
+ continue;
69
+ this.checkLazyValidation();
70
+ this.discardVisibilityObserver();
71
+ }
72
+ }, {
73
+ root: this.host.el.parentElement,
74
+ rootMargin: '0px',
75
+ threshold: 0.01,
76
+ });
77
+ this.visibilityObserver.observe(this.host.el);
78
+ }
79
+ checkLazyValidation() {
80
+ if (!this.config?.reValidateOnPropChanges && (this.elementQueued || this.elementValidated))
81
+ return;
82
+ this.enqueueValidation();
83
+ }
84
+ enqueueValidation() {
85
+ if (!isAriaValidationEnabled())
86
+ return;
87
+ this.elementQueued = true;
88
+ queueValidation({
89
+ context: { include: this.host.el, exclude: this.knownValidationErrors },
90
+ onComplete: (error, results) => {
91
+ this.elementValidated = true;
92
+ if (error) {
93
+ console.error('Error running ARIA validation:', error);
94
+ return;
95
+ }
96
+ if (!results?.violations.length) {
97
+ if (this.config?.verboseLogging) {
98
+ console.log(`No ARIA validation violations found for ${this.host.el?.tagName || 'element'}.`);
99
+ }
100
+ return;
101
+ }
102
+ const label = `ARIA validation violations found for ${this.host.el?.tagName || 'element'}`;
103
+ if (this.config?.verboseLogging) {
104
+ console.group(label);
105
+ }
106
+ else {
107
+ console.groupCollapsed(label);
108
+ }
109
+ const targets = results.violations.flatMap(violation => {
110
+ console.dir(violation, { showHidden: true, compact: false });
111
+ return violation.nodes.map(node => node.target);
112
+ });
113
+ console.log('element:', this.host.el);
114
+ console.groupEnd();
115
+ this.knownValidationErrors.push(...targets);
116
+ },
117
+ });
118
+ }
119
+ discardVisibilityObserver() {
120
+ if (!this.visibilityObserver)
121
+ return;
122
+ this.visibilityObserver.disconnect();
123
+ this.visibilityObserver = undefined;
124
+ }
125
+ }
126
+
127
+ class ReactiveControllerHost {
128
+ controllers = new Set();
129
+ addController(controller) {
130
+ this.controllers.add(controller);
131
+ }
132
+ removeController(controller) {
133
+ this.controllers.delete(controller);
134
+ }
135
+ get activeControllers() {
136
+ return Array.from(this.controllers).filter(controller => !controller.disabled);
137
+ }
138
+ connectedCallback() {
139
+ if (!this.controllers.size) {
140
+ console.warn('ReactiveControllerHost connected with no controllers registered.', this);
141
+ }
142
+ this.activeControllers.forEach(controller => controller.hostConnected?.());
143
+ }
144
+ disconnectedCallback() {
145
+ this.activeControllers.forEach(controller => controller.hostDisconnected?.());
146
+ }
147
+ componentWillLoad() {
148
+ this.activeControllers.forEach(controller => controller.hostWillLoad?.());
149
+ }
150
+ componentDidLoad() {
151
+ this.activeControllers.forEach(controller => controller.hostDidLoad?.());
152
+ }
153
+ componentWillRender() {
154
+ this.activeControllers.forEach(controller => controller.hostWillRender?.());
155
+ }
156
+ componentDidRender() {
157
+ this.activeControllers.forEach(controller => controller.hostDidRender?.());
158
+ }
159
+ componentWillUpdate() {
160
+ this.activeControllers.forEach(controller => controller.hostWillUpdate?.());
161
+ }
162
+ componentDidUpdate() {
163
+ this.activeControllers.forEach(controller => controller.hostDidUpdate?.());
164
+ }
165
+ }
166
+
167
+ exports.AriaValidationController = AriaValidationController;
168
+ exports.ReactiveControllerHost = ReactiveControllerHost;
@@ -1,9 +1,9 @@
1
1
  import { Host, h } from "@stencil/core";
2
2
  import classNames from "classnames";
3
+ import { AriaValidationController } from "../../utils/aria/aria-validation-controller";
4
+ import { ElementActivationController } from "../../utils/aria/element-activation-controller";
3
5
  import { findFormByRef, inheritAriaAttributes } from "../../utils/component";
4
- import { ElementActivationController } from "../../utils/element-activation-controller";
5
6
  import { ReactiveControllerHost } from "../../utils/reactive-controller-host";
6
- import { AriaValidationController } from "../../utils/validation/aria-validation-controller";
7
7
  export class LmvzButton extends ReactiveControllerHost {
8
8
  el;
9
9
  inheritedAttributes = {};
@@ -55,7 +55,7 @@ export class LmvzButton extends ReactiveControllerHost {
55
55
  };
56
56
  render() {
57
57
  this.renderHiddenButton();
58
- return (h(Host, { key: '578b9f70209fba3a23bd20c3d8b3832cb3005311', "aria-disabled": this.disabled ? 'true' : null }, h("button", { key: '6b25bee333bec8a36eb1bf77b8e11cd9691a998f', disabled: this.disabled, class: classNames(this.variant, { [this.scale ?? '']: !!this.scale, disabled: this.disabled }), ...this.inheritedAttributes }, h("slot", { key: '5e63d9c069ffa7c10585e1fda980d8087cb43cc9' }))));
58
+ return (h(Host, { key: 'cd4a63b866c801ad7f96f59d15e561a54bfe9ec2', "aria-disabled": this.disabled ? 'true' : null }, h("button", { key: 'a1e3ecb88fb84d724df4939519bb22d4b6725c1d', disabled: this.disabled, class: classNames(this.variant, { [this.scale ?? '']: !!this.scale, disabled: this.disabled }), ...this.inheritedAttributes }, h("slot", { key: 'f1fd32c993b1ef9f6d62d6f3affa169c9368df78' }))));
59
59
  }
60
60
  static get is() { return "lmvz-button"; }
61
61
  static get encapsulation() { return "shadow"; }