@nvidia-elements/core 2.23.3 → 2.23.5

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 (274) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/accordion/accordion2.js +49 -49
  3. package/dist/accordion/accordion2.js.map +1 -1
  4. package/dist/alert/alert-group2.js +22 -21
  5. package/dist/alert/alert-group2.js.map +1 -1
  6. package/dist/alert/alert2.js +29 -28
  7. package/dist/alert/alert2.js.map +1 -1
  8. package/dist/avatar/avatar-group2.js +9 -9
  9. package/dist/avatar/avatar-group2.js.map +1 -1
  10. package/dist/avatar/avatar2.js +12 -11
  11. package/dist/avatar/avatar2.js.map +1 -1
  12. package/dist/badge/badge2.js +27 -26
  13. package/dist/badge/badge2.js.map +1 -1
  14. package/dist/breadcrumb/breadcrumb2.js +17 -17
  15. package/dist/breadcrumb/breadcrumb2.js.map +1 -1
  16. package/dist/bundles/index.js +6 -6
  17. package/dist/button/button2.js +12 -12
  18. package/dist/button/button2.js.map +1 -1
  19. package/dist/button-group/button-group2.js +18 -18
  20. package/dist/button-group/button-group2.js.map +1 -1
  21. package/dist/card/card2.js +28 -28
  22. package/dist/card/card2.js.map +1 -1
  23. package/dist/chat-message/chat-message2.js +15 -14
  24. package/dist/chat-message/chat-message2.js.map +1 -1
  25. package/dist/checkbox/checkbox-group2.js +8 -8
  26. package/dist/checkbox/checkbox-group2.js.map +1 -1
  27. package/dist/checkbox/checkbox2.js +8 -8
  28. package/dist/checkbox/checkbox2.js.map +1 -1
  29. package/dist/color/color2.js +21 -21
  30. package/dist/color/color2.js.map +1 -1
  31. package/dist/combobox/combobox2.js +37 -37
  32. package/dist/combobox/combobox2.js.map +1 -1
  33. package/dist/copy-button/copy-button.d.ts +1 -1
  34. package/dist/copy-button/copy-button2.js +21 -21
  35. package/dist/copy-button/copy-button2.js.map +1 -1
  36. package/dist/custom-elements.json +0 -76
  37. package/dist/data.snippets.json +27 -27
  38. package/dist/date/date2.js +19 -19
  39. package/dist/date/date2.js.map +1 -1
  40. package/dist/datetime/datetime2.js +19 -19
  41. package/dist/datetime/datetime2.js.map +1 -1
  42. package/dist/dialog/dialog-footer2.js +7 -7
  43. package/dist/dialog/dialog-footer2.js.map +1 -1
  44. package/dist/dialog/dialog-header2.js +7 -7
  45. package/dist/dialog/dialog-header2.js.map +1 -1
  46. package/dist/dialog/dialog.js +1 -1
  47. package/dist/dialog/dialog.js.map +1 -1
  48. package/dist/dialog/dialog2.js +25 -25
  49. package/dist/dialog/dialog2.js.map +1 -1
  50. package/dist/divider/divider2.js +12 -12
  51. package/dist/divider/divider2.js.map +1 -1
  52. package/dist/dot/dot2.js +17 -16
  53. package/dist/dot/dot2.js.map +1 -1
  54. package/dist/drag-handle/drag-handle2.js +12 -12
  55. package/dist/drag-handle/drag-handle2.js.map +1 -1
  56. package/dist/drawer/drawer-content2.js +7 -7
  57. package/dist/drawer/drawer-content2.js.map +1 -1
  58. package/dist/drawer/drawer-footer2.js +7 -7
  59. package/dist/drawer/drawer-footer2.js.map +1 -1
  60. package/dist/drawer/drawer-header2.js +7 -7
  61. package/dist/drawer/drawer-header2.js.map +1 -1
  62. package/dist/drawer/drawer.js +1 -1
  63. package/dist/drawer/drawer.js.map +1 -1
  64. package/dist/drawer/drawer2.js +21 -21
  65. package/dist/drawer/drawer2.js.map +1 -1
  66. package/dist/dropdown/dropdown-footer2.js +7 -7
  67. package/dist/dropdown/dropdown-footer2.js.map +1 -1
  68. package/dist/dropdown/dropdown-header2.js +7 -7
  69. package/dist/dropdown/dropdown-header2.js.map +1 -1
  70. package/dist/dropdown/dropdown2.js +21 -21
  71. package/dist/dropdown/dropdown2.js.map +1 -1
  72. package/dist/dropdown-group/dropdown-group.js +10 -10
  73. package/dist/dropdown-group/dropdown-group.js.map +1 -1
  74. package/dist/dropzone/dropzone2.js +19 -19
  75. package/dist/dropzone/dropzone2.js.map +1 -1
  76. package/dist/file/file2.js +8 -8
  77. package/dist/file/file2.js.map +1 -1
  78. package/dist/format-bytes/format-bytes2.js +13 -13
  79. package/dist/format-bytes/format-bytes2.js.map +1 -1
  80. package/dist/format-datetime/format-datetime2.js +14 -14
  81. package/dist/format-datetime/format-datetime2.js.map +1 -1
  82. package/dist/format-number/format-number2.js +20 -20
  83. package/dist/format-number/format-number2.js.map +1 -1
  84. package/dist/format-relative-time/format-relative-time2.js +11 -11
  85. package/dist/format-relative-time/format-relative-time2.js.map +1 -1
  86. package/dist/format-truncate/format-truncate2.js +21 -21
  87. package/dist/format-truncate/format-truncate2.js.map +1 -1
  88. package/dist/forms/control/control2.js +30 -29
  89. package/dist/forms/control/control2.js.map +1 -1
  90. package/dist/forms/control-group/control-group2.js +19 -18
  91. package/dist/forms/control-group/control-group2.js.map +1 -1
  92. package/dist/forms/control-message/control-message2.js +15 -15
  93. package/dist/forms/control-message/control-message2.js.map +1 -1
  94. package/dist/gauge/gauge2.js +20 -20
  95. package/dist/gauge/gauge2.js.map +1 -1
  96. package/dist/ghost/ghost2.js +10 -10
  97. package/dist/ghost/ghost2.js.map +1 -1
  98. package/dist/grid/cell/cell2.js +9 -9
  99. package/dist/grid/cell/cell2.js.map +1 -1
  100. package/dist/grid/column/column2.js +16 -16
  101. package/dist/grid/column/column2.js.map +1 -1
  102. package/dist/grid/footer/footer2.js +12 -12
  103. package/dist/grid/footer/footer2.js.map +1 -1
  104. package/dist/grid/grid2.js +30 -30
  105. package/dist/grid/grid2.js.map +1 -1
  106. package/dist/grid/header/header2.js +20 -20
  107. package/dist/grid/header/header2.js.map +1 -1
  108. package/dist/grid/placeholder/placeholder2.js +9 -9
  109. package/dist/grid/placeholder/placeholder2.js.map +1 -1
  110. package/dist/grid/row/row2.js +15 -15
  111. package/dist/grid/row/row2.js.map +1 -1
  112. package/dist/icon/icon2.js +40 -40
  113. package/dist/icon/icon2.js.map +1 -1
  114. package/dist/icon-button/icon-button2.js +17 -17
  115. package/dist/icon-button/icon-button2.js.map +1 -1
  116. package/dist/iframe/iframe2.js +7 -7
  117. package/dist/iframe/iframe2.js.map +1 -1
  118. package/dist/index.js +1 -1
  119. package/dist/input/input-group2.js +8 -8
  120. package/dist/input/input-group2.js.map +1 -1
  121. package/dist/input/input2.js +10 -10
  122. package/dist/input/input2.js.map +1 -1
  123. package/dist/internal/controllers/state-expanded.controller.js +1 -1
  124. package/dist/internal/controllers/state-expanded.controller.js.map +1 -1
  125. package/dist/internal/controllers/state-highlighted.controller.js +1 -1
  126. package/dist/internal/controllers/state-highlighted.controller.js.map +1 -1
  127. package/dist/internal/controllers/state-scroll.controller.js +1 -1
  128. package/dist/internal/controllers/state-scroll.controller.js.map +1 -1
  129. package/dist/internal/controllers/state-selected.controller.js +1 -1
  130. package/dist/internal/controllers/state-selected.controller.js.map +1 -1
  131. package/dist/internal/controllers/type-anchor.controller.js +1 -1
  132. package/dist/internal/controllers/type-anchor.controller.js.map +1 -1
  133. package/dist/internal/controllers/type-closable.controller.js +1 -1
  134. package/dist/internal/controllers/type-closable.controller.js.map +1 -1
  135. package/dist/internal/controllers/type-expandable.controller.js +1 -1
  136. package/dist/internal/controllers/type-expandable.controller.js.map +1 -1
  137. package/dist/internal/controllers/type-native-popover.controller.js +6 -6
  138. package/dist/internal/controllers/type-native-popover.controller.js.map +1 -1
  139. package/dist/internal/controllers/type-popover.controller.examples.js.map +1 -1
  140. package/dist/internal/controllers/type-selectable.controller.js +1 -1
  141. package/dist/internal/controllers/type-selectable.controller.js.map +1 -1
  142. package/dist/internal/index.d.ts +0 -1
  143. package/dist/internal/index.js +57 -61
  144. package/dist/internal/index.js.map +1 -1
  145. package/dist/internal/styles/index.d.ts +0 -1
  146. package/dist/internal/styles/index.js +5 -15
  147. package/dist/internal/styles/index.js.map +1 -1
  148. package/dist/internal/utils/a11y.d.ts +0 -3
  149. package/dist/internal/utils/a11y.js +6 -9
  150. package/dist/internal/utils/a11y.js.map +1 -1
  151. package/dist/joystick/joystick2.js +19 -19
  152. package/dist/joystick/joystick2.js.map +1 -1
  153. package/dist/logo/logo2.js +14 -13
  154. package/dist/logo/logo2.js.map +1 -1
  155. package/dist/menu/menu-group2.js +20 -20
  156. package/dist/menu/menu-group2.js.map +1 -1
  157. package/dist/menu/menu-item2.js +11 -11
  158. package/dist/menu/menu-item2.js.map +1 -1
  159. package/dist/menu/menu2.js +14 -14
  160. package/dist/menu/menu2.js.map +1 -1
  161. package/dist/month/month2.js +19 -19
  162. package/dist/month/month2.js.map +1 -1
  163. package/dist/notification/notification-group2.js +13 -13
  164. package/dist/notification/notification-group2.js.map +1 -1
  165. package/dist/notification/notification2.js +31 -31
  166. package/dist/notification/notification2.js.map +1 -1
  167. package/dist/page/page-panel/page-panel-content2.js +7 -7
  168. package/dist/page/page-panel/page-panel-content2.js.map +1 -1
  169. package/dist/page/page-panel/page-panel-footer2.js +9 -9
  170. package/dist/page/page-panel/page-panel-footer2.js.map +1 -1
  171. package/dist/page/page-panel/page-panel-header2.js +9 -9
  172. package/dist/page/page-panel/page-panel-header2.js.map +1 -1
  173. package/dist/page/page-panel/page-panel2.js +15 -15
  174. package/dist/page/page-panel/page-panel2.js.map +1 -1
  175. package/dist/page/page2.js +13 -13
  176. package/dist/page/page2.js.map +1 -1
  177. package/dist/page-header/page-header2.js +10 -10
  178. package/dist/page-header/page-header2.js.map +1 -1
  179. package/dist/page-loader/page-loader2.js +13 -13
  180. package/dist/page-loader/page-loader2.js.map +1 -1
  181. package/dist/pagination/pagination2.js +34 -34
  182. package/dist/pagination/pagination2.js.map +1 -1
  183. package/dist/panel/panel2.js +36 -36
  184. package/dist/panel/panel2.js.map +1 -1
  185. package/dist/password/password2.js +19 -19
  186. package/dist/password/password2.js.map +1 -1
  187. package/dist/preferences-input/preferences-input.d.ts +1 -1
  188. package/dist/preferences-input/preferences-input2.js +25 -25
  189. package/dist/preferences-input/preferences-input2.js.map +1 -1
  190. package/dist/progress-bar/progress-bar2.js +13 -13
  191. package/dist/progress-bar/progress-bar2.js.map +1 -1
  192. package/dist/progress-dot/progress-dot2.js +15 -15
  193. package/dist/progress-dot/progress-dot2.js.map +1 -1
  194. package/dist/progress-ring/progress-ring2.js +20 -20
  195. package/dist/progress-ring/progress-ring2.js.map +1 -1
  196. package/dist/progressive-filter-chip/progressive-filter-chip2.js +28 -28
  197. package/dist/progressive-filter-chip/progressive-filter-chip2.js.map +1 -1
  198. package/dist/pulse/pulse2.js +15 -15
  199. package/dist/pulse/pulse2.js.map +1 -1
  200. package/dist/radio/radio-group2.js +8 -8
  201. package/dist/radio/radio-group2.js.map +1 -1
  202. package/dist/radio/radio2.js +8 -8
  203. package/dist/radio/radio2.js.map +1 -1
  204. package/dist/range/range2.js +16 -16
  205. package/dist/range/range2.js.map +1 -1
  206. package/dist/resize-handle/resize-handle2.js +17 -17
  207. package/dist/resize-handle/resize-handle2.js.map +1 -1
  208. package/dist/search/search2.js +20 -20
  209. package/dist/search/search2.js.map +1 -1
  210. package/dist/select/select2.js +32 -32
  211. package/dist/select/select2.js.map +1 -1
  212. package/dist/skeleton/skeleton2.js +14 -14
  213. package/dist/skeleton/skeleton2.js.map +1 -1
  214. package/dist/sort-button/sort-button.d.ts +1 -1
  215. package/dist/sort-button/sort-button2.js +16 -16
  216. package/dist/sort-button/sort-button2.js.map +1 -1
  217. package/dist/sparkline/sparkline2.js +45 -44
  218. package/dist/sparkline/sparkline2.js.map +1 -1
  219. package/dist/star-rating/star-rating2.js +14 -14
  220. package/dist/star-rating/star-rating2.js.map +1 -1
  221. package/dist/steps/steps2.js +32 -32
  222. package/dist/steps/steps2.js.map +1 -1
  223. package/dist/switch/switch-group2.js +8 -8
  224. package/dist/switch/switch-group2.js.map +1 -1
  225. package/dist/switch/switch2.js +8 -8
  226. package/dist/switch/switch2.js.map +1 -1
  227. package/dist/tabs/tabs-group2.js +18 -18
  228. package/dist/tabs/tabs-group2.js.map +1 -1
  229. package/dist/tabs/tabs-item-group2.js +9 -9
  230. package/dist/tabs/tabs-item-group2.js.map +1 -1
  231. package/dist/tabs/tabs2.js +28 -28
  232. package/dist/tabs/tabs2.js.map +1 -1
  233. package/dist/tag/tag2.js +19 -18
  234. package/dist/tag/tag2.js.map +1 -1
  235. package/dist/textarea/textarea2.js +9 -9
  236. package/dist/textarea/textarea2.js.map +1 -1
  237. package/dist/time/time2.js +19 -19
  238. package/dist/time/time2.js.map +1 -1
  239. package/dist/toast/toast2.js +28 -28
  240. package/dist/toast/toast2.js.map +1 -1
  241. package/dist/toggletip/toggletip-footer2.js +7 -7
  242. package/dist/toggletip/toggletip-footer2.js.map +1 -1
  243. package/dist/toggletip/toggletip-header2.js +7 -7
  244. package/dist/toggletip/toggletip-header2.js.map +1 -1
  245. package/dist/toggletip/toggletip2.js +23 -23
  246. package/dist/toggletip/toggletip2.js.map +1 -1
  247. package/dist/toolbar/toolbar2.js +20 -19
  248. package/dist/toolbar/toolbar2.js.map +1 -1
  249. package/dist/tooltip/tooltip2.js +20 -20
  250. package/dist/tooltip/tooltip2.js.map +1 -1
  251. package/dist/tree/tree-node2.js +39 -39
  252. package/dist/tree/tree-node2.js.map +1 -1
  253. package/dist/tree/tree2.js +20 -20
  254. package/dist/tree/tree2.js.map +1 -1
  255. package/dist/week/week2.js +19 -19
  256. package/dist/week/week2.js.map +1 -1
  257. package/dist/workspace/panel/panel2.js +14 -14
  258. package/dist/workspace/panel/panel2.js.map +1 -1
  259. package/dist/workspace/panel-content/panel-content2.js +7 -7
  260. package/dist/workspace/panel-content/panel-content2.js.map +1 -1
  261. package/dist/workspace/panel-footer/panel-footer2.js +9 -9
  262. package/dist/workspace/panel-footer/panel-footer2.js.map +1 -1
  263. package/dist/workspace/panel-header/panel-header2.js +16 -16
  264. package/dist/workspace/panel-header/panel-header2.js.map +1 -1
  265. package/dist/workspace/workspace2.js +97 -97
  266. package/dist/workspace/workspace2.js.map +1 -1
  267. package/package.json +2 -2
  268. package/dist/internal/decorators/scoped-registry.d.ts +0 -2
  269. package/dist/internal/decorators/scoped-registry.js +0 -36
  270. package/dist/internal/decorators/scoped-registry.js.map +0 -1
  271. package/dist/internal/styles/base.js +0 -5
  272. package/dist/internal/styles/base.js.map +0 -1
  273. package/dist/internal/styles/interaction-state.js +0 -5
  274. package/dist/internal/styles/interaction-state.js.map +0 -1
