@lmvz-ds/components 0.37.0 → 0.39.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 (182) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +12 -20
  3. package/cjs/{aria-validation-controller-Do0uEK4t.js → aria-validation-controller-DKNXjnQr.js} +1 -1
  4. package/cjs/checkmark-CuKDPAcx.js +5 -0
  5. package/cjs/{directional-focus-controller-8Xd_7MHT.js → directional-focus-controller-DDnhfX5w.js} +15 -5
  6. package/cjs/{index-BgvZ4y-3.js → index-DWy4nuyZ.js} +41 -0
  7. package/cjs/index.cjs.js +3 -195
  8. package/cjs/lmvz-action-list.cjs.entry.js +4 -4
  9. package/cjs/lmvz-action.cjs.entry.js +1 -1
  10. package/cjs/lmvz-button-group.cjs.entry.js +5 -1
  11. package/cjs/lmvz-button_2.cjs.entry.js +3 -3
  12. package/cjs/lmvz-card.cjs.entry.js +2 -2
  13. package/cjs/lmvz-checkbox.cjs.entry.js +4 -5
  14. package/cjs/lmvz-chip.cjs.entry.js +5 -5
  15. package/cjs/lmvz-components.cjs.js +2 -2
  16. package/cjs/lmvz-datepicker.cjs.entry.js +1 -1
  17. package/cjs/lmvz-header_2.cjs.entry.js +5 -5
  18. package/cjs/lmvz-input.cjs.entry.js +4 -7
  19. package/cjs/lmvz-link.cjs.entry.js +1 -1
  20. package/cjs/lmvz-menuitem.cjs.entry.js +2 -2
  21. package/cjs/lmvz-message.cjs.entry.js +4 -2
  22. package/cjs/lmvz-modal.cjs.entry.js +2 -2
  23. package/cjs/lmvz-popover.cjs.entry.js +5 -14
  24. package/cjs/lmvz-radio.cjs.entry.js +2 -2
  25. package/cjs/lmvz-select.cjs.entry.js +110 -16
  26. package/cjs/lmvz-snackbar.cjs.entry.js +1 -1
  27. package/cjs/lmvz-spinner.cjs.entry.js +1 -1
  28. package/cjs/lmvz-tab.cjs.entry.js +1 -1
  29. package/cjs/lmvz-tabs.cjs.entry.js +9 -3
  30. package/cjs/lmvz-toggle.cjs.entry.js +2 -2
  31. package/cjs/loader.cjs.js +2 -2
  32. package/cjs/public-DTgpEs1_.js +206 -0
  33. package/collection/components/lmvz-action-list/lmvz-action-list.css +119 -116
  34. package/collection/components/lmvz-button/lmvz-button.css +109 -106
  35. package/collection/components/lmvz-card/lmvz-card.css +106 -103
  36. package/collection/components/lmvz-chip/lmvz-chip.css +1 -1
  37. package/collection/components/lmvz-chip/lmvz-chip.js +2 -2
  38. package/collection/components/lmvz-header/lmvz-header.js +2 -2
  39. package/collection/components/lmvz-input/lmvz-input.js +2 -5
  40. package/collection/components/lmvz-message/lmvz-message.css +1 -1
  41. package/collection/components/lmvz-popover/lmvz-popover.css +1 -1
  42. package/collection/components/lmvz-popover/lmvz-popover.js +2 -11
  43. package/collection/components/lmvz-select/lmvz-select.css +102 -53
  44. package/collection/components/lmvz-select/lmvz-select.js +151 -41
  45. package/collection/components/lmvz-snackbar/public.js +3 -0
  46. package/collection/components/lmvz-tabs/lmvz-tabs.js +7 -1
  47. package/collection/utils/aria/directional-focus-controller.js +16 -7
  48. package/collection/utils/icons/public.js +3 -0
  49. package/components/index.js +1 -1
  50. package/components/lmvz-action-list.js +1 -1
  51. package/components/lmvz-action.js +1 -1
  52. package/components/lmvz-button-group.js +1 -1
  53. package/components/lmvz-button.js +1 -1
  54. package/components/lmvz-card.js +1 -1
  55. package/components/lmvz-checkbox.js +1 -1
  56. package/components/lmvz-chip.js +1 -1
  57. package/components/lmvz-datepicker.js +1 -1
  58. package/components/lmvz-header.js +1 -1
  59. package/components/lmvz-icon.js +1 -1
  60. package/components/lmvz-input.js +1 -1
  61. package/components/lmvz-link.js +1 -1
  62. package/components/lmvz-menuitem.js +1 -1
  63. package/components/lmvz-message.js +1 -1
  64. package/components/lmvz-modal.js +1 -1
  65. package/components/lmvz-popover.js +1 -1
  66. package/components/lmvz-radio.js +1 -1
  67. package/components/lmvz-select.js +1 -1
  68. package/components/lmvz-snackbar.js +1 -1
  69. package/components/lmvz-spinner.js +1 -1
  70. package/components/lmvz-tab.js +1 -1
  71. package/components/lmvz-tabs.js +1 -1
  72. package/components/lmvz-toggle.js +1 -1
  73. package/components/{p-BLMXiDE0.js → p--mU29mrX.js} +1 -1
  74. package/components/p-BPa0FHVO.js +1 -0
  75. package/components/p-Bc5MM0zh.js +1 -0
  76. package/components/p-CyDgnpOB.js +1 -0
  77. package/components/p-DAikapVO.js +1 -0
  78. package/components/{p-C-pRMuMh.js → p-DIyiticz.js} +1 -1
  79. package/components/{p-BhALzK62.js → p-DJLdOjL4.js} +1 -1
  80. package/components/p-DSDBThqb.js +1 -0
  81. package/components/{p-diOze8wI.js → p-DXFoXTse.js} +1 -1
  82. package/components/p-DXhP6UeF.js +1 -0
  83. package/components/p-D_mff3n7.js +1 -0
  84. package/components/p-DbBJxuBm.js +1 -0
  85. package/components/p-DsTgD0_a.js +1 -0
  86. package/components/p-DyQ1GbaN.js +1 -0
  87. package/components/p-niXjuPxe.js +1 -0
  88. package/components/{p-BAj4FkUt.js → p-sACbyedu.js} +1 -1
  89. package/esm/{aria-validation-controller-Cp6pofER.js → aria-validation-controller-Dwv7n0rk.js} +1 -1
  90. package/esm/checkmark-DAikapVO.js +3 -0
  91. package/esm/{directional-focus-controller-QukTTWBE.js → directional-focus-controller-CJ0yNC00.js} +15 -5
  92. package/esm/{index-BOXP1Vx0.js → index-DVab4vzV.js} +41 -1
  93. package/esm/index.js +1 -197
  94. package/esm/lmvz-action-list.entry.js +4 -4
  95. package/esm/lmvz-action.entry.js +1 -1
  96. package/esm/lmvz-button-group.entry.js +5 -1
  97. package/esm/lmvz-button_2.entry.js +3 -3
  98. package/esm/lmvz-card.entry.js +2 -2
  99. package/esm/lmvz-checkbox.entry.js +3 -4
  100. package/esm/lmvz-chip.entry.js +5 -5
  101. package/esm/lmvz-components.js +3 -3
  102. package/esm/lmvz-datepicker.entry.js +1 -1
  103. package/esm/lmvz-header_2.entry.js +5 -5
  104. package/esm/lmvz-input.entry.js +4 -7
  105. package/esm/lmvz-link.entry.js +1 -1
  106. package/esm/lmvz-menuitem.entry.js +2 -2
  107. package/esm/lmvz-message.entry.js +4 -2
  108. package/esm/lmvz-modal.entry.js +2 -2
  109. package/esm/lmvz-popover.entry.js +5 -14
  110. package/esm/lmvz-radio.entry.js +2 -2
  111. package/esm/lmvz-select.entry.js +110 -16
  112. package/esm/lmvz-snackbar.entry.js +1 -1
  113. package/esm/lmvz-spinner.entry.js +1 -1
  114. package/esm/lmvz-tab.entry.js +1 -1
  115. package/esm/lmvz-tabs.entry.js +9 -3
  116. package/esm/lmvz-toggle.entry.js +2 -2
  117. package/esm/loader.js +3 -3
  118. package/esm/public-m6pRVUeP.js +204 -0
  119. package/hydrate/index.js +394 -50
  120. package/hydrate/index.mjs +394 -50
  121. package/lmvz-components/index.esm.js +1 -1
  122. package/lmvz-components/lmvz-components.esm.js +1 -1
  123. package/lmvz-components/p-1ba1af8d.entry.js +1 -0
  124. package/lmvz-components/{p-0f65d001.entry.js → p-27e8b4fa.entry.js} +1 -1
  125. package/lmvz-components/p-304c7554.entry.js +1 -0
  126. package/lmvz-components/p-316dd61a.entry.js +1 -0
  127. package/lmvz-components/{p-3d5867df.entry.js → p-335b3867.entry.js} +1 -1
  128. package/lmvz-components/{p-7872a6b4.entry.js → p-3b7203a3.entry.js} +1 -1
  129. package/lmvz-components/p-41286514.entry.js +1 -0
  130. package/lmvz-components/p-6aae1df9.entry.js +1 -0
  131. package/lmvz-components/p-743616c0.entry.js +1 -0
  132. package/lmvz-components/{p-26dd9684.entry.js → p-773e9d95.entry.js} +1 -1
  133. package/lmvz-components/{p-a6fe9b61.entry.js → p-7cbfbc88.entry.js} +1 -1
  134. package/lmvz-components/p-87f21ac9.entry.js +1 -0
  135. package/lmvz-components/{p-a680a7b2.entry.js → p-8ba6ec19.entry.js} +1 -1
  136. package/lmvz-components/p-93b781ca.entry.js +1 -0
  137. package/lmvz-components/p-BPa0FHVO.js +1 -0
  138. package/lmvz-components/p-BlkpdeQI.js +1 -0
  139. package/lmvz-components/p-DAikapVO.js +1 -0
  140. package/lmvz-components/p-DVab4vzV.js +2 -0
  141. package/lmvz-components/{p-BeY96W7m.js → p-Wi9d2-w9.js} +1 -1
  142. package/lmvz-components/p-c884c76e.entry.js +1 -0
  143. package/lmvz-components/{p-eabbf901.entry.js → p-d73bb7fd.entry.js} +1 -1
  144. package/lmvz-components/{p-137b1fe1.entry.js → p-e35f49a1.entry.js} +1 -1
  145. package/lmvz-components/p-ebad823c.entry.js +1 -0
  146. package/lmvz-components/p-edec4d09.entry.js +1 -0
  147. package/lmvz-components/{p-88661c50.entry.js → p-efd9d50e.entry.js} +1 -1
  148. package/lmvz-components/p-f24f5207.entry.js +1 -0
  149. package/lmvz-components/p-f911691c.entry.js +1 -0
  150. package/manifest.json +72 -39
  151. package/package.json +2 -1
  152. package/types/components/lmvz-input/lmvz-input.d.ts +0 -2
  153. package/types/components/lmvz-popover/lmvz-popover.d.ts +0 -1
  154. package/types/components/lmvz-select/lmvz-select.d.ts +12 -3
  155. package/types/components/lmvz-snackbar/public.d.ts +6 -0
  156. package/types/components/lmvz-tabs/lmvz-tabs.d.ts +1 -0
  157. package/types/components.d.ts +39 -19
  158. package/types/index.d.ts +5 -0
  159. package/types/utils/aria/directional-focus-controller.d.ts +9 -7
  160. package/types/utils/icons/public.d.ts +6 -0
  161. package/components/p--FDdvoIg.js +0 -1
  162. package/components/p-BApwCp0R.js +0 -1
  163. package/components/p-BPYBmylI.js +0 -1
  164. package/components/p-C5gRiLRR.js +0 -1
  165. package/components/p-CrQCHVKL.js +0 -1
  166. package/components/p-DiRcp9V6.js +0 -1
  167. package/components/p-DqdrUt_G.js +0 -1
  168. package/lmvz-components/p-00489151.entry.js +0 -1
  169. package/lmvz-components/p-0af0211a.entry.js +0 -1
  170. package/lmvz-components/p-398b5cf4.entry.js +0 -1
  171. package/lmvz-components/p-40716828.entry.js +0 -1
  172. package/lmvz-components/p-492adf21.entry.js +0 -1
  173. package/lmvz-components/p-4deaa010.entry.js +0 -1
  174. package/lmvz-components/p-4fa6e72f.entry.js +0 -1
  175. package/lmvz-components/p-57a366e6.entry.js +0 -1
  176. package/lmvz-components/p-70f1e31a.entry.js +0 -1
  177. package/lmvz-components/p-91eb71bb.entry.js +0 -1
  178. package/lmvz-components/p-BOXP1Vx0.js +0 -2
  179. package/lmvz-components/p-CHxiS3ja.js +0 -1
  180. package/lmvz-components/p-e14058e1.entry.js +0 -1
  181. package/lmvz-components/p-f3f0ed49.entry.js +0 -1
  182. package/lmvz-components/p-f516a949.entry.js +0 -1
