@lmvz-ds/components 0.29.0 → 0.31.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 (225) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/cjs/{ds.constants-JXqgKnXL.js → ds.constants-CKeXfK-s.js} +12 -0
  3. package/cjs/{component-C7cavwmZ.js → element.util-Cq4y-_iX.js} +42 -31
  4. package/cjs/index.cjs.js +8 -1
  5. package/cjs/{list-keyboard-controller-CzZdPBeH.js → list-keyboard-controller-StN6Yn8W.js} +13 -8
  6. package/cjs/lmvz-action-list.cjs.entry.js +79 -0
  7. package/cjs/lmvz-button-group.cjs.entry.js +43 -47
  8. package/cjs/lmvz-button_2.cjs.entry.js +10 -8
  9. package/cjs/lmvz-card.cjs.entry.js +2 -2
  10. package/cjs/lmvz-checkbox.cjs.entry.js +2 -2
  11. package/cjs/lmvz-chip.cjs.entry.js +3 -3
  12. package/cjs/lmvz-components.cjs.js +1 -1
  13. package/cjs/lmvz-header_2.cjs.entry.js +3 -3
  14. package/cjs/lmvz-input.cjs.entry.js +6 -6
  15. package/cjs/lmvz-link.cjs.entry.js +69 -0
  16. package/cjs/lmvz-menuitem.cjs.entry.js +2 -2
  17. package/cjs/lmvz-message.cjs.entry.js +2 -2
  18. package/cjs/lmvz-modal.cjs.entry.js +5 -5
  19. package/cjs/lmvz-radio.cjs.entry.js +3 -3
  20. package/cjs/lmvz-select.cjs.entry.js +2 -2
  21. package/cjs/lmvz-snackbar.cjs.entry.js +2 -2
  22. package/cjs/lmvz-spinner.cjs.entry.js +1 -1
  23. package/cjs/lmvz-tab.cjs.entry.js +2 -2
  24. package/cjs/lmvz-tabs.cjs.entry.js +4 -4
  25. package/cjs/lmvz-toggle.cjs.entry.js +5 -5
  26. package/cjs/loader.cjs.js +1 -1
  27. package/cjs/stencil.util-DzvzXSwk.js +25 -0
  28. package/collection/api/ds.constants.js +1 -0
  29. package/collection/collection-manifest.json +2 -0
  30. package/collection/components/lmvz-action-list/lmvz-action-list.css +93 -0
  31. package/collection/components/lmvz-action-list/lmvz-action-list.js +104 -0
  32. package/collection/components/lmvz-button/lmvz-button.css +67 -44
  33. package/collection/components/lmvz-button/lmvz-button.js +28 -7
  34. package/collection/components/lmvz-button-group/lmvz-button-group.css +35 -3
  35. package/collection/components/lmvz-button-group/lmvz-button-group.js +54 -38
  36. package/collection/components/lmvz-card/lmvz-card.css +66 -47
  37. package/collection/components/lmvz-card/lmvz-card.js +2 -2
  38. package/collection/components/lmvz-checkbox/lmvz-checkbox.css +8 -5
  39. package/collection/components/lmvz-checkbox/lmvz-checkbox.js +2 -2
  40. package/collection/components/lmvz-chip/lmvz-chip.css +4 -2
  41. package/collection/components/lmvz-chip/lmvz-chip.js +7 -7
  42. package/collection/components/lmvz-header/lmvz-header.js +2 -2
  43. package/collection/components/lmvz-icon/lmvz-icon.js +2 -2
  44. package/collection/components/lmvz-input/lmvz-input.css +2 -2
  45. package/collection/components/lmvz-input/lmvz-input.js +5 -5
  46. package/collection/components/lmvz-link/lmvz-link.css +44 -0
  47. package/collection/components/lmvz-link/lmvz-link.js +183 -0
  48. package/collection/components/lmvz-menuitem/lmvz-menuitem.css +2 -1
  49. package/collection/components/lmvz-menuitem/lmvz-menuitem.js +2 -2
  50. package/collection/components/lmvz-message/lmvz-message.css +2 -1
  51. package/collection/components/lmvz-message/lmvz-message.js +1 -1
  52. package/collection/components/lmvz-modal/lmvz-modal.css +11 -2
  53. package/collection/components/lmvz-modal/lmvz-modal.js +3 -3
  54. package/collection/components/lmvz-radio/lmvz-radio.css +4 -2
  55. package/collection/components/lmvz-radio/lmvz-radio.js +2 -2
  56. package/collection/components/lmvz-select/lmvz-select.css +4 -3
  57. package/collection/components/lmvz-select/lmvz-select.js +2 -2
  58. package/collection/components/lmvz-snackbar/lmvz-snackbar.css +2 -1
  59. package/collection/components/lmvz-snackbar/lmvz-snackbar.js +1 -1
  60. package/collection/components/lmvz-spinner/lmvz-spinner.js +1 -1
  61. package/collection/components/lmvz-tab/lmvz-tab.css +11 -3
  62. package/collection/components/lmvz-tab/lmvz-tab.js +1 -1
  63. package/collection/components/lmvz-tabs/lmvz-tabs.css +7 -0
  64. package/collection/components/lmvz-tabs/lmvz-tabs.js +2 -2
  65. package/collection/components/lmvz-toggle/lmvz-toggle.css +2 -1
  66. package/collection/components/lmvz-toggle/lmvz-toggle.js +3 -3
  67. package/collection/index.js +1 -1
  68. package/collection/integration/header-integration/header-integration.js +1 -1
  69. package/collection/styles/fragments/_focus-within.css +2 -2
  70. package/collection/utils/aria/aria.constants.js +53 -0
  71. package/collection/utils/aria/list-keyboard-controller.js +12 -7
  72. package/collection/utils/async/async.util.js +62 -0
  73. package/collection/utils/data/event.utilt.js +19 -0
  74. package/collection/utils/data/number.util.js +6 -0
  75. package/collection/utils/data/object.util.js +20 -0
  76. package/collection/utils/data/time.util.js +3 -0
  77. package/collection/utils/element/element.util.js +117 -0
  78. package/collection/utils/{assets.js → stencil/assets.js} +1 -1
  79. package/collection/utils/stencil/stencil.util.js +12 -0
  80. package/components/index.d.ts +4 -0
  81. package/components/index.d.ts.bak +4 -0
  82. package/components/index.js +1 -1
  83. package/components/lmvz-action-list.d.ts +11 -0
  84. package/components/lmvz-action-list.d.ts.bak +11 -0
  85. package/components/lmvz-action-list.js +1 -0
  86. package/components/lmvz-button-group.js +1 -1
  87. package/components/lmvz-button.js +1 -1
  88. package/components/lmvz-card.js +1 -1
  89. package/components/lmvz-checkbox.js +1 -1
  90. package/components/lmvz-chip.js +1 -1
  91. package/components/lmvz-header.js +1 -1
  92. package/components/lmvz-icon.js +1 -1
  93. package/components/lmvz-input.js +1 -1
  94. package/components/lmvz-link.d.ts +11 -0
  95. package/components/lmvz-link.d.ts.bak +11 -0
  96. package/components/lmvz-link.js +1 -0
  97. package/components/lmvz-menuitem.js +1 -1
  98. package/components/lmvz-message.js +1 -1
  99. package/components/lmvz-modal.js +1 -1
  100. package/components/lmvz-radio.js +1 -1
  101. package/components/lmvz-select.js +1 -1
  102. package/components/lmvz-snackbar.js +1 -1
  103. package/components/lmvz-spinner.js +1 -1
  104. package/components/lmvz-tab.js +1 -1
  105. package/components/lmvz-tabs.js +1 -1
  106. package/components/lmvz-toggle.js +1 -1
  107. package/components/p-B0H9qIwE.js +1 -0
  108. package/components/p-B4m1n4et.js +1 -0
  109. package/components/p-CJRqhXjK.js +1 -0
  110. package/components/p-CxfT9IA1.js +1 -0
  111. package/components/{p-CXakymyP.js → p-DJ90327O.js} +1 -1
  112. package/components/p-DeO5Vbxh.js +1 -0
  113. package/components/p-DuEtnKRj.js +1 -0
  114. package/esm/ds.constants-DuEtnKRj.js +18 -0
  115. package/esm/{component-DOTK1OW3.js → element.util-CxfT9IA1.js} +37 -31
  116. package/esm/index.js +1 -1
  117. package/esm/{list-keyboard-controller-Coi8XfUH.js → list-keyboard-controller-BKa9Kd2t.js} +12 -7
  118. package/esm/lmvz-action-list.entry.js +77 -0
  119. package/esm/lmvz-button-group.entry.js +35 -39
  120. package/esm/lmvz-button_2.entry.js +9 -7
  121. package/esm/lmvz-card.entry.js +2 -2
  122. package/esm/lmvz-checkbox.entry.js +2 -2
  123. package/esm/lmvz-chip.entry.js +3 -3
  124. package/esm/lmvz-components.js +1 -1
  125. package/esm/lmvz-header_2.entry.js +3 -3
  126. package/esm/lmvz-input.entry.js +5 -5
  127. package/esm/lmvz-link.entry.js +67 -0
  128. package/esm/lmvz-menuitem.entry.js +2 -2
  129. package/esm/lmvz-message.entry.js +2 -2
  130. package/esm/lmvz-modal.entry.js +3 -3
  131. package/esm/lmvz-radio.entry.js +3 -3
  132. package/esm/lmvz-select.entry.js +2 -2
  133. package/esm/lmvz-snackbar.entry.js +2 -2
  134. package/esm/lmvz-spinner.entry.js +1 -1
  135. package/esm/lmvz-tab.entry.js +2 -2
  136. package/esm/lmvz-tabs.entry.js +4 -4
  137. package/esm/lmvz-toggle.entry.js +4 -4
  138. package/esm/loader.js +1 -1
  139. package/esm/stencil.util-CJRqhXjK.js +23 -0
  140. package/hydrate/index.js +586 -396
  141. package/hydrate/index.mjs +586 -396
  142. package/lmvz-components/index.esm.js +1 -1
  143. package/lmvz-components/lmvz-components.esm.js +1 -1
  144. package/lmvz-components/p-1ce90ea7.entry.js +1 -0
  145. package/lmvz-components/{p-4484ab62.entry.js → p-24125bcf.entry.js} +1 -1
  146. package/lmvz-components/p-25a78ead.entry.js +1 -0
  147. package/lmvz-components/p-4072b2fb.entry.js +1 -0
  148. package/lmvz-components/p-48109e1d.entry.js +1 -0
  149. package/lmvz-components/{p-3b3e532f.entry.js → p-582f44ff.entry.js} +1 -1
  150. package/lmvz-components/p-592d509b.entry.js +1 -0
  151. package/lmvz-components/{p-7fd7e04c.entry.js → p-6f61c24d.entry.js} +1 -1
  152. package/lmvz-components/{p-5fcc6f84.entry.js → p-703b10b5.entry.js} +1 -1
  153. package/lmvz-components/p-74c7521c.entry.js +1 -0
  154. package/lmvz-components/{p-7e9938e7.entry.js → p-80a26307.entry.js} +1 -1
  155. package/lmvz-components/p-8e1f66dd.entry.js +1 -0
  156. package/lmvz-components/p-947e1fe6.entry.js +1 -0
  157. package/lmvz-components/p-B4m1n4et.js +1 -0
  158. package/lmvz-components/p-CJRqhXjK.js +1 -0
  159. package/lmvz-components/p-CxfT9IA1.js +1 -0
  160. package/lmvz-components/p-DuEtnKRj.js +1 -0
  161. package/lmvz-components/{p-2981a238.entry.js → p-b79af711.entry.js} +1 -1
  162. package/lmvz-components/p-c00f0d96.entry.js +1 -0
  163. package/lmvz-components/p-c0d05a97.entry.js +1 -0
  164. package/lmvz-components/p-c3e8092e.entry.js +1 -0
  165. package/lmvz-components/{p-fe7999d4.entry.js → p-ed3c2b13.entry.js} +1 -1
  166. package/lmvz-components/{p-af4e26da.entry.js → p-fa2cd315.entry.js} +1 -1
  167. package/manifest.json +336 -14
  168. package/package.json +9 -1
  169. package/types/api/ds.constants.d.ts +1 -37
  170. package/types/api/ds.types.d.ts +68 -1
  171. package/types/components/lmvz-action-list/lmvz-action-list.d.ts +15 -0
  172. package/types/components/lmvz-button/lmvz-button.d.ts +6 -3
  173. package/types/components/lmvz-button-group/lmvz-button-group.d.ts +2 -0
  174. package/types/components/lmvz-checkbox/lmvz-checkbox.d.ts +1 -1
  175. package/types/components/lmvz-chip/lmvz-chip.d.ts +2 -2
  176. package/types/components/lmvz-header/lmvz-header.d.ts +1 -1
  177. package/types/components/lmvz-icon/lmvz-icon.d.ts +1 -1
  178. package/types/components/lmvz-input/lmvz-input.d.ts +1 -1
  179. package/types/components/lmvz-link/lmvz-link.d.ts +13 -0
  180. package/types/components/lmvz-menuitem/lmvz-menuitem.d.ts +1 -1
  181. package/types/components/lmvz-modal/lmvz-modal.d.ts +1 -1
  182. package/types/components/lmvz-radio/lmvz-radio.d.ts +1 -1
  183. package/types/components/lmvz-select/lmvz-select.d.ts +1 -1
  184. package/types/components/lmvz-tabs/lmvz-tabs.d.ts +1 -1
  185. package/types/components/lmvz-toggle/lmvz-toggle.d.ts +1 -1
  186. package/types/components.d.ts +153 -2
  187. package/types/index.d.ts +1 -1
  188. package/types/utils/aria/aria-validation-controller.d.ts +3 -3
  189. package/types/utils/aria/aria.constants.d.ts +1 -0
  190. package/types/utils/aria/element-activation-controller.d.ts +1 -1
  191. package/types/utils/aria/list-keyboard-controller.d.ts +4 -1
  192. package/types/utils/async/async.util.d.ts +8 -0
  193. package/types/utils/data/event.utilt.d.ts +4 -0
  194. package/types/utils/data/number.util.d.ts +2 -0
  195. package/types/utils/data/object.util.d.ts +5 -0
  196. package/types/utils/data/time.util.d.ts +1 -0
  197. package/types/utils/element/element.util.d.ts +21 -0
  198. package/types/utils/radio/radio-group-controller.d.ts +1 -1
  199. package/types/utils/{reactive-controller-host.d.ts → stencil/reactive-controller-host.d.ts} +1 -1
  200. package/types/utils/stencil/stencil.util.d.ts +6 -0
  201. package/collection/utils/component.js +0 -270
  202. package/collection/utils/http.js +0 -21
  203. package/collection/utils/http.unit.js +0 -47
  204. package/components/p-BxPuC-EQ.js +0 -1
  205. package/components/p-CtaMrBNE.js +0 -1
  206. package/components/p-DBZE-Jyu.js +0 -1
  207. package/components/p-DOTK1OW3.js +0 -1
  208. package/esm/ds.constants-DWePb-zu.js +0 -13
  209. package/lmvz-components/p-087853c3.entry.js +0 -1
  210. package/lmvz-components/p-35b5efdc.entry.js +0 -1
  211. package/lmvz-components/p-4ba3f830.entry.js +0 -1
  212. package/lmvz-components/p-83ab106c.entry.js +0 -1
  213. package/lmvz-components/p-87d207e7.entry.js +0 -1
  214. package/lmvz-components/p-912776f8.entry.js +0 -1
  215. package/lmvz-components/p-CtaMrBNE.js +0 -1
  216. package/lmvz-components/p-DOTK1OW3.js +0 -1
  217. package/lmvz-components/p-DWePb-zu.js +0 -1
  218. package/lmvz-components/p-ca497e57.entry.js +0 -1
  219. package/lmvz-components/p-d8b55d55.entry.js +0 -1
  220. package/lmvz-components/p-f030f6f6.entry.js +0 -1
  221. package/types/utils/component.d.ts +0 -33
  222. package/types/utils/http.d.ts +0 -26
  223. package/types/utils/http.unit.d.ts +0 -1
  224. /package/collection/utils/{reactive-controller-host.js → stencil/reactive-controller-host.js} +0 -0
  225. /package/types/utils/{assets.d.ts → stencil/assets.d.ts} +0 -0