@@ -1,53 +1,53 @@
1
1
  import { appendRootNodeStyle as e, generateId as t } from "../internal/utils/dom.js";
2
- import { attachInternals as n } from "../internal/utils/a11y.js";
3
- import { TypeClosableController as r } from "../internal/controllers/type-closable.controller.js";
4
- import { typeSSR as i } from "../internal/controllers/type-ssr.controller.js";
5
- import { scopedRegistry as a } from "../internal/decorators/scoped-registry.js";
6
- import { useStyles as o } from "../internal/styles/index.js";
7
- import s from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
8
- import { IconButton as c } from "../icon-button/icon-button2.js";
9
- import { Input as l } from "../input/input2.js";
10
- import { Select as u } from "../select/select2.js";
11
- import { Date as d } from "../date/date2.js";
12
- import f from "./progressive-filter-chip.global.js";
13
- import p from "./progressive-filter-chip.js";
14
- import { LitElement as m, html as h, nothing as g } from "lit";
15
- import { property as _ } from "lit/decorators/property.js";
16
- import { I18nController as v } from "@nvidia-elements/foundations/internal/i18n";
2
+ import { TypeClosableController as n } from "../internal/controllers/type-closable.controller.js";
3
+ import { typeSSR as r } from "../internal/controllers/type-ssr.controller.js";
4
+ import i from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
5
+ import { IconButton as a } from "../icon-button/icon-button2.js";
6
+ import { Input as o } from "../input/input2.js";
7
+ import { Select as s } from "../select/select2.js";
8
+ import { Date as c } from "../date/date2.js";
9
+ import l from "./progressive-filter-chip.global.js";
10
+ import u from "./progressive-filter-chip.js";
11
+ import { attachInternals as d } from "@nvidia-elements/foundations/internal/a11y";
12
+ import { LitElement as f, html as p, nothing as m } from "lit";
13
+ import { property as h } from "lit/decorators/property.js";
14
+ import { I18nController as g } from "@nvidia-elements/foundations/internal/i18n";
15
+ import { scopedRegistry as _ } from "@nvidia-elements/foundations/internal/decorators";
16
+ import { useStyles as v } from "@nvidia-elements/foundations/internal/styles";
17
17
  import { state as y } from "lit/decorators/state.js";
18
18
  // src/progressive-filter-chip/progressive-filter-chip.ts
19
- var b = { close: "close" }, x = class extends m {
19
+ var b = { close: "close" }, x = class extends f {
20
20
  constructor(...e) {
21
- super(...e), this.#e = new v(this, b), this.i18n = this.#e.i18n, this.inputs = [], this.#t = new r(this);
21
+ super(...e), this.#e = new g(this, b), this.i18n = this.#e.i18n, this.inputs = [], this.#t = new n(this);
22
22
  }
23
23
  static {
24
24
  this.metadata = {
25
25
  tag: "nve-progressive-filter-chip",
26
- version: "2.23.3"
26
+ version: "2.23.5"
27
27
  };
28
28
  }
29
29
  static {
30
30
  this.elementDefinitions = {
31
- [l.metadata.tag]: l,
32
- [u.metadata.tag]: u,
33
- [d.metadata.tag]: d,
34
- [c.metadata.tag]: c
31
+ [o.metadata.tag]: o,
32
+ [s.metadata.tag]: s,
33
+ [c.metadata.tag]: c,
34
+ [a.metadata.tag]: a
35
35
  };
36
36
  }
37
37
  #e;
38
38
  static {
39
- this.styles = o([p]);
39
+ this.styles = v([u]);
40
40
  }
41
41
  #t;
42
42
  #n(e) {
43
- let t = h`<slot name="${e.slot}" @slotchange="${this.#r}"></slot>`;
44
- return e.tagName === "SELECT" ? h`<nve-select part="select" multiple-overflow ?fit-text="${!e.multiple}">${t}</nve-select>` : e.tagName === "INPUT" && e.type === "date" ? h`<nve-date part="date">${t}</nve-date>` : e.tagName === "INPUT" ? h`<nve-input part="input">${t}</nve-input>` : t;
43
+ let t = p`<slot name="${e.slot}" @slotchange="${this.#r}"></slot>`;
44
+ return e.tagName === "SELECT" ? p`<nve-select part="select" multiple-overflow ?fit-text="${!e.multiple}">${t}</nve-select>` : e.tagName === "INPUT" && e.type === "date" ? p`<nve-date part="date">${t}</nve-date>` : e.tagName === "INPUT" ? p`<nve-input part="input">${t}</nve-input>` : t;
45
45
  }
46
46
  render() {
47
- return h`<div internal-host>${this.inputs.map((e) => this.#n(e))} ${this.closable ? h`<nve-icon-button part="icon-button" exportparts="icon:icon-button-icon" @click="${() => this.#t.close()}" .ariaLabel="${this.i18n.close}" icon-name="cancel"></nve-icon-button>` : g}</div><slot hidden-slot @slotchange="${this.#i}"></slot>`;
47
+ return p`<div internal-host>${this.inputs.map((e) => this.#n(e))} ${this.closable ? p`<nve-icon-button part="icon-button" exportparts="icon:icon-button-icon" @click="${() => this.#t.close()}" .ariaLabel="${this.i18n.close}" icon-name="cancel"></nve-icon-button>` : m}</div><slot hidden-slot @slotchange="${this.#i}"></slot>`;
48
48
  }
49
49
  connectedCallback() {
50
- super.connectedCallback(), n(this), this._internals.role = "toolbar", this.setAttribute("nve-control", ""), e(this, f);
50
+ super.connectedCallback(), d(this), this._internals.role = "toolbar", this.setAttribute("nve-control", ""), e(this, l);
51
51
  }
52
52
  #r(e) {
53
53
  e.target.assignedElements().length || this.#a();
@@ -63,7 +63,7 @@ var b = { close: "close" }, x = class extends m {
63
63
  Array.from(this.shadowRoot.querySelectorAll("slot")).flatMap((e) => e.assignedElements()).forEach((e) => e.slot = "");
64
64
  }
65
65
  };
66
- s([_({ type: Boolean })], x.prototype, "closable", void 0), s([_({ type: Object })], x.prototype, "i18n", void 0), s([y()], x.prototype, "inputs", void 0), x = s([i(), a()], x);
66
+ i([h({ type: Boolean })], x.prototype, "closable", void 0), i([h({ type: Object })], x.prototype, "i18n", void 0), i([y()], x.prototype, "inputs", void 0), x = i([r(), _()], x);
67
67
  export { x as ProgressiveFilterChip };
68
68
 