@@ -75,14 +75,28 @@ legend {
75
75
 
76
76
  }
77
77
  :host {
78
- /* * the (invalid nested) import will be handled by postcss */
79
- /* stylelint-disable-next-line no-invalid-position-at-import-rule */
78
+ display: inline-block;
79
+
80
80
  button {
81
- /* secondary styling is default, primary is explicit */
82
- /* --lmvz-button-background, --lmvz-button-color, --lmvz-button-radius are declared on :host
81
+ /* * the (invalid nested) import will be handled by postcss */
82
+ /* stylelint-disable-next-line no-invalid-position-at-import-rule */
83
+ /* stylelint-disable nesting-selector-no-missing-scoping-root */
84
+
85
+ /**
86
+ * This fragment is meant to be reusable in multiple component types.
87
+ * CAUTION: always wrap the import in a tag selector (ususally button)!
88
+ */
89
+ & {
90
+ /* the (invalid nested) import will be handled by postcss */
91
+ /* stylelint-disable-next-line no-invalid-position-at-import-rule */
92
+ /* stylelint-disable nesting-selector-no-missing-scoping-root */
93
+ & {
94
+ /* variables are declared on :host
83
95
  so that outer ::slotted(lmvz-button) overrides are inherited correctly via shadow inheritance.
84
- They are also declared here so that non-shadow consumers (e.g. @lmvz-ds/styles buttons.css
85
- bundle and lmvz-card) have the default values in scope. */
96
+ They are also declared here so that non-shadow consumers have the default values in scope. */
97
+
98
+ /* secondary styling is default, primary is explicit */
99
+
86
100
  --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary, #f0f0f0));
87
101
  --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-secondary, #000000));
88
102
  --lmvz-button-radius: var(--lmvz-button-radius-override, var(--lmvz-component-input-radius-default, 999px));
@@ -97,19 +111,20 @@ legend {
97
111
 
98
112
  display: inline-flex;
99
113
  align-items: center;
100
- justify-content: var(--lmvz-button-content-justification-override, center);
101
- gap: var(--lmvz-button-gap);
102
- padding-block: var(--lmvz-button-padding-block);
103
- padding-inline: var(--lmvz-button-padding-inline);
104
- min-height: var(--lmvz-button-min-height);
105
- min-width: var(--lmvz-button-min-height);
106
- border-radius: var(--lmvz-button-radius);
107
- border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color);
114
+ justify-content: var(--lmvz-button-content-justification, center);
115
+ gap: var(--lmvz-button-gap, var(--lmvz-component-input-gap-md, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)));
116
+
117
+ box-sizing: border-box; /* to inlclude paddings & border in min-height */
118
+ padding-block: var(--lmvz-button-padding-block, var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem)));
119
+ padding-inline: var(--lmvz-button-padding-inline, var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem)));
120
+ min-height: var(--lmvz-button-min-height, var(--lmvz-component-input-size-md, clamp(2.5rem, 2.44rem + 0.26vw, 2.75rem)));
121
+ border: var(--lmvz-button-border-width, 0) solid var(--lmvz-button-border-color, transparent);
122
+ border-radius: var(--lmvz-button-radius, var(--lmvz-component-input-radius-default, 999px));
123
+
108
124
  background-color: var(--lmvz-button-background);
