@nvidia-elements/core 2.19.1 → 2.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/accordion/accordion2.js +4 -4
  3. package/dist/alert/alert-group2.js +1 -1
  4. package/dist/alert/alert2.js +1 -1
  5. package/dist/avatar/avatar-group2.js +1 -1
  6. package/dist/avatar/avatar2.js +1 -1
  7. package/dist/badge/badge2.js +1 -1
  8. package/dist/breadcrumb/breadcrumb2.js +1 -1
  9. package/dist/bundle.d.ts +2 -0
  10. package/dist/bundles/index.d.ts +128 -0
  11. package/dist/bundles/index.js +6 -6
  12. package/dist/button/button2.js +1 -1
  13. package/dist/button-group/button-group2.js +1 -1
  14. package/dist/card/card2.js +4 -4
  15. package/dist/chat-message/chat-message2.js +1 -1
  16. package/dist/checkbox/checkbox-group2.js +1 -1
  17. package/dist/checkbox/checkbox2.js +1 -1
  18. package/dist/color/color2.js +1 -1
  19. package/dist/combobox/combobox2.js +1 -1
  20. package/dist/copy-button/copy-button2.js +1 -1
  21. package/dist/custom-elements-jsx.d.ts +166 -0
  22. package/dist/custom-elements-vue.d.ts +160 -0
  23. package/dist/custom-elements.json +1586 -403
  24. package/dist/data.html.json +117 -0
  25. package/dist/data.snippets.json +27 -27
  26. package/dist/date/date2.js +1 -1
  27. package/dist/datetime/datetime2.js +1 -1
  28. package/dist/dialog/dialog-footer2.js +1 -1
  29. package/dist/dialog/dialog-header2.js +1 -1
  30. package/dist/dialog/dialog2.js +1 -1
  31. package/dist/divider/divider2.js +1 -1
  32. package/dist/dot/dot2.js +1 -1
  33. package/dist/drag-handle/drag-handle2.js +1 -1
  34. package/dist/drawer/drawer-content2.js +1 -1
  35. package/dist/drawer/drawer-footer2.js +1 -1
  36. package/dist/drawer/drawer-header2.js +1 -1
  37. package/dist/drawer/drawer2.js +1 -1
  38. package/dist/dropdown/dropdown-footer2.js +1 -1
  39. package/dist/dropdown/dropdown-header2.js +1 -1
  40. package/dist/dropdown/dropdown2.js +1 -1
  41. package/dist/dropdown-group/dropdown-group.js +1 -1
  42. package/dist/dropzone/dropzone2.js +1 -1
  43. package/dist/file/file2.js +1 -1
  44. package/dist/format-bytes/format-bytes2.js +1 -1
  45. package/dist/format-datetime/format-datetime2.js +1 -1
  46. package/dist/format-number/format-number2.js +1 -1
  47. package/dist/format-relative-time/format-relative-time2.js +1 -1
  48. package/dist/format-truncate/format-truncate2.js +1 -1
  49. package/dist/forms/control/control2.js +1 -1
  50. package/dist/forms/control-group/control-group2.js +1 -1
  51. package/dist/forms/control-message/control-message2.js +1 -1
  52. package/dist/gauge/gauge2.js +1 -1
  53. package/dist/grid/cell/cell2.js +1 -1
  54. package/dist/grid/column/column2.js +1 -1
  55. package/dist/grid/footer/footer2.js +1 -1
  56. package/dist/grid/grid2.js +1 -1
  57. package/dist/grid/header/header2.js +1 -1
  58. package/dist/grid/placeholder/placeholder2.js +1 -1
  59. package/dist/grid/row/row2.js +1 -1
  60. package/dist/icon/icon2.js +2 -2
  61. package/dist/icon-button/icon-button2.js +1 -1
  62. package/dist/iframe/iframe2.js +1 -1
  63. package/dist/index.js +1 -1
  64. package/dist/input/input-group2.js +1 -1
  65. package/dist/input/input2.js +1 -1
  66. package/dist/joystick/define.d.ts +6 -0
  67. package/dist/joystick/define.js +7 -0
  68. package/dist/joystick/define.js.map +1 -0
  69. package/dist/joystick/index.d.ts +1 -0
  70. package/dist/joystick/index.js +2 -0
  71. package/dist/joystick/joystick.d.ts +126 -0
  72. package/dist/joystick/joystick.examples.js +6 -0
  73. package/dist/joystick/joystick.examples.js.map +1 -0
  74. package/dist/joystick/joystick.examples.json +107 -0
  75. package/dist/joystick/joystick.js +6 -0
  76. package/dist/joystick/joystick.js.map +1 -0
  77. package/dist/joystick/joystick2.js +347 -0
  78. package/dist/joystick/joystick2.js.map +1 -0
  79. package/dist/logo/logo2.js +1 -1
  80. package/dist/menu/menu-group2.js +1 -1
  81. package/dist/menu/menu-item2.js +1 -1
  82. package/dist/menu/menu2.js +1 -1
  83. package/dist/month/month2.js +1 -1
  84. package/dist/notification/notification-group2.js +1 -1
  85. package/dist/notification/notification2.js +1 -1
  86. package/dist/page/page-panel/page-panel-content2.js +1 -1
  87. package/dist/page/page-panel/page-panel-footer2.js +1 -1
  88. package/dist/page/page-panel/page-panel-header2.js +1 -1
  89. package/dist/page/page-panel/page-panel2.js +1 -1
  90. package/dist/page/page2.js +1 -1
  91. package/dist/page-header/page-header2.js +1 -1
  92. package/dist/page-loader/page-loader2.js +1 -1
  93. package/dist/pagination/pagination2.js +1 -1
  94. package/dist/panel/panel2.js +4 -4
  95. package/dist/password/password2.js +1 -1
  96. package/dist/polyfills/index.d.ts +0 -1
  97. package/dist/polyfills/index.js.map +1 -1
  98. package/dist/preferences-input/preferences-input2.js +1 -1
  99. package/dist/progress-bar/progress-bar2.js +1 -1
  100. package/dist/progress-dot/progress-dot2.js +1 -1
  101. package/dist/progress-ring/progress-ring2.js +1 -1
  102. package/dist/progressive-filter-chip/progressive-filter-chip2.js +1 -1
  103. package/dist/pulse/pulse2.js +1 -1
  104. package/dist/radio/radio-group2.js +1 -1
  105. package/dist/radio/radio2.js +1 -1
  106. package/dist/range/range2.js +1 -1
  107. package/dist/resize-handle/resize-handle2.js +1 -1
  108. package/dist/search/search2.js +1 -1
  109. package/dist/select/select2.js +1 -1
  110. package/dist/skeleton/skeleton2.js +1 -1
  111. package/dist/sort-button/sort-button2.js +1 -1
  112. package/dist/sparkline/sparkline2.js +1 -1
  113. package/dist/star-rating/star-rating2.js +1 -1
  114. package/dist/steps/steps2.js +2 -2
  115. package/dist/switch/switch-group2.js +1 -1
  116. package/dist/switch/switch2.js +1 -1
  117. package/dist/tabs/tabs-group2.js +1 -1
  118. package/dist/tabs/tabs-item-group2.js +1 -1
  119. package/dist/tabs/tabs2.js +2 -2
  120. package/dist/tag/tag2.js +1 -1
  121. package/dist/textarea/textarea2.js +1 -1
  122. package/dist/time/time2.js +1 -1
  123. package/dist/toast/toast2.js +1 -1
  124. package/dist/toggletip/toggletip-footer2.js +1 -1
  125. package/dist/toggletip/toggletip-header2.js +1 -1
  126. package/dist/toggletip/toggletip2.js +1 -1
  127. package/dist/toolbar/toolbar2.js +1 -1
  128. package/dist/tooltip/tooltip2.js +1 -1
  129. package/dist/tree/tree-node2.js +1 -1
  130. package/dist/tree/tree2.js +1 -1
  131. package/dist/week/week2.js +1 -1
  132. package/package.json +14 -7
  133. package/dist/polyfills/custom-state-set.d.ts +0 -17
  134. package/dist/polyfills/custom-state-set.js +0 -49
  135. package/dist/polyfills/custom-state-set.js.map +0 -1