69
69
  //# sourceMappingURL=progressive-filter-chip2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"progressive-filter-chip2.js","names":["styles","globalStyles","_decorate","__decorate","progressive_filter_chip_global_default","progressive_filter_chip_default","i18nDefaults","ProgressiveFilterChip","LitElement","_args","#i18nController","I18nController","#typeClosableController","TypeClosableController","Input","Select","Date","IconButton","useStyles","slot","el","#removeItem","#getControlTemplate","nothing","#createItems","attachInternals","appendRootNodeStyle","#resetItems","items","i","generateId","property","state","typeSSR","scopedRegistry"],"sources":["../../src/progressive-filter-chip/progressive-filter-chip.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { state } from 'lit/decorators/state.js';\nimport {\n appendRootNodeStyle,\n attachInternals,\n generateId,\n scopedRegistry,\n TypeClosableController,\n typeSSR,\n useStyles\n} from '@nvidia-elements/core/internal';\nimport { I18nController, type I18nDefaults } from '@nvidia-elements/foundations/internal/i18n';\nimport { Input } from '@nvidia-elements/core/input';\nimport { Select } from '@nvidia-elements/core/select';\nimport { Date } from '@nvidia-elements/core/date';\nimport { IconButton } from '@nvidia-elements/core/icon-button';\nimport globalStyles from './progressive-filter-chip.global.css?inline';\nimport styles from './progressive-filter-chip.css?inline';\n\nconst i18nDefaults = {\n close: 'close'\n} satisfies I18nDefaults;\n\n/**\n * @element nve-progressive-filter-chip\n * @description A filter chip is a control that enables users to select many options from a set of choices.\n * @documentation https://nvidia.github.io/elements/docs/elements/progressive-filter-chip/\n * @since 0.16.0\n * @entrypoint \\@nvidia-elements/core/progressive-filter-chip\n * @slot - `input`, `select`, `nve-button`, or other `[nve-control]` elements used to build the filter.\n * @event close - Dispatched when the filter chip closes.\n * @cssprop --gap\n * @cssprop --border-radius\n * @cssprop --border\n * @cssprop --background\n * @cssprop --font-weight\n * @cssprop --padding\n * @cssprop --width\n * @csspart select - The select element\n * @csspart date - The date input element\n * @csspart input - The input element\n * @csspart icon-button - The icon button element\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/toolbar/\n */\n@typeSSR()\n@scopedRegistry()\nexport class ProgressiveFilterChip extends LitElement {\n static readonly metadata = {\n tag: 'nve-progressive-filter-chip',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Input.metadata.tag]: Input,\n [Select.metadata.tag]: Select,\n [Date.metadata.tag]: Date,\n [IconButton.metadata.tag]: IconButton\n };\n\n /** Determines if a close button should render within filter chip */\n @property({ type: Boolean }) closable: boolean;\n\n #i18nController: I18nController<this> = new I18nController<this>(this, i18nDefaults);\n\n /** Enables updating internal string values for internationalization. */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n @state() private inputs: Element[] = [];\n\n static styles = useStyles([styles]);\n\n #typeClosableController = new TypeClosableController(this);\n\n /** @private */\n declare _internals: ElementInternals;\n\n #getControlTemplate(el: Element) {\n const slot = html`<slot name=${el.slot} @slotchange=${this.#removeItem}></slot>`;\n if (el.tagName === 'SELECT') {\n return html`<nve-select part=\"select\" multiple-overflow ?fit-text=${!(el as HTMLSelectElement).multiple}>${slot}</nve-select>`;\n } else if (el.tagName === 'INPUT' && (el as HTMLInputElement).type === 'date') {\n return html`<nve-date part=\"date\">${slot}</nve-date>`;\n } else if (el.tagName === 'INPUT') {\n return html`<nve-input part=\"input\">${slot}</nve-input>`;\n } else {\n return slot;\n }\n }\n\n render() {\n return html`\n <div internal-host>\n ${this.inputs.map(el => this.#getControlTemplate(el))}\n ${this.closable ? html`<nve-icon-button part=\"icon-button\" exportparts=\"icon:icon-button-icon\" @click=${() => this.#typeClosableController.close()} .ariaLabel=${this.i18n.close} icon-name=\"cancel\"></nve-icon-button>` : nothing}\n </div>\n <slot hidden-slot @slotchange=${this.#createItems}></slot>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'toolbar';\n this.setAttribute('nve-control', '');\n appendRootNodeStyle(this, globalStyles);\n }\n\n #removeItem(e: Event) {\n if (!(e.target as HTMLSlotElement).assignedElements().length) {\n this.#resetItems();\n }\n }\n\n #createItems(e: Event) {\n if (e.target && (e.target as HTMLSlotElement).assignedElements().length) {\n this.#resetItems();\n const items = Array.from(\n this.shadowRoot!.querySelector<HTMLSlotElement>('slot:not([name])')!.assignedElements()\n ).filter(i => i.matches('input, select, nve-button, [nve-control]'));\n items.forEach(i => (i.slot = generateId()));\n this.inputs = items.length ? items : this.inputs;\n }\n }\n\n #resetItems() {\n Array.from(this.shadowRoot!.querySelectorAll('slot'))\n .flatMap(i => i.assignedElements())\n .forEach(i => (i.slot = ''));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAuBA,IAAMM,IAAe,EACnB,OAAO,QACT,GAyBaC,IAAN,cAAoCC,EAAW;;EAyB1B,A,aATc,KAAAE,KAAA,IAAIC,EAAqB,MAAML,CAAY,GAGhD,KAAA,OAAA,KAAKI,GAAgB,MAEnB,KAAA,SAAA,CAAC,GAIZ,KAAAE,KAAA,IAAIC,EAAuB,IAAI;;;EAxB9B,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;EACX;;;EAE4B,KAAA,qBAAA;IACzBC,EAAM,SAAS,MAAMA;IACrBC,EAAO,SAAS,MAAMA;IACtBC,EAAK,SAAS,MAAMA;IACpBC,EAAW,SAAS,MAAMA;EAC7B;;CAKA;;EAOgB,KAAA,SAAAC,EAAU,CAAClB,CAAM,CAAC;;CAElC;CAKA,GAAoB,GAAa;EAC/B,IAAMmB,IAAO,CAAI,eAAcC,EAAG,KAAK,iBAAe,KAAKC,GAAY;EAQrE,OAPED,EAAG,YAAY,WACV,CAAI,0DAAyD,CAAEA,EAAyB,SAAS,IAAGD,EAAK,iBACvGC,EAAG,YAAY,WAAYA,EAAwB,SAAS,SAC9D,CAAI,yBAAyBD,EAAK,eAChCC,EAAG,YAAY,UACjB,CAAI,2BAA2BD,EAAK,gBAEpCA;CAEX;CAEA,SAAS;EACP,OAAO,CAAI,sBAEP,KAAK,OAAO,KAAI,MAAM,KAAKG,GAAoBF,CAAE,CAAC,EAAE,GACpD,KAAK,WAAW,CAAI,yFAAwF,KAAKR,GAAwB,MAAM,EAAE,gBAAc,KAAK,KAAK,MAAM,2CAA0CW,EAAQ,uCAErM,KAAKC,GAAa;CAEpD;CAEA,oBAAoB;EAKlB,AAJA,MAAM,kBAAkB,GACxBC,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO,WACvB,KAAK,aAAa,eAAe,EAAE,GACnCC,EAAoB,MAAMzB,CAAY;CACxC;CAEA,GAAY,GAAU;EACpB,AAAM,EAAE,OAA2B,iBAAiB,CAAC,CAAC,UACpD,KAAK0B,GAAY;CAErB;CAEA,GAAa,GAAU;EACrB,IAAI,EAAE,UAAW,EAAE,OAA2B,iBAAiB,CAAC,CAAC,QAAQ;GACvE,KAAKA,GAAY;GACjB,IAAMC,IAAQ,MAAM,KAClB,KAAK,WAAY,cAA+B,kBAAkB,CAAC,CAAE,iBAAiB,CACxF,CAAC,CAAC,QAAO,MAAKC,EAAE,QAAQ,0CAA0C,CAAC;GAEnE,AADAD,EAAM,SAAQ,MAAM,EAAE,OAAOE,EAAW,CAAE,GAC1C,KAAK,SAASF,EAAM,SAASA,IAAQ,KAAK;EAC5C;CACF;CAEA,KAAc;EACZ,MAAM,KAAK,KAAK,WAAY,iBAAiB,MAAM,CAAC,CAAC,CAClD,SAAQ,MAAKC,EAAE,iBAAiB,CAAC,CAAC,CAClC,SAAQ,MAAM,EAAE,OAAO,EAAG;CAC/B;AACF;AArEG3B,EAAA,CAAA6B,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,GAAAxB,EAAA,WAAA,YAAA,KAAA,CAAA,GAK1BL,EAAA,CAAA6B,EAAS,EAAE,MAAM,OAAO,CAAC,CAAA,GAAAxB,EAAA,WAAA,QAAA,KAAA,CAAA,GAEzBL,EAAA,CAAA8B,EAAM,CAAA,GAAAzB,EAAA,WAAA,UAAA,KAAA,CAAA,GAvBR,IAAAL,EAAA,CAAA+B,EAAQ,GACRC,EAAe,CAAA,GAAA3B,CAAA"}