109
125
  color: var(--lmvz-button-color);
110
126
  cursor: pointer;
111
127
  font: var(--lmvz-button-font);
112
- /* text-align: center; */
113
128
  text-decoration: none;
114
129
  white-space: nowrap;
115
130
  transition:
@@ -119,106 +134,94 @@ legend {
119
134
  box-shadow 0.15s ease;
120
135
  }
121
136
 
122
- button > * {
123
- font: inherit;
124
- color: inherit;
125
- }
126
-
127
- button:focus-visible {
128
- outline: var(--lmvz-ds-outline, 1px solid #0e7ab4);
129
- outline-offset: var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem));
130
- position: relative;
131
- z-index: 1;
132
- }
133
-
134
- button:is([disabled], .disabled) {
135
- cursor: not-allowed;
136
- pointer-events: none;
137
- /* } */
138
-
139
- /* button:is(:is([disabled], .disabled):not(.secondary):not(.tertiary), .primary:is([disabled], .disabled)) { */
140
- /* button:is([disabled], .disabled) { */
141
- /* --lmvz-button-background: var(--lmvz-global-color-neutral-500); */
142
- /* --lmvz-button-color: var(--lmvz-global-color-neutral-white); */
143
- opacity: var(--lmvz-component-input-disabled-opacity, 40%);
144
- }
145
-
146
- button:not([disabled]):hover {
147
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0));
148
- }
149
-
150
- button:not([disabled]):active {
151
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary-active, #d4d4d4));
152
- }
153
-
154
- button.primary {
155
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary, #000000));
156
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-primary, #ffffff));
157
- --lmvz-button-border-width: var(--lmvz-button-border-width-override, 0);
158
- --lmvz-button-border-color: var(--lmvz-button-border-color-override, transparent);
159
- }
160
-
161
- button.primary:not([disabled], .disabled):hover {
162
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary-hover, #2e2e2e));
163
- }
164
-
165
- button.primary:not([disabled], .disabled):active {
166
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary-active, #545454));
167
- }
168
137
 