@@ -0,0 +1,15 @@
1
+ import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
2
+ import { type DirectionalFocusHost } from '../../utils/aria/list-keyboard-controller';
3
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
4
+ export declare class LmvzActionList extends ReactiveControllerHost implements DirectionalFocusHost, AriaValidationHost {
5
+ readonly el: HTMLElement;
6
+ private slotEl?;
7
+ get validationEl(): HTMLElement;
8
+ get validationSlot(): HTMLSlotElement | undefined;
9
+ private readonly focusController;
10
+ readonly label?: string;
11
+ constructor();
12
+ componentDidLoad(): void;
13
+ private readonly handleSlotChange;
14
+ render(): any;
15
+ }
@@ -2,15 +2,17 @@ import { type EventEmitter } from '../../stencil-public-runtime';
2
2
  import type { Button, FormRef } from '../../api';
3
3
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
4
4
  import { type ElementActivationHost } from '../../utils/aria/element-activation-controller';
5
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
6
- export declare class LmvzButton extends ReactiveControllerHost implements AriaValidationHost, ElementActivationHost {
5
+ import type { DirectionalFocusReceiver } from '../../utils/aria/list-keyboard-controller';
6
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
7
+ export declare class LmvzButton extends ReactiveControllerHost implements AriaValidationHost, ElementActivationHost, DirectionalFocusReceiver {
7
8
  el: HTMLLmvzButtonElement;
8
9
  validationEl: HTMLButtonElement | undefined;
9
10
  private inheritedAttributes;
10
11
  private formEl;
11
12
  private formButtonEl;
12
13
  lmvzActivation: EventEmitter<void>;
13
- get ti(): number;
14
+ ti: number;
15
+ resolveFocusableElement(): HTMLElement | undefined;
14
16
  scale: Button.Scale;
15
17
  variant?: Button.Variant;
16
18
  disabled: boolean;
@@ -19,6 +21,7 @@ export declare class LmvzButton extends ReactiveControllerHost implements AriaVa
19
21
  formMethod?: 'dialog' | 'get' | 'post';
20
22
  name?: string;
21
23
  value?: string;
24
+ buttonRole?: string;
22
25
  constructor();
23
26
  connectedCallback(): void;
24
27
  disconnectedCallback(): void;
@@ -1,7 +1,9 @@
1
1
  export declare class LmvzButtonGroup {
2
+ el: HTMLElement;
2
3
  private actionsSlot?;
3
4
  private validationMessageCache;
4
5
  private actionsStateObserver?;
6
+ stacked: boolean;
5
7
  get primaryEnabledAction(): HTMLButtonElement | undefined;
6
8
  get hasActions(): boolean;
7
9
  componentDidLoad(): void;
@@ -1,6 +1,6 @@
1
1
  import { type EventEmitter } from '../../stencil-public-runtime';
2
2
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
3
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
3
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
4
4
  export declare class LmvzCheckbox extends ReactiveControllerHost implements AriaValidationHost {
5
5
  readonly el: HTMLElement;
6
6
  get validationEl(): HTMLElement;
@@ -1,6 +1,6 @@
1
- import { type Chip } from '../../api/ds.constants.js';
1
+ import type { Chip } from '../../api/ds.types.js';
2
2
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
3
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
3
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host.js';
4
4
  export declare class LmvzChip extends ReactiveControllerHost implements AriaValidationHost {
5
5
  private readonly ariaValidationController;
6
6
  private beforeSlot?;
@@ -1,6 +1,6 @@
1
1
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
2
2
  import { type DirectionalFocusHost } from '../../utils/aria/list-keyboard-controller';
3
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
3
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
4
4
  export declare class LmvzHeader extends ReactiveControllerHost implements AriaValidationHost, DirectionalFocusHost {
5
5
  readonly el: HTMLElement;
6
6
  get validationEl(): HTMLElement;
@@ -1,7 +1,7 @@
1
1
  import type { SVGString } from '@lmvz-ds/lib-ts/validation/SVGString.d.ts';
2
2
  import type { Icon } from '../../api';
3
3
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
4
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
4
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
5
5
  export declare class LmvzIcon extends ReactiveControllerHost implements AriaValidationHost {
6
6
  private intersectionObserver?;
7
7
  private readonly ariaValidationController;
@@ -1,7 +1,7 @@
1
1
  import { type EventEmitter } from '../../stencil-public-runtime';
2
2
  import type { Input } from '../../api';
3
3
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
4
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
4
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
5
5
  export declare class LmvzInput extends ReactiveControllerHost implements AriaValidationHost {
6
6
  readonly el: HTMLElement;
7
7
  get validationEl(): HTMLElement;
@@ -0,0 +1,13 @@
1
+ import type { Link } from '../../api/ds.types.js';
2
+ export declare class LmvzLink {
3
+ href: string;
4
+ target?: '_self' | '_blank' | '_parent' | '_top';
5
+ rel?: string;
6
+ type: Link.Type;
7
+ externalLabel: string;
8
+ normalizeType(value: string): void;
9
+ componentWillLoad(): void;
10
+ private computeHref;
11
+ private computeRel;
12
+ render(): any;
13
+ }
@@ -1,7 +1,7 @@
1
1
  import { type EventEmitter } from '../../stencil-public-runtime';
2
2
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
3
3
  import { type ElementActivationHost } from '../../utils/aria/element-activation-controller';
4
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
4
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
5
5
  export declare class LmvzMenuItem extends ReactiveControllerHost implements AriaValidationHost, ElementActivationHost {
6
6
  readonly el: HTMLElement;
7
7
  get validationEl(): HTMLElement;
@@ -1,6 +1,6 @@
1
1
  import { type EventEmitter } from '../../stencil-public-runtime';
2
2
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
3
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
3
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
4
4
  export declare class LmvzModal extends ReactiveControllerHost implements AriaValidationHost {
5
5
  readonly el: HTMLLmvzModalElement;
6
6
  private inheritedAriaAttributes;
@@ -1,7 +1,7 @@
1
1
  import { type EventEmitter } from '../../stencil-public-runtime';
2
2
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
3
3
  import { type RadioHost } from '../../utils/radio/radio-group-controller';
4
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
4
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
5
5
  export declare class LmvzRadio extends ReactiveControllerHost implements AriaValidationHost, RadioHost {
6
6
  readonly el: HTMLElement;
7
7
  get validationEl(): HTMLElement;
@@ -1,7 +1,7 @@
1
1
  import { type EventEmitter } from '../../stencil-public-runtime';
2
2
  import type { Select } from '../../api';
3
3
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
4
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
4
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
5
5
  export declare class LmvzSelect extends ReactiveControllerHost implements AriaValidationHost {
6
6
  readonly el: HTMLElement;
7
7
  get validationEl(): HTMLElement;
@@ -1,6 +1,6 @@
1
1
  import { type EventEmitter } from '../../stencil-public-runtime';
2
2
  import { type DirectionalFocusHost } from '../../utils/aria/list-keyboard-controller';
3
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
3
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
4
4
  export declare class LmvzTabs extends ReactiveControllerHost implements DirectionalFocusHost {
5
5
  readonly el: HTMLElement;
6
6
  private readonly instanceId;
@@ -1,6 +1,6 @@
1
1
  import { type EventEmitter } from '../../stencil-public-runtime';
2
2
  import { type AriaValidationHost } from '../../utils/aria/aria-validation-controller';
3
- import { ReactiveControllerHost } from '../../utils/reactive-controller-host';
3
+ import { ReactiveControllerHost } from '../../utils/stencil/reactive-controller-host';
4
4
  export declare class LmvzToggle extends ReactiveControllerHost implements AriaValidationHost {
5
5
  readonly el: HTMLElement;
6
6
  get validationEl(): HTMLElement;
@@ -17,7 +17,38 @@ declare const chipTypes: readonly ["active", "warning", "success", "error", "neu
17
17
  export declare namespace Components {
18
18
  export interface LmvzAction {
19
19
  }
20
+ /**
21
+ * A keyboard-navigable action list component implementing the WAI-ARIA `menu` pattern.
22
+ * Renders a styled `<ul role="menu">` that accepts `<lmvz-button>`, native `<button>`,
23
+ * `<hr>` dividers, and `<div role="group">` groups via the default slot.
24
+ * Arrow keys move focus across interactive items; Home/End jump to first/last.
25
+ * **Disabled items:** Items with the native `disabled` attribute (or `disabled` prop on
26
+ * `<lmvz-button>`) are silently skipped during arrow-key navigation. This matches the
27
+ * behaviour of native `<select>` and keeps the interaction model simple.
28
+ * Trade-off: screen reader users navigating by arrow key cannot discover disabled items
29
+ * or read their labels. If surfacing disabled items to all users is required, use
30
+ * `aria-disabled="true"` on the item instead and handle activation prevention in the
31
+ * click/activation handler — the controller's `isFocusableElement` callback can then be
32
+ * used to override the skip logic.
33
+ * @example ```html
34
+ * <lmvz-action-list label="Actions">
35
+ * <lmvz-button>Edit</lmvz-button>
36
+ * <hr />
37
+ * <lmvz-button class="lmvz-action-list-item--danger">Delete</lmvz-button>
38
+ * </lmvz-action-list>
39
+ * ```
40
+ */
41
+ export interface LmvzActionList {
42
+ /**
43
+ * Accessible label for the menu, reflected as `aria-label` on the host Element. When absent, `aria-label` is not rendered on the host.
44
+ */
45
+ "label"?: string;
46
+ }
20
47
  export interface LmvzButton {
48
+ /**
49
+ * ARIA role applied to the inner `<button>` element. When set, the host element receives `role="presentation"` so that AT sees only one interactive element with the correct role. Use `"menuitem"` when the button is a child of a `role="menu"` container.
50
+ */
51
+ "buttonRole"?: string;
21
52
  /**
22
53
  * Whether the button is disabled
23
54
  * @default false
@@ -41,7 +72,6 @@ export declare namespace Components {
41
72
  */
42
73
  "scale": Button.Scale;
43
74
  /**
44
- * @readonly
45
75
  * @default 0
46
76
  */
47
77
  "ti": number;
@@ -69,6 +99,10 @@ export declare namespace Components {
69
99
  * @readonly
70
100
  */
71
101
  "primaryEnabledAction": HTMLButtonElement | undefined;
102
+ /**
103
+ * @default false
104
+ */
105
+ "stacked": boolean;
72
106
  }
73
107
  export interface LmvzCard {
74
108
  /**
@@ -374,6 +408,34 @@ export declare namespace Components {
374
408
  */
375
409
  "value"?: string;
376
410
  }
411
+ /**
412
+ * The link renders a native anchor element with an icon indicating navigation type.
413
+ */
414
+ export interface LmvzLink {
415
+ /**
416
+ * Visually-hidden text appended inside the anchor when `target="_blank"`. Provides an accessible cue for screen reader users.
417
+ * @default '(öffnet in neuem Tab)'
418
+ */
419
+ "externalLabel": string;
420
+ /**
421
+ * The URL the link points to. Mirrors the native anchor `href` attribute.
422
+ * @default ''
423
+ */
424
+ "href": string;
425
+ /**
426
+ * Relationship of the linked URL. When `target="_blank"`, `noopener` and `noreferrer` are automatically added if not already present.
427
+ */
428
+ "rel"?: string;
429
+ /**
430
+ * Where to open the linked document.
431
+ */
432
+ "target"?: '_self' | '_blank' | '_parent' | '_top';
433
+ /**
434
+ * Navigation type. Drives the icon shown after the label text. - `internal` → arrow-right icon - `external` → external icon Invalid values are normalized to `internal`.
435
+ * @default 'internal'
436
+ */
437
+ "type": Link.Type;
438
+ }
377
439
  /**
378
440
  * A menu item component to be used within the `lmvz-header` component's navigation slots.
379
441
  */
@@ -745,8 +807,15 @@ declare const iconWeights: readonly ["thin", "medium", "bold"];
745
807
  export declare namespace Input {
746
808
  export type Type = (typeof inputTypes)[number];
747
809
  export type Size = (typeof inputSizes)[number];
810
+
748
811
  export type Autocomplete = HTMLInputElement['autocomplete'];
812
+ /**
813
+ * Inputmode attribute for mobile keyboards
814
+ */
749
815
  export type Inputmode = 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';
816
+ /**
817
+ * Autocapitalize attribute for mobile keyboards
818
+ */
750
819
  export type Autocapitalize = 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters';
751
820
  }
752
821
 
@@ -760,7 +829,38 @@ export declare namespace JSX {
760
829
  export interface LmvzAction {
761
830
  "onActionClick"?: (event: LmvzActionCustomEvent<MouseEvent>) => void;
762
831
  }
832
+ /**
833
+ * A keyboard-navigable action list component implementing the WAI-ARIA `menu` pattern.
834
+ * Renders a styled `<ul role="menu">` that accepts `<lmvz-button>`, native `<button>`,
835
+ * `<hr>` dividers, and `<div role="group">` groups via the default slot.
836
+ * Arrow keys move focus across interactive items; Home/End jump to first/last.
837
+ * **Disabled items:** Items with the native `disabled` attribute (or `disabled` prop on
838
+ * `<lmvz-button>`) are silently skipped during arrow-key navigation. This matches the
839
+ * behaviour of native `<select>` and keeps the interaction model simple.
840
+ * Trade-off: screen reader users navigating by arrow key cannot discover disabled items
841
+ * or read their labels. If surfacing disabled items to all users is required, use
842
+ * `aria-disabled="true"` on the item instead and handle activation prevention in the
843
+ * click/activation handler — the controller's `isFocusableElement` callback can then be
844
+ * used to override the skip logic.
845
+ * @example ```html
846
+ * <lmvz-action-list label="Actions">
847
+ * <lmvz-button>Edit</lmvz-button>
848
+ * <hr />
849
+ * <lmvz-button class="lmvz-action-list-item--danger">Delete</lmvz-button>
850
+ * </lmvz-action-list>
851
+ * ```
852
+ */
853
+ export interface LmvzActionList {
854
+ /**
855
+ * Accessible label for the menu, reflected as `aria-label` on the host Element. When absent, `aria-label` is not rendered on the host.
856
+ */
857
+ "label"?: string;
858
+ }
763
859
  export interface LmvzButton {
860
+ /**
861
+ * ARIA role applied to the inner `<button>` element. When set, the host element receives `role="presentation"` so that AT sees only one interactive element with the correct role. Use `"menuitem"` when the button is a child of a `role="menu"` container.
862
+ */
863
+ "buttonRole"?: string;
764
864
  /**
765
865
  * Whether the button is disabled
766
866
  * @default false
@@ -788,7 +888,6 @@ export declare namespace JSX {
788
888
  */
789
889
  "scale"?: Button.Scale;
790
890
  /**
791
- * @readonly
792
891
  * @default 0
793
892
  */
794
893
  "ti"?: number;
@@ -816,6 +915,10 @@ export declare namespace JSX {
816
915
  * @readonly
817
916
  */
818
917
  "primaryEnabledAction"?: HTMLButtonElement | undefined;
918
+ /**
919
+ * @default false
920
+ */
921
+ "stacked"?: boolean;
819
922
  }
820
923
  export interface LmvzCard {
821
924
  /**
@@ -1093,6 +1196,34 @@ export declare namespace JSX {
1093
1196
  */
1094
1197
  "value"?: string;
1095
1198
  }
1199
+ /**
1200
+ * The link renders a native anchor element with an icon indicating navigation type.
1201
+ */
1202
+ export interface LmvzLink {
1203
+ /**
1204
+ * Visually-hidden text appended inside the anchor when `target="_blank"`. Provides an accessible cue for screen reader users.
1205
+ * @default '(öffnet in neuem Tab)'
1206
+ */
1207
+ "externalLabel"?: string;
1208
+ /**
1209
+ * The URL the link points to. Mirrors the native anchor `href` attribute.
1210
+ * @default ''
1211
+ */
1212
+ "href"?: string;
1213
+ /**
1214
+ * Relationship of the linked URL. When `target="_blank"`, `noopener` and `noreferrer` are automatically added if not already present.
1215
+ */
1216
+ "rel"?: string;
1217
+ /**
1218
+ * Where to open the linked document.
1219
+ */
1220
+ "target"?: '_self' | '_blank' | '_parent' | '_top';
1221
+ /**
1222
+ * Navigation type. Drives the icon shown after the label text. - `internal` → arrow-right icon - `external` → external icon Invalid values are normalized to `internal`.
1223
+ * @default 'internal'
1224
+ */
1225
+ "type"?: Link.Type;
1226
+ }
1096
1227
  /**
1097
1228
  * A menu item component to be used within the `lmvz-header` component's navigation slots.
1098
1229
  */
@@ -1438,6 +1569,9 @@ export declare namespace JSX {
1438
1569
  "value"?: string;
1439
1570
  }
1440
1571
 
1572
+ export interface LmvzActionListAttributes {
1573
+ "label": string;
1574
+ }
1441
1575
  export interface LmvzButtonAttributes {
1442
1576
  "ti": number;
1443
1577
  "scale": Button.Scale;
@@ -1448,8 +1582,10 @@ export declare namespace JSX {
1448
1582
  "formMethod": 'dialog' | 'get' | 'post';
1449
1583
  "name": string;
1450
1584
  "value": string;
1585
+ "buttonRole": string;
1451
1586
  }
1452
1587
  export interface LmvzButtonGroupAttributes {
1588
+ "stacked": boolean;
1453
1589
  "hasActions": boolean;
1454
1590
  }
1455
1591
  export interface LmvzCardAttributes {
@@ -1513,6 +1649,13 @@ export declare namespace JSX {
1513
1649
  "size": Input.Size;
1514
1650
  "error": boolean;
1515
1651
  }
1652
+ export interface LmvzLinkAttributes {
1653
+ "href": string;
1654
+ "target": '_self' | '_blank' | '_parent' | '_top';
1655
+ "rel": string;
1656
+ "type": Link.Type;
1657
+ "externalLabel": string;
1658
+ }
1516
1659
  export interface LmvzMenuitemAttributes {
1517
1660
  "role": string;
1518
1661
  "ti": number;
@@ -1584,6 +1727,7 @@ export declare namespace JSX {
1584
1727
 
1585
1728
  export interface IntrinsicElements {
1586
1729
  "lmvz-action": LmvzAction;
1730
+ "lmvz-action-list": Omit<LmvzActionList, keyof LmvzActionListAttributes> & { [K in keyof LmvzActionList & keyof LmvzActionListAttributes]?: LmvzActionList[K] } & { [K in keyof LmvzActionList & keyof LmvzActionListAttributes as `attr:${K}`]?: LmvzActionListAttributes[K] } & { [K in keyof LmvzActionList & keyof LmvzActionListAttributes as `prop:${K}`]?: LmvzActionList[K] };
1587
1731
  "lmvz-button": Omit<LmvzButton, keyof LmvzButtonAttributes> & { [K in keyof LmvzButton & keyof LmvzButtonAttributes]?: LmvzButton[K] } & { [K in keyof LmvzButton & keyof LmvzButtonAttributes as `attr:${K}`]?: LmvzButtonAttributes[K] } & { [K in keyof LmvzButton & keyof LmvzButtonAttributes as `prop:${K}`]?: LmvzButton[K] };
1588
1732
  "lmvz-button-group": Omit<LmvzButtonGroup, keyof LmvzButtonGroupAttributes> & { [K in keyof LmvzButtonGroup & keyof LmvzButtonGroupAttributes]?: LmvzButtonGroup[K] } & { [K in keyof LmvzButtonGroup & keyof LmvzButtonGroupAttributes as `attr:${K}`]?: LmvzButtonGroupAttributes[K] } & { [K in keyof LmvzButtonGroup & keyof LmvzButtonGroupAttributes as `prop:${K}`]?: LmvzButtonGroup[K] };
1589
1733
  "lmvz-card": Omit<LmvzCard, keyof LmvzCardAttributes> & { [K in keyof LmvzCard & keyof LmvzCardAttributes]?: LmvzCard[K] } & { [K in keyof LmvzCard & keyof LmvzCardAttributes as `attr:${K}`]?: LmvzCardAttributes[K] } & { [K in keyof LmvzCard & keyof LmvzCardAttributes as `prop:${K}`]?: LmvzCard[K] } & OneOf<"cardTitle", LmvzCard["cardTitle"], LmvzCardAttributes["cardTitle"]>;
@@ -1592,6 +1736,7 @@ export declare namespace JSX {
1592
1736
  "lmvz-header": Omit<LmvzHeader, keyof LmvzHeaderAttributes> & { [K in keyof LmvzHeader & keyof LmvzHeaderAttributes]?: LmvzHeader[K] } & { [K in keyof LmvzHeader & keyof LmvzHeaderAttributes as `attr:${K}`]?: LmvzHeaderAttributes[K] } & { [K in keyof LmvzHeader & keyof LmvzHeaderAttributes as `prop:${K}`]?: LmvzHeader[K] };
1593
1737
  "lmvz-icon": Omit<LmvzIcon, keyof LmvzIconAttributes> & { [K in keyof LmvzIcon & keyof LmvzIconAttributes]?: LmvzIcon[K] } & { [K in keyof LmvzIcon & keyof LmvzIconAttributes as `attr:${K}`]?: LmvzIconAttributes[K] } & { [K in keyof LmvzIcon & keyof LmvzIconAttributes as `prop:${K}`]?: LmvzIcon[K] } & OneOf<"icon", LmvzIcon["icon"], LmvzIconAttributes["icon"]>;
1594
1738
  "lmvz-input": Omit<LmvzInput, keyof LmvzInputAttributes> & { [K in keyof LmvzInput & keyof LmvzInputAttributes]?: LmvzInput[K] } & { [K in keyof LmvzInput & keyof LmvzInputAttributes as `attr:${K}`]?: LmvzInputAttributes[K] } & { [K in keyof LmvzInput & keyof LmvzInputAttributes as `prop:${K}`]?: LmvzInput[K] } & OneOf<"label", LmvzInput["label"], LmvzInputAttributes["label"]>;
1739
+ "lmvz-link": Omit<LmvzLink, keyof LmvzLinkAttributes> & { [K in keyof LmvzLink & keyof LmvzLinkAttributes]?: LmvzLink[K] } & { [K in keyof LmvzLink & keyof LmvzLinkAttributes as `attr:${K}`]?: LmvzLinkAttributes[K] } & { [K in keyof LmvzLink & keyof LmvzLinkAttributes as `prop:${K}`]?: LmvzLink[K] };
1595
1740
  "lmvz-menuitem": Omit<LmvzMenuitem, keyof LmvzMenuitemAttributes> & { [K in keyof LmvzMenuitem & keyof LmvzMenuitemAttributes]?: LmvzMenuitem[K] } & { [K in keyof LmvzMenuitem & keyof LmvzMenuitemAttributes as `attr:${K}`]?: LmvzMenuitemAttributes[K] } & { [K in keyof LmvzMenuitem & keyof LmvzMenuitemAttributes as `prop:${K}`]?: LmvzMenuitem[K] };
1596
1741
  "lmvz-message": Omit<LmvzMessage, keyof LmvzMessageAttributes> & { [K in keyof LmvzMessage & keyof LmvzMessageAttributes]?: LmvzMessage[K] } & { [K in keyof LmvzMessage & keyof LmvzMessageAttributes as `attr:${K}`]?: LmvzMessageAttributes[K] } & { [K in keyof LmvzMessage & keyof LmvzMessageAttributes as `prop:${K}`]?: LmvzMessage[K] };
1597
1742
  "lmvz-modal": Omit<LmvzModal, keyof LmvzModalAttributes> & { [K in keyof LmvzModal & keyof LmvzModalAttributes]?: LmvzModal[K] } & { [K in keyof LmvzModal & keyof LmvzModalAttributes as `attr:${K}`]?: LmvzModalAttributes[K] } & { [K in keyof LmvzModal & keyof LmvzModalAttributes as `prop:${K}`]?: LmvzModal[K] };
@@ -1605,6 +1750,12 @@ export declare namespace JSX {
1605
1750
  }
1606
1751
  }
1607
1752
 
1753
+ export declare namespace Link {
1754
+ export type Type = (typeof linkTypes)[number];
1755
+ }
1756
+
1757
+ declare const linkTypes: readonly ["internal", "external"];
1758
+
1608
1759
  export declare interface LmvzActionCustomEvent<T> extends CustomEvent<T> {
1609
1760
  detail: T;
1610
1761
  target: HTMLLmvzActionElement;
package/types/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export * from '@lmvz-ds/aria-validation';
2
2
  export type * from './components.d.ts';
3
- export { chipSizes, chipTypes, iconSizes, iconWeights, inputSizes, inputTypes, messageTypes, selectSizes, textSizes } from './api/ds.constants';
3
+ export * from './api/ds.constants';
4
4
  export type { LmvzDS, Typography } from './api';
5
5
  export * from './components/lmvz-message/public';
6
6
  export * from './components/lmvz-snackbar/public';
@@ -1,4 +1,4 @@
1
- import type { ReactiveController } from '../reactive-controller-host';
1
+ import type { ReactiveController } from '../stencil/reactive-controller-host';
2
2
  export { isAriaValidationEnabled } from '@lmvz-ds/aria-validation';
3
3
  export type AriaValidationHost<T extends HTMLElement = HTMLElement> = {
4
4
  validationEl: T | undefined;
@@ -9,7 +9,7 @@ type Config = {
9
9
  verboseLogging?: boolean;
10
10
  validationTiming?: 'load' | 'slot';
11
11
  };
12
- export declare class AriaValidationController implements ReactiveController {
12
+ export declare class AriaValidationController<T extends HTMLElement = HTMLElement> implements ReactiveController {
13
13
  private readonly host;
14
14
  private readonly config?;
15
15
  private visibilityObserver?;
@@ -19,7 +19,7 @@ export declare class AriaValidationController implements ReactiveController {
19
19
  private static knownValidationErrors;
20
20
  get disabled(): boolean;
21
21
  private get useVerboseLogging();
22
- constructor(host: AriaValidationHost, config?: Config | undefined);
22
+ constructor(host: AriaValidationHost<T>, config?: Config | undefined);
23
23
  private readonly onRuntimeConfigChange;
24
24
  hostDidLoad(): void;
25
25
  hostDidUpdate(): void;
@@ -0,0 +1 @@
1
+ export declare const ariaAttributes: string[];
@@ -1,5 +1,5 @@
1
1
  import type { EventEmitter } from '../../stencil-public-runtime';
2
- import type { ReactiveController } from '../reactive-controller-host';
2
+ import type { ReactiveController } from '../stencil/reactive-controller-host';
3
3
  export type ElementActivationHost = {
4
4
  el: HTMLElement;
5
5
  lmvzActivation: EventEmitter<void>;
@@ -1,7 +1,10 @@
1
- import type { ReactiveController } from '../reactive-controller-host';
1
+ import type { ReactiveController } from '../stencil/reactive-controller-host';
2
2
  export type DirectionalFocusHost = {
3
3
  el: HTMLElement;
4
4
  };
5
+ export type DirectionalFocusReceiver = {
6
+ resolveFocusableElement(): HTMLElement | undefined;
7
+ };
5
8
  export type DirectionalFocusOrientation = 'horizontal' | 'vertical' | 'both';
6
9
  export type DirectionalFocusControllerConfig = {
7
10
  orientation?: DirectionalFocusOrientation;
@@ -0,0 +1,8 @@
1
+ import type { EventEmitter } from '../../stencil-public-runtime';
2
+ export declare const __zone_symbol__requestAnimationFrame: typeof window.requestAnimationFrame;
3
+ export declare const requestAnimationFrame: typeof window.requestAnimationFrame;
4
+ export declare const transitionEndAsync: (el: HTMLElement | null, expectedDuration?: number) => Promise<unknown>;
5
+ export declare const raf: (h: FrameRequestCallback) => number;
6
+ export declare const deferEvent: (event: EventEmitter) => EventEmitter;
7
+ export declare const debounceEvent: (event: EventEmitter, wait: number) => EventEmitter;
8
+ export declare const debounce: (func: (...args: unknown[]) => void, wait?: number) => (...args: unknown[]) => any;
@@ -0,0 +1,4 @@
1
+ export declare const pointerCoord: (ev: TouchEvent | MouseEvent) => {
2
+ x: number;
3
+ y: number;
4
+ };
@@ -0,0 +1,2 @@
1
+ export declare const clamp: (min: number, n: number, max: number) => number;
2
+ export declare const isSafeNumber: (input: unknown) => input is number;
@@ -0,0 +1,5 @@
1
+ export declare const shallowEqualStringMap: (map1: {
2
+ [k: string]: unknown;
3
+ } | undefined, map2: {
4
+ [k: string]: unknown;
5
+ } | undefined) => boolean;
@@ -0,0 +1 @@
1
+ export declare const now: (ev: UIEvent) => number;
@@ -0,0 +1,21 @@
1
+ import type { Attributes, Button, FormRef } from '../../api';
2
+ export declare function isActionButton(element: Element): element is HTMLButtonElement;
3
+ export declare function isLmvzButton(element?: Element): element is HTMLLmvzButtonElement;
4
+ export declare function isDisabledButton(element: HTMLButtonElement): boolean;
5
+ export declare function isVisible(element: Element): boolean;
6
+ export declare function getActionVariant(element: HTMLElement): Button.Variant;
7
+ export declare function isPrimaryAction(element: HTMLElement): boolean;
8
+ export declare function isSecondaryAction(element: HTMLElement): boolean;
9
+ export declare const inheritAttributes: (el: HTMLElement, attributes?: string[]) => Attributes;
10
+ export declare const inheritAriaAttributes: (el: HTMLElement, ignoreList?: string[]) => Attributes;
11
+ type EventCallback<K extends keyof HTMLElementEventMap> = (this: HTMLElement, ev: HTMLElementEventMap[K]) => unknown;
12
+ export declare const addEventListener: <T extends HTMLElement, K extends keyof HTMLElementEventMap>(el: T, eventName: K, callback: EventCallback<K>, options?: boolean | AddEventListenerOptions) => void;
13
+ export declare const removeEventListener: <K extends keyof HTMLElementEventMap>(el: HTMLElement, eventName: K, callback: EventCallback<K>, opts?: boolean | AddEventListenerOptions) => void;
14
+ export declare const getElementRoot: (el: HTMLElement, fallback?: HTMLElement) => HTMLElement | ShadowRoot;
15
+ export declare const hasShadowDom: (el: HTMLElement) => boolean;
16
+ export declare const focusVisibleElement: (el: HTMLElement) => void;
17
+ export declare const renderHiddenInput: (always: boolean, container: HTMLElement, name: string, value: string | undefined | null, disabled: boolean) => void;
18
+ export declare function getDeepActiveElement(root?: Document): Element | null;
19
+ export declare function canReceiveFocus(el: Element | undefined): boolean;
20
+ export declare function findFormByRef(form: FormRef, el: HTMLElement): HTMLFormElement | null;
21
+ export {};
@@ -1,4 +1,4 @@
1
- import type { ReactiveController } from '../reactive-controller-host';
1
+ import type { ReactiveController } from '../stencil/reactive-controller-host';
2
2
  export interface RadioHost {
3
3
  el: HTMLElement;
4
4
  name?: string;
@@ -1,4 +1,4 @@
1
- import { ComponentInterface } from '../stencil-public-runtime';
1
+ import { ComponentInterface } from '../../stencil-public-runtime';
2
2
  export interface ReactiveController {
3
3
  hostConnected?(): void;
4
4
  hostDisconnected?(): void;
@@ -0,0 +1,6 @@
1
+ type LazyLoadedComponent<T extends HTMLElement> = T & {
2
+ componentOnReady: () => Promise<T>;
3
+ };
4
+ export declare const componentOnReady: <T extends HTMLElement>(stencilEl: T, callback: (el: T) => unknown) => void;
5
+ export declare const hasLazyBuild: <T extends HTMLElement>(stencilEl: T) => stencilEl is LazyLoadedComponent<T>;
6
+ export {};