@@ -12,7 +12,7 @@ var s = class extends o(r) {
12
12
  static {
13
13
  this.metadata = {
14
14
  tag: "nve-button",
15
- version: "2.19.1"
15
+ version: "2.20.1"
16
16
  };
17
17
  }
18
18
  render() {
@@ -26,7 +26,7 @@ var f = class extends c {
26
26
  static {
27
27
  this.metadata = {
28
28
  tag: "nve-button-group",
29
- version: "2.19.1",
29
+ version: "2.20.1",
30
30
  children: [
31
31
  "nve-button",
32
32
  "nve-icon-button",
@@ -16,7 +16,7 @@ var d = class extends c {
16
16
  static {
17
17
  this.metadata = {
18
18
  tag: "nve-card",
19
- version: "2.19.1"
19
+ version: "2.20.1"
20
20
  };
21
21
  }
22
22
  render() {
@@ -37,7 +37,7 @@ var f = class extends c {
37
37
  static {
38
38
  this.metadata = {
39
39
  tag: "nve-card-header",
40
- version: "2.19.1",
40
+ version: "2.20.1",
41
41
  parents: ["nve-card"]
42
42
  };
43
43
  }
@@ -53,7 +53,7 @@ var p = class extends c {
53
53
  static {
54
54
  this.metadata = {
55
55
  tag: "nve-card-content",
56
- version: "2.19.1",
56
+ version: "2.20.1",
57
57
  parents: ["nve-card"]
58
58
  };
59
59
  }
@@ -70,7 +70,7 @@ var p = class extends c {
70
70
  static {
71
71
  this.metadata = {
72
72
  tag: "nve-card-footer",
73
- version: "2.19.1",
73
+ version: "2.20.1",
74
74
  parents: ["nve-card"]
75
75
  };
76
76
  }
@@ -13,7 +13,7 @@ var l = class extends o {
13
13
  static {
14
14
  this.metadata = {
15
15
  tag: "nve-chat-message",
16
- version: "2.19.1"
16
+ version: "2.20.1"
17
17
  };
18
18
  }
19
19
  render() {
@@ -12,7 +12,7 @@ var o = class extends i {
12
12
  static {
13
13
  this.metadata = {
14
14
  tag: "nve-checkbox-group",
15
- version: "2.19.1",
15
+ version: "2.20.1",
16
16
  children: [
17
17
  "label",
18
18
  "nve-control-message",
@@ -15,7 +15,7 @@ var o = class extends i {
15
15
  static {
16
16
  this.metadata = {
17
17
  tag: "nve-checkbox",
18
- version: "2.19.1",
18
+ version: "2.20.1",
19
19
  children: [
20
20
  "label",
21
21
  "input",
@@ -24,7 +24,7 @@ var f = { expand: "expand" }, p = class extends a {
24
24
  static {
25
25
  this.metadata = {
26
26
  tag: "nve-color",
27
- version: "2.19.1"
27
+ version: "2.20.1"
28
28
  };
29
29
  }
30
30
  static {
@@ -39,7 +39,7 @@ var S = {
39
39
  static {
40
40
  this.metadata = {
41
41
  tag: "nve-combobox",
42
- version: "2.19.1"
42
+ version: "2.20.1"
43
43
  };
44
44
  }
45
45
  static {
@@ -35,7 +35,7 @@ var p = {
35
35
  static {
36
36
  this.metadata = {
37
37
  tag: "nve-copy-button",
38
- version: "2.19.1"
38
+ version: "2.20.1"
39
39
  };
40
40
  }
41
41
  static {
@@ -2436,6 +2436,129 @@ Use when embedding within another container such as a toolbar. */
2436
2436
  onreset?: (e: CustomEvent<CustomEvent>) => void;
2437
2437
  };
2438
2438
 
2439
+ export type JoystickProps = {
2440
+ /** */
2441
+ tabindex?: string;
2442
+ /** Sets the normalized increment for each arrow key press. Repeated presses continue adjusting;
2443
+ releasing the final arrow applies the release behavior. Escape cancels the interaction.
2444
+ Invalid steps fall back to 0.1. Modifier shortcuts and locked-axis directions remain available to the browser. */
2445
+ "keyboard-step"?: number;
2446
+ /** Prevents the user from changing the control value.
2447
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/readonly */
2448
+ readonly?: boolean;
2449
+ /** Defines the minimum text length.
2450
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/minlength */
2451
+ minlength?: number;
2452
+ /** Defines the maximum text length.
2453
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/maxlength */
2454
+ maxlength?: number;
2455
+ /** Disables constraint validation for this control.
2456
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/novalidate */
2457
+ novalidate?: boolean;
2458
+ /** Constrains the movement region or selects one axis. Circle limits vector magnitude to one;
2459
+ square permits both axes at full scale and a magnitude of up to Math.SQRT2.
2460
+ With equally scaled planar velocity axes, square corners allow about 41% greater speed.
2461
+ Mixed forward-velocity and turning-rate axes have no common physical magnitude.
2462
+ Changing the constraint projects the current value silently and cancels an active interaction. */
2463
+ constraint?: "circle" | "square" | "horizontal" | "vertical";
2464
+ /** Controls the visual scale of an element to match its importance and available space.
2465
+ - `sm` Compact size for dense layouts or secondary elements with less visual prominence.
2466
+
2467
+ - `md` Standard size that works well in most contexts and provides balanced visibility.
2468
+
2469
+ - `lg` Larger size for emphasizing important elements or improving touch targets in spacious layouts. */
2470
+ size?: "sm" | "md" | "lg";
2471
+ /** Enables background transparency using the --opacity CSS custom property. */
2472
+ opacity?: boolean;
2473
+ /** Determines whether normal release returns to center or holds the final vector.
2474
+ Interrupted interactions return to neutral in either mode. Form reset restores the declared default instead. */
2475
+ release?: "center" | "hold";
2476
+ /** Sets the normalized increment for each arrow key press. Repeated presses continue adjusting;
2477
+ releasing the final arrow applies the release behavior. Escape cancels the interaction.
2478
+ Invalid steps fall back to 0.1. Modifier shortcuts and locked-axis directions remain available to the browser. */
2479
+ keyboardStep?: number;
2480
+ /** Controls automatic position announcements. Focused user input produces polite announcements at most every 500 ms.
2481
+ A quick tap in center mode reports the input coordinates and the return to center.
2482
+ Escape announces the resulting coordinates without a separate cancellation message.
2483
+ Programmatic writes and read-only playback update the description without live announcements.
2484
+ Set off when the application supplies spoken output, the position description on focus remains available. */
2485
+ announce?: "polite" | "off";
2486
+ /** Enables updating internal string values for internationalization. */
2487
+ i18n?: string;
2488
+ /** This Boolean attribute prevents the user from interacting with the element: it cannot receive press or focus events. [MDN](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-disabled)
2489
+ - `true` The element has a disabled state and does not accept interaction.
2490
+
2491
+ - `false` The element has an enabled state and accepts interaction. */
2492
+ disabled?: boolean;
2493
+ /** Indicates whether the user can change the element's value while it remains visible and focusable. [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/readonly)
2494
+ - `true` The element has a readonly state: the user cannot change its value, but can still focus and copy it.
2495
+
2496
+ - `false` The element allows editing and the user can change its value through interaction. */
2497
+ readOnly?: boolean;
2498
+ /** The normalized vector: positive x points right and positive y points down, independent of text direction. Assign a complete finite object within the selected constraint. Invalid vectors throw TypeError without replacing the previous value. Programmatic writes do not dispatch input or change events. Use undefined for an absent sample and a zero vector for recorded neutral input. Set readOnly before assigning replay ownership. User input can replace external writes during an interaction. */
2499
+ value?: { x: number; y: number } | undefined;
2500
+ /** The initial value used when the parent form resets. */
2501
+ defaultValue?: string;
2502
+ /** Requires a value before the parent form can submit.
2503
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/required */
2504
+ required?: boolean;
2505
+ /** Defines the pattern that text values must match.
2506
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/pattern */
2507
+ pattern?: string;
2508
+ /** Defines the minimum numeric value.
2509
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/min */
2510
+ min?: number | null;
2511
+ /** Defines the maximum numeric value.
2512
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/max */
2513
+ max?: number | null;
2514
+ /** Defines the value granularity for numeric inputs.
2515
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/step */
2516
+ step?: number | null;
2517
+ /** Defines the minimum text length.
2518
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/minlength */
2519
+ minLength?: number;
2520
+ /** Defines the maximum text length.
2521
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/maxlength */
2522
+ maxLength?: number;
2523
+ /** The name submitted with the control value as part of the form data.
2524
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/name */
2525
+ name?: string;
2526
+ /** Disables constraint validation for this control.
2527
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/novalidate */
2528
+ noValidate?: boolean;
2529
+ /** The form associated with the control.
2530
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/form */
2531
+ form?: HTMLFormElement | null;
2532
+ /** Indicates whether the control participates in constraint validation.
2533
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/willValidate */
2534
+ willValidate?: boolean;
2535
+ /** The control validity state.
2536
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/validity */
2537
+ validity?: ValidityState;
2538
+ /** The validation message shown when the control is invalid.
2539
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/validationMessage */
2540
+ validationMessage?: string;
2541
+ /** The current value serialized as a string. */
2542
+ valueAsString?: string;
2543
+ /** The current value parsed as a number. */
2544
+ valueAsNumber?: number;
2545
+ /** The control type. */
2546
+ type?: string;
2547
+ /** Labels associated with the control.
2548
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/labels */
2549
+ labels?: NodeList;
2550
+ /** Text content from labels associated with the control. */
2551
+ composedLabel?: string;
2552
+ /** Dispatched with the pointer or keyboard source after setting :state(active), including engagement at neutral. */
2553
+ "oninteraction-start"?: (e: CustomEvent<CustomEvent>) => void;
2554
+ /** Dispatched with the source and terminal reason after clearing :state(active). Interruption first sends any necessary neutral input. Reset restores the declared default without value events. Detached events cannot bubble to former ancestors. */
2555
+ "oninteraction-end"?: (e: CustomEvent<CustomEvent>) => void;
2556
+ /** Dispatched after user input changes the vector, including a return to neutral. Read .value for the current vector. A held position does not generate repeated events. Publish commands at an application-controlled cadence. */
2557
+ oninput?: (e: CustomEvent<never>) => void;
2558
+ /** Dispatched after a normal interaction completes and produces input. Cancellation sends any necessary neutral input without change. */
2559
+ onchange?: (e: CustomEvent<never>) => void;
2560
+ };
2561
+
2439
2562
  export type LogoProps = {
2440
2563
  /** Defines a base color from the theme color palette */
2441
2564
  color?:
@@ -5476,6 +5599,49 @@ export type CustomElements = {
5476
5599
  */
5477
5600
  "nve-input": Partial<InputProps & BaseProps & BaseEvents>;
5478
5601
 
5602
+ /**
5603
+ * A joystick selects a normalized two-axis vector with pointer or keyboard input.
5604
+ * Applications own physical units, coordinate frames, input shaping, publishing cadence, recording clocks,
5605
+ * command-outcome feedback, and alternative controls when needed.
5606
+ *
5607
+ * Give each joystick an accessible name with a label, aria-label, or aria-labelledby.
5608
+ * Editable controls use the application role to receive two-axis keyboard input.
5609
+ * The default accessible description includes both normalized coordinates, keyboard instructions, and release behavior.
5610
+ * A locked axis stays at zero; an absent value reads "No position." Disabled and read-only controls omit instructions.
5611
+ * Coordinates use up to six decimal places and the document language for number formatting.
5612
+ * An explicit aria-description or aria-describedby replaces the default focus description through standard ARIA precedence;
5613
+ * it does not disable live announcements.
5614
+ * ---
5615
+ *
5616
+ *
5617
+ * ### **Events:**
5618
+ * - **interaction-start** - Dispatched with the pointer or keyboard source after setting :state(active), including engagement at neutral.
5619
+ * - **interaction-end** - Dispatched with the source and terminal reason after clearing :state(active). Interruption first sends any necessary neutral input. Reset restores the declared default without value events. Detached events cannot bubble to former ancestors.
5620
+ * - **input** - Dispatched after user input changes the vector, including a return to neutral. Read .value for the current vector. A held position does not generate repeated events. Publish commands at an application-controlled cadence.
5621
+ * - **change** - Dispatched after a normal interaction completes and produces input. Cancellation sends any necessary neutral input without change.
5622
+ *
5623
+ * ### **Methods:**
5624
+ * - **reset()** - Resets the control value to its initial value.
5625
+ * - **reportValidity(): _boolean_** - Reports whether the control satisfies its constraints.
5626
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/reportValidity
5627
+ * - **checkValidity(): _boolean_** - Checks whether the control satisfies its constraints.
5628
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/checkValidity
5629
+ * - **setCustomValidity(message: _string_): _void_** - Sets a custom validation message.
5630
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setCustomValidity
5631
+ *
5632
+ * ### **CSS Properties:**
5633
+ * - **--width** - undefined _(default: undefined)_
5634
+ * - **--height** - undefined _(default: undefined)_
5635
+ * - **--background** - undefined _(default: undefined)_
5636
+ * - **--opacity** - Background opacity when the opacity flag is present. Defaults to 0.6. The border, crosshair, thumb, and focus indicator keep their opacity. _(default: undefined)_
5637
+ * - **--border** - undefined _(default: undefined)_
5638
+ * - **--thumb-width** - undefined _(default: undefined)_
5639
+ * - **--thumb-height** - undefined _(default: undefined)_
5640
+ * - **--thumb-background** - undefined _(default: undefined)_
5641
+ * - **--thumb-border** - undefined _(default: undefined)_
5642
+ */
5643
+ "nve-joystick": Partial<JoystickProps & BaseProps & BaseEvents>;
5644
+
5479
5645
  /**
5480
5646
  * A visual indicator for a brand or application.
5481
5647
  * ---
@@ -2298,6 +2298,123 @@ Use when embedding within another container such as a toolbar. */
2298
2298
  onreset?: (e: CustomEvent<CustomEvent>) => void;
2299
2299
  };
2300
2300
 
2301
+ type JoystickProps = {
2302
+ /** */
2303
+ tabindex?: string;
2304
+ /** Sets the normalized increment for each arrow key press. Repeated presses continue adjusting;
2305
+ releasing the final arrow applies the release behavior. Escape cancels the interaction.
2306
+ Invalid steps fall back to 0.1. Modifier shortcuts and locked-axis directions remain available to the browser. */
2307
+ "keyboard-step"?: number;
2308
+ /** Defines the minimum text length.
2309
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/minlength */
2310
+ minlength?: number;
2311
+ /** Defines the maximum text length.
2312
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/maxlength */
2313
+ maxlength?: number;
2314
+ /** Constrains the movement region or selects one axis. Circle limits vector magnitude to one;
2315
+ square permits both axes at full scale and a magnitude of up to Math.SQRT2.
2316
+ With equally scaled planar velocity axes, square corners allow about 41% greater speed.
2317
+ Mixed forward-velocity and turning-rate axes have no common physical magnitude.
2318
+ Changing the constraint projects the current value silently and cancels an active interaction. */
2319
+ constraint?: "circle" | "square" | "horizontal" | "vertical";
2320
+ /** Controls the visual scale of an element to match its importance and available space.
2321
+ - `sm` Compact size for dense layouts or secondary elements with less visual prominence.
2322
+
2323
+ - `md` Standard size that works well in most contexts and provides balanced visibility.
2324
+
2325
+ - `lg` Larger size for emphasizing important elements or improving touch targets in spacious layouts. */
2326
+ size?: "sm" | "md" | "lg";
2327
+ /** Enables background transparency using the --opacity CSS custom property. */
2328
+ opacity?: boolean;
2329
+ /** Determines whether normal release returns to center or holds the final vector.
2330
+ Interrupted interactions return to neutral in either mode. Form reset restores the declared default instead. */
2331
+ release?: "center" | "hold";
2332
+ /** Sets the normalized increment for each arrow key press. Repeated presses continue adjusting;
2333
+ releasing the final arrow applies the release behavior. Escape cancels the interaction.
2334
+ Invalid steps fall back to 0.1. Modifier shortcuts and locked-axis directions remain available to the browser. */
2335
+ keyboardStep?: number;
2336
+ /** Controls automatic position announcements. Focused user input produces polite announcements at most every 500 ms.
2337
+ A quick tap in center mode reports the input coordinates and the return to center.
2338
+ Escape announces the resulting coordinates without a separate cancellation message.
2339
+ Programmatic writes and read-only playback update the description without live announcements.
2340
+ Set off when the application supplies spoken output, the position description on focus remains available. */
2341
+ announce?: "polite" | "off";
2342
+ /** Enables updating internal string values for internationalization. */
2343
+ i18n?: string;
2344
+ /** This Boolean attribute prevents the user from interacting with the element: it cannot receive press or focus events. [MDN](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-disabled)
2345
+ - `true` The element has a disabled state and does not accept interaction.
2346
+
2347
+ - `false` The element has an enabled state and accepts interaction. */
2348
+ disabled?: boolean;
2349
+ /** Indicates whether the user can change the element's value while it remains visible and focusable. [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/readonly)
2350
+ - `true` The element has a readonly state: the user cannot change its value, but can still focus and copy it.
2351
+
2352
+ - `false` The element allows editing and the user can change its value through interaction. */
2353
+ readOnly?: boolean;
2354
+ /** The normalized vector: positive x points right and positive y points down, independent of text direction. Assign a complete finite object within the selected constraint. Invalid vectors throw TypeError without replacing the previous value. Programmatic writes do not dispatch input or change events. Use undefined for an absent sample and a zero vector for recorded neutral input. Set readOnly before assigning replay ownership. User input can replace external writes during an interaction. */
2355
+ value?: { x: number; y: number } | undefined;
2356
+ /** The initial value used when the parent form resets. */
2357
+ defaultValue?: string;
2358
+ /** Requires a value before the parent form can submit.
2359
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/required */
2360
+ required?: boolean;
2361
+ /** Defines the pattern that text values must match.
2362
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/pattern */
2363
+ pattern?: string;
2364
+ /** Defines the minimum numeric value.
2365
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/min */
2366
+ min?: number | null;
2367
+ /** Defines the maximum numeric value.
2368
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/max */
2369
+ max?: number | null;
2370
+ /** Defines the value granularity for numeric inputs.
2371
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/step */
2372
+ step?: number | null;
2373
+ /** Defines the minimum text length.
2374
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/minlength */
2375
+ minLength?: number;
2376
+ /** Defines the maximum text length.
2377
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/maxlength */
2378
+ maxLength?: number;
2379
+ /** The name submitted with the control value as part of the form data.
2380
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/name */
2381
+ name?: string;
2382
+ /** Disables constraint validation for this control.
2383
+ https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/novalidate */
2384
+ noValidate?: boolean;
2385
+ /** The form associated with the control.
2386
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/form */
2387
+ form?: HTMLFormElement | null;
2388
+ /** Indicates whether the control participates in constraint validation.
2389
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/willValidate */
2390
+ willValidate?: boolean;
2391
+ /** The control validity state.
2392
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/validity */
2393
+ validity?: ValidityState;
2394
+ /** The validation message shown when the control is invalid.
2395
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/validationMessage */
2396
+ validationMessage?: string;
2397
+ /** The current value serialized as a string. */
2398
+ valueAsString?: string;
2399
+ /** The current value parsed as a number. */
2400
+ valueAsNumber?: number;
2401
+ /** The control type. */
2402
+ type?: string;
2403
+ /** Labels associated with the control.
2404
+ https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/labels */
2405
+ labels?: NodeList;
2406
+ /** Text content from labels associated with the control. */
2407
+ composedLabel?: string;
2408
+ /** Dispatched with the pointer or keyboard source after setting :state(active), including engagement at neutral. */
2409
+ "oninteraction-start"?: (e: CustomEvent<CustomEvent>) => void;
2410
+ /** Dispatched with the source and terminal reason after clearing :state(active). Interruption first sends any necessary neutral input. Reset restores the declared default without value events. Detached events cannot bubble to former ancestors. */
2411
+ "oninteraction-end"?: (e: CustomEvent<CustomEvent>) => void;
2412
+ /** Dispatched after user input changes the vector, including a return to neutral. Read .value for the current vector. A held position does not generate repeated events. Publish commands at an application-controlled cadence. */
2413
+ oninput?: (e: CustomEvent<never>) => void;
2414
+ /** Dispatched after a normal interaction completes and produces input. Cancellation sends any necessary neutral input without change. */
2415
+ onchange?: (e: CustomEvent<never>) => void;
2416
+ };
2417
+
2301
2418
  type LogoProps = {
2302
2419
  /** Defines a base color from the theme color palette */
2303
2420
  color?:
@@ -5229,6 +5346,49 @@ export type CustomElements = {
5229
5346
  */
5230
5347
  "nve-input": DefineComponent<InputProps>;
5231
5348
 
5349
+ /**
5350
+ * A joystick selects a normalized two-axis vector with pointer or keyboard input.
5351
+ * Applications own physical units, coordinate frames, input shaping, publishing cadence, recording clocks,
5352
+ * command-outcome feedback, and alternative controls when needed.
5353
+ *
5354
+ * Give each joystick an accessible name with a label, aria-label, or aria-labelledby.
5355
+ * Editable controls use the application role to receive two-axis keyboard input.
5356
+ * The default accessible description includes both normalized coordinates, keyboard instructions, and release behavior.
5357
+ * A locked axis stays at zero; an absent value reads "No position." Disabled and read-only controls omit instructions.
5358
+ * Coordinates use up to six decimal places and the document language for number formatting.
5359
+ * An explicit aria-description or aria-describedby replaces the default focus description through standard ARIA precedence;
5360
+ * it does not disable live announcements.
5361
+ * ---
5362
+ *
5363
+ *
5364
+ * ### **Events:**
5365
+ * - **interaction-start** - Dispatched with the pointer or keyboard source after setting :state(active), including engagement at neutral.
5366
+ * - **interaction-end** - Dispatched with the source and terminal reason after clearing :state(active). Interruption first sends any necessary neutral input. Reset restores the declared default without value events. Detached events cannot bubble to former ancestors.
5367
+ * - **input** - Dispatched after user input changes the vector, including a return to neutral. Read .value for the current vector. A held position does not generate repeated events. Publish commands at an application-controlled cadence.
5368
+ * - **change** - Dispatched after a normal interaction completes and produces input. Cancellation sends any necessary neutral input without change.
5369
+ *
5370
+ * ### **Methods:**
5371
+ * - **reset()** - Resets the control value to its initial value.
5372
+ * - **reportValidity(): _boolean_** - Reports whether the control satisfies its constraints.
5373
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/reportValidity
5374
+ * - **checkValidity(): _boolean_** - Checks whether the control satisfies its constraints.
5375
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/checkValidity
5376
+ * - **setCustomValidity(message: _string_): _void_** - Sets a custom validation message.
5377
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setCustomValidity
5378
+ *
5379
+ * ### **CSS Properties:**
5380
+ * - **--width** - undefined _(default: undefined)_
5381
+ * - **--height** - undefined _(default: undefined)_
5382
+ * - **--background** - undefined _(default: undefined)_
5383
+ * - **--opacity** - Background opacity when the opacity flag is present. Defaults to 0.6. The border, crosshair, thumb, and focus indicator keep their opacity. _(default: undefined)_
5384
+ * - **--border** - undefined _(default: undefined)_
5385
+ * - **--thumb-width** - undefined _(default: undefined)_
5386
+ * - **--thumb-height** - undefined _(default: undefined)_
5387
+ * - **--thumb-background** - undefined _(default: undefined)_
5388
+ * - **--thumb-border** - undefined _(default: undefined)_
5389
+ */
5390
+ "nve-joystick": DefineComponent<JoystickProps>;
5391
+
5232
5392
  /**
5233
5393
  * A visual indicator for a brand or application.
5234
5394
  * ---