169
- button.danger {
170
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary, #ffffff));
171
- --lmvz-button-border-color: var(--lmvz-button-border-color-override, transparent);
172
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
173
- }
174
-
175
- button.danger:not([disabled], .disabled):hover {
176
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-status-danger, #fbdfe0));
177
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
178
- }
179
-
180
- button.danger:not([disabled], .disabled):active {
181
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-status-on-danger-subtle, #e8454b));
182
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
183
- }
184
-
185
- button.tertiary {
186
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary, #ffffff));
187
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary, #000000));
188
- }
138
+ & > * {
139
+ font: inherit;
140
+ color: inherit;
141
+ }
142
+ &:focus-visible {
143
+ outline: var(--lmvz-ds-outline, 1px solid #0e7ab4);
144
+ outline-offset: var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem));
145
+ position: relative;
146
+ z-index: 1;
147
+ }
148
+ &:is([disabled], .disabled) {
149
+ cursor: not-allowed;
150
+ pointer-events: none;
151
+ /* } */
152
+
153
+ /* button:is(:is([disabled], .disabled):not(.secondary):not(.tertiary), .primary:is([disabled], .disabled)) { */
154
+ /* button:is([disabled], .disabled) { */
155
+ /* --lmvz-button-background: var(--lmvz-global-color-neutral-500); */
156
+ /* --lmvz-button-color: var(--lmvz-global-color-neutral-white); */
157
+ opacity: var(--lmvz-component-input-disabled-opacity, 40%);
158
+ }
159
+ &:not([disabled]):hover {
160
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0));
161
+ }
162
+ &:not([disabled]):active {
163
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary-active, #d4d4d4));
164
+ }
189
165
 
190
- button.tertiary:not([disabled], .disabled):hover {
191
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0));
192
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary-hover, #000000));
193
- }
166
+ /* secondary styling is default, primary is explicit */
194
167
 
195
- button.tertiary:not([disabled], .disabled):active {
196
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0));
197
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary-active, #000000));
198
- }
168
+ &.primary {
169
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary, #000000));
170
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-primary, #ffffff));
171
+ --lmvz-button-border-width: var(--lmvz-button-border-width-override, 0);
172
+ --lmvz-button-border-color: var(--lmvz-button-border-color-override, transparent);
173
+ }
174
+ &.primary:not([disabled], .disabled):hover {
175
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary-hover, #2e2e2e));
176
+ }
177
+ &.primary:not([disabled], .disabled):active {
178
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary-active, #545454));
179
+ }
180
+ &.danger {
181
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary, #ffffff));
182
+ --lmvz-button-border-color: var(--lmvz-button-border-color-override, transparent);
183
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
184
+ }
185
+ &.danger:not([disabled], .disabled):hover {
186
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-status-danger, #fbdfe0));
187
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
188
+ }
189
+ &.danger:not([disabled], .disabled):active {
190
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-status-on-danger-subtle, #e8454b));
191
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
192
+ }
193
+ &.tertiary {
194
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary, #ffffff));
195
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary, #000000));
196
+ }
197
+ &.tertiary:not([disabled], .disabled):hover {
198
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0));
199
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary-hover, #000000));
200
+ }
201
+ &.tertiary:not([disabled], .disabled):active {
202
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0));
203
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary-active, #000000));
204
+ }
199
205
 
200
- button.small {
201
- --lmvz-button-padding-inline: var(--lmvz-button-padding-inline-override, var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)));
202
- --lmvz-button-padding-block: var(--lmvz-button-padding-block-override, var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)));
203
- --lmvz-button-gap: var(--lmvz-button-gap-override, var(--lmvz-component-input-gap-sm, clamp(0.38rem, 0.31rem + 0.26vw, 0.63rem)));
204
- --lmvz-button-min-height: var(--lmvz-button-min-height-override, var(--lmvz-component-input-size-sm, clamp(2rem, 1.94rem + 0.26vw, 2.25rem)));
205
- --lmvz-button-font: var(--lmvz-button-font-override, var(--lmvz-typography-label-sm-strong, normal 700 clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem) / 1.5
206
+ &.small {
207
+ --lmvz-button-padding-inline: var(--lmvz-button-padding-inline-override, var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)));
208
+ --lmvz-button-padding-block: var(--lmvz-button-padding-block-override, var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)));
209
+ --lmvz-button-gap: var(--lmvz-button-gap-override, var(--lmvz-component-input-gap-sm, clamp(0.38rem, 0.31rem + 0.26vw, 0.63rem)));
210
+ --lmvz-button-min-height: var(--lmvz-button-min-height-override, var(--lmvz-component-input-size-sm, clamp(2rem, 1.94rem + 0.26vw, 2.25rem)));
211
+ --lmvz-button-font: var(--lmvz-button-font-override, var(--lmvz-typography-label-sm-strong, normal 700 clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem) / 1.5
206
212
  Router));
207
- }
208
-
209
- button.large {
210
- --lmvz-button-padding-inline: var(--lmvz-button-padding-inline-override, var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)));
211
- --lmvz-button-padding-block: var(--lmvz-button-padding-block-override, var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)));
212
- --lmvz-button-gap: var(--lmvz-button-gap-override, var(--lmvz-component-input-gap-lg, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)));
213
- --lmvz-button-min-height: var(--lmvz-button-min-height-override, var(--lmvz-component-input-size-lg, clamp(2.75rem, 2.69rem + 0.26vw, 3rem)));
214
- --lmvz-button-font: var(--lmvz-button-font-override, var(--lmvz-typography-label-lg-strong, normal 700 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.5
213
+ }
214
+ &.large {
215
+ --lmvz-button-padding-inline: var(--lmvz-button-padding-inline-override, var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)));
216
+ --lmvz-button-padding-block: var(--lmvz-button-padding-block-override, var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)));
217
+ --lmvz-button-gap: var(--lmvz-button-gap-override, var(--lmvz-component-input-gap-lg, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)));
218
+ --lmvz-button-min-height: var(--lmvz-button-min-height-override, var(--lmvz-component-input-size-lg, clamp(2.75rem, 2.69rem + 0.26vw, 3rem)));
219
+ --lmvz-button-font: var(--lmvz-button-font-override, var(--lmvz-typography-label-lg-strong, normal 700 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.5
215
220
  Router));