1
+ {"version":3,"file":"progressive-filter-chip2.js","names":["styles","globalStyles","_decorate","__decorate","progressive_filter_chip_global_default","progressive_filter_chip_default","i18nDefaults","ProgressiveFilterChip","LitElement","_args","#i18nController","I18nController","#typeClosableController","TypeClosableController","Input","Select","Date","IconButton","useStyles","slot","el","#removeItem","#getControlTemplate","nothing","#createItems","attachInternals","appendRootNodeStyle","#resetItems","items","i","generateId","property","state","typeSSR","scopedRegistry"],"sources":["../../src/progressive-filter-chip/progressive-filter-chip.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement, nothing } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { state } from 'lit/decorators/state.js';\nimport { appendRootNodeStyle, generateId, TypeClosableController, typeSSR } from '@nvidia-elements/core/internal';\nimport { scopedRegistry } from '@nvidia-elements/foundations/internal/decorators';\nimport { attachInternals } from '@nvidia-elements/foundations/internal/a11y';\nimport { useStyles } from '@nvidia-elements/foundations/internal/styles';\nimport { I18nController, type I18nDefaults } from '@nvidia-elements/foundations/internal/i18n';\nimport { Input } from '@nvidia-elements/core/input';\nimport { Select } from '@nvidia-elements/core/select';\nimport { Date } from '@nvidia-elements/core/date';\nimport { IconButton } from '@nvidia-elements/core/icon-button';\nimport globalStyles from './progressive-filter-chip.global.css?inline';\nimport styles from './progressive-filter-chip.css?inline';\n\nconst i18nDefaults = {\n close: 'close'\n} satisfies I18nDefaults;\n\n/**\n * @element nve-progressive-filter-chip\n * @description A filter chip is a control that enables users to select many options from a set of choices.\n * @documentation https://nvidia.github.io/elements/docs/elements/progressive-filter-chip/\n * @since 0.16.0\n * @entrypoint \\@nvidia-elements/core/progressive-filter-chip\n * @slot - `input`, `select`, `nve-button`, or other `[nve-control]` elements used to build the filter.\n * @event close - Dispatched when the filter chip closes.\n * @cssprop --gap\n * @cssprop --border-radius\n * @cssprop --border\n * @cssprop --background\n * @cssprop --font-weight\n * @cssprop --padding\n * @cssprop --width\n * @csspart select - The select element\n * @csspart date - The date input element\n * @csspart input - The input element\n * @csspart icon-button - The icon button element\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/toolbar/\n */\n@typeSSR()\n@scopedRegistry()\nexport class ProgressiveFilterChip extends LitElement {\n static readonly metadata = {\n tag: 'nve-progressive-filter-chip',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Input.metadata.tag]: Input,\n [Select.metadata.tag]: Select,\n [Date.metadata.tag]: Date,\n [IconButton.metadata.tag]: IconButton\n };\n\n /** Determines if a close button should render within filter chip */\n @property({ type: Boolean }) closable: boolean;\n\n #i18nController: I18nController<this> = new I18nController<this>(this, i18nDefaults);\n\n /** Enables updating internal string values for internationalization. */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n @state() private inputs: Element[] = [];\n\n static styles = useStyles([styles]);\n\n #typeClosableController = new TypeClosableController(this);\n\n /** @private */\n declare _internals: ElementInternals;\n\n #getControlTemplate(el: Element) {\n const slot = html`<slot name=${el.slot} @slotchange=${this.#removeItem}></slot>`;\n if (el.tagName === 'SELECT') {\n return html`<nve-select part=\"select\" multiple-overflow ?fit-text=${!(el as HTMLSelectElement).multiple}>${slot}</nve-select>`;\n } else if (el.tagName === 'INPUT' && (el as HTMLInputElement).type === 'date') {\n return html`<nve-date part=\"date\">${slot}</nve-date>`;\n } else if (el.tagName === 'INPUT') {\n return html`<nve-input part=\"input\">${slot}</nve-input>`;\n } else {\n return slot;\n }\n }\n\n render() {\n return html`\n <div internal-host>\n ${this.inputs.map(el => this.#getControlTemplate(el))}\n ${this.closable ? html`<nve-icon-button part=\"icon-button\" exportparts=\"icon:icon-button-icon\" @click=${() => this.#typeClosableController.close()} .ariaLabel=${this.i18n.close} icon-name=\"cancel\"></nve-icon-button>` : nothing}\n </div>\n <slot hidden-slot @slotchange=${this.#createItems}></slot>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'toolbar';\n this.setAttribute('nve-control', '');\n appendRootNodeStyle(this, globalStyles);\n }\n\n #removeItem(e: Event) {\n if (!(e.target as HTMLSlotElement).assignedElements().length) {\n this.#resetItems();\n }\n }\n\n #createItems(e: Event) {\n if (e.target && (e.target as HTMLSlotElement).assignedElements().length) {\n this.#resetItems();\n const items = Array.from(\n this.shadowRoot!.querySelector<HTMLSlotElement>('slot:not([name])')!.assignedElements()\n ).filter(i => i.matches('input, select, nve-button, [nve-control]'));\n items.forEach(i => (i.slot = generateId()));\n this.inputs = items.length ? items : this.inputs;\n }\n }\n\n #resetItems() {\n Array.from(this.shadowRoot!.querySelectorAll('slot'))\n .flatMap(i => i.assignedElements())\n .forEach(i => (i.slot = ''));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAkBA,IAAMM,IAAe,EACnB,OAAO,QACT,GAyBaC,IAAN,cAAoCC,EAAW;;EAyB1B,A,aATc,KAAAE,KAAA,IAAIC,EAAqB,MAAML,CAAY,GAGhD,KAAA,OAAA,KAAKI,GAAgB,MAEnB,KAAA,SAAA,CAAC,GAIZ,KAAAE,KAAA,IAAIC,EAAuB,IAAI;;;EAxB9B,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;EACX;;;EAE4B,KAAA,qBAAA;IACzBC,EAAM,SAAS,MAAMA;IACrBC,EAAO,SAAS,MAAMA;IACtBC,EAAK,SAAS,MAAMA;IACpBC,EAAW,SAAS,MAAMA;EAC7B;;CAKA;;EAOgB,KAAA,SAAAC,EAAU,CAAClB,CAAM,CAAC;;CAElC;CAKA,GAAoB,GAAa;EAC/B,IAAMmB,IAAO,CAAI,eAAcC,EAAG,KAAK,iBAAe,KAAKC,GAAY;EAQrE,OAPED,EAAG,YAAY,WACV,CAAI,0DAAyD,CAAEA,EAAyB,SAAS,IAAGD,EAAK,iBACvGC,EAAG,YAAY,WAAYA,EAAwB,SAAS,SAC9D,CAAI,yBAAyBD,EAAK,eAChCC,EAAG,YAAY,UACjB,CAAI,2BAA2BD,EAAK,gBAEpCA;CAEX;CAEA,SAAS;EACP,OAAO,CAAI,sBAEP,KAAK,OAAO,KAAI,MAAM,KAAKG,GAAoBF,CAAE,CAAC,EAAE,GACpD,KAAK,WAAW,CAAI,yFAAwF,KAAKR,GAAwB,MAAM,EAAE,gBAAc,KAAK,KAAK,MAAM,2CAA0CW,EAAQ,uCAErM,KAAKC,GAAa;CAEpD;CAEA,oBAAoB;EAKlB,AAJA,MAAM,kBAAkB,GACxBC,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO,WACvB,KAAK,aAAa,eAAe,EAAE,GACnCC,EAAoB,MAAMzB,CAAY;CACxC;CAEA,GAAY,GAAU;EACpB,AAAM,EAAE,OAA2B,iBAAiB,CAAC,CAAC,UACpD,KAAK0B,GAAY;CAErB;CAEA,GAAa,GAAU;EACrB,IAAI,EAAE,UAAW,EAAE,OAA2B,iBAAiB,CAAC,CAAC,QAAQ;GACvE,KAAKA,GAAY;GACjB,IAAMC,IAAQ,MAAM,KAClB,KAAK,WAAY,cAA+B,kBAAkB,CAAC,CAAE,iBAAiB,CACxF,CAAC,CAAC,QAAO,MAAKC,EAAE,QAAQ,0CAA0C,CAAC;GAEnE,AADAD,EAAM,SAAQ,MAAM,EAAE,OAAOE,EAAW,CAAE,GAC1C,KAAK,SAASF,EAAM,SAASA,IAAQ,KAAK;EAC5C;CACF;CAEA,KAAc;EACZ,MAAM,KAAK,KAAK,WAAY,iBAAiB,MAAM,CAAC,CAAC,CAClD,SAAQ,MAAKC,EAAE,iBAAiB,CAAC,CAAC,CAClC,SAAQ,MAAM,EAAE,OAAO,EAAG;CAC/B;AACF;AArEG3B,EAAA,CAAA6B,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,GAAAxB,EAAA,WAAA,YAAA,KAAA,CAAA,GAK1BL,EAAA,CAAA6B,EAAS,EAAE,MAAM,OAAO,CAAC,CAAA,GAAAxB,EAAA,WAAA,QAAA,KAAA,CAAA,GAEzBL,EAAA,CAAA8B,EAAM,CAAA,GAAAzB,EAAA,WAAA,UAAA,KAAA,CAAA,GAvBR,IAAAL,EAAA,CAAA+B,EAAQ,GACRC,EAAe,CAAA,GAAA3B,CAAA"}
@@ -1,35 +1,35 @@
1
- import { attachInternals as e } from "../internal/utils/a11y.js";
2
- import { useStyles as t } from "../internal/styles/index.js";
3
- import n from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
4
- import { Icon as r } from "../icon/icon2.js";
5
- import i from "./pulse.js";
6
- import { LitElement as a, html as o } from "lit";
7
- import { property as s } from "lit/decorators/property.js";
1
+ import e from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
2
+ import { Icon as t } from "../icon/icon2.js";
3
+ import n from "./pulse.js";
4
+ import { attachInternals as r } from "@nvidia-elements/foundations/internal/a11y";
5
+ import { LitElement as i, html as a } from "lit";
6
+ import { property as o } from "lit/decorators/property.js";
7
+ import { useStyles as s } from "@nvidia-elements/foundations/internal/styles";
8
8
  // src/pulse/pulse.ts
9
- var c = class extends a {
9
+ var c = class extends i {
10
10
  static {
11
- this.styles = t([i]);
11
+ this.styles = s([n]);
12
12
  }
13
13
  static {
14
14
  this.metadata = {
15
15
  tag: "nve-pulse",
16
- version: "2.23.3"
16
+ version: "2.23.5"
17
17
  };
18
18
  }
19
19
  static {
20
- this.elementDefinitions = { [r.metadata.tag]: r };
20
+ this.elementDefinitions = { [t.metadata.tag]: t };
21
21
  }
22
22
  connectedCallback() {
23
- super.connectedCallback(), e(this), this._internals.role = "alert";
23
+ super.connectedCallback(), r(this), this._internals.role = "alert";
24
24
  }
25
25
  render() {
26
- return o`<svg internal-host width="100%" height="100%" viewBox="0 0 200 200"><circle class="circle" cx="100" cy="100" r="25"></circle><circle class="circle c1" cx="100" cy="100" r="25"></circle><circle class="circle c2" cx="100" cy="100" r="25"></circle><circle class="circle c3" cx="100" cy="100" r="25"></circle></svg>`;
26
+ return a`<svg internal-host width="100%" height="100%" viewBox="0 0 200 200"><circle class="circle" cx="100" cy="100" r="25"></circle><circle class="circle c1" cx="100" cy="100" r="25"></circle><circle class="circle c2" cx="100" cy="100" r="25"></circle><circle class="circle c3" cx="100" cy="100" r="25"></circle></svg>`;
27
27
  }
28
28
  };
29
- n([s({
29
+ e([o({
30
30
  type: String,
31
31
  reflect: !0
32
- })], c.prototype, "size", void 0), n([s({
32
+ })], c.prototype, "size", void 0), e([o({
33
33
  type: String,
34
34
  reflect: !0
35
35
  })], c.prototype, "status", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"pulse2.js","names":["styles","_decorate","__decorate","pulse_default","Pulse","LitElement","useStyles","Icon","attachInternals","property"],"sources":["../../src/pulse/pulse.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport type { Size } from '@nvidia-elements/core/internal';\nimport { useStyles, attachInternals } from '@nvidia-elements/core/internal';\nimport { Icon } from '@nvidia-elements/core/icon';\nimport styles from './pulse.css?inline';\n\n/**\n * @element nve-pulse\n * @description Pulse component signals attention for a particular area of a UI. This helps with tutorial/getting started guides for new users.\n * @documentation https://nvidia.github.io/elements/docs/elements/pulse/\n * @since 1.16.3\n * @entrypoint \\@nvidia-elements/core/pulse\n * @cssprop --background\n * @cssprop --width\n * @cssprop --height\n * @cssprop --animation-duration\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/alert/\n *\n */\nexport class Pulse extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-pulse',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Icon.metadata.tag]: Icon\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'alert';\n }\n\n /** Sets size of the pulse component. You can also update size using the `width + height` css props. */\n @property({ type: String, reflect: true }) size?: Size | 'xs';\n\n /** These visual treatments represent the `status` of different tasks. When `status` changes to `accent`, `warning` or `danger`, the component embeds appropriate colors. */\n @property({ type: String, reflect: true }) status?: 'accent' | 'warning' | 'danger';\n\n render() {\n return html`\n <svg internal-host width=\"100%\" height=\"100%\" viewBox=\"0 0 200 200\">\n <circle class=\"circle\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n <circle class=\"circle c1\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n <circle class=\"circle c2\" cx=\"100\" cy=\"100\" r=\"25\"></circle> \n <circle class=\"circle c3\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n </svg>\n `;\n }\n}\n"],"mappings":";;;;;;;;AAuBA,IAAaI,IAAb,cAA2BC,EAAW;;EACpB,KAAA,SAAAC,EAAU,CAACN,CAAM,CAAC;;;EAEP,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;EACX;;;EAE4B,KAAA,qBAAA,GACzBO,EAAK,SAAS,MAAMA,EACvB;;CAKA,oBAAoB;EAGlB,AAFA,MAAM,kBAAkB,GACxBC,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO;CACzB;CAQA,SAAS;EACP,OAAO,CAAI;CAQb;AACF;AAfGP,EAAA,CAAAQ,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAAL,EAAA,WAAA,QAAA,KAAA,CAAA,GAGxCH,EAAA,CAAAQ,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAAL,EAAA,WAAA,UAAA,KAAA,CAAA"}
1
+ {"version":3,"file":"pulse2.js","names":["styles","_decorate","__decorate","pulse_default","Pulse","LitElement","useStyles","Icon","attachInternals","property"],"sources":["../../src/pulse/pulse.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport type { Size } from '@nvidia-elements/core/internal';\nimport { attachInternals } from '@nvidia-elements/foundations/internal/a11y';\nimport { useStyles } from '@nvidia-elements/foundations/internal/styles';\nimport { Icon } from '@nvidia-elements/core/icon';\nimport styles from './pulse.css?inline';\n\n/**\n * @element nve-pulse\n * @description Pulse component signals attention for a particular area of a UI. This helps with tutorial/getting started guides for new users.\n * @documentation https://nvidia.github.io/elements/docs/elements/pulse/\n * @since 1.16.3\n * @entrypoint \\@nvidia-elements/core/pulse\n * @cssprop --background\n * @cssprop --width\n * @cssprop --height\n * @cssprop --animation-duration\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/alert/\n *\n */\nexport class Pulse extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-pulse',\n version: '0.0.0'\n };\n\n static elementDefinitions = {\n [Icon.metadata.tag]: Icon\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'alert';\n }\n\n /** Sets size of the pulse component. You can also update size using the `width + height` css props. */\n @property({ type: String, reflect: true }) size?: Size | 'xs';\n\n /** These visual treatments represent the `status` of different tasks. When `status` changes to `accent`, `warning` or `danger`, the component embeds appropriate colors. */\n @property({ type: String, reflect: true }) status?: 'accent' | 'warning' | 'danger';\n\n render() {\n return html`\n <svg internal-host width=\"100%\" height=\"100%\" viewBox=\"0 0 200 200\">\n <circle class=\"circle\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n <circle class=\"circle c1\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n <circle class=\"circle c2\" cx=\"100\" cy=\"100\" r=\"25\"></circle> \n <circle class=\"circle c3\" cx=\"100\" cy=\"100\" r=\"25\"></circle>\n </svg>\n `;\n }\n}\n"],"mappings":";;;;;;;;AAwBA,IAAaI,IAAb,cAA2BC,EAAW;;EACpB,KAAA,SAAAC,EAAU,CAACN,CAAM,CAAC;;;EAEP,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;EACX;;;EAE4B,KAAA,qBAAA,GACzBO,EAAK,SAAS,MAAMA,EACvB;;CAKA,oBAAoB;EAGlB,AAFA,MAAM,kBAAkB,GACxBC,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO;CACzB;CAQA,SAAS;EACP,OAAO,CAAI;CAQb;AACF;AAfGP,EAAA,CAAAQ,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAAL,EAAA,WAAA,QAAA,KAAA,CAAA,GAGxCH,EAAA,CAAAQ,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAAL,EAAA,WAAA,UAAA,KAAA,CAAA"}
@@ -1,18 +1,18 @@
1
1
  import { audit as e } from "../internal/controllers/audit.controller.js";
2
2
  import { typeSSR as t } from "../internal/controllers/type-ssr.controller.js";
3
- import { useStyles as n } from "../internal/styles/index.js";
4
- import r from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
5
- import { ControlGroup as i } from "../forms/control-group/control-group2.js";
6
- import a from "./radio-group.js";
3
+ import n from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
4
+ import { ControlGroup as r } from "../forms/control-group/control-group2.js";
5
+ import i from "./radio-group.js";
6
+ import { useStyles as a } from "@nvidia-elements/foundations/internal/styles";
7
7
  // src/radio/radio-group.ts
8
- var o = class extends i {
8
+ var o = class extends r {
9
9
  static {
10
- this.styles = n([...i.styles, a]);
10
+ this.styles = a([...r.styles, i]);
11
11
  }
12
12
  static {
13
13
  this.metadata = {
14
14
  tag: "nve-radio-group",
15
- version: "2.23.3",
15
+ version: "2.23.5",
16
16
  children: [
17
17
  "label",
18
18
  "nve-control-message",
@@ -21,7 +21,7 @@ var o = class extends i {
21
21
  };
22
22
  }
23
23
  };
24
- o = r([e(), t()], o);
24
+ o = n([e(), t()], o);
25
25
  export { o as RadioGroup };
26
26
 
27
27
  //# sourceMappingURL=radio-group2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group2.js","names":["styles","_decorate","__decorate","radio_group_default","RadioGroup","ControlGroup","useStyles","audit","typeSSR"],"sources":["../../src/radio/radio-group.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { CSSResult } from 'lit';\nimport { audit, typeSSR, useStyles } from '@nvidia-elements/core/internal';\nimport { ControlGroup } from '@nvidia-elements/core/forms';\nimport styles from './radio-group.css?inline';\n\n/**\n * @element nve-radio-group\n * @description Groups related radio buttons together with a shared label and validation messaging for single-select form inputs.\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/radio\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/radio/\n */\n@audit()\n@typeSSR()\nexport class RadioGroup extends ControlGroup {\n static styles: CSSResult[] = useStyles([...ControlGroup.styles, styles]);\n\n static readonly metadata = {\n tag: 'nve-radio-group',\n version: '0.0.0',\n children: ['label', 'nve-control-message', 'nve-radio']\n };\n}\n"],"mappings":";;;;;;;AAiBO,IAAMI,IAAN,cAAyBC,EAAa;;EACd,KAAA,SAAAC,EAAU,CAAC,GAAGD,EAAa,QAAQL,CAAM,CAAC;;;EAE5C,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;GACT,UAAU;IAAC;IAAS;IAAuB;GAAW;EACxD;;AACF;AAVC,IAAAC,EAAA,CAAAM,EAAM,GACNC,EAAQ,CAAA,GAAAJ,CAAA"}
1
+ {"version":3,"file":"radio-group2.js","names":["styles","_decorate","__decorate","radio_group_default","RadioGroup","ControlGroup","useStyles","audit","typeSSR"],"sources":["../../src/radio/radio-group.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { CSSResult } from 'lit';\nimport { audit, typeSSR } from '@nvidia-elements/core/internal';\nimport { useStyles } from '@nvidia-elements/foundations/internal/styles';\nimport { ControlGroup } from '@nvidia-elements/core/forms';\nimport styles from './radio-group.css?inline';\n\n/**\n * @element nve-radio-group\n * @description Groups related radio buttons together with a shared label and validation messaging for single-select form inputs.\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/radio\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/radio/\n */\n@audit()\n@typeSSR()\nexport class RadioGroup extends ControlGroup {\n static styles: CSSResult[] = useStyles([...ControlGroup.styles, styles]);\n\n static readonly metadata = {\n tag: 'nve-radio-group',\n version: '0.0.0',\n children: ['label', 'nve-control-message', 'nve-radio']\n };\n}\n"],"mappings":";;;;;;;AAkBO,IAAMI,IAAN,cAAyBC,EAAa;;EACd,KAAA,SAAAC,EAAU,CAAC,GAAGD,EAAa,QAAQL,CAAM,CAAC;;;EAE5C,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;GACT,UAAU;IAAC;IAAS;IAAuB;GAAW;EACxD;;AACF;AAVC,IAAAC,EAAA,CAAAM,EAAM,GACNC,EAAQ,CAAA,GAAAJ,CAAA"}
@@ -1,21 +1,21 @@
1
1
  import { audit as e } from "../internal/controllers/audit.controller.js";
2
2
  import { hostAttr as t } from "../internal/decorators/host-attr.js";
3
- import { useStyles as n } from "../internal/styles/index.js";
4
- import r from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
5
- import { Control as i } from "../forms/control/control2.js";
6
- import a from "./radio.js";
3
+ import n from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
4
+ import { Control as r } from "../forms/control/control2.js";
5
+ import i from "./radio.js";
6
+ import { useStyles as a } from "@nvidia-elements/foundations/internal/styles";
7
7
  // src/radio/radio.ts
8
- var o = class extends i {
8
+ var o = class extends r {
9
9
  constructor(...e) {
10
10
  super(...e), this.nveControl = "inline";
11
11
  }
12
12
  static {
13
- this.styles = n([...i.styles, a]);
13
+ this.styles = a([...r.styles, i]);
14
14
  }
15
15
  static {
16
16
  this.metadata = {
17
17
  tag: "nve-radio",
18
- version: "2.23.3",
18
+ version: "2.23.5",
19
19
  children: [
20
20
  "label",
21
21
  "input",
@@ -24,7 +24,7 @@ var o = class extends i {
24
24
  };
25
25
  }
26
26
  };
27
- r([t({ attribute: "nve-control" })], o.prototype, "nveControl", void 0), o = r([e()], o);
27
+ n([t({ attribute: "nve-control" })], o.prototype, "nveControl", void 0), o = n([e()], o);
28
28
  export { o as Radio };
29
29
 
30
30
  //# sourceMappingURL=radio2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio2.js","names":["styles","_decorate","__decorate","radio_default","Radio","Control","_args","useStyles","hostAttr","audit"],"sources":["../../src/radio/radio.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { CSSResult } from 'lit';\nimport { audit, hostAttr, useStyles } from '@nvidia-elements/core/internal';\nimport { Control } from '@nvidia-elements/core/forms';\nimport styles from './radio.css?inline';\n\n/**\n * @element nve-radio\n * @description A radio button is a control that enables users to choose one option from a list of mutually exclusive options.\n * @documentation https://nvidia.github.io/elements/docs/elements/radio/\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/radio\n * @cssprop --cursor\n * @cssprop --width\n * @cssprop --height\n * @cssprop --border-width\n * @cssprop --border-radius\n * @cssprop --border-color\n * @cssprop --radio-color\n * @cssprop --background\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/radio/\n */\n@audit()\nexport class Radio extends Control {\n @hostAttr({ attribute: 'nve-control' }) protected nveControl = 'inline';\n\n /** @private - disable for inline control */\n declare fitText: boolean;\n\n /** @private - disable for inline control */\n declare fitContent: boolean;\n\n static styles: CSSResult[] = useStyles([...Control.styles, styles]);\n\n static readonly metadata = {\n tag: 'nve-radio',\n version: '0.0.0',\n children: ['label', 'input', 'nve-control-message']\n };\n}\n"],"mappings":";;;;;;;AAyBO,IAAMI,IAAN,cAAoBC,EAAQ;;EAC8B,A,aAAA,KAAA,aAAA;;;EAQlC,KAAA,SAAAE,EAAU,CAAC,GAAGF,EAAQ,QAAQL,CAAM,CAAC;;;EAEvC,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;GACT,UAAU;IAAC;IAAS;IAAS;GAAqB;EACpD;;AACF;AAfGC,EAAA,CAAAO,EAAS,EAAE,WAAW,cAAc,CAAC,CAAA,GAAAJ,EAAA,WAAA,cAAA,KAAA,CAAA,GAFvC,IAAAH,EAAA,CAAAQ,EAAM,CAAA,GAAAL,CAAA"}
1
+ {"version":3,"file":"radio2.js","names":["styles","_decorate","__decorate","radio_default","Radio","Control","_args","useStyles","hostAttr","audit"],"sources":["../../src/radio/radio.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { CSSResult } from 'lit';\nimport { audit, hostAttr } from '@nvidia-elements/core/internal';\nimport { useStyles } from '@nvidia-elements/foundations/internal/styles';\nimport { Control } from '@nvidia-elements/core/forms';\nimport styles from './radio.css?inline';\n\n/**\n * @element nve-radio\n * @description A radio button is a control that enables users to choose one option from a list of mutually exclusive options.\n * @documentation https://nvidia.github.io/elements/docs/elements/radio/\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/radio\n * @cssprop --cursor\n * @cssprop --width\n * @cssprop --height\n * @cssprop --border-width\n * @cssprop --border-radius\n * @cssprop --border-color\n * @cssprop --radio-color\n * @cssprop --background\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/radio/\n */\n@audit()\nexport class Radio extends Control {\n @hostAttr({ attribute: 'nve-control' }) protected nveControl = 'inline';\n\n /** @private - disable for inline control */\n declare fitText: boolean;\n\n /** @private - disable for inline control */\n declare fitContent: boolean;\n\n static styles: CSSResult[] = useStyles([...Control.styles, styles]);\n\n static readonly metadata = {\n tag: 'nve-radio',\n version: '0.0.0',\n children: ['label', 'input', 'nve-control-message']\n };\n}\n"],"mappings":";;;;;;;AA0BO,IAAMI,IAAN,cAAoBC,EAAQ;;EAC8B,A,aAAA,KAAA,aAAA;;;EAQlC,KAAA,SAAAE,EAAU,CAAC,GAAGF,EAAQ,QAAQL,CAAM,CAAC;;;EAEvC,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;GACT,UAAU;IAAC;IAAS;IAAS;GAAqB;EACpD;;AACF;AAfGC,EAAA,CAAAO,EAAS,EAAE,WAAW,cAAc,CAAC,CAAA,GAAAJ,EAAA,WAAA,cAAA,KAAA,CAAA,GAFvC,IAAAH,EAAA,CAAAQ,EAAM,CAAA,GAAAL,CAAA"}
@@ -1,27 +1,27 @@
1
1
  import { appendRootNodeStyle as e, getElementUpdate as t } from "../internal/utils/dom.js";
2
- import { useStyles as n } from "../internal/styles/index.js";
3
- import r from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
4
- import { Control as i } from "../forms/control/control2.js";
5
- import a from "./range.global.js";
6
- import o from "./range.js";
7
- import { html as s, isServer as c, nothing as l } from "lit";
8
- import { property as u } from "lit/decorators/property.js";
2
+ import n from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
3
+ import { Control as r } from "../forms/control/control2.js";
4
+ import i from "./range.global.js";
5
+ import a from "./range.js";
6
+ import { html as o, isServer as s, nothing as c } from "lit";
7
+ import { property as l } from "lit/decorators/property.js";
8
+ import { useStyles as u } from "@nvidia-elements/foundations/internal/styles";
9
9
  // src/range/range.ts
10
- var d = class extends i {
10
+ var d = class extends r {
11
11
  constructor(...e) {
12
12
  super(...e), this.orientation = "horizontal";
13
13
  }
14
14
  static {
15
- this.styles = n([...i.styles, o]);
15
+ this.styles = u([...r.styles, a]);
16
16
  }
17
17
  static {
18
18
  this.metadata = {
19
19
  tag: "nve-range",
20
- version: "2.23.3"
20
+ version: "2.23.5"
21
21
  };
22
22
  }
23
23
  connectedCallback() {
24
- super.connectedCallback(), e(this, a), this._internals.ariaOrientation = this.orientation;
24
+ super.connectedCallback(), e(this, i), this._internals.ariaOrientation = this.orientation;
25
25
  }
26
26
  firstUpdated(e) {
27
27
  super.firstUpdated(e), this.#e(), this.input.addEventListener("input", () => this.#e()), t(this.input, "value", (e) => this.#e(e));
@@ -34,18 +34,18 @@ var d = class extends i {
34
34
  this.style.setProperty("--track-width", `${Math.floor((t - n) / (r - n) * 100) / 100}`);
35
35
  }
36
36
  get suffixContent() {
37
- let e = c ? null : this.querySelector("datalist");
38
- return e ? this.#t(e) : l;
37
+ let e = s ? null : this.querySelector("datalist");
38
+ return e ? this.#t(e) : c;
39
39
  }
40
40
  #t(e) {
41
41
  let t = Array.from(e.options), n = this.input?.min ? parseFloat(this.input.min) : 0, r = this.input?.max ? parseFloat(this.input.max) : 100;
42
- return s`<div class="datalist-labels">${t.map((e) => {
42
+ return o`<div class="datalist-labels">${t.map((e) => {
43
43
  let t = parseFloat(e.value), i = (t - n) / (r - n) * 100, a = this.orientation === "vertical" ? `bottom: ${i}%; transform: translateY(${i}%)` : `left: ${i}%; transform: translateX(-${i}%)`;
44
- return s`<span class="datalist-tick" style="${a}">${e.textContent || t}</span>`;
44
+ return o`<span class="datalist-tick" style="${a}">${e.textContent || t}</span>`;
45
45
  })}</div>`;
46
46
  }
47
47
  };
48
- r([u({
48
+ n([l({
49
49
  type: String,
50
50
  reflect: !0
51
51
  })], d.prototype, "orientation", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"range2.js","names":["styles","globalStyles","_decorate","__decorate","range_global_default","range_default","Range","Control","_args","useStyles","appendRootNodeStyle","props","#setTrackWidth","getElementUpdate","value","val","min","max","datalist","isServer","#renderDatalistTicks","nothing","options","option","position","style","property"],"sources":["../../src/range/range.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { appendRootNodeStyle, getElementUpdate, useStyles } from '@nvidia-elements/core/internal';\nimport { Control } from '@nvidia-elements/core/forms';\nimport { property } from 'lit/decorators/property.js';\nimport globalStyles from './range.global.css?inline';\nimport styles from './range.css?inline';\nimport type { PropertyValues } from 'lit';\nimport { html, nothing, isServer } from 'lit';\n/**\n * @element nve-range\n * @description A range slider is a control that enables users to choose a value from a continuous range of values.\n * @documentation https://nvidia.github.io/elements/docs/elements/range/\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/range\n * @cssprop --background\n * @cssprop --control-height\n * @cssprop --cursor\n * @cssprop --track-width\n * @cssprop --track-height\n * @cssprop --track-border-radius\n * @cssprop --track-background\n * @cssprop --thumb-width\n * @cssprop --thumb-height\n * @cssprop --thumb-background\n * @cssprop --thumb-border\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/slider/\n */\nexport class Range extends Control {\n static styles = useStyles([...Control.styles, styles]);\n\n static readonly metadata = {\n tag: 'nve-range',\n version: '0.0.0'\n };\n\n /** Determines the orientation of the range slider. */\n @property({ type: String, reflect: true }) orientation: 'vertical' | 'horizontal' = 'horizontal';\n\n connectedCallback() {\n super.connectedCallback();\n appendRootNodeStyle(this, globalStyles);\n this._internals.ariaOrientation = this.orientation;\n }\n\n firstUpdated(props: PropertyValues<this>) {\n super.firstUpdated(props);\n this.#setTrackWidth();\n this.input.addEventListener('input', () => this.#setTrackWidth());\n getElementUpdate(this.input, 'value', (value: unknown) => this.#setTrackWidth(value as number));\n }\n\n updated(props: PropertyValues<this>) {\n super.updated(props);\n if (props.has('orientation')) {\n this._internals.ariaOrientation = this.orientation;\n }\n }\n\n #setTrackWidth(val?: number) {\n const value = val ?? this.input.valueAsNumber;\n const min = this.input.min ? parseFloat(this.input.min) : 0;\n const max = this.input.max ? parseFloat(this.input.max) : 100;\n this.style.setProperty('--track-width', `${Math.floor(((value - min) / (max - min)) * 100) / 100}`);\n }\n\n protected get suffixContent() {\n const datalist = !isServer ? this.querySelector<HTMLDataListElement>('datalist') : null;\n return datalist ? this.#renderDatalistTicks(datalist) : nothing;\n }\n\n #renderDatalistTicks(datalist: HTMLDataListElement) {\n const options = Array.from(datalist.options);\n const min = this.input?.min ? parseFloat(this.input.min) : 0;\n const max = this.input?.max ? parseFloat(this.input.max) : 100;\n\n return html`<div class=\"datalist-labels\">\n ${options.map(option => {\n const value = parseFloat(option.value);\n const position = ((value - min) / (max - min)) * 100;\n const style =\n this.orientation === 'vertical'\n ? `bottom: ${position}%; transform: translateY(${position}%)`\n : `left: ${position}%; transform: translateX(-${position}%)`;\n return html`<span class=\"datalist-tick\" style=${style}>${option.textContent || value}</span>`;\n })}\n </div>`;\n }\n}\n"],"mappings":";;;;;;;;;AA6BA,IAAaM,IAAb,cAA2BC,EAAQ;;EASmD,A,aAAA,KAAA,cAAA;;;EARpE,KAAA,SAAAE,EAAU,CAAC,GAAGF,EAAQ,QAAQP,CAAM,CAAC;;;EAE1B,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;EACX;;CAKA,oBAAoB;EAGlB,AAFA,MAAM,kBAAkB,GACxBU,EAAoB,MAAMT,CAAY,GACtC,KAAK,WAAW,kBAAkB,KAAK;CACzC;CAEA,aAAa,GAA6B;EAIxC,AAHA,MAAM,aAAaU,CAAK,GACxB,KAAKC,GAAe,GACpB,KAAK,MAAM,iBAAiB,eAAe,KAAKA,GAAe,CAAC,GAChEC,EAAiB,KAAK,OAAO,UAAU,MAAmB,KAAKD,GAAeE,CAAe,CAAC;CAChG;CAEA,QAAQ,GAA6B;EAEnC,AADA,MAAM,QAAQH,CAAK,GACfA,EAAM,IAAI,aAAa,MACzB,KAAK,WAAW,kBAAkB,KAAK;CAE3C;CAEA,GAAe,GAAc;EAC3B,IAAMG,IAAQC,KAAO,KAAK,MAAM,eAC1BC,IAAM,KAAK,MAAM,MAAM,WAAW,KAAK,MAAM,GAAG,IAAI,GACpDC,IAAM,KAAK,MAAM,MAAM,WAAW,KAAK,MAAM,GAAG,IAAI;EAC1D,KAAK,MAAM,YAAY,iBAAiB,GAAG,KAAK,OAAQH,IAAQE,MAAQC,IAAMD,KAAQ,GAAG,IAAI,KAAK;CACpG;CAEA,IAAc,gBAAgB;EAC5B,IAAME,IAAYC,IAAiE,OAAtD,KAAK,cAAmC,UAAU;EAC/E,OAAOD,IAAW,KAAKE,GAAqBF,CAAQ,IAAIG;CAC1D;CAEA,GAAqB,GAA+B;EAClD,IAAMC,IAAU,MAAM,KAAKJ,EAAS,OAAO,GACrCF,IAAM,KAAK,OAAO,MAAM,WAAW,KAAK,MAAM,GAAG,IAAI,GACrDC,IAAM,KAAK,OAAO,MAAM,WAAW,KAAK,MAAM,GAAG,IAAI;EAE3D,OAAO,CAAI,gCACPK,EAAQ,KAAI,MAAU;GACtB,IAAMR,IAAQ,WAAWS,EAAO,KAAK,GAC/BC,KAAaV,IAAQE,MAAQC,IAAMD,KAAQ,KAC3CS,IACJ,KAAK,gBAAgB,aACjB,WAAWD,EAAS,2BAA2BA,EAAS,MACxD,SAASA,EAAS,4BAA4BA,EAAS;GAC7D,OAAO,CAAI,sCAAqCC,EAAM,IAAGF,EAAO,eAAeT,EAAM;EACvF,CAAC,EAAE;CAEP;AACF;AAnDGZ,EAAA,CAAAwB,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAApB,EAAA,WAAA,eAAA,KAAA,CAAA"}
1
+ {"version":3,"file":"range2.js","names":["styles","globalStyles","_decorate","__decorate","range_global_default","range_default","Range","Control","_args","useStyles","appendRootNodeStyle","props","#setTrackWidth","getElementUpdate","value","val","min","max","datalist","isServer","#renderDatalistTicks","nothing","options","option","position","style","property"],"sources":["../../src/range/range.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { appendRootNodeStyle, getElementUpdate } from '@nvidia-elements/core/internal';\nimport { useStyles } from '@nvidia-elements/foundations/internal/styles';\nimport { Control } from '@nvidia-elements/core/forms';\nimport { property } from 'lit/decorators/property.js';\nimport globalStyles from './range.global.css?inline';\nimport styles from './range.css?inline';\nimport type { PropertyValues } from 'lit';\nimport { html, nothing, isServer } from 'lit';\n/**\n * @element nve-range\n * @description A range slider is a control that enables users to choose a value from a continuous range of values.\n * @documentation https://nvidia.github.io/elements/docs/elements/range/\n * @since 0.3.0\n * @entrypoint \\@nvidia-elements/core/range\n * @cssprop --background\n * @cssprop --control-height\n * @cssprop --cursor\n * @cssprop --track-width\n * @cssprop --track-height\n * @cssprop --track-border-radius\n * @cssprop --track-background\n * @cssprop --thumb-width\n * @cssprop --thumb-height\n * @cssprop --thumb-background\n * @cssprop --thumb-border\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/slider/\n */\nexport class Range extends Control {\n static styles = useStyles([...Control.styles, styles]);\n\n static readonly metadata = {\n tag: 'nve-range',\n version: '0.0.0'\n };\n\n /** Determines the orientation of the range slider. */\n @property({ type: String, reflect: true }) orientation: 'vertical' | 'horizontal' = 'horizontal';\n\n connectedCallback() {\n super.connectedCallback();\n appendRootNodeStyle(this, globalStyles);\n this._internals.ariaOrientation = this.orientation;\n }\n\n firstUpdated(props: PropertyValues<this>) {\n super.firstUpdated(props);\n this.#setTrackWidth();\n this.input.addEventListener('input', () => this.#setTrackWidth());\n getElementUpdate(this.input, 'value', (value: unknown) => this.#setTrackWidth(value as number));\n }\n\n updated(props: PropertyValues<this>) {\n super.updated(props);\n if (props.has('orientation')) {\n this._internals.ariaOrientation = this.orientation;\n }\n }\n\n #setTrackWidth(val?: number) {\n const value = val ?? this.input.valueAsNumber;\n const min = this.input.min ? parseFloat(this.input.min) : 0;\n const max = this.input.max ? parseFloat(this.input.max) : 100;\n this.style.setProperty('--track-width', `${Math.floor(((value - min) / (max - min)) * 100) / 100}`);\n }\n\n protected get suffixContent() {\n const datalist = !isServer ? this.querySelector<HTMLDataListElement>('datalist') : null;\n return datalist ? this.#renderDatalistTicks(datalist) : nothing;\n }\n\n #renderDatalistTicks(datalist: HTMLDataListElement) {\n const options = Array.from(datalist.options);\n const min = this.input?.min ? parseFloat(this.input.min) : 0;\n const max = this.input?.max ? parseFloat(this.input.max) : 100;\n\n return html`<div class=\"datalist-labels\">\n ${options.map(option => {\n const value = parseFloat(option.value);\n const position = ((value - min) / (max - min)) * 100;\n const style =\n this.orientation === 'vertical'\n ? `bottom: ${position}%; transform: translateY(${position}%)`\n : `left: ${position}%; transform: translateX(-${position}%)`;\n return html`<span class=\"datalist-tick\" style=${style}>${option.textContent || value}</span>`;\n })}\n </div>`;\n }\n}\n"],"mappings":";;;;;;;;;AA8BA,IAAaM,IAAb,cAA2BC,EAAQ;;EASmD,A,aAAA,KAAA,cAAA;;;EARpE,KAAA,SAAAE,EAAU,CAAC,GAAGF,EAAQ,QAAQP,CAAM,CAAC;;;EAE1B,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;EACX;;CAKA,oBAAoB;EAGlB,AAFA,MAAM,kBAAkB,GACxBU,EAAoB,MAAMT,CAAY,GACtC,KAAK,WAAW,kBAAkB,KAAK;CACzC;CAEA,aAAa,GAA6B;EAIxC,AAHA,MAAM,aAAaU,CAAK,GACxB,KAAKC,GAAe,GACpB,KAAK,MAAM,iBAAiB,eAAe,KAAKA,GAAe,CAAC,GAChEC,EAAiB,KAAK,OAAO,UAAU,MAAmB,KAAKD,GAAeE,CAAe,CAAC;CAChG;CAEA,QAAQ,GAA6B;EAEnC,AADA,MAAM,QAAQH,CAAK,GACfA,EAAM,IAAI,aAAa,MACzB,KAAK,WAAW,kBAAkB,KAAK;CAE3C;CAEA,GAAe,GAAc;EAC3B,IAAMG,IAAQC,KAAO,KAAK,MAAM,eAC1BC,IAAM,KAAK,MAAM,MAAM,WAAW,KAAK,MAAM,GAAG,IAAI,GACpDC,IAAM,KAAK,MAAM,MAAM,WAAW,KAAK,MAAM,GAAG,IAAI;EAC1D,KAAK,MAAM,YAAY,iBAAiB,GAAG,KAAK,OAAQH,IAAQE,MAAQC,IAAMD,KAAQ,GAAG,IAAI,KAAK;CACpG;CAEA,IAAc,gBAAgB;EAC5B,IAAME,IAAYC,IAAiE,OAAtD,KAAK,cAAmC,UAAU;EAC/E,OAAOD,IAAW,KAAKE,GAAqBF,CAAQ,IAAIG;CAC1D;CAEA,GAAqB,GAA+B;EAClD,IAAMC,IAAU,MAAM,KAAKJ,EAAS,OAAO,GACrCF,IAAM,KAAK,OAAO,MAAM,WAAW,KAAK,MAAM,GAAG,IAAI,GACrDC,IAAM,KAAK,OAAO,MAAM,WAAW,KAAK,MAAM,GAAG,IAAI;EAE3D,OAAO,CAAI,gCACPK,EAAQ,KAAI,MAAU;GACtB,IAAMR,IAAQ,WAAWS,EAAO,KAAK,GAC/BC,KAAaV,IAAQE,MAAQC,IAAMD,KAAQ,KAC3CS,IACJ,KAAK,gBAAgB,aACjB,WAAWD,EAAS,2BAA2BA,EAAS,MACxD,SAASA,EAAS,4BAA4BA,EAAS;GAC7D,OAAO,CAAI,sCAAqCC,EAAM,IAAGF,EAAO,eAAeT,EAAM;EACvF,CAAC,EAAE;CAEP;AACF;AAnDGZ,EAAA,CAAAwB,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAApB,EAAA,WAAA,eAAA,KAAA,CAAA"}
@@ -1,16 +1,16 @@
1
1
  import { GestureController as e } from "../internal/controllers/gesture.controller.js";
2
- import { useStyles as t } from "../internal/styles/index.js";
3
- import n from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
4
- import r from "./resize-handle.js";
5
- import { LitElement as i, html as a } from "lit";
6
- import { property as o } from "lit/decorators/property.js";
7
- import { I18nController as s } from "@nvidia-elements/foundations/internal/i18n";
8
- import { ifDefined as c } from "lit/directives/if-defined.js";
2
+ import t from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
3
+ import n from "./resize-handle.js";
4
+ import { LitElement as r, html as i } from "lit";
5
+ import { property as a } from "lit/decorators/property.js";
6
+ import { I18nController as o } from "@nvidia-elements/foundations/internal/i18n";
7
+ import { ifDefined as s } from "lit/directives/if-defined.js";
8
+ import { useStyles as c } from "@nvidia-elements/foundations/internal/styles";
9
9
  import { FormControlMixin as l } from "@nvidia-elements/forms/mixins";
10
10
  // src/resize-handle/resize-handle.ts
11
- var u = { resize: "resize" }, d = class extends l(i) {
11
+ var u = { resize: "resize" }, d = class extends l(r) {
12
12
  static {
13
- this.styles = t([r]);
13
+ this.styles = c([n]);
14
14
  }
15
15
  get #e() {
16
16
  return this.shadowRoot.querySelector("input");
@@ -18,7 +18,7 @@ var u = { resize: "resize" }, d = class extends l(i) {
18
18
  static {
19
19
  this.metadata = {
20
20
  tag: "nve-resize-handle",
21
- version: "2.23.3",
21
+ version: "2.23.5",
22
22
  valueSchema: { type: "number" }
23
23
  };
24
24
  }
@@ -27,10 +27,10 @@ var u = { resize: "resize" }, d = class extends l(i) {
27
27
  #r;
28
28
  #i;
29
29
  render() {
30
- return a`<div internal-host><div class="line" part="_line"></div><input aria-label="${c(this.ariaLabel ?? this.i18n.resize)}" type="range" min="${this.min}" max="${this.max}" .valueAsNumber="${this.valueAsNumber}" @input="${(e) => this.#f(e.target.valueAsNumber)}" @change="${(e) => this.#p(e.target.valueAsNumber)}" step="${this.step}"></div>`;
30
+ return i`<div internal-host><div class="line" part="_line"></div><input aria-label="${s(this.ariaLabel ?? this.i18n.resize)}" type="range" min="${this.min}" max="${this.max}" .valueAsNumber="${this.valueAsNumber}" @input="${(e) => this.#f(e.target.valueAsNumber)}" @change="${(e) => this.#p(e.target.valueAsNumber)}" step="${this.step}"></div>`;
31
31
  }
32
32
  constructor() {
33
- super(), this.orientation = "horizontal", this.min = 0, this.max = 100, this.step = 10, this.#t = new s(this, u), this.i18n = this.#t.i18n, this.#i = 0, this.#o = (e) => {
33
+ super(), this.orientation = "horizontal", this.min = 0, this.max = 100, this.step = 10, this.#t = new o(this, u), this.i18n = this.#t.i18n, this.#i = 0, this.#o = (e) => {
34
34
  let t = e.detail;
35
35
  t.kind === "pointerdown" ? t.event.button === 0 && t.event.isPrimary && this.#r === void 0 && t.claim({ kind: "drag" }) && this.#c(t.event.pointerId) : t.kind === "pointerend" && t.event.pointerId === this.#r && (t.interrupted ? this.#d() : (this.#l(t), this.#u()));
36
36
  }, this.#s = (e) => {
@@ -81,19 +81,19 @@ var u = { resize: "resize" }, d = class extends l(i) {
81
81
  e <= this.max && e >= this.min && (this.valueAsNumber = e);
82
82
  }
83
83
  };
84
- n([o({
84
+ t([a({
85
85
  type: String,
86
86
  reflect: !0
87
- })], d.prototype, "orientation", void 0), n([o({
87
+ })], d.prototype, "orientation", void 0), t([a({
88
88
  type: Number,
89
89
  reflect: !0
90
- })], d.prototype, "min", void 0), n([o({
90
+ })], d.prototype, "min", void 0), t([a({
91
91
  type: Number,
92
92
  reflect: !0
93
- })], d.prototype, "max", void 0), n([o({
93
+ })], d.prototype, "max", void 0), t([a({
94
94
  type: Number,
95
95
  reflect: !0
96
- })], d.prototype, "step", void 0), n([o({ type: Object })], d.prototype, "i18n", void 0);
96
+ })], d.prototype, "step", void 0), t([a({ type: Object })], d.prototype, "i18n", void 0);
97
97
  export { d as ResizeHandle };
98
98
 
99
99
  //# sourceMappingURL=resize-handle2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resize-handle2.js","names":["styles","_decorate","__decorate","resize_handle_default","i18nDefaults","ResizeHandle","FormControlMixin","LitElement","useStyles","#range","ifDefined","#setInput","#setChange","#i18nController","I18nController","#offset","#handleGestureInput","input","event","#dragPointerId","#dragStart","#cancelDrag","#dragMove","#dragEnd","#handleGesture","#gestureController","GestureController","props","#toggle","value","pointerId","offset","gesture","#updateValue","property"],"sources":["../../src/resize-handle/resize-handle.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement, type PropertyValues } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { property } from 'lit/decorators/property.js';\nimport { FormControlMixin } from '@nvidia-elements/forms/mixins';\nimport {\n GestureController,\n useStyles,\n type Gesture,\n type GestureInput,\n type PointerMovementGesture\n} from '@nvidia-elements/core/internal';\nimport { I18nController, type I18nDefaults } from '@nvidia-elements/foundations/internal/i18n';\nimport styles from './resize-handle.css?inline';\n\nconst i18nDefaults = {\n resize: 'resize'\n} satisfies I18nDefaults;\n\n/**\n * @element nve-resize-handle\n * @description A resize-handle slider is a control that enables users to resize views or panels vertically or horizontally.\n * @documentation https://nvidia.github.io/elements/docs/elements/resize-handle/\n * @since 1.27.0\n * @entrypoint \\@nvidia-elements/core/resize-handle\n * @event toggle - Dispatched when the resize handle is double clicked.\n * @cssprop --background\n * @cssprop --line-width\n * @cssprop --target-size\n * @cssprop --cursor\n\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/slider/\n *\n */\nexport class ResizeHandle extends FormControlMixin<typeof LitElement, number>(LitElement) {\n /**\n * Determines the orientation direction of the resize handle.\n */\n @property({ type: String, reflect: true }) orientation?: 'horizontal' | 'vertical' = 'horizontal';\n\n /**\n * Determines the min resize value.\n */\n @property({ type: Number, reflect: true }) min = 0;\n\n /**\n * Determines the max resize value.\n */\n @property({ type: Number, reflect: true }) max = 100;\n\n /**\n * Determines the value step change.\n */\n @property({ type: Number, reflect: true }) step = 10;\n\n static styles = useStyles([styles]);\n\n get #range() {\n return this.shadowRoot!.querySelector('input')!;\n }\n\n static readonly metadata = {\n tag: 'nve-resize-handle',\n version: '0.0.0',\n valueSchema: {\n type: 'number' as const\n }\n };\n\n readonly #i18nController: I18nController<this> = new I18nController<this>(this, i18nDefaults);\n\n readonly #gestureController: GestureController;\n\n #dragPointerId?: number;\n\n /**\n * Updates internal string values for internationalization.\n */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n #offset = 0;\n\n render() {\n return html`\n <div internal-host>\n <div class=\"line\" part=\"_line\"></div>\n <input aria-label=${ifDefined(this.ariaLabel ?? this.i18n.resize)} type=\"range\" min=${this.min} max=${this.max} .valueAsNumber=${this.valueAsNumber} @input=${(e: Event) => this.#setInput((e.target as HTMLInputElement).valueAsNumber)} @change=${(e: Event) => this.#setChange((e.target as HTMLInputElement).valueAsNumber)} step=${this.step} />\n </div>\n `;\n }\n\n constructor() {\n super();\n this.value = this.value ?? 50;\n this.#offset = this.valueAsNumber;\n this.#gestureController = new GestureController(this, { touchAction: 'none' });\n }\n\n connectedCallback() {\n super.connectedCallback();\n this._internals.role = 'none';\n this.addEventListener('nve-gesture', this.#handleGesture as EventListener);\n this.addEventListener('nve-gesture-input', this.#handleGestureInput as EventListener);\n }\n\n disconnectedCallback() {\n this.removeEventListener('nve-gesture', this.#handleGesture as EventListener);\n this.removeEventListener('nve-gesture-input', this.#handleGestureInput as EventListener);\n this.#cancelDrag();\n super.disconnectedCallback();\n }\n\n firstUpdated(props: PropertyValues) {\n super.firstUpdated(props);\n this.#gestureController.target = this;\n this.addEventListener('dblclick', () => {\n if (!this.dispatchEvent(new CustomEvent('toggle', { cancelable: true, bubbles: true, composed: true }))) {\n return;\n }\n this.#toggle();\n });\n }\n\n #toggle() {\n const value = this.valueAsNumber <= this.max && this.valueAsNumber !== this.min ? this.min : this.max;\n this.#setInput(value);\n this.#setChange(value);\n }\n\n #handleGestureInput = (event: CustomEvent<GestureInput>): void => {\n const input = event.detail;\n if (input.kind === 'pointerdown') {\n const canStartDrag = input.event.button === 0 && input.event.isPrimary && this.#dragPointerId === undefined;\n if (canStartDrag && input.claim({ kind: 'drag' })) this.#dragStart(input.event.pointerId);\n } else if (input.kind === 'pointerend' && input.event.pointerId === this.#dragPointerId) {\n if (input.interrupted) this.#cancelDrag();\n else {\n this.#dragMove(input);\n this.#dragEnd();\n }\n }\n };\n\n #handleGesture = (event: CustomEvent<Gesture<undefined>>): void => {\n if (event.detail.kind === 'drag' && event.detail.event.pointerId === this.#dragPointerId) {\n this.#dragMove(event.detail);\n }\n };\n\n #dragStart(pointerId: number) {\n this.#dragPointerId = pointerId;\n this.#range.step = '1';\n this._internals.states.add('active');\n this.#offset = this.valueAsNumber;\n }\n\n #dragMove(gesture: Pick<PointerMovementGesture, 'movementX' | 'movementY'>) {\n const offset =\n (this.orientation === 'vertical' ? gesture.movementX : -gesture.movementY) * (this.dir === 'rtl' ? -1 : 1);\n if (offset === 0) return;\n this.#offset = Math.max(this.min, Math.min(this.max, this.#offset + offset));\n this.#setInput(this.#offset);\n }\n\n #dragEnd() {\n this.#offset = this.valueAsNumber;\n this.#range.step = `${this.step}`;\n this.#dragPointerId = undefined;\n this._internals.states.delete('active');\n this.#setChange(this.#offset);\n }\n\n #cancelDrag() {\n if (this.#dragPointerId === undefined) return;\n this.#dragPointerId = undefined;\n this.#range.step = `${this.step}`;\n this._internals.states.delete('active');\n }\n\n #setInput(value: number) {\n this.#updateValue(value);\n this.dispatchInputEvent();\n }\n\n #setChange(value: number) {\n this.#updateValue(value);\n this.dispatchChangeEvent();\n }\n\n #updateValue(value: number) {\n if (value <= this.max && value >= this.min) {\n this.valueAsNumber = value;\n }\n }\n}\n"],"mappings":";;;;;;;;;;AAiBA,IAAMI,IAAe,EACnB,QAAQ,SACV,GAiBaC,IAAb,cAAkCC,EAA4CC,CAAU,CAAC,CAAC;;EAqBxE,KAAA,SAAAC,EAAU,CAACR,CAAM,CAAC;;CAElC,IAAIS,KAAS;EACX,OAAO,KAAK,WAAY,cAAc,OAAO;CAC/C;;EAE2B,KAAA,WAAA;GACzB,KAAK;GACL,SAAS;GACT,aAAa,EACX,MAAM,SACR;EACF;;CAEA;CAEA;CAEA;CAOA;CAEA,SAAS;EACP,OAAO,CAAI,8EAGaC,EAAU,KAAK,aAAa,KAAK,KAAK,MAAM,EAAE,sBAAoB,KAAK,IAAI,SAAO,KAAK,IAAI,oBAAkB,KAAK,cAAc,aAAW,MAAa,KAAKC,GAAW,EAAE,OAA4B,aAAa,EAAE,cAAY,MAAa,KAAKC,GAAY,EAAE,OAA4B,aAAa,EAAE,UAAQ,KAAK,KAAK;CAGxV;CAEA,cAAc;EAIZ,AAHA,MAAM,GAtD6E,KAAA,cAAA,cAKpC,KAAA,MAAA,GAKA,KAAA,MAAA,KAKC,KAAA,OAAA,IAgBD,KAAAC,KAAA,IAAIC,EAAqB,MAAMV,CAAY,GASzD,KAAA,OAAA,KAAKS,GAAgB,MAE9C,KAAAE,KAAA,GAiDa,KAAAC,MAAA,MAA2C;GAChE,IAAMC,IAAQC,EAAM;GACpB,AAAID,EAAM,SAAS,gBACIA,EAAM,MAAM,WAAW,KAAKA,EAAM,MAAM,aAAa,KAAKE,OAAmB,KAAA,KAC9EF,EAAM,MAAM,EAAE,MAAM,OAAO,CAAC,KAAG,KAAKG,GAAWH,EAAM,MAAM,SAAS,IAC/EA,EAAM,SAAS,gBAAgBA,EAAM,MAAM,cAAc,KAAKE,OACnEF,EAAM,cAAa,KAAKI,GAAY,KAEtC,KAAKC,GAAUL,CAAK,GACpB,KAAKM,GAAS;EAGpB,GAEkB,KAAAC,MAAA,MAAiD;GACjE,AAAIN,EAAM,OAAO,SAAS,UAAUA,EAAM,OAAO,MAAM,cAAc,KAAKC,MACxE,KAAKG,GAAUJ,EAAM,MAAM;EAE/B,GAtDE,KAAK,QAAQ,KAAK,SAAS,IAC3B,KAAKH,KAAU,KAAK,eACpB,KAAKU,KAAqB,IAAIC,EAAkB,MAAM,EAAE,aAAa,OAAO,CAAC;CAC/E;CAEA,oBAAoB;EAIlB,AAHA,MAAM,kBAAkB,GACxB,KAAK,WAAW,OAAO,QACvB,KAAK,iBAAiB,eAAe,KAAKF,EAA+B,GACzE,KAAK,iBAAiB,qBAAqB,KAAKR,EAAoC;CACtF;CAEA,uBAAuB;EAIrB,AAHA,KAAK,oBAAoB,eAAe,KAAKQ,EAA+B,GAC5E,KAAK,oBAAoB,qBAAqB,KAAKR,EAAoC,GACvF,KAAKK,GAAY,GACjB,MAAM,qBAAqB;CAC7B;CAEA,aAAa,GAAuB;EAGlC,AAFA,MAAM,aAAaM,CAAK,GACxB,KAAKF,GAAmB,SAAS,MACjC,KAAK,iBAAiB,kBAAkB;GACtC,AAAK,KAAK,cAAc,IAAI,YAAY,UAAU;IAAE,YAAY;IAAM,SAAS;IAAM,UAAU;GAAK,CAAC,CAAC,KAGtG,KAAKG,GAAQ;EACf,CAAC;CACH;CAEA,KAAU;EACR,IAAMC,IAAQ,KAAK,iBAAiB,KAAK,OAAO,KAAK,kBAAkB,KAAK,MAAM,KAAK,MAAM,KAAK;EAElG,AADA,KAAKlB,GAAUkB,CAAK,GACpB,KAAKjB,GAAWiB,CAAK;CACvB;CAEA;CAcA;CAMA,GAAW,GAAmB;EAI5B,AAHA,KAAKV,KAAiBW,GACtB,KAAKrB,GAAO,OAAO,KACnB,KAAK,WAAW,OAAO,IAAI,QAAQ,GACnC,KAAKM,KAAU,KAAK;CACtB;CAEA,GAAU,GAAkE;EAC1E,IAAMgB,KACH,KAAK,gBAAgB,aAAaC,EAAQ,YAAY,CAACA,EAAQ,cAAc,KAAK,QAAQ,QAAQ,KAAK;EAC1G,AAAID,MAAW,MACf,KAAKhB,KAAU,KAAK,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,KAAKA,KAAUgB,CAAM,CAAC,GAC3E,KAAKpB,GAAU,KAAKI,EAAO;CAC7B;CAEA,KAAW;EAKT,AAJA,KAAKA,KAAU,KAAK,eACpB,KAAKN,GAAO,OAAO,GAAG,KAAK,QAC3B,KAAKU,KAAiB,KAAA,GACtB,KAAK,WAAW,OAAO,OAAO,QAAQ,GACtC,KAAKP,GAAW,KAAKG,EAAO;CAC9B;CAEA,KAAc;EACZ,AAAI,KAAKI,OAAmB,KAAA,MAC5B,KAAKA,KAAiB,KAAA,GACtB,KAAKV,GAAO,OAAO,GAAG,KAAK,QAC3B,KAAK,WAAW,OAAO,OAAO,QAAQ;CACxC;CAEA,GAAU,GAAe;EAEvB,AADA,KAAKwB,GAAaJ,CAAK,GACvB,KAAK,mBAAmB;CAC1B;CAEA,GAAW,GAAe;EAExB,AADA,KAAKI,GAAaJ,CAAK,GACvB,KAAK,oBAAoB;CAC3B;CAEA,GAAa,GAAe;EAC1B,AAAIA,KAAS,KAAK,OAAOA,KAAS,KAAK,QACrC,KAAK,gBAAgBA;CAEzB;AACF;AA5JG5B,EAAA,CAAAiC,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA7B,EAAA,WAAA,eAAA,KAAA,CAAA,GAKxCJ,EAAA,CAAAiC,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA7B,EAAA,WAAA,OAAA,KAAA,CAAA,GAKxCJ,EAAA,CAAAiC,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA7B,EAAA,WAAA,OAAA,KAAA,CAAA,GAKxCJ,EAAA,CAAAiC,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA7B,EAAA,WAAA,QAAA,KAAA,CAAA,GAyBxCJ,EAAA,CAAAiC,EAAS,EAAE,MAAM,OAAO,CAAC,CAAA,GAAA7B,EAAA,WAAA,QAAA,KAAA,CAAA"}
1
+ {"version":3,"file":"resize-handle2.js","names":["styles","_decorate","__decorate","resize_handle_default","i18nDefaults","ResizeHandle","FormControlMixin","LitElement","useStyles","#range","ifDefined","#setInput","#setChange","#i18nController","I18nController","#offset","#handleGestureInput","input","event","#dragPointerId","#dragStart","#cancelDrag","#dragMove","#dragEnd","#handleGesture","#gestureController","GestureController","props","#toggle","value","pointerId","offset","gesture","#updateValue","property"],"sources":["../../src/resize-handle/resize-handle.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement, type PropertyValues } from 'lit';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { property } from 'lit/decorators/property.js';\nimport { FormControlMixin } from '@nvidia-elements/forms/mixins';\nimport {\n GestureController,\n type Gesture,\n type GestureInput,\n type PointerMovementGesture\n} from '@nvidia-elements/core/internal';\nimport { useStyles } from '@nvidia-elements/foundations/internal/styles';\nimport { I18nController, type I18nDefaults } from '@nvidia-elements/foundations/internal/i18n';\nimport styles from './resize-handle.css?inline';\n\nconst i18nDefaults = {\n resize: 'resize'\n} satisfies I18nDefaults;\n\n/**\n * @element nve-resize-handle\n * @description A resize-handle slider is a control that enables users to resize views or panels vertically or horizontally.\n * @documentation https://nvidia.github.io/elements/docs/elements/resize-handle/\n * @since 1.27.0\n * @entrypoint \\@nvidia-elements/core/resize-handle\n * @event toggle - Dispatched when the resize handle is double clicked.\n * @cssprop --background\n * @cssprop --line-width\n * @cssprop --target-size\n * @cssprop --cursor\n\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/slider/\n *\n */\nexport class ResizeHandle extends FormControlMixin<typeof LitElement, number>(LitElement) {\n /**\n * Determines the orientation direction of the resize handle.\n */\n @property({ type: String, reflect: true }) orientation?: 'horizontal' | 'vertical' = 'horizontal';\n\n /**\n * Determines the min resize value.\n */\n @property({ type: Number, reflect: true }) min = 0;\n\n /**\n * Determines the max resize value.\n */\n @property({ type: Number, reflect: true }) max = 100;\n\n /**\n * Determines the value step change.\n */\n @property({ type: Number, reflect: true }) step = 10;\n\n static styles = useStyles([styles]);\n\n get #range() {\n return this.shadowRoot!.querySelector('input')!;\n }\n\n static readonly metadata = {\n tag: 'nve-resize-handle',\n version: '0.0.0',\n valueSchema: {\n type: 'number' as const\n }\n };\n\n readonly #i18nController: I18nController<this> = new I18nController<this>(this, i18nDefaults);\n\n readonly #gestureController: GestureController;\n\n #dragPointerId?: number;\n\n /**\n * Updates internal string values for internationalization.\n */\n @property({ type: Object }) i18n = this.#i18nController.i18n;\n\n #offset = 0;\n\n render() {\n return html`\n <div internal-host>\n <div class=\"line\" part=\"_line\"></div>\n <input aria-label=${ifDefined(this.ariaLabel ?? this.i18n.resize)} type=\"range\" min=${this.min} max=${this.max} .valueAsNumber=${this.valueAsNumber} @input=${(e: Event) => this.#setInput((e.target as HTMLInputElement).valueAsNumber)} @change=${(e: Event) => this.#setChange((e.target as HTMLInputElement).valueAsNumber)} step=${this.step} />\n </div>\n `;\n }\n\n constructor() {\n super();\n this.value = this.value ?? 50;\n this.#offset = this.valueAsNumber;\n this.#gestureController = new GestureController(this, { touchAction: 'none' });\n }\n\n connectedCallback() {\n super.connectedCallback();\n this._internals.role = 'none';\n this.addEventListener('nve-gesture', this.#handleGesture as EventListener);\n this.addEventListener('nve-gesture-input', this.#handleGestureInput as EventListener);\n }\n\n disconnectedCallback() {\n this.removeEventListener('nve-gesture', this.#handleGesture as EventListener);\n this.removeEventListener('nve-gesture-input', this.#handleGestureInput as EventListener);\n this.#cancelDrag();\n super.disconnectedCallback();\n }\n\n firstUpdated(props: PropertyValues) {\n super.firstUpdated(props);\n this.#gestureController.target = this;\n this.addEventListener('dblclick', () => {\n if (!this.dispatchEvent(new CustomEvent('toggle', { cancelable: true, bubbles: true, composed: true }))) {\n return;\n }\n this.#toggle();\n });\n }\n\n #toggle() {\n const value = this.valueAsNumber <= this.max && this.valueAsNumber !== this.min ? this.min : this.max;\n this.#setInput(value);\n this.#setChange(value);\n }\n\n #handleGestureInput = (event: CustomEvent<GestureInput>): void => {\n const input = event.detail;\n if (input.kind === 'pointerdown') {\n const canStartDrag = input.event.button === 0 && input.event.isPrimary && this.#dragPointerId === undefined;\n if (canStartDrag && input.claim({ kind: 'drag' })) this.#dragStart(input.event.pointerId);\n } else if (input.kind === 'pointerend' && input.event.pointerId === this.#dragPointerId) {\n if (input.interrupted) this.#cancelDrag();\n else {\n this.#dragMove(input);\n this.#dragEnd();\n }\n }\n };\n\n #handleGesture = (event: CustomEvent<Gesture<undefined>>): void => {\n if (event.detail.kind === 'drag' && event.detail.event.pointerId === this.#dragPointerId) {\n this.#dragMove(event.detail);\n }\n };\n\n #dragStart(pointerId: number) {\n this.#dragPointerId = pointerId;\n this.#range.step = '1';\n this._internals.states.add('active');\n this.#offset = this.valueAsNumber;\n }\n\n #dragMove(gesture: Pick<PointerMovementGesture, 'movementX' | 'movementY'>) {\n const offset =\n (this.orientation === 'vertical' ? gesture.movementX : -gesture.movementY) * (this.dir === 'rtl' ? -1 : 1);\n if (offset === 0) return;\n this.#offset = Math.max(this.min, Math.min(this.max, this.#offset + offset));\n this.#setInput(this.#offset);\n }\n\n #dragEnd() {\n this.#offset = this.valueAsNumber;\n this.#range.step = `${this.step}`;\n this.#dragPointerId = undefined;\n this._internals.states.delete('active');\n this.#setChange(this.#offset);\n }\n\n #cancelDrag() {\n if (this.#dragPointerId === undefined) return;\n this.#dragPointerId = undefined;\n this.#range.step = `${this.step}`;\n this._internals.states.delete('active');\n }\n\n #setInput(value: number) {\n this.#updateValue(value);\n this.dispatchInputEvent();\n }\n\n #setChange(value: number) {\n this.#updateValue(value);\n this.dispatchChangeEvent();\n }\n\n #updateValue(value: number) {\n if (value <= this.max && value >= this.min) {\n this.valueAsNumber = value;\n }\n }\n}\n"],"mappings":"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"}
@@ -1,44 +1,44 @@
1
- import { scopedRegistry as e } from "../internal/decorators/scoped-registry.js";
2
- import { useStyles as t } from "../internal/styles/index.js";
3
- import n from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
4
- import { IconButton as r } from "../icon-button/icon-button2.js";
5
- import { Control as i } from "../forms/control/control2.js";
6
- import { inputStyles as a } from "../input/input2.js";
7
- import o from "./search.js";
8
- import { html as s } from "lit";
9
- import { property as c } from "lit/decorators/property.js";
1
+ import e from "../_virtual/_@oxc-project_runtime@0.155.0/helpers/esm/decorate.js";
2
+ import { IconButton as t } from "../icon-button/icon-button2.js";
3
+ import { Control as n } from "../forms/control/control2.js";
4
+ import { inputStyles as r } from "../input/input2.js";
5
+ import i from "./search.js";
6
+ import { html as a } from "lit";
7
+ import { property as o } from "lit/decorators/property.js";
8
+ import { scopedRegistry as s } from "@nvidia-elements/foundations/internal/decorators";
9
+ import { useStyles as c } from "@nvidia-elements/foundations/internal/styles";
10
10
  // src/search/search.ts
11
- var l = class extends i {
11
+ var l = class extends n {
12
12
  constructor(...e) {
13
13
  super(...e), this.rounded = !1;
14
14
  }
15
15
  static {
16
- this.styles = t([
17
- ...i.styles,
18
- a,
19
- o
16
+ this.styles = c([
17
+ ...n.styles,
18
+ r,
19
+ i
20
20
  ]);
21
21
  }
22
22
  static {
23
23
  this.metadata = {
24
24
  tag: "nve-search",
25
- version: "2.23.3"
25
+ version: "2.23.5"
26
26
  };
27
27
  }
28
28
  static {
29
- this.elementDefinitions = { [r.metadata.tag]: r };
29
+ this.elementDefinitions = { [t.metadata.tag]: t };
30
30
  }
31
31
  get prefixContent() {
32
- return s`<nve-icon-button part="icon-button" icon-name="search" container="inline" aria-hidden="true" readonly="readonly"></nve-icon-button>`;
32
+ return a`<nve-icon-button part="icon-button" icon-name="search" container="inline" aria-hidden="true" readonly="readonly"></nve-icon-button>`;
33
33
  }
34
34
  };
35
- n([c({
35
+ e([o({
36
36
  type: String,
37
37
  reflect: !0
38
- })], l.prototype, "container", void 0), n([c({
38
+ })], l.prototype, "container", void 0), e([o({
39
39
  type: Boolean,
40
40
  reflect: !0
41
- })], l.prototype, "rounded", void 0), l = n([e()], l);
41
+ })], l.prototype, "rounded", void 0), l = e([s()], l);
42
42
  export { l as Search };
43
43
 
44
44
  //# sourceMappingURL=search2.js.map