221
+ }
216
222
  }
217
223
 
218
224
 
219
- display: inline-block;
220
-
221
- button {
222
225
  width: 100%;
223
226
  }
224
227
  }
@@ -78,12 +78,23 @@ legend {
78
78
  /** component dependencies */
79
79
  /* * the (invalid nested) import will be handled by postcss */
80
80
  /* stylelint-disable no-invalid-position-at-import-rule */
81
- button {
82
- /* secondary styling is default, primary is explicit */
83
- /* --lmvz-button-background, --lmvz-button-color, --lmvz-button-radius are declared on :host
81
+ /* stylelint-disable nesting-selector-no-missing-scoping-root */
82
+
83
+ /**
84
+ * This fragment is meant to be reusable in multiple component types.
85
+ * CAUTION: always wrap the import in a tag selector (ususally button)!
86
+ */
87
+ & {
88
+ /* the (invalid nested) import will be handled by postcss */
89
+ /* stylelint-disable-next-line no-invalid-position-at-import-rule */
90
+ /* stylelint-disable nesting-selector-no-missing-scoping-root */
91
+ & {
92
+ /* variables are declared on :host
84
93
  so that outer ::slotted(lmvz-button) overrides are inherited correctly via shadow inheritance.
85
- They are also declared here so that non-shadow consumers (e.g. @lmvz-ds/styles buttons.css
86
- bundle and lmvz-card) have the default values in scope. */
94
+ They are also declared here so that non-shadow consumers have the default values in scope. */
95
+
96
+ /* secondary styling is default, primary is explicit */
97
+
87
98
  --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary, #f0f0f0));
88
99
  --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-secondary, #000000));
89
100
  --lmvz-button-radius: var(--lmvz-button-radius-override, var(--lmvz-component-input-radius-default, 999px));
@@ -98,19 +109,20 @@ legend {
98
109
 
99
110
  display: inline-flex;
100
111
  align-items: center;
101
- justify-content: var(--lmvz-button-content-justification-override, center);
102
- gap: var(--lmvz-button-gap);
103
- padding-block: var(--lmvz-button-padding-block);
104
- padding-inline: var(--lmvz-button-padding-inline);
105
- min-height: var(--lmvz-button-min-height);
106
- min-width: var(--lmvz-button-min-height);
107
- border-radius: var(--lmvz-button-radius);
108
- border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color);
112
+ justify-content: var(--lmvz-button-content-justification, center);
113
+ gap: var(--lmvz-button-gap, var(--lmvz-component-input-gap-md, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)));
114
+
115
+ box-sizing: border-box; /* to inlclude paddings & border in min-height */
116
+ padding-block: var(--lmvz-button-padding-block, var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem)));
117
+ padding-inline: var(--lmvz-button-padding-inline, var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem)));
118
+ min-height: var(--lmvz-button-min-height, var(--lmvz-component-input-size-md, clamp(2.5rem, 2.44rem + 0.26vw, 2.75rem)));
119
+ border: var(--lmvz-button-border-width, 0) solid var(--lmvz-button-border-color, transparent);
120
+ border-radius: var(--lmvz-button-radius, var(--lmvz-component-input-radius-default, 999px));
121
+
109
122
  background-color: var(--lmvz-button-background);
110
123
  color: var(--lmvz-button-color);
111
124
  cursor: pointer;
112
125
  font: var(--lmvz-button-font);
113
- /* text-align: center; */
114
126
  text-decoration: none;
115
127
  white-space: nowrap;
116
128
  transition:
@@ -120,100 +132,91 @@ legend {
120
132
  box-shadow 0.15s ease;
121
133
  }
122
134
 
123
- button > * {
124
- font: inherit;
125
- color: inherit;
126
- }
127
135
 
128
- button:focus-visible {
129
- outline: var(--lmvz-ds-outline, 1px solid #0e7ab4);
130
- outline-offset: var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem));
131
- position: relative;
132
- z-index: 1;
133
- }
136
+ & > * {
137
+ font: inherit;
138
+ color: inherit;
139
+ }
140
+ &:focus-visible {
141
+ outline: var(--lmvz-ds-outline, 1px solid #0e7ab4);
142
+ outline-offset: var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem));
143
+ position: relative;
144
+ z-index: 1;
145
+ }
146
+ &:is([disabled], .disabled) {
147
+ cursor: not-allowed;
148
+ pointer-events: none;
149
+ /* } */
150
+
151
+ /* button:is(:is([disabled], .disabled):not(.secondary):not(.tertiary), .primary:is([disabled], .disabled)) { */
152
+ /* button:is([disabled], .disabled) { */
153
+ /* --lmvz-button-background: var(--lmvz-global-color-neutral-500); */
154
+ /* --lmvz-button-color: var(--lmvz-global-color-neutral-white); */
155
+ opacity: var(--lmvz-component-input-disabled-opacity, 40%);
156
+ }
157
+ &:not([disabled]):hover {
158
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0));
159
+ }
160
+ &:not([disabled]):active {
161
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary-active, #d4d4d4));
162
+ }
134
163
 
135
- button:is([disabled], .disabled) {
136
- cursor: not-allowed;
137
- pointer-events: none;
138
- /* } */
139
-
140
- /* button:is(:is([disabled], .disabled):not(.secondary):not(.tertiary), .primary:is([disabled], .disabled)) { */
141
- /* button:is([disabled], .disabled) { */
142
- /* --lmvz-button-background: var(--lmvz-global-color-neutral-500); */
143
- /* --lmvz-button-color: var(--lmvz-global-color-neutral-white); */
144
- opacity: var(--lmvz-component-input-disabled-opacity, 40%);
145
- }
146
-
147
- button:not([disabled]):hover {
148
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0));
149
- }
150
-
151
- button:not([disabled]):active {
152
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary-active, #d4d4d4));
153
- }
154
-
155
- button.primary {
156
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary, #000000));
157
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-primary, #ffffff));
158
- --lmvz-button-border-width: var(--lmvz-button-border-width-override, 0);
159
- --lmvz-button-border-color: var(--lmvz-button-border-color-override, transparent);
160
- }
161
-
162
- button.primary:not([disabled], .disabled):hover {
163
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary-hover, #2e2e2e));
164
- }
165
-
166
- button.primary:not([disabled], .disabled):active {
167
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary-active, #545454));
168
- }
169
-
170
- button.danger {
171
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary, #ffffff));
172
- --lmvz-button-border-color: var(--lmvz-button-border-color-override, transparent);
173
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
174
- }
175
-
176
- button.danger:not([disabled], .disabled):hover {
177
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-status-danger, #fbdfe0));
178
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
179
- }
180
-
181
- button.danger:not([disabled], .disabled):active {
182
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-status-on-danger-subtle, #e8454b));
183
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
184
- }
185
-
186
- button.tertiary {
187
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary, #ffffff));
188
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary, #000000));
189
- }
190
-
191
- button.tertiary:not([disabled], .disabled):hover {
192
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0));
193
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary-hover, #000000));
194
- }
195
-
196
- button.tertiary:not([disabled], .disabled):active {
197
- --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0));
198
- --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary-active, #000000));
199
- }
164
+ /* secondary styling is default, primary is explicit */
200
165
 
201
- button.small {
202
- --lmvz-button-padding-inline: var(--lmvz-button-padding-inline-override, var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)));
203
- --lmvz-button-padding-block: var(--lmvz-button-padding-block-override, var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)));
204
- --lmvz-button-gap: var(--lmvz-button-gap-override, var(--lmvz-component-input-gap-sm, clamp(0.38rem, 0.31rem + 0.26vw, 0.63rem)));
205
- --lmvz-button-min-height: var(--lmvz-button-min-height-override, var(--lmvz-component-input-size-sm, clamp(2rem, 1.94rem + 0.26vw, 2.25rem)));
206
- --lmvz-button-font: var(--lmvz-button-font-override, var(--lmvz-typography-label-sm-strong, normal 700 clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem) / 1.5
166
+ &.primary {
167
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary, #000000));
168
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-primary, #ffffff));
169
+ --lmvz-button-border-width: var(--lmvz-button-border-width-override, 0);
170
+ --lmvz-button-border-color: var(--lmvz-button-border-color-override, transparent);
171
+ }
172
+ &.primary:not([disabled], .disabled):hover {
173
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary-hover, #2e2e2e));
174
+ }
175
+ &.primary:not([disabled], .disabled):active {
176
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-primary-active, #545454));
177
+ }
178
+ &.danger {
179
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary, #ffffff));
180
+ --lmvz-button-border-color: var(--lmvz-button-border-color-override, transparent);
181
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
182
+ }
183
+ &.danger:not([disabled], .disabled):hover {
184
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-status-danger, #fbdfe0));
185
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
186
+ }
187
+ &.danger:not([disabled], .disabled):active {
188
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-status-on-danger-subtle, #e8454b));
189
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-status-on-danger, #a31419));
190
+ }
191
+ &.tertiary {
192
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary, #ffffff));
193
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary, #000000));
194
+ }
195
+ &.tertiary:not([disabled], .disabled):hover {
196
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0));
197
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary-hover, #000000));
198
+ }
199
+ &.tertiary:not([disabled], .disabled):active {
200
+ --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0));
201
+ --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-tertiary-active, #000000));
202
+ }
203
+
204
+ &.small {
205
+ --lmvz-button-padding-inline: var(--lmvz-button-padding-inline-override, var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)));
206
+ --lmvz-button-padding-block: var(--lmvz-button-padding-block-override, var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)));
207
+ --lmvz-button-gap: var(--lmvz-button-gap-override, var(--lmvz-component-input-gap-sm, clamp(0.38rem, 0.31rem + 0.26vw, 0.63rem)));
208
+ --lmvz-button-min-height: var(--lmvz-button-min-height-override, var(--lmvz-component-input-size-sm, clamp(2rem, 1.94rem + 0.26vw, 2.25rem)));
209
+ --lmvz-button-font: var(--lmvz-button-font-override, var(--lmvz-typography-label-sm-strong, normal 700 clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem) / 1.5
207
210
  Router));
208
- }
209
-
210
- button.large {
211
- --lmvz-button-padding-inline: var(--lmvz-button-padding-inline-override, var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)));
212
- --lmvz-button-padding-block: var(--lmvz-button-padding-block-override, var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)));
213
- --lmvz-button-gap: var(--lmvz-button-gap-override, var(--lmvz-component-input-gap-lg, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)));
214
- --lmvz-button-min-height: var(--lmvz-button-min-height-override, var(--lmvz-component-input-size-lg, clamp(2.75rem, 2.69rem + 0.26vw, 3rem)));
215
- --lmvz-button-font: var(--lmvz-button-font-override, var(--lmvz-typography-label-lg-strong, normal 700 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.5
211
+ }
212
+ &.large {
213
+ --lmvz-button-padding-inline: var(--lmvz-button-padding-inline-override, var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)));
214
+ --lmvz-button-padding-block: var(--lmvz-button-padding-block-override, var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)));
215
+ --lmvz-button-gap: var(--lmvz-button-gap-override, var(--lmvz-component-input-gap-lg, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)));
216
+ --lmvz-button-min-height: var(--lmvz-button-min-height-override, var(--lmvz-component-input-size-lg, clamp(2.75rem, 2.69rem + 0.26vw, 3rem)));
217
+ --lmvz-button-font: var(--lmvz-button-font-override, var(--lmvz-typography-label-lg-strong, normal 700 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.5
216
218
  Router));
219
+ }
217
220
  }
218
221
 
219
222
 
@@ -56,7 +56,7 @@
56
56
  }
57
57
 
58
58
  :host([type='active']) {
59
- --lmvz-chip-border-color: var(--lmvz-semantic-color-status-on-active-subtle, #c1e6fa);
59
+ --lmvz-chip-border-color: var(--lmvz-semantic-color-status-on-active-subtle, #7fccf5);
60
60
  --lmvz-chip-background-color: var(--lmvz-semantic-color-status-active, #f6fbfe);
61
61
  --lmvz-chip-foreground-color: var(--lmvz-semantic-color-status-on-active, #0e7ab4);
62
62
  }
@@ -42,13 +42,13 @@ export class LmvzChip extends ReactiveControllerHost {
42
42
  checkContent = debounce(() => {
43
43
  if (!isAriaValidationEnabled())
44
44
  return;
45
- const elements = [...(this.beforeSlot?.assignedElements() ?? []), ...(this.defaultSlot?.assignedElements() ?? []), ...(this.afterSlot?.assignedElements() ?? [])];
45
+ const elements = [...(this.beforeSlot?.assignedElements() ?? []), ...(this.defaultSlot?.assignedNodes() ?? []), ...(this.afterSlot?.assignedElements() ?? [])];
46
46
  if (!elements.length) {
47
47
  console.warn('LmvzChip has no assigned content. Please add content to the default slot or the before-text/after-text slots.');
48
48
  }
49
49
  }, 500);
50
50
  render() {
51
- return (h(Host, { key: 'f326ca8e4dba40941db6b9a711ba46989c4cf1b3', type: this.type, size: this.size }, h("slot", { key: 'f9925e107c2e474ecbaca756451dc4249000b0db', name: "before-text", ref: (el) => (this.beforeSlot = el), onSlotchange: () => this.checkContent() }), h("span", { key: '0b6ea980e0b0500d2955a03088d08eb2ca67f64f', class: "content-overflow-wrapper" }, h("slot", { key: '2b7f5c02e9a09128e0a404c7fe35f6278ce1fa61', ref: (el) => (this.defaultSlot = el), onSlotchange: () => this.checkContent() })), h("slot", { key: '929291cdaccf26d332823f9a100c6b6a84dc04f2', name: "after-text", ref: (el) => (this.afterSlot = el), onSlotchange: () => this.checkContent() })));
51
+ return (h(Host, { key: '63581b0c567d208b200464e9985ac32d97c1ad43', type: this.type, size: this.size }, h("slot", { key: '7aa740cc80b400893dcbe7021d5513d3f1ca476b', name: "before-text", ref: (el) => (this.beforeSlot = el), onSlotchange: () => this.checkContent() }), h("span", { key: 'da5b9e272becef812b4914bf25b451da16bb9012', class: "content-overflow-wrapper" }, h("slot", { key: 'a925dcd383c86dbea63790b5623d159472b6684c', ref: (el) => (this.defaultSlot = el), onSlotchange: () => this.checkContent() })), h("slot", { key: 'e018eafb75b85068c992e9f91c4fac89a4c95153', name: "after-text", ref: (el) => (this.afterSlot = el), onSlotchange: () => this.checkContent() })));
52
52
  }
53
53
  static get is() { return "lmvz-chip"; }
54
54
  static get encapsulation() { return "shadow"; }
@@ -11,7 +11,7 @@ export class LmvzHeader extends ReactiveControllerHost {
11
11
  primarySlot;
12
12
  secondarySlot;
13
13
  secondaryNav;
14
- keyboardNavigationController = new DirectionalFocusController(this, { orientation: 'both' });
14
+ keyboardNavigationController = new DirectionalFocusController(this, { orientation: 'both', manageTabIndex: false, enableHomeAndEnd: false });
15
15
  get primaryMenuitems() {
16
16
  return this.primarySlot?.assignedElements({ flatten: false }) || [];
17
17
  }
@@ -87,7 +87,7 @@ export class LmvzHeader extends ReactiveControllerHost {
87
87
  }
88
88
  }
89
89
  render() {
90
- return (h(Host, { key: '77744fd74160551232eb0347e9ebb01eb3b9bec0', onFocus: this.delegateFocus.bind(this) }, h("div", { key: 'dfd78b2a2ab06b010d9f29dd61f57aced82243fe', class: "brand" }, h("slot", { key: 'c6d29bbdbcbe581a8a170fbeb3d6ab1e31d27dcd', name: "brand" }, h("img", { key: '80cea3b254d153411864d52c2ba300e0eb3c57a7', id: "fallback-logo-lmvz", src: logo, alt: "Lehrmittelverlag Z\u00FCrich" }))), h("nav", { key: '71c53ae0300b61291d0763cdb23f1f645a83928a', "aria-label": "Hauptnavigation" }, h("div", { key: '09949b77a66c54a10c4c141de846fd5697b9d445', role: "menubar", class: "primary-menubar" }, h("slot", { key: 'acec0cf7e13325c49d1e0929b90b056ad1cbbe64', name: "nav-primary", ref: (el) => (this.primarySlot = el) }), h("div", { key: 'd35860c71ad5e28ee2e3aaafb157acbeff41d83e', role: "menu", id: "nav-secondary", class: "secondary-menubar", hidden: !this.lmvzActiveNav, ref: (el) => (this.secondaryNav = el) }, h("slot", { key: 'a4c3a1ad1b1de5bd903b54ed6bd1616ce6517bbb', name: this.secondarySlotName, ref: (el) => (this.secondarySlot = el) })))), h("div", { key: 'ff50045d9ab28bf66a619a48d9ea1f0ed2f5f952', class: "actions" }, h("slot", { key: '6ead0b7a54bf93bb06f0eab2aa8159bd6e96e8f5', name: "actions" }))));
90
+ return (h(Host, { key: 'a72c860d7f67c9631c462c0abcc798bb142dfc55', onFocus: this.delegateFocus.bind(this) }, h("div", { key: '4ed87264d201c513bce284536793692424ed864b', class: "brand" }, h("slot", { key: '9291d81d7f8a630007b8ad827a16ebea7222b9d2', name: "brand" }, h("img", { key: '77da99409f40d93e4a2d190cbb2a8857f1e81c36', id: "fallback-logo-lmvz", src: logo, alt: "Lehrmittelverlag Z\u00FCrich" }))), h("nav", { key: '3c40c04bb23524ae58e391a54b044e225a25ad07', "aria-label": "Hauptnavigation" }, h("div", { key: '207b8032d3d11b4bfacb6e7fcffb683ad5da8ccc', role: "menubar", class: "primary-menubar" }, h("slot", { key: '8ae67a57ac7b6bb6083c469a857542e31b0c2294', name: "nav-primary", ref: (el) => (this.primarySlot = el) }), h("div", { key: '86b9696c95e9ae0e3843fa1607f268dcae8cb279', role: "menu", id: "nav-secondary", class: "secondary-menubar", hidden: !this.lmvzActiveNav, ref: (el) => (this.secondaryNav = el) }, h("slot", { key: '67966de33555dc26ac2dc51fc8a85d456a2e8e85', name: this.secondarySlotName, ref: (el) => (this.secondarySlot = el) })))), h("div", { key: 'bfb2831144cee723c3182d96d64f44be1cc5a78b', class: "actions" }, h("slot", { key: '6956b81fa8ed6c446edc5f7d9708462b39bc8cbb', name: "actions" }))));
91
91
  }
92
92
  static get is() { return "lmvz-header"; }
93
93
  static get encapsulation() { return "shadow"; }
@@ -187,9 +187,6 @@ export class LmvzInput extends ReactiveControllerHost {
187
187
  return;
188
188
  this.updateNativeError('input');
189
189
  };
190
- handleChange = (event) => {
191
- };
192
- handleFocus = () => { };
193
190
  handleInvalid = () => this.updateNativeError('invalid');
194
191
  handleBlur = () => {
195
192
  this.inputValidityActive = true;
@@ -207,9 +204,9 @@ export class LmvzInput extends ReactiveControllerHost {
207
204
  render() {
208
205
  const hasValue = Boolean(this.value);
209
206
  const shouldFloatLabel = hasValue || Boolean(this.placeholder);
210
- return (h("div", { key: '626697f00e9ba3ad46e6304d06b04df0f27bb2c2', class: classNames('input-container', {
207
+ return (h("div", { key: '85f498773efdad53d309e8b1eb5b85ea0601277e', class: classNames('input-container', {
211
208
  'interaction-filled': hasValue,
212
- }) }, h("div", { key: '25ec1f448b689ff80defded1323f321d95d6b197', class: "input-wrapper" }, h("slot", { key: '1d5f301e0327b4cd1714f403615f94658a754466', name: "before-input" }), h("div", { key: 'ef553e6e8f6b74a5bb7cddef003d3b51650c7c9d', class: "label-input-group" }, h("label", { key: '17d92ff7c65598739e8a379680580561936e21dc', htmlFor: this.inputId, class: classNames({ floating: shouldFloatLabel }) }, this.label, this.required && (h("span", { key: 'cd40da3c85cc6cea49d7d8d270bba317534779f5', class: "required-indicator", "aria-hidden": "true" }, ' ', "*"))), h("input", { key: '3ede0644d383c2a3f702230de2aac6fbcb2c7a06', 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, onInvalid: this.handleInvalid })), h("slot", { key: 'b282c5d9553b72af7fd05ed0f872af0d7b8a5689', name: "after-input" })), h("div", { key: 'da6008e798cb5ee29fa7d1ba3208057c1845a217', id: this.helperId, role: "status" }, this.helperText || null), h("div", { key: '5e7717a2d0dd32c53dd7ba6e170152239f3bfae9', id: this.errorId, role: "alert" }, (this.showErrorMessage && this.errorMessage) || null)));
209
+ }) }, h("div", { key: 'eb74bdd8170014c2a17c6046878b0f4d61fece25', class: "input-wrapper" }, h("slot", { key: 'ceb3acb5dcb641900caf9a22f43295d1c407ad2e', name: "before-input" }), h("div", { key: 'a7f626addd83cbf79b435989bec94f777818794e', class: "label-input-group" }, h("label", { key: '391e2d1f873f9aef9bd9e7f14b006d898a699abe', htmlFor: this.inputId, class: classNames({ floating: shouldFloatLabel }) }, this.label, this.required && (h("span", { key: '691251a0efb1a60fd5e53447a6204c13008545a1', class: "required-indicator", "aria-hidden": "true" }, ' ', "*"))), h("input", { key: 'f37d3d7d5076636638b2da59cca91c1cedc7504a', 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, onBlur: this.handleBlur, onInvalid: this.handleInvalid })), h("slot", { key: '22b2be3072fc274bbeff4d92f25dccc5ea50c4d0', name: "after-input" })), h("div", { key: '95f28aad61a5d7ea45fb4479801097036652b08f', id: this.helperId, role: "status" }, this.helperText || null), h("div", { key: '9ea8420b336b33a0fd3b7e53cc4efa44983cbdc3', id: this.errorId, role: "alert" }, (this.showErrorMessage && this.errorMessage) || null)));
213
210
  }
214
211
  static get is() { return "lmvz-input"; }
215
212
  static get encapsulation() { return "scoped"; }
@@ -19,7 +19,7 @@
19
19
 
20
20
  :host([type='neutral']) {
21
21
  background-color: var(--lmvz-semantic-color-status-active, #f6fbfe);
22
- border-color: var(--lmvz-semantic-color-status-on-active-subtle, #c1e6fa);
22
+ border-color: var(--lmvz-semantic-color-status-on-active-subtle, #7fccf5);
23
23
  color: var(--lmvz-semantic-color-status-on-active, #0e7ab4);
24
24
  }
25
25
 
@@ -41,6 +41,6 @@
41
41
  box-sizing: border-box;
42
42
  }
43
43
  }
44
- :host(:not([open])) .container {
44
+ :host(:not([open])) {
45
45
  display: none;
46
46
  }