@nvidia-elements/core 0.1.0 → 0.1.2

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 (612) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/dist/_virtual/{_@oxc-project_runtime@0.123.0 → _@oxc-project_runtime@0.130.0}/helpers/decorate.js +1 -1
  3. package/dist/accordion/accordion2.js +12 -12
  4. package/dist/accordion/accordion2.js.map +1 -1
  5. package/dist/accordion/define.js.map +1 -1
  6. package/dist/alert/alert-group2.js +2 -2
  7. package/dist/alert/alert-group2.js.map +1 -1
  8. package/dist/alert/alert2.js +5 -5
  9. package/dist/alert/alert2.js.map +1 -1
  10. package/dist/alert/define.js.map +1 -1
  11. package/dist/avatar/avatar-group2.js +1 -1
  12. package/dist/avatar/avatar-group2.js.map +1 -1
  13. package/dist/avatar/avatar2.js +2 -2
  14. package/dist/avatar/avatar2.js.map +1 -1
  15. package/dist/avatar/define.js.map +1 -1
  16. package/dist/badge/badge2.js +4 -4
  17. package/dist/badge/badge2.js.map +1 -1
  18. package/dist/badge/define.js.map +1 -1
  19. package/dist/breadcrumb/breadcrumb2.js +2 -2
  20. package/dist/breadcrumb/breadcrumb2.js.map +1 -1
  21. package/dist/breadcrumb/define.js.map +1 -1
  22. package/dist/bundles/index.js +4 -4
  23. package/dist/button/button.js +1 -1
  24. package/dist/button/button.js.map +1 -1
  25. package/dist/button/button2.js +2 -2
  26. package/dist/button/button2.js.map +1 -1
  27. package/dist/button/define.js.map +1 -1
  28. package/dist/button-group/button-group2.js +4 -4
  29. package/dist/button-group/button-group2.js.map +1 -1
  30. package/dist/button-group/define.js.map +1 -1
  31. package/dist/card/card2.js +5 -5
  32. package/dist/card/card2.js.map +1 -1
  33. package/dist/card/define.js.map +1 -1
  34. package/dist/chat-message/chat-message2.js +2 -2
  35. package/dist/chat-message/chat-message2.js.map +1 -1
  36. package/dist/chat-message/define.js.map +1 -1
  37. package/dist/checkbox/checkbox-group2.js +2 -2
  38. package/dist/checkbox/checkbox-group2.js.map +1 -1
  39. package/dist/checkbox/checkbox2.js +2 -2
  40. package/dist/checkbox/checkbox2.js.map +1 -1
  41. package/dist/checkbox/define.js.map +1 -1
  42. package/dist/color/color2.js +2 -2
  43. package/dist/color/color2.js.map +1 -1
  44. package/dist/color/define.js.map +1 -1
  45. package/dist/combobox/combobox2.js +6 -6
  46. package/dist/combobox/combobox2.js.map +1 -1
  47. package/dist/combobox/define.js.map +1 -1
  48. package/dist/copy-button/copy-button2.js +17 -17
  49. package/dist/copy-button/copy-button2.js.map +1 -1
  50. package/dist/copy-button/define.js.map +1 -1
  51. package/dist/custom-elements.json +2 -53
  52. package/dist/data.snippets.json +18 -18
  53. package/dist/date/date2.js +2 -2
  54. package/dist/date/date2.js.map +1 -1
  55. package/dist/date/define.js.map +1 -1
  56. package/dist/datetime/datetime2.js +2 -2
  57. package/dist/datetime/datetime2.js.map +1 -1
  58. package/dist/datetime/define.js.map +1 -1
  59. package/dist/dialog/define.js.map +1 -1
  60. package/dist/dialog/dialog-footer2.js +2 -2
  61. package/dist/dialog/dialog-footer2.js.map +1 -1
  62. package/dist/dialog/dialog-header2.js +2 -2
  63. package/dist/dialog/dialog-header2.js.map +1 -1
  64. package/dist/dialog/dialog2.js +4 -4
  65. package/dist/dialog/dialog2.js.map +1 -1
  66. package/dist/divider/define.js.map +1 -1
  67. package/dist/divider/divider2.js +2 -2
  68. package/dist/divider/divider2.js.map +1 -1
  69. package/dist/dot/define.js.map +1 -1
  70. package/dist/dot/dot2.js +2 -2
  71. package/dist/dot/dot2.js.map +1 -1
  72. package/dist/drawer/define.js.map +1 -1
  73. package/dist/drawer/drawer-content2.js +2 -2
  74. package/dist/drawer/drawer-content2.js.map +1 -1
  75. package/dist/drawer/drawer-footer2.js +2 -2
  76. package/dist/drawer/drawer-footer2.js.map +1 -1
  77. package/dist/drawer/drawer-header2.js +2 -2
  78. package/dist/drawer/drawer-header2.js.map +1 -1
  79. package/dist/drawer/drawer2.js +8 -8
  80. package/dist/drawer/drawer2.js.map +1 -1
  81. package/dist/dropdown/define.js.map +1 -1
  82. package/dist/dropdown/dropdown-footer2.js +2 -2
  83. package/dist/dropdown/dropdown-footer2.js.map +1 -1
  84. package/dist/dropdown/dropdown-header2.js +2 -2
  85. package/dist/dropdown/dropdown-header2.js.map +1 -1
  86. package/dist/dropdown/dropdown2.js +4 -4
  87. package/dist/dropdown/dropdown2.js.map +1 -1
  88. package/dist/dropdown-group/define.js.map +1 -1
  89. package/dist/dropdown-group/dropdown-group.js +2 -2
  90. package/dist/dropdown-group/dropdown-group.js.map +1 -1
  91. package/dist/dropzone/define.js.map +1 -1
  92. package/dist/dropzone/dropzone.util.js.map +1 -1
  93. package/dist/dropzone/dropzone2.js +4 -4
  94. package/dist/dropzone/dropzone2.js.map +1 -1
  95. package/dist/file/define.js.map +1 -1
  96. package/dist/file/file2.js +1 -1
  97. package/dist/file/file2.js.map +1 -1
  98. package/dist/format-datetime/define.js.map +1 -1
  99. package/dist/format-datetime/format-datetime2.js +2 -2
  100. package/dist/format-datetime/format-datetime2.js.map +1 -1
  101. package/dist/format-number/define.js.map +1 -1
  102. package/dist/format-number/format-number2.js +2 -2
  103. package/dist/format-number/format-number2.js.map +1 -1
  104. package/dist/format-relative-time/define.js.map +1 -1
  105. package/dist/format-relative-time/format-relative-time2.js +2 -2
  106. package/dist/format-relative-time/format-relative-time2.js.map +1 -1
  107. package/dist/forms/control/control2.js +19 -15
  108. package/dist/forms/control/control2.js.map +1 -1
  109. package/dist/forms/control-group/control-group2.js +2 -2
  110. package/dist/forms/control-group/control-group2.js.map +1 -1
  111. package/dist/forms/control-message/control-message2.js +2 -2
  112. package/dist/forms/control-message/control-message2.js.map +1 -1
  113. package/dist/forms/define.js.map +1 -1
  114. package/dist/forms/utils/layout.d.ts +2 -1
  115. package/dist/forms/utils/layout.js.map +1 -1
  116. package/dist/forms/utils/states.d.ts +0 -1
  117. package/dist/forms/utils/states.js.map +1 -1
  118. package/dist/forms/utils/types.d.ts +0 -24
  119. package/dist/grid/cell/cell2.js +1 -1
  120. package/dist/grid/cell/cell2.js.map +1 -1
  121. package/dist/grid/column/column2.js +2 -2
  122. package/dist/grid/column/column2.js.map +1 -1
  123. package/dist/grid/define.js.map +1 -1
  124. package/dist/grid/footer/footer2.js +2 -2
  125. package/dist/grid/footer/footer2.js.map +1 -1
  126. package/dist/grid/grid2.js +2 -2
  127. package/dist/grid/grid2.js.map +1 -1
  128. package/dist/grid/header/header2.js +2 -2
  129. package/dist/grid/header/header2.js.map +1 -1
  130. package/dist/grid/placeholder/placeholder2.js +1 -1
  131. package/dist/grid/placeholder/placeholder2.js.map +1 -1
  132. package/dist/grid/row/row2.js +2 -2
  133. package/dist/grid/row/row2.js.map +1 -1
  134. package/dist/icon/define.js.map +1 -1
  135. package/dist/icon/icon2.js +3 -3
  136. package/dist/icon/icon2.js.map +1 -1
  137. package/dist/icon/icons/academic-cap.js.map +1 -1
  138. package/dist/icon/icons/add-asset.js.map +1 -1
  139. package/dist/icon/icons/add-comment.js.map +1 -1
  140. package/dist/icon/icons/add-grid.js.map +1 -1
  141. package/dist/icon/icons/add-user.js.map +1 -1
  142. package/dist/icon/icons/add.js.map +1 -1
  143. package/dist/icon/icons/ancestors.js.map +1 -1
  144. package/dist/icon/icons/archive.js.map +1 -1
  145. package/dist/icon/icons/arrow-angle.js.map +1 -1
  146. package/dist/icon/icons/arrow-both.js.map +1 -1
  147. package/dist/icon/icons/arrow-cycle.js.map +1 -1
  148. package/dist/icon/icons/arrow-path-rounded-square.js.map +1 -1
  149. package/dist/icon/icons/arrow-stop.js.map +1 -1
  150. package/dist/icon/icons/arrow.js.map +1 -1
  151. package/dist/icon/icons/at-symbol.js.map +1 -1
  152. package/dist/icon/icons/backspace.js.map +1 -1
  153. package/dist/icon/icons/bar-pill-stack.js.map +1 -1
  154. package/dist/icon/icons/bars-3-bottom-left.js.map +1 -1
  155. package/dist/icon/icons/bars-3-bottom-right.js.map +1 -1
  156. package/dist/icon/icons/bars-3-center-left.js.map +1 -1
  157. package/dist/icon/icons/bars-3.js.map +1 -1
  158. package/dist/icon/icons/bars-4.js.map +1 -1
  159. package/dist/icon/icons/beaker.js.map +1 -1
  160. package/dist/icon/icons/bell-slash.js.map +1 -1
  161. package/dist/icon/icons/bell-stroke.js.map +1 -1
  162. package/dist/icon/icons/bell.js.map +1 -1
  163. package/dist/icon/icons/bold.js.map +1 -1
  164. package/dist/icon/icons/book.js.map +1 -1
  165. package/dist/icon/icons/bookmark-stroke.js.map +1 -1
  166. package/dist/icon/icons/bookmark.js.map +1 -1
  167. package/dist/icon/icons/bounding-box.js.map +1 -1
  168. package/dist/icon/icons/branch.js.map +1 -1
  169. package/dist/icon/icons/briefcase.js.map +1 -1
  170. package/dist/icon/icons/broadcast.js.map +1 -1
  171. package/dist/icon/icons/browser.js.map +1 -1
  172. package/dist/icon/icons/bug.js.map +1 -1
  173. package/dist/icon/icons/calendar.js.map +1 -1
  174. package/dist/icon/icons/camera.js.map +1 -1
  175. package/dist/icon/icons/cancel.js.map +1 -1
  176. package/dist/icon/icons/caret.js.map +1 -1
  177. package/dist/icon/icons/carets-closed-square.js.map +1 -1
  178. package/dist/icon/icons/carousel.js.map +1 -1
  179. package/dist/icon/icons/category-list.js.map +1 -1
  180. package/dist/icon/icons/chart-bar.js.map +1 -1
  181. package/dist/icon/icons/chat-bubble.js.map +1 -1
  182. package/dist/icon/icons/chat-bubbles.js.map +1 -1
  183. package/dist/icon/icons/check-badge.js.map +1 -1
  184. package/dist/icon/icons/check.js.map +1 -1
  185. package/dist/icon/icons/checklist.js.map +1 -1
  186. package/dist/icon/icons/checkmark-circle.js.map +1 -1
  187. package/dist/icon/icons/chevron.js.map +1 -1
  188. package/dist/icon/icons/chip.js.map +1 -1
  189. package/dist/icon/icons/circle-angled-line.js.map +1 -1
  190. package/dist/icon/icons/circle-dash.js.map +1 -1
  191. package/dist/icon/icons/circle-dot-arrows.js.map +1 -1
  192. package/dist/icon/icons/circle-dot.js.map +1 -1
  193. package/dist/icon/icons/circle-half.js.map +1 -1
  194. package/dist/icon/icons/circle-rule.js.map +1 -1
  195. package/dist/icon/icons/circle-tick.js.map +1 -1
  196. package/dist/icon/icons/circle.js.map +1 -1
  197. package/dist/icon/icons/clipboard.js.map +1 -1
  198. package/dist/icon/icons/clock-circle-arrow.js.map +1 -1
  199. package/dist/icon/icons/clock.js.map +1 -1
  200. package/dist/icon/icons/cloud-download.js.map +1 -1
  201. package/dist/icon/icons/cloud-upload.js.map +1 -1
  202. package/dist/icon/icons/cloud.js.map +1 -1
  203. package/dist/icon/icons/code.js.map +1 -1
  204. package/dist/icon/icons/collapse-all.js.map +1 -1
  205. package/dist/icon/icons/collapse-details.js.map +1 -1
  206. package/dist/icon/icons/color-palette.js.map +1 -1
  207. package/dist/icon/icons/columns.js.map +1 -1
  208. package/dist/icon/icons/compare.js.map +1 -1
  209. package/dist/icon/icons/computer.js.map +1 -1
  210. package/dist/icon/icons/connect-node.js.map +1 -1
  211. package/dist/icon/icons/connected-blocks.js.map +1 -1
  212. package/dist/icon/icons/copy.js.map +1 -1
  213. package/dist/icon/icons/cross-hairs.js.map +1 -1
  214. package/dist/icon/icons/cursor-rays.js.map +1 -1
  215. package/dist/icon/icons/cursor-ripples.js.map +1 -1
  216. package/dist/icon/icons/data-management.js.map +1 -1
  217. package/dist/icon/icons/delete-node.js.map +1 -1
  218. package/dist/icon/icons/delete.js.map +1 -1
  219. package/dist/icon/icons/doc-checkmark.js.map +1 -1
  220. package/dist/icon/icons/dock-bottom.js.map +1 -1
  221. package/dist/icon/icons/dock-none.js.map +1 -1
  222. package/dist/icon/icons/dock-side.js.map +1 -1
  223. package/dist/icon/icons/document-clipboard.js.map +1 -1
  224. package/dist/icon/icons/document.js.map +1 -1
  225. package/dist/icon/icons/dot-stroke.js.map +1 -1
  226. package/dist/icon/icons/dot.js.map +1 -1
  227. package/dist/icon/icons/double-chevron.js.map +1 -1
  228. package/dist/icon/icons/download.js.map +1 -1
  229. package/dist/icon/icons/drag.js.map +1 -1
  230. package/dist/icon/icons/dropper.js.map +1 -1
  231. package/dist/icon/icons/duplicate.js.map +1 -1
  232. package/dist/icon/icons/edit.js.map +1 -1
  233. package/dist/icon/icons/ellipses.js.map +1 -1
  234. package/dist/icon/icons/envelope.js.map +1 -1
  235. package/dist/icon/icons/exclamation-circle.js.map +1 -1
  236. package/dist/icon/icons/exclamation-mark.js.map +1 -1
  237. package/dist/icon/icons/exclamation-triangle.js.map +1 -1
  238. package/dist/icon/icons/expand-all.js.map +1 -1
  239. package/dist/icon/icons/expand-details.js.map +1 -1
  240. package/dist/icon/icons/expression.js.map +1 -1
  241. package/dist/icon/icons/eye-hidden.js.map +1 -1
  242. package/dist/icon/icons/eye.js.map +1 -1
  243. package/dist/icon/icons/face-frown.js.map +1 -1
  244. package/dist/icon/icons/face-smile.js.map +1 -1
  245. package/dist/icon/icons/fast-forward-10.js.map +1 -1
  246. package/dist/icon/icons/fast-forward.js.map +1 -1
  247. package/dist/icon/icons/film.js.map +1 -1
  248. package/dist/icon/icons/filter-stroke.js.map +1 -1
  249. package/dist/icon/icons/filter.js.map +1 -1
  250. package/dist/icon/icons/flag-stroke.js.map +1 -1
  251. package/dist/icon/icons/flag.js.map +1 -1
  252. package/dist/icon/icons/fold.js.map +1 -1
  253. package/dist/icon/icons/folder.js.map +1 -1
  254. package/dist/icon/icons/fork.js.map +1 -1
  255. package/dist/icon/icons/gear.js.map +1 -1
  256. package/dist/icon/icons/globe-alt-stroke.js.map +1 -1
  257. package/dist/icon/icons/globe.js.map +1 -1
  258. package/dist/icon/icons/group-boxes.js.map +1 -1
  259. package/dist/icon/icons/group.js.map +1 -1
  260. package/dist/icon/icons/hand.js.map +1 -1
  261. package/dist/icon/icons/hash.js.map +1 -1
  262. package/dist/icon/icons/heading.js.map +1 -1
  263. package/dist/icon/icons/home.js.map +1 -1
  264. package/dist/icon/icons/horizontal-rule.js.map +1 -1
  265. package/dist/icon/icons/hourglass-end.js.map +1 -1
  266. package/dist/icon/icons/hourglass-mid.js.map +1 -1
  267. package/dist/icon/icons/hourglass-start.js.map +1 -1
  268. package/dist/icon/icons/hourglass.js.map +1 -1
  269. package/dist/icon/icons/identification.js.map +1 -1
  270. package/dist/icon/icons/image.js.map +1 -1
  271. package/dist/icon/icons/inbox.js.map +1 -1
  272. package/dist/icon/icons/infinity.js.map +1 -1
  273. package/dist/icon/icons/information-circle-stroke.js.map +1 -1
  274. package/dist/icon/icons/inspect.js.map +1 -1
  275. package/dist/icon/icons/italic.js.map +1 -1
  276. package/dist/icon/icons/key.js.map +1 -1
  277. package/dist/icon/icons/keyboard.js.map +1 -1
  278. package/dist/icon/icons/laptop-phone.js.map +1 -1
  279. package/dist/icon/icons/layers.js.map +1 -1
  280. package/dist/icon/icons/lifebuoy.js.map +1 -1
  281. package/dist/icon/icons/lightbulb.js.map +1 -1
  282. package/dist/icon/icons/lightning-bolt.js.map +1 -1
  283. package/dist/icon/icons/link.js.map +1 -1
  284. package/dist/icon/icons/list-ordered.js.map +1 -1
  285. package/dist/icon/icons/list-unordered.js.map +1 -1
  286. package/dist/icon/icons/lock.js.map +1 -1
  287. package/dist/icon/icons/login.js.map +1 -1
  288. package/dist/icon/icons/logout.js.map +1 -1
  289. package/dist/icon/icons/looping-off.js.map +1 -1
  290. package/dist/icon/icons/looping.js.map +1 -1
  291. package/dist/icon/icons/map-drives.js.map +1 -1
  292. package/dist/icon/icons/map-pin.js.map +1 -1
  293. package/dist/icon/icons/map.js.map +1 -1
  294. package/dist/icon/icons/markdown.js.map +1 -1
  295. package/dist/icon/icons/maximize.js.map +1 -1
  296. package/dist/icon/icons/megaphone.js.map +1 -1
  297. package/dist/icon/icons/menu.js.map +1 -1
  298. package/dist/icon/icons/merge.js.map +1 -1
  299. package/dist/icon/icons/meter.js.map +1 -1
  300. package/dist/icon/icons/minimize.js.map +1 -1
  301. package/dist/icon/icons/minus-circle.js.map +1 -1
  302. package/dist/icon/icons/minus.js.map +1 -1
  303. package/dist/icon/icons/moon.js.map +1 -1
  304. package/dist/icon/icons/more-actions.js.map +1 -1
  305. package/dist/icon/icons/multiselect.js.map +1 -1
  306. package/dist/icon/icons/music-note.js.map +1 -1
  307. package/dist/icon/icons/newspaper.js.map +1 -1
  308. package/dist/icon/icons/not-allowed.js.map +1 -1
  309. package/dist/icon/icons/numbers.js.map +1 -1
  310. package/dist/icon/icons/office-building.js.map +1 -1
  311. package/dist/icon/icons/outline.js.map +1 -1
  312. package/dist/icon/icons/paper-airplane.js.map +1 -1
  313. package/dist/icon/icons/paper-clip.js.map +1 -1
  314. package/dist/icon/icons/pause.js.map +1 -1
  315. package/dist/icon/icons/pencil-square.js.map +1 -1
  316. package/dist/icon/icons/person-2.js.map +1 -1
  317. package/dist/icon/icons/person-3.js.map +1 -1
  318. package/dist/icon/icons/person-circle.js.map +1 -1
  319. package/dist/icon/icons/person.js.map +1 -1
  320. package/dist/icon/icons/phone.js.map +1 -1
  321. package/dist/icon/icons/picture-in-picture.js.map +1 -1
  322. package/dist/icon/icons/pie-chart.js.map +1 -1
  323. package/dist/icon/icons/pin.js.map +1 -1
  324. package/dist/icon/icons/pizza-slice.js.map +1 -1
  325. package/dist/icon/icons/placeholder.js.map +1 -1
  326. package/dist/icon/icons/play.js.map +1 -1
  327. package/dist/icon/icons/plug.js.map +1 -1
  328. package/dist/icon/icons/plus-circle.js.map +1 -1
  329. package/dist/icon/icons/plus-minus.js.map +1 -1
  330. package/dist/icon/icons/pointer-stroke.js.map +1 -1
  331. package/dist/icon/icons/pointer.js.map +1 -1
  332. package/dist/icon/icons/priority-high.js.map +1 -1
  333. package/dist/icon/icons/priority-low.js.map +1 -1
  334. package/dist/icon/icons/priority-medium.js.map +1 -1
  335. package/dist/icon/icons/projector.js.map +1 -1
  336. package/dist/icon/icons/pull-close.js.map +1 -1
  337. package/dist/icon/icons/pull-draft.js.map +1 -1
  338. package/dist/icon/icons/pull-open.js.map +1 -1
  339. package/dist/icon/icons/pulse.js.map +1 -1
  340. package/dist/icon/icons/puzzle-piece.js.map +1 -1
  341. package/dist/icon/icons/question-mark-circle-stroke.js.map +1 -1
  342. package/dist/icon/icons/question-mark-circle.js.map +1 -1
  343. package/dist/icon/icons/rectangle-group.js.map +1 -1
  344. package/dist/icon/icons/rectangle-stack-horizontal.js.map +1 -1
  345. package/dist/icon/icons/rectangle-stack-vertical.js.map +1 -1
  346. package/dist/icon/icons/redo.js.map +1 -1
  347. package/dist/icon/icons/refresh.js.map +1 -1
  348. package/dist/icon/icons/reply.js.map +1 -1
  349. package/dist/icon/icons/rewind-10.js.map +1 -1
  350. package/dist/icon/icons/rewind.js.map +1 -1
  351. package/dist/icon/icons/rocketship.js.map +1 -1
  352. package/dist/icon/icons/running.js.map +1 -1
  353. package/dist/icon/icons/scale.js.map +1 -1
  354. package/dist/icon/icons/scissors.js.map +1 -1
  355. package/dist/icon/icons/search.js.map +1 -1
  356. package/dist/icon/icons/sensor.js.map +1 -1
  357. package/dist/icon/icons/server-stack.js.map +1 -1
  358. package/dist/icon/icons/server.js.map +1 -1
  359. package/dist/icon/icons/shapes.js.map +1 -1
  360. package/dist/icon/icons/share.js.map +1 -1
  361. package/dist/icon/icons/signal-slash.js.map +1 -1
  362. package/dist/icon/icons/signal.js.map +1 -1
  363. package/dist/icon/icons/signpost.js.map +1 -1
  364. package/dist/icon/icons/sort-ascending.js.map +1 -1
  365. package/dist/icon/icons/sort-descending.js.map +1 -1
  366. package/dist/icon/icons/soundwave.js.map +1 -1
  367. package/dist/icon/icons/sparkles.js.map +1 -1
  368. package/dist/icon/icons/split-horizontal.js.map +1 -1
  369. package/dist/icon/icons/split-none.js.map +1 -1
  370. package/dist/icon/icons/split-vertical.js.map +1 -1
  371. package/dist/icon/icons/star-half.js.map +1 -1
  372. package/dist/icon/icons/star-stroke.js.map +1 -1
  373. package/dist/icon/icons/star.js.map +1 -1
  374. package/dist/icon/icons/start.js.map +1 -1
  375. package/dist/icon/icons/status-offline.js.map +1 -1
  376. package/dist/icon/icons/status-online.js.map +1 -1
  377. package/dist/icon/icons/stop-sign.js.map +1 -1
  378. package/dist/icon/icons/stop.js.map +1 -1
  379. package/dist/icon/icons/stopwatch.js.map +1 -1
  380. package/dist/icon/icons/strikethrough.js.map +1 -1
  381. package/dist/icon/icons/sun.js.map +1 -1
  382. package/dist/icon/icons/swatch.js.map +1 -1
  383. package/dist/icon/icons/switch-apps.js.map +1 -1
  384. package/dist/icon/icons/switch.js.map +1 -1
  385. package/dist/icon/icons/table.js.map +1 -1
  386. package/dist/icon/icons/tag.js.map +1 -1
  387. package/dist/icon/icons/task.js.map +1 -1
  388. package/dist/icon/icons/telescope.js.map +1 -1
  389. package/dist/icon/icons/template.js.map +1 -1
  390. package/dist/icon/icons/terminal.js.map +1 -1
  391. package/dist/icon/icons/thumb-stroke.js.map +1 -1
  392. package/dist/icon/icons/thumb.js.map +1 -1
  393. package/dist/icon/icons/traffic-cone.js.map +1 -1
  394. package/dist/icon/icons/transparent-box.js.map +1 -1
  395. package/dist/icon/icons/trend-down.js.map +1 -1
  396. package/dist/icon/icons/trend-up.js.map +1 -1
  397. package/dist/icon/icons/trophy.js.map +1 -1
  398. package/dist/icon/icons/truck.js.map +1 -1
  399. package/dist/icon/icons/typography.js.map +1 -1
  400. package/dist/icon/icons/undo.js.map +1 -1
  401. package/dist/icon/icons/unlock.js.map +1 -1
  402. package/dist/icon/icons/upload.js.map +1 -1
  403. package/dist/icon/icons/video-camera.js.map +1 -1
  404. package/dist/icon/icons/view-as-grid.js.map +1 -1
  405. package/dist/icon/icons/volume-muted.js.map +1 -1
  406. package/dist/icon/icons/volume.js.map +1 -1
  407. package/dist/icon/icons/wifi.js.map +1 -1
  408. package/dist/icon/icons/wrench.js.map +1 -1
  409. package/dist/icon/icons/x-circle.js.map +1 -1
  410. package/dist/icon/icons/zoom-in.js.map +1 -1
  411. package/dist/icon/icons/zoom-out.js.map +1 -1
  412. package/dist/icon/icons.js.map +1 -1
  413. package/dist/icon/server.js.map +1 -1
  414. package/dist/icon-button/define.js.map +1 -1
  415. package/dist/icon-button/icon-button2.js +2 -2
  416. package/dist/icon-button/icon-button2.js.map +1 -1
  417. package/dist/index.js +1 -1
  418. package/dist/input/define.js.map +1 -1
  419. package/dist/input/input-group2.js +1 -1
  420. package/dist/input/input-group2.js.map +1 -1
  421. package/dist/input/input2.js +2 -2
  422. package/dist/input/input2.js.map +1 -1
  423. package/dist/internal/base/button.js +3 -3
  424. package/dist/internal/base/button.js.map +1 -1
  425. package/dist/internal/controllers/audit.controller.js.map +1 -1
  426. package/dist/internal/controllers/i18n.controller.js.map +1 -1
  427. package/dist/internal/controllers/keynav-grid.controller.js.map +1 -1
  428. package/dist/internal/controllers/keynav-list.controller.js.map +1 -1
  429. package/dist/internal/controllers/state-active.controller.js.map +1 -1
  430. package/dist/internal/controllers/state-current.controller.js.map +1 -1
  431. package/dist/internal/controllers/state-disabled.controller.js.map +1 -1
  432. package/dist/internal/controllers/state-expanded.controller.js.map +1 -1
  433. package/dist/internal/controllers/state-highlighted.controller.js.map +1 -1
  434. package/dist/internal/controllers/state-pressed.controller.js.map +1 -1
  435. package/dist/internal/controllers/state-scroll.controller.js.map +1 -1
  436. package/dist/internal/controllers/state-selected.controller.js.map +1 -1
  437. package/dist/internal/controllers/type-anchor.controller.js.map +1 -1
  438. package/dist/internal/controllers/type-button.controller.js.map +1 -1
  439. package/dist/internal/controllers/type-closable.controller.js.map +1 -1
  440. package/dist/internal/controllers/type-command.controller.js.map +1 -1
  441. package/dist/internal/controllers/type-expandable.controller.js.map +1 -1
  442. package/dist/internal/controllers/type-interest.controller.js.map +1 -1
  443. package/dist/internal/controllers/type-native-popover-trigger.controller.js.map +1 -1
  444. package/dist/internal/controllers/type-native-popover.controller.js.map +1 -1
  445. package/dist/internal/controllers/type-native-popover.utils.js.map +1 -1
  446. package/dist/internal/controllers/type-selectable.controller.js.map +1 -1
  447. package/dist/internal/controllers/type-ssr.controller.js +2 -2
  448. package/dist/internal/controllers/type-ssr.controller.js.map +1 -1
  449. package/dist/internal/controllers/type-submit.controller.js.map +1 -1
  450. package/dist/internal/controllers/type-touch.controller.js.map +1 -1
  451. package/dist/internal/decorators/host-attr.js.map +1 -1
  452. package/dist/internal/decorators/scoped-registry.js.map +1 -1
  453. package/dist/internal/services/global.service.js +1 -1
  454. package/dist/internal/services/global.service.js.map +1 -1
  455. package/dist/internal/services/global.utils.js +6 -8
  456. package/dist/internal/services/global.utils.js.map +1 -1
  457. package/dist/internal/services/i18n.service.js.map +1 -1
  458. package/dist/internal/services/log.service.js.map +1 -1
  459. package/dist/internal/services/transition.service.js.map +1 -1
  460. package/dist/internal/styles/index.js.map +1 -1
  461. package/dist/internal/styles/popover2.js.map +1 -1
  462. package/dist/internal/types/index.js.map +1 -1
  463. package/dist/internal/utils/a11y.js.map +1 -1
  464. package/dist/internal/utils/audit-logs.d.ts +0 -1
  465. package/dist/internal/utils/audit-logs.js +1 -4
  466. package/dist/internal/utils/audit-logs.js.map +1 -1
  467. package/dist/internal/utils/audit.js.map +1 -1
  468. package/dist/internal/utils/dom.js.map +1 -1
  469. package/dist/internal/utils/events.js.map +1 -1
  470. package/dist/internal/utils/focus.js.map +1 -1
  471. package/dist/internal/utils/keynav.js.map +1 -1
  472. package/dist/internal/utils/objects.js.map +1 -1
  473. package/dist/internal/utils/strings.js.map +1 -1
  474. package/dist/internal/utils/supports.js.map +1 -1
  475. package/dist/logo/define.js.map +1 -1
  476. package/dist/logo/logo2.js +2 -2
  477. package/dist/logo/logo2.js.map +1 -1
  478. package/dist/menu/define.js.map +1 -1
  479. package/dist/menu/menu-item2.js +2 -2
  480. package/dist/menu/menu-item2.js.map +1 -1
  481. package/dist/menu/menu2.js +2 -2
  482. package/dist/menu/menu2.js.map +1 -1
  483. package/dist/month/define.js.map +1 -1
  484. package/dist/month/month2.js +2 -2
  485. package/dist/month/month2.js.map +1 -1
  486. package/dist/notification/define.js.map +1 -1
  487. package/dist/notification/notification-group2.js +2 -2
  488. package/dist/notification/notification-group2.js.map +1 -1
  489. package/dist/notification/notification2.js +4 -4
  490. package/dist/notification/notification2.js.map +1 -1
  491. package/dist/page/define.js.map +1 -1
  492. package/dist/page/page-panel/page-panel-content2.js +1 -1
  493. package/dist/page/page-panel/page-panel-content2.js.map +1 -1
  494. package/dist/page/page-panel/page-panel-footer2.js +2 -2
  495. package/dist/page/page-panel/page-panel-footer2.js.map +1 -1
  496. package/dist/page/page-panel/page-panel-header2.js +2 -2
  497. package/dist/page/page-panel/page-panel-header2.js.map +1 -1
  498. package/dist/page/page-panel/page-panel2.js +5 -5
  499. package/dist/page/page-panel/page-panel2.js.map +1 -1
  500. package/dist/page/page2.js +2 -2
  501. package/dist/page/page2.js.map +1 -1
  502. package/dist/page-header/define.js.map +1 -1
  503. package/dist/page-header/page-header2.js +1 -1
  504. package/dist/page-header/page-header2.js.map +1 -1
  505. package/dist/page-loader/define.js.map +1 -1
  506. package/dist/page-loader/page-loader2.js +2 -2
  507. package/dist/page-loader/page-loader2.js.map +1 -1
  508. package/dist/pagination/define.js.map +1 -1
  509. package/dist/pagination/pagination2.js +4 -4
  510. package/dist/pagination/pagination2.js.map +1 -1
  511. package/dist/panel/define.js.map +1 -1
  512. package/dist/panel/panel2.js +8 -8
  513. package/dist/panel/panel2.js.map +1 -1
  514. package/dist/password/define.js.map +1 -1
  515. package/dist/password/password2.js +2 -2
  516. package/dist/password/password2.js.map +1 -1
  517. package/dist/polyfills/custom-state-set.js.map +1 -1
  518. package/dist/polyfills/index.js.map +1 -1
  519. package/dist/preferences-input/define.js.map +1 -1
  520. package/dist/preferences-input/preferences-input2.js +4 -4
  521. package/dist/preferences-input/preferences-input2.js.map +1 -1
  522. package/dist/progress-bar/define.js.map +1 -1
  523. package/dist/progress-bar/progress-bar2.js +2 -2
  524. package/dist/progress-bar/progress-bar2.js.map +1 -1
  525. package/dist/progress-ring/define.js.map +1 -1
  526. package/dist/progress-ring/progress-ring2.js +5 -5
  527. package/dist/progress-ring/progress-ring2.js.map +1 -1
  528. package/dist/progressive-filter-chip/define.js.map +1 -1
  529. package/dist/progressive-filter-chip/progressive-filter-chip2.js +5 -5
  530. package/dist/progressive-filter-chip/progressive-filter-chip2.js.map +1 -1
  531. package/dist/pulse/define.js.map +1 -1
  532. package/dist/pulse/pulse2.js +2 -2
  533. package/dist/pulse/pulse2.js.map +1 -1
  534. package/dist/radio/define.js.map +1 -1
  535. package/dist/radio/radio-group2.js +2 -2
  536. package/dist/radio/radio-group2.js.map +1 -1
  537. package/dist/radio/radio2.js +2 -2
  538. package/dist/radio/radio2.js.map +1 -1
  539. package/dist/range/define.js.map +1 -1
  540. package/dist/range/range2.js +2 -2
  541. package/dist/range/range2.js.map +1 -1
  542. package/dist/resize-handle/define.js.map +1 -1
  543. package/dist/resize-handle/resize-handle2.js +5 -5
  544. package/dist/resize-handle/resize-handle2.js.map +1 -1
  545. package/dist/search/define.js.map +1 -1
  546. package/dist/search/search2.js +2 -2
  547. package/dist/search/search2.js.map +1 -1
  548. package/dist/select/define.js.map +1 -1
  549. package/dist/select/select2.js +6 -6
  550. package/dist/select/select2.js.map +1 -1
  551. package/dist/skeleton/define.js.map +1 -1
  552. package/dist/skeleton/skeleton2.js +2 -2
  553. package/dist/skeleton/skeleton2.js.map +1 -1
  554. package/dist/sort-button/define.js.map +1 -1
  555. package/dist/sort-button/sort-button2.js +14 -14
  556. package/dist/sort-button/sort-button2.js.map +1 -1
  557. package/dist/sparkline/define.js.map +1 -1
  558. package/dist/sparkline/sparkline.utils.d.ts +0 -1
  559. package/dist/sparkline/sparkline.utils.js.map +1 -1
  560. package/dist/sparkline/sparkline2.js +2 -2
  561. package/dist/sparkline/sparkline2.js.map +1 -1
  562. package/dist/star-rating/define.js.map +1 -1
  563. package/dist/star-rating/star-rating2.js +4 -4
  564. package/dist/star-rating/star-rating2.js.map +1 -1
  565. package/dist/steps/define.js.map +1 -1
  566. package/dist/steps/steps2.js +7 -7
  567. package/dist/steps/steps2.js.map +1 -1
  568. package/dist/switch/define.js.map +1 -1
  569. package/dist/switch/switch-group2.js +2 -2
  570. package/dist/switch/switch-group2.js.map +1 -1
  571. package/dist/switch/switch2.js +2 -2
  572. package/dist/switch/switch2.js.map +1 -1
  573. package/dist/tabs/define.js.map +1 -1
  574. package/dist/tabs/tabs-group2.js +16 -16
  575. package/dist/tabs/tabs-group2.js.map +1 -1
  576. package/dist/tabs/tabs2.js +7 -7
  577. package/dist/tabs/tabs2.js.map +1 -1
  578. package/dist/tag/define.js.map +1 -1
  579. package/dist/tag/tag2.js +5 -5
  580. package/dist/tag/tag2.js.map +1 -1
  581. package/dist/textarea/define.js.map +1 -1
  582. package/dist/textarea/textarea2.js +1 -1
  583. package/dist/textarea/textarea2.js.map +1 -1
  584. package/dist/time/define.js.map +1 -1
  585. package/dist/time/time2.js +2 -2
  586. package/dist/time/time2.js.map +1 -1
  587. package/dist/toast/define.js.map +1 -1
  588. package/dist/toast/toast2.js +4 -4
  589. package/dist/toast/toast2.js.map +1 -1
  590. package/dist/toggletip/define.js.map +1 -1
  591. package/dist/toggletip/toggletip-footer2.js +2 -2
  592. package/dist/toggletip/toggletip-footer2.js.map +1 -1
  593. package/dist/toggletip/toggletip-header2.js +2 -2
  594. package/dist/toggletip/toggletip-header2.js.map +1 -1
  595. package/dist/toggletip/toggletip2.js +4 -4
  596. package/dist/toggletip/toggletip2.js.map +1 -1
  597. package/dist/toolbar/define.js.map +1 -1
  598. package/dist/toolbar/toolbar2.js +4 -4
  599. package/dist/toolbar/toolbar2.js.map +1 -1
  600. package/dist/tooltip/define.js.map +1 -1
  601. package/dist/tooltip/tooltip2.js +2 -2
  602. package/dist/tooltip/tooltip2.js.map +1 -1
  603. package/dist/tree/define.js.map +1 -1
  604. package/dist/tree/tree-node2.js +9 -9
  605. package/dist/tree/tree-node2.js.map +1 -1
  606. package/dist/tree/tree2.js +4 -4
  607. package/dist/tree/tree2.js.map +1 -1
  608. package/dist/tree/utils.js.map +1 -1
  609. package/dist/week/define.js.map +1 -1
  610. package/dist/week/week2.js +2 -2
  611. package/dist/week/week2.js.map +1 -1
  612. package/package.json +19 -13
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","names":[],"sources":["../../../src/forms/utils/layout.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ControlGroup } from '../control-group/control-group.js';\nimport type { Control } from '../control/control.js';\n\nexport const breakpoints = {\n vertical: 300,\n verticalInline: 400,\n horizontal: 500,\n horizontalInline: 600\n};\n\nexport function setupControlLayoutStates(control: Control | ControlGroup) {\n const initalLayout = control.layout;\n const resizeObserver = new ResizeObserver(entries => {\n if (!(control as Control).fitContent) {\n control.layout = getControlLayout(entries[0]!.contentRect.width, initalLayout);\n }\n });\n resizeObserver.observe(control);\n return resizeObserver;\n}\n\nexport type ControlLayouts = 'vertical' | 'vertical-inline' | 'horizontal' | 'horizontal-inline';\n\nexport function getControlLayout(width: number, initalLayout: ControlLayouts) {\n let layout: ControlLayouts = initalLayout;\n if (width < breakpoints.vertical) {\n layout = 'vertical';\n } else if (width < breakpoints.verticalInline) {\n layout = 'vertical-inline';\n } else if (width < breakpoints.horizontal) {\n layout = 'horizontal';\n } else if (width < breakpoints.horizontalInline) {\n layout = 'horizontal-inline';\n }\n\n const layouts: ControlLayouts[] = ['vertical', 'vertical-inline', 'horizontal', 'horizontal-inline'];\n if (layouts.indexOf(initalLayout) < layouts.indexOf(layout)) {\n layout = initalLayout;\n }\n\n return layout;\n}\n\nexport function isInlineInputType(input: HTMLInputElement) {\n return input.type === 'radio' || input.type === 'checkbox';\n}\n"],"mappings":";AAMA,IAAa,IAAc;CACzB,UAAU;CACV,gBAAgB;CAChB,YAAY;CACZ,kBAAkB;CACnB;AAED,SAAgB,EAAyB,GAAiC;CACxE,IAAM,IAAe,EAAQ,QACvB,IAAiB,IAAI,gBAAe,MAAW;AACnD,EAAM,EAAoB,eACxB,EAAQ,SAAS,EAAiB,EAAQ,GAAI,YAAY,OAAO,EAAa;GAEhF;AAEF,QADA,EAAe,QAAQ,EAAQ,EACxB;;AAKT,SAAgB,EAAiB,GAAe,GAA8B;CAC5E,IAAI,IAAyB;AAC7B,CAAI,IAAQ,EAAY,WACtB,IAAS,aACA,IAAQ,EAAY,iBAC7B,IAAS,oBACA,IAAQ,EAAY,aAC7B,IAAS,eACA,IAAQ,EAAY,qBAC7B,IAAS;CAGX,IAAM,IAA4B;EAAC;EAAY;EAAmB;EAAc;EAAoB;AAKpG,QAJI,EAAQ,QAAQ,EAAa,GAAG,EAAQ,QAAQ,EAAO,KACzD,IAAS,IAGJ"}
1
+ {"version":3,"file":"layout.js","names":[],"sources":["../../../src/forms/utils/layout.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ControlGroup } from '../control-group/control-group.js';\nimport type { Control } from '../control/control.js';\n\nexport const breakpoints = {\n vertical: 300,\n verticalInline: 400,\n horizontal: 500,\n horizontalInline: 600\n};\n\nexport function setupControlLayoutStates(control: Control | ControlGroup) {\n const initalLayout = control.layout;\n const resizeObserver = new ResizeObserver(entries => {\n if (!(control as Control).fitContent) {\n control.layout = getControlLayout(entries[0]!.contentRect.width, initalLayout);\n }\n });\n resizeObserver.observe(control);\n return resizeObserver;\n}\n\ntype ControlLayouts = 'vertical' | 'vertical-inline' | 'horizontal' | 'horizontal-inline';\n\nexport function getControlLayout(width: number, initalLayout: ControlLayouts) {\n let layout: ControlLayouts = initalLayout;\n if (width < breakpoints.vertical) {\n layout = 'vertical';\n } else if (width < breakpoints.verticalInline) {\n layout = 'vertical-inline';\n } else if (width < breakpoints.horizontal) {\n layout = 'horizontal';\n } else if (width < breakpoints.horizontalInline) {\n layout = 'horizontal-inline';\n }\n\n const layouts: ControlLayouts[] = ['vertical', 'vertical-inline', 'horizontal', 'horizontal-inline'];\n if (layouts.indexOf(initalLayout) < layouts.indexOf(layout)) {\n layout = initalLayout;\n }\n\n return layout;\n}\n\nexport function isInlineInputType(input: HTMLInputElement) {\n return input.type === 'radio' || input.type === 'checkbox';\n}\n"],"mappings":";AAMA,IAAa,IAAc;CACzB,UAAU;CACV,gBAAgB;CAChB,YAAY;CACZ,kBAAkB;AACpB;AAEA,SAAgB,EAAyB,GAAiC;CACxE,IAAM,IAAe,EAAQ,QACvB,IAAiB,IAAI,gBAAe,MAAW;EACnD,AAAM,EAAoB,eACxB,EAAQ,SAAS,EAAiB,EAAQ,GAAI,YAAY,OAAO,CAAY;CAEjF,CAAC;CAED,OADA,EAAe,QAAQ,CAAO,GACvB;AACT;AAIA,SAAgB,EAAiB,GAAe,GAA8B;CAC5E,IAAI,IAAyB;CAC7B,AAAI,IAAQ,EAAY,WACtB,IAAS,aACA,IAAQ,EAAY,iBAC7B,IAAS,oBACA,IAAQ,EAAY,aAC7B,IAAS,eACA,IAAQ,EAAY,qBAC7B,IAAS;CAGX,IAAM,IAA4B;EAAC;EAAY;EAAmB;EAAc;CAAmB;CAKnG,OAJI,EAAQ,QAAQ,CAAY,IAAI,EAAQ,QAAQ,CAAM,MACxD,IAAS,IAGJ;AACT"}
@@ -22,7 +22,6 @@ export declare function setupControlStates(control: Control): MutationObserver[]
22
22
  * :state(disabled) any form control within group is in a disabled state
23
23
  */
24
24
  export declare function setupControlGroupStates(controlGroup: ControlGroup): MutationObserver;
25
- export declare function toggleControlGroupDisabledState(controlGroup: ControlGroup): void;
26
25
  /**
27
26
  * Adds control status states to custom element
28
27
  * :state(error) form control is in a error state
@@ -1 +1 @@
1
- {"version":3,"file":"states.js","names":[],"sources":["../../../src/forms/utils/states.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n getAttributeChanges,\n getAttributeListChanges,\n getElementUpdate,\n matchesElementName\n} from '@nvidia-elements/core/internal';\nimport type { ControlGroup } from '../control-group/control-group.js';\nimport { ControlMessage } from '../control-message/control-message.js';\nimport type { Control } from '../control/control.js';\n\nexport const inputQuery = 'input, select, selectmenu, textarea, [nve-control]';\n\n/**\n * Adds validation states to custom element\n * :state(valid) form control is in a valid state\n * :state(invalid) form control is in a invalid state\n */\n// eslint-disable-next-line max-lines-per-function\nexport function setupControlValidationStates(control: Control, messages: ControlMessage[]) {\n if (\n !control.input.form?.noValidate &&\n !control.input.formNoValidate &&\n !control.input.hasAttribute('formnovalidate')\n ) {\n hideAllValidationMessages(messages);\n\n /**\n * updateValidityState() logic triggered by input blur() or input() change events\n */\n const updateValidityState = () => {\n if (control.input.validity?.valid) {\n control._internals.states.delete('invalid');\n control._internals.states.add('valid');\n control.status = null!;\n }\n\n hideInactiveValidationMessages(control, messages);\n };\n\n const resetValidityState = () => {\n control.status = null!;\n control._internals.states.delete('valid');\n control._internals.states.delete('invalid');\n hideAllValidationMessages(messages);\n };\n\n control.input.addEventListener('blur', () => {\n control.input.checkValidity();\n updateValidityState();\n });\n\n control.input.addEventListener('input', () => {\n updateValidityState();\n });\n\n control.input.addEventListener('invalid', () => {\n if (messages.find(m => m.error)) {\n hideAllValidationMessages(messages);\n showActiveValidationMessages(control, messages);\n }\n\n control.status = 'error';\n control._internals.states.delete('valid');\n control._internals.states.add('invalid');\n });\n\n control.addEventListener('reset', () => resetValidityState());\n control.input.form?.addEventListener('reset', () => resetValidityState());\n }\n\n control.shadowRoot!.addEventListener('slotchange', () => {\n const current = Array.from(control.querySelectorAll<ControlMessage>(ControlMessage.metadata.tag));\n control._internals.states.delete('valid');\n control._internals.states.delete('invalid');\n if (current.find(m => !m.hidden && (m.status === 'error' || m.error))) {\n control._internals.states.add('invalid');\n } else {\n control._internals.states.add('valid');\n }\n });\n}\n\n/**\n * Adds control interaction states to custom element\n * :state(checked) form control is in a checked state\n * :state(disabled) form control is in a disabled state\n * :state(readonly) form control is in a readonly state\n * :state(touched) form control received focus and then blurred\n * :state(dirty) user modified the form control\n */\nexport function setupControlStates(control: Control) {\n const observers: MutationObserver[] = [];\n const states = control._internals.states;\n control.input.checked ? states.add('checked') : states.delete('checked');\n control.input.indeterminate ? states.add('indeterminate') : states.delete('indeterminate');\n control.input.addEventListener('focus', () => control._internals.states.add('focus'));\n control.input.addEventListener('input', () => control._internals.states.add('dirty'));\n control.input.addEventListener('blur', () => {\n control._internals.states.add('touched');\n control._internals.states.delete('focus');\n });\n\n control.input.getRootNode().addEventListener('change', (e: Event) => {\n if ((e.target as HTMLInputElement).name === control.input?.name) {\n control.input.checked ? states.add('checked') : states.delete('checked');\n }\n });\n\n control.input.form?.addEventListener('reset', () => {\n control._internals.states.delete('touched');\n control._internals.states.delete('dirty');\n control._internals.states.delete('error');\n control._internals.states.delete('success');\n control.requestUpdate();\n });\n\n observers.push(\n getElementUpdate(control.input, 'readonly', value =>\n (value === '' ? true : value) ? states.add('readonly') : states.delete('readonly')\n ),\n getElementUpdate(control.input, 'checked', () =>\n control.input.checked ? states.add('checked') : states.delete('checked')\n ),\n getElementUpdate(control.input, 'disabled', value =>\n (value === '' ? true : value) ? states.add('disabled') : states.delete('disabled')\n ),\n getElementUpdate(control.input, 'indeterminate', () =>\n control.input.indeterminate ? states.add('indeterminate') : states.delete('indeterminate')\n )\n );\n return observers;\n}\n\n/**\n * Adds control group interaction states to custom element\n * :state(disabled) any form control within group is in a disabled state\n */\nexport function setupControlGroupStates(controlGroup: ControlGroup) {\n toggleControlGroupDisabledState(controlGroup);\n return getAttributeChanges(controlGroup, 'disabled', () => toggleControlGroupDisabledState(controlGroup));\n}\n\nexport function toggleControlGroupDisabledState(controlGroup: ControlGroup) {\n if (Array.from(controlGroup.inputs).find(i => i.disabled)) {\n controlGroup._internals.states.add('disabled');\n } else {\n controlGroup._internals.states.delete('disabled');\n }\n}\n\n/**\n * Adds control status states to custom element\n * :state(error) form control is in a error state\n * :state(success) form control is in a success state\n */\nexport function setupControlStatusStates(control: Control | ControlGroup, messages: ControlMessage[]) {\n updateControlStatusState(control, messages.find(m => !m.hidden)!);\n const observers: MutationObserver[] = [];\n observers.push(\n getAttributeListChanges(control, ['hidden', 'status'], mutation => {\n const target = mutation.target as ControlMessage;\n if (matchesElementName(target, ControlMessage)) {\n updateControlStatusState(control, target);\n }\n })\n );\n\n control.shadowRoot!.addEventListener('slotchange', () => {\n const current = Array.from(control.querySelectorAll<ControlMessage>(ControlMessage.metadata.tag));\n const message = current.find(m => m.status && !m.hidden);\n control._internals.states.delete('error');\n control._internals.states.delete('success');\n if (message) {\n control._internals.states.add(message.status!);\n }\n });\n\n return observers;\n}\n\nexport function updateControlStatusState(control: Control | ControlGroup, message: ControlMessage) {\n control._internals.states.delete('error');\n control._internals.states.delete('success');\n\n if (message?.status?.length && !message?.hidden) {\n control._internals.states.add(message.status);\n }\n}\n\nexport function showNonValidationMessages(messages: ControlMessage[]) {\n messages.filter(m => !m.hasAttribute('error')).forEach(m => m.removeAttribute('hidden'));\n}\n\nexport function hideAllValidationMessages(messages: ControlMessage[]) {\n messages.filter(m => m.hasAttribute('error')).forEach(m => m.setAttribute('hidden', ''));\n}\n\nexport function showActiveValidationMessages(control: Control, messages: ControlMessage[]) {\n messages.find(m => m.error && control.input.validity[m.error])?.removeAttribute('hidden');\n}\n\nexport function hideInactiveValidationMessages(control: Control, messages: ControlMessage[]) {\n if (messages.find(m => m.error) && control.input.validity.valid) {\n messages.filter(m => m.error && !control.input.validity[m.error!]).forEach(m => m.setAttribute('hidden', ''));\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"states.js","names":[],"sources":["../../../src/forms/utils/states.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n getAttributeChanges,\n getAttributeListChanges,\n getElementUpdate,\n matchesElementName\n} from '@nvidia-elements/core/internal';\nimport type { ControlGroup } from '../control-group/control-group.js';\nimport { ControlMessage } from '../control-message/control-message.js';\nimport type { Control } from '../control/control.js';\n\nexport const inputQuery = 'input, select, selectmenu, textarea, [nve-control]';\n\n/**\n * Adds validation states to custom element\n * :state(valid) form control is in a valid state\n * :state(invalid) form control is in a invalid state\n */\n// eslint-disable-next-line max-lines-per-function\nexport function setupControlValidationStates(control: Control, messages: ControlMessage[]) {\n if (\n !control.input.form?.noValidate &&\n !control.input.formNoValidate &&\n !control.input.hasAttribute('formnovalidate')\n ) {\n hideAllValidationMessages(messages);\n\n /**\n * updateValidityState() logic triggered by input blur() or input() change events\n */\n const updateValidityState = () => {\n if (control.input.validity?.valid) {\n control._internals.states.delete('invalid');\n control._internals.states.add('valid');\n control.status = null!;\n }\n\n hideInactiveValidationMessages(control, messages);\n };\n\n const resetValidityState = () => {\n control.status = null!;\n control._internals.states.delete('valid');\n control._internals.states.delete('invalid');\n hideAllValidationMessages(messages);\n };\n\n control.input.addEventListener('blur', () => {\n control.input.checkValidity();\n updateValidityState();\n });\n\n control.input.addEventListener('input', () => {\n updateValidityState();\n });\n\n control.input.addEventListener('invalid', () => {\n if (messages.find(m => m.error)) {\n hideAllValidationMessages(messages);\n showActiveValidationMessages(control, messages);\n }\n\n control.status = 'error';\n control._internals.states.delete('valid');\n control._internals.states.add('invalid');\n });\n\n control.addEventListener('reset', () => resetValidityState());\n control.input.form?.addEventListener('reset', () => resetValidityState());\n }\n\n control.shadowRoot!.addEventListener('slotchange', () => {\n const current = Array.from(control.querySelectorAll<ControlMessage>(ControlMessage.metadata.tag));\n control._internals.states.delete('valid');\n control._internals.states.delete('invalid');\n if (current.find(m => !m.hidden && (m.status === 'error' || m.error))) {\n control._internals.states.add('invalid');\n } else {\n control._internals.states.add('valid');\n }\n });\n}\n\n/**\n * Adds control interaction states to custom element\n * :state(checked) form control is in a checked state\n * :state(disabled) form control is in a disabled state\n * :state(readonly) form control is in a readonly state\n * :state(touched) form control received focus and then blurred\n * :state(dirty) user modified the form control\n */\nexport function setupControlStates(control: Control) {\n const observers: MutationObserver[] = [];\n const states = control._internals.states;\n control.input.checked ? states.add('checked') : states.delete('checked');\n control.input.indeterminate ? states.add('indeterminate') : states.delete('indeterminate');\n control.input.addEventListener('focus', () => control._internals.states.add('focus'));\n control.input.addEventListener('input', () => control._internals.states.add('dirty'));\n control.input.addEventListener('blur', () => {\n control._internals.states.add('touched');\n control._internals.states.delete('focus');\n });\n\n control.input.getRootNode().addEventListener('change', (e: Event) => {\n if ((e.target as HTMLInputElement).name === control.input?.name) {\n control.input.checked ? states.add('checked') : states.delete('checked');\n }\n });\n\n control.input.form?.addEventListener('reset', () => {\n control._internals.states.delete('touched');\n control._internals.states.delete('dirty');\n control._internals.states.delete('error');\n control._internals.states.delete('success');\n control.requestUpdate();\n });\n\n observers.push(\n getElementUpdate(control.input, 'readonly', value =>\n (value === '' ? true : value) ? states.add('readonly') : states.delete('readonly')\n ),\n getElementUpdate(control.input, 'checked', () =>\n control.input.checked ? states.add('checked') : states.delete('checked')\n ),\n getElementUpdate(control.input, 'disabled', value =>\n (value === '' ? true : value) ? states.add('disabled') : states.delete('disabled')\n ),\n getElementUpdate(control.input, 'indeterminate', () =>\n control.input.indeterminate ? states.add('indeterminate') : states.delete('indeterminate')\n )\n );\n return observers;\n}\n\n/**\n * Adds control group interaction states to custom element\n * :state(disabled) any form control within group is in a disabled state\n */\nexport function setupControlGroupStates(controlGroup: ControlGroup) {\n toggleControlGroupDisabledState(controlGroup);\n return getAttributeChanges(controlGroup, 'disabled', () => toggleControlGroupDisabledState(controlGroup));\n}\n\nfunction toggleControlGroupDisabledState(controlGroup: ControlGroup) {\n if (Array.from(controlGroup.inputs).find(i => i.disabled)) {\n controlGroup._internals.states.add('disabled');\n } else {\n controlGroup._internals.states.delete('disabled');\n }\n}\n\n/**\n * Adds control status states to custom element\n * :state(error) form control is in a error state\n * :state(success) form control is in a success state\n */\nexport function setupControlStatusStates(control: Control | ControlGroup, messages: ControlMessage[]) {\n updateControlStatusState(control, messages.find(m => !m.hidden)!);\n const observers: MutationObserver[] = [];\n observers.push(\n getAttributeListChanges(control, ['hidden', 'status'], mutation => {\n const target = mutation.target as ControlMessage;\n if (matchesElementName(target, ControlMessage)) {\n updateControlStatusState(control, target);\n }\n })\n );\n\n control.shadowRoot!.addEventListener('slotchange', () => {\n const current = Array.from(control.querySelectorAll<ControlMessage>(ControlMessage.metadata.tag));\n const message = current.find(m => m.status && !m.hidden);\n control._internals.states.delete('error');\n control._internals.states.delete('success');\n if (message) {\n control._internals.states.add(message.status!);\n }\n });\n\n return observers;\n}\n\nexport function updateControlStatusState(control: Control | ControlGroup, message: ControlMessage) {\n control._internals.states.delete('error');\n control._internals.states.delete('success');\n\n if (message?.status?.length && !message?.hidden) {\n control._internals.states.add(message.status);\n }\n}\n\nexport function showNonValidationMessages(messages: ControlMessage[]) {\n messages.filter(m => !m.hasAttribute('error')).forEach(m => m.removeAttribute('hidden'));\n}\n\nexport function hideAllValidationMessages(messages: ControlMessage[]) {\n messages.filter(m => m.hasAttribute('error')).forEach(m => m.setAttribute('hidden', ''));\n}\n\nexport function showActiveValidationMessages(control: Control, messages: ControlMessage[]) {\n messages.find(m => m.error && control.input.validity[m.error])?.removeAttribute('hidden');\n}\n\nexport function hideInactiveValidationMessages(control: Control, messages: ControlMessage[]) {\n if (messages.find(m => m.error) && control.input.validity.valid) {\n messages.filter(m => m.error && !control.input.validity[m.error!]).forEach(m => m.setAttribute('hidden', ''));\n }\n}\n"],"mappings":"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"}
@@ -1,25 +1 @@
1
- export interface ValidityState {
2
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/badInput) */
3
- readonly badInput: boolean;
4
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/customError) */
5
- readonly customError: boolean;
6
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/patternMismatch) */
7
- readonly patternMismatch: boolean;
8
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/rangeOverflow) */
9
- readonly rangeOverflow: boolean;
10
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/rangeUnderflow) */
11
- readonly rangeUnderflow: boolean;
12
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/stepMismatch) */
13
- readonly stepMismatch: boolean;
14
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/tooLong) */
15
- readonly tooLong: boolean;
16
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/tooShort) */
17
- readonly tooShort: boolean;
18
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/typeMismatch) */
19
- readonly typeMismatch: boolean;
20
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/valid) */
21
- readonly valid: boolean;
22
- /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/valueMissing) */
23
- readonly valueMissing: boolean;
24
- }
25
1
  export type ValidityStateError = 'badInput' | 'customError' | 'patternMismatch' | 'rangeOverflow' | 'rangeUnderflow' | 'stepMismatch' | 'tooLong' | 'tooShort' | 'typeMismatch' | 'valid' | 'valueMissing';
@@ -10,7 +10,7 @@ var a = class extends r {
10
10
  static {
11
11
  this.metadata = {
12
12
  tag: "nve-grid-cell",
13
- version: "0.1.0"
13
+ version: "0.1.2"
14
14
  };
15
15
  }
16
16
  render() {
@@ -1 +1 @@
1
- {"version":3,"file":"cell2.js","names":[],"sources":["../../../src/grid/cell/cell.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { useStyles, attachInternals } from '@nvidia-elements/core/internal';\nimport styles from './cell.css?inline';\n\n/**\n * @element nve-grid-cell\n * @description Represents an individual data cell within a grid row, displaying content aligned to its parent column.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for content\n * @cssprop --background\n * @cssprop --color\n * @cssprop --padding\n * @cssprop --min-height\n * @cssprop --min-width\n * @cssprop --font-weight\n * @cssprop --font-size\n * @cssprop --height\n * @cssprop --border-left\n * @cssprop --border-right\n * @cssprop --justify-content\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\nexport class GridCell extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-cell',\n version: '0.0.0'\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n render() {\n return html`\n <div internal-host focusable=\"active\">\n <slot></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'gridcell';\n }\n}\n"],"mappings":";;;;;AA0BA,IAAa,IAAb,cAA8B,EAAW;;gBACvB,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACV;;CAKD,SAAS;AACP,SAAO,CAAI;;CAOb,oBAAoB;AAGlB,EAFA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO"}
1
+ {"version":3,"file":"cell2.js","names":[],"sources":["../../../src/grid/cell/cell.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { useStyles, attachInternals } from '@nvidia-elements/core/internal';\nimport styles from './cell.css?inline';\n\n/**\n * @element nve-grid-cell\n * @description Represents an individual data cell within a grid row, displaying content aligned to its parent column.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for content\n * @cssprop --background\n * @cssprop --color\n * @cssprop --padding\n * @cssprop --min-height\n * @cssprop --min-width\n * @cssprop --font-weight\n * @cssprop --font-size\n * @cssprop --height\n * @cssprop --border-left\n * @cssprop --border-right\n * @cssprop --justify-content\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\nexport class GridCell extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-cell',\n version: '0.0.0'\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n render() {\n return html`\n <div internal-host focusable=\"active\">\n <slot></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'gridcell';\n }\n}\n"],"mappings":";;;;;AA0BA,IAAa,IAAb,cAA8B,EAAW;;gBACvB,EAAU,CAAC,CAAM,CAAC;;;kBAEP;GACzB,KAAK;GACL,SAAS;EACX;;CAKA,SAAS;EACP,OAAO,CAAI;CAKb;CAEA,oBAAoB;EAGlB,AAFA,MAAM,kBAAkB,GACxB,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO;CACzB;AACF"}
@@ -1,6 +1,6 @@
1
1
  import { appendRootNodeStyle as e } from "../../internal/utils/dom.js";
2
2
  import { attachInternals as t } from "../../internal/utils/a11y.js";
3
- import { __decorate as n } from "../../_virtual/_@oxc-project_runtime@0.123.0/helpers/decorate.js";
3
+ import { __decorate as n } from "../../_virtual/_@oxc-project_runtime@0.130.0/helpers/decorate.js";
4
4
  import { useStyles as r } from "../../internal/styles/index.js";
5
5
  import i from "./column.js";
6
6
  import { LitElement as a, html as o } from "lit";
@@ -13,7 +13,7 @@ var c = class n extends a {
13
13
  static {
14
14
  this.metadata = {
15
15
  tag: "nve-grid-column",
16
- version: "0.1.0"
16
+ version: "0.1.2"
17
17
  };
18
18
  }
19
19
  get #e() {
@@ -1 +1 @@
1
- {"version":3,"file":"column2.js","names":["#grid","#onSort","#computeColumnAlignment","#computeColumnPositions","#positionStylesheet","#buildFixedStyles","#buildBorderStyle"],"sources":["../../../src/grid/column/column.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { PropertyValues } from 'lit';\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { useStyles, attachInternals, appendRootNodeStyle } from '@nvidia-elements/core/internal';\nimport type { Grid } from '@nvidia-elements/core/grid';\nimport styles from './column.css?inline';\n\n/**\n * @element nve-grid-column\n * @description Defines a column header within a grid, specifying the column's label, width, and alignment for all cells beneath it.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for content\n * @slot actions - slot for column actions\n * @cssprop --color\n * @cssprop --padding\n * @cssprop --font-weight\n * @cssprop --font-size\n * @cssprop --height\n * @cssprop --min-width\n * @cssprop --justify-content\n * @cssprop --border-left\n * @cssprop --border-right\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\nexport class GridColumn extends LitElement {\n /**\n * Only set a fixed px width when you know the grid width. Most cases this should remain unset.\n * If the total width of all columns is less than the grid width then the last column fills the remaining space.\n * By default column widths are evenly divided unless width is explicitly provided.\n */\n @property({ type: String, reflect: true }) width: string;\n\n /**\n * Set the `position` property or attribute to `fixed` or `sticky` to make the column fixed or sticky.\n * Fixed columns do not scroll horizontally with the grid. Sticky columns scroll horizontally with the grid\n * until the column reaches the edge of the grid.\n */\n @property({ type: String, reflect: true }) position: 'fixed' | 'sticky' | '';\n\n /**\n * Control the content alignment within a given column.\n */\n @property({ type: String, reflect: true, attribute: 'column-align' }) columnAlign: 'start' | 'center' | 'end';\n\n /**\n * @private\n */\n @property({ type: String, reflect: true, attribute: 'aria-colindex' }) ariaColIndex: string; // eslint-disable-line local/reserved-property-names\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-column',\n version: '0.0.0'\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n get #grid() {\n return this.parentElement!.parentElement as Grid;\n }\n\n render() {\n return html`\n <div internal-host focusable=\"active\">\n <slot></slot>\n <slot name=\"actions\"></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'columnheader';\n this.addEventListener('sort', this.#onSort);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener('sort', this.#onSort);\n }\n\n #onSort = (e: Event) => {\n this.ariaSort = (e as CustomEvent<{ next: string }>).detail.next;\n };\n\n willUpdate(props: PropertyValues<this>) {\n if (props.has('width') && this.width && Number.isFinite(Number(this.width))) {\n this.width = `${this.width}px`; // eslint-disable-line local/stateless-property\n }\n }\n\n async updated(props: PropertyValues<this>) {\n super.updated(props);\n\n if (props.get('columnAlign') !== this.columnAlign) {\n this.#computeColumnAlignment();\n }\n\n if (props.get('position') !== this.position) {\n this.#computeColumnPositions();\n }\n\n if (props.get('ariaColIndex') !== this.ariaColIndex) {\n this.#computeColumnPositions();\n this.#computeColumnAlignment();\n }\n\n if (props.get('width') !== this.width) {\n this.dispatchEvent(new CustomEvent('nve-grid-column-resize', { bubbles: true, composed: true }));\n }\n }\n\n #positionStylesheet: CSSStyleSheet;\n\n #computeColumnPositions() {\n if (this.position !== 'fixed') {\n this.removeAttribute('left');\n this.removeAttribute('right');\n this.#positionStylesheet?.replaceSync('');\n return;\n }\n\n const { side, positionStyle, borderStyle } = this.#buildFixedStyles();\n const combinedStyle = `${positionStyle}\\n${borderStyle}`;\n\n if (this.#positionStylesheet) {\n this.#positionStylesheet.replaceSync(combinedStyle);\n } else {\n this.#positionStylesheet = appendRootNodeStyle(this.#grid, combinedStyle);\n }\n\n this.setAttribute(side, '');\n }\n\n #buildFixedStyles() {\n const columns = Array.from(this.parentElement!.querySelectorAll<GridColumn>(GridColumn.metadata.tag));\n const rightColumns = columns.slice(columns.indexOf(this) + 1, columns.length);\n const position = this.getBoundingClientRect();\n const gridPosition = this.#grid.getBoundingClientRect();\n const side = this.offsetLeft < gridPosition.width / 2 ? 'left' : 'right';\n const leftStyle = position.left - gridPosition.left;\n const rightStyle = rightColumns.reduce((width, c) => width + c.getBoundingClientRect().width, 0);\n const selector = `[id='${this.#grid.id}'] nve-grid-column:nth-of-type(${this.ariaColIndex}),\n [id='${this.#grid.id}'] nve-grid-cell:nth-of-type(${this.ariaColIndex})`;\n\n const positionStyle = `\n ${selector} {\n position: sticky;\n z-index: 99;\n ${side === 'left' ? `left: ${leftStyle}px;` : `right: ${rightStyle}px;`}\n }\n `;\n\n const borderStyle = this.#buildBorderStyle(selector, side);\n return { side, positionStyle, borderStyle };\n }\n\n #buildBorderStyle(selector: string, side: 'left' | 'right') {\n const isLastLeft = side === 'left' && (this.nextElementSibling as GridColumn)?.position !== this.position;\n const isLastRight = side === 'right' && (this.previousElementSibling as GridColumn)?.position !== this.position;\n\n if (!isLastLeft && !isLastRight) {\n return '';\n }\n\n return `\n ${selector} {\n box-shadow: var(--scroll-shadow);\n clip-path: inset(0px ${isLastLeft ? '-4px' : '0'} 0px ${isLastRight ? '-4px' : '0'});\n --border-${side === 'right' ? 'left' : 'right'}: var(--nve-ref-border-width-sm) solid var(--nve-ref-border-color-muted);\n }\n `;\n }\n\n #computeColumnAlignment() {\n if (this.columnAlign !== undefined) {\n appendRootNodeStyle(\n this.#grid,\n `[id='${this.#grid.id}'] nve-grid-column:nth-of-type(${this.ariaColIndex}),\n [id='${this.#grid.id}'] nve-grid-cell:nth-of-type(${this.ariaColIndex}) {\n --justify-content: ${this.columnAlign}\n }`\n );\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"column2.js","names":["#grid","#onSort","#computeColumnAlignment","#computeColumnPositions","#positionStylesheet","#buildFixedStyles","#buildBorderStyle"],"sources":["../../../src/grid/column/column.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { PropertyValues } from 'lit';\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { useStyles, attachInternals, appendRootNodeStyle } from '@nvidia-elements/core/internal';\nimport type { Grid } from '@nvidia-elements/core/grid';\nimport styles from './column.css?inline';\n\n/**\n * @element nve-grid-column\n * @description Defines a column header within a grid, specifying the column's label, width, and alignment for all cells beneath it.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for content\n * @slot actions - slot for column actions\n * @cssprop --color\n * @cssprop --padding\n * @cssprop --font-weight\n * @cssprop --font-size\n * @cssprop --height\n * @cssprop --min-width\n * @cssprop --justify-content\n * @cssprop --border-left\n * @cssprop --border-right\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\nexport class GridColumn extends LitElement {\n /**\n * Only set a fixed px width when you know the grid width. Most cases this should remain unset.\n * If the total width of all columns is less than the grid width then the last column fills the remaining space.\n * By default column widths are evenly divided unless width is explicitly provided.\n */\n @property({ type: String, reflect: true }) width: string;\n\n /**\n * Set the `position` property or attribute to `fixed` or `sticky` to make the column fixed or sticky.\n * Fixed columns do not scroll horizontally with the grid. Sticky columns scroll horizontally with the grid\n * until the column reaches the edge of the grid.\n */\n @property({ type: String, reflect: true }) position: 'fixed' | 'sticky' | '';\n\n /**\n * Control the content alignment within a given column.\n */\n @property({ type: String, reflect: true, attribute: 'column-align' }) columnAlign: 'start' | 'center' | 'end';\n\n /**\n * @private\n */\n @property({ type: String, reflect: true, attribute: 'aria-colindex' }) ariaColIndex: string; // eslint-disable-line local/reserved-property-names\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-column',\n version: '0.0.0'\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n get #grid() {\n return this.parentElement!.parentElement as Grid;\n }\n\n render() {\n return html`\n <div internal-host focusable=\"active\">\n <slot></slot>\n <slot name=\"actions\"></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'columnheader';\n this.addEventListener('sort', this.#onSort);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener('sort', this.#onSort);\n }\n\n #onSort = (e: Event) => {\n this.ariaSort = (e as CustomEvent<{ next: string }>).detail.next;\n };\n\n willUpdate(props: PropertyValues<this>) {\n if (props.has('width') && this.width && Number.isFinite(Number(this.width))) {\n this.width = `${this.width}px`; // eslint-disable-line local/stateless-property\n }\n }\n\n async updated(props: PropertyValues<this>) {\n super.updated(props);\n\n if (props.get('columnAlign') !== this.columnAlign) {\n this.#computeColumnAlignment();\n }\n\n if (props.get('position') !== this.position) {\n this.#computeColumnPositions();\n }\n\n if (props.get('ariaColIndex') !== this.ariaColIndex) {\n this.#computeColumnPositions();\n this.#computeColumnAlignment();\n }\n\n if (props.get('width') !== this.width) {\n this.dispatchEvent(new CustomEvent('nve-grid-column-resize', { bubbles: true, composed: true }));\n }\n }\n\n #positionStylesheet: CSSStyleSheet;\n\n #computeColumnPositions() {\n if (this.position !== 'fixed') {\n this.removeAttribute('left');\n this.removeAttribute('right');\n this.#positionStylesheet?.replaceSync('');\n return;\n }\n\n const { side, positionStyle, borderStyle } = this.#buildFixedStyles();\n const combinedStyle = `${positionStyle}\\n${borderStyle}`;\n\n if (this.#positionStylesheet) {\n this.#positionStylesheet.replaceSync(combinedStyle);\n } else {\n this.#positionStylesheet = appendRootNodeStyle(this.#grid, combinedStyle);\n }\n\n this.setAttribute(side, '');\n }\n\n #buildFixedStyles() {\n const columns = Array.from(this.parentElement!.querySelectorAll<GridColumn>(GridColumn.metadata.tag));\n const rightColumns = columns.slice(columns.indexOf(this) + 1, columns.length);\n const position = this.getBoundingClientRect();\n const gridPosition = this.#grid.getBoundingClientRect();\n const side = this.offsetLeft < gridPosition.width / 2 ? 'left' : 'right';\n const leftStyle = position.left - gridPosition.left;\n const rightStyle = rightColumns.reduce((width, c) => width + c.getBoundingClientRect().width, 0);\n const selector = `[id='${this.#grid.id}'] nve-grid-column:nth-of-type(${this.ariaColIndex}),\n [id='${this.#grid.id}'] nve-grid-cell:nth-of-type(${this.ariaColIndex})`;\n\n const positionStyle = `\n ${selector} {\n position: sticky;\n z-index: 99;\n ${side === 'left' ? `left: ${leftStyle}px;` : `right: ${rightStyle}px;`}\n }\n `;\n\n const borderStyle = this.#buildBorderStyle(selector, side);\n return { side, positionStyle, borderStyle };\n }\n\n #buildBorderStyle(selector: string, side: 'left' | 'right') {\n const isLastLeft = side === 'left' && (this.nextElementSibling as GridColumn)?.position !== this.position;\n const isLastRight = side === 'right' && (this.previousElementSibling as GridColumn)?.position !== this.position;\n\n if (!isLastLeft && !isLastRight) {\n return '';\n }\n\n return `\n ${selector} {\n box-shadow: var(--scroll-shadow);\n clip-path: inset(0px ${isLastLeft ? '-4px' : '0'} 0px ${isLastRight ? '-4px' : '0'});\n --border-${side === 'right' ? 'left' : 'right'}: var(--nve-ref-border-width-sm) solid var(--nve-ref-border-color-muted);\n }\n `;\n }\n\n #computeColumnAlignment() {\n if (this.columnAlign !== undefined) {\n appendRootNodeStyle(\n this.#grid,\n `[id='${this.#grid.id}'] nve-grid-column:nth-of-type(${this.ariaColIndex}),\n [id='${this.#grid.id}'] nve-grid-cell:nth-of-type(${this.ariaColIndex}) {\n --justify-content: ${this.columnAlign}\n }`\n );\n }\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"define.js","names":[],"sources":["../../src/grid/define.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { define } from '@nvidia-elements/core/internal';\nimport {\n Grid,\n GridColumn,\n GridRow,\n GridCell,\n GridFooter,\n GridHeader,\n GridPlaceholder\n} from '@nvidia-elements/core/grid';\n\ndefine(Grid);\ndefine(GridColumn);\ndefine(GridRow);\ndefine(GridCell);\ndefine(GridFooter);\ndefine(GridHeader);\ndefine(GridPlaceholder);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nve-grid': Grid;\n 'nve-grid-column': GridColumn;\n 'nve-grid-row': GridRow;\n 'nve-grid-cell': GridCell;\n 'nve-grid-footer': GridFooter;\n 'nve-grid-header': GridHeader;\n 'nve-grid-placeholder': GridPlaceholder;\n }\n}\n"],"mappings":";;;;;;;;AAcA,EAAO,EAAK,EACZ,EAAO,EAAW,EAClB,EAAO,EAAQ,EACf,EAAO,EAAS,EAChB,EAAO,EAAW,EAClB,EAAO,EAAW,EAClB,EAAO,EAAgB"}
1
+ {"version":3,"file":"define.js","names":[],"sources":["../../src/grid/define.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { define } from '@nvidia-elements/core/internal';\nimport {\n Grid,\n GridColumn,\n GridRow,\n GridCell,\n GridFooter,\n GridHeader,\n GridPlaceholder\n} from '@nvidia-elements/core/grid';\n\ndefine(Grid);\ndefine(GridColumn);\ndefine(GridRow);\ndefine(GridCell);\ndefine(GridFooter);\ndefine(GridHeader);\ndefine(GridPlaceholder);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nve-grid': Grid;\n 'nve-grid-column': GridColumn;\n 'nve-grid-row': GridRow;\n 'nve-grid-cell': GridCell;\n 'nve-grid-footer': GridFooter;\n 'nve-grid-header': GridHeader;\n 'nve-grid-placeholder': GridPlaceholder;\n }\n}\n"],"mappings":";;;;;;;;AAcA,EAAO,CAAI,GACX,EAAO,CAAU,GACjB,EAAO,CAAO,GACd,EAAO,CAAQ,GACf,EAAO,CAAU,GACjB,EAAO,CAAU,GACjB,EAAO,CAAe"}
@@ -1,5 +1,5 @@
1
1
  import { attachInternals as e } from "../../internal/utils/a11y.js";
2
- import { __decorate as t } from "../../_virtual/_@oxc-project_runtime@0.123.0/helpers/decorate.js";
2
+ import { __decorate as t } from "../../_virtual/_@oxc-project_runtime@0.130.0/helpers/decorate.js";
3
3
  import { hostAttr as n } from "../../internal/decorators/host-attr.js";
4
4
  import { useStyles as r } from "../../internal/styles/index.js";
5
5
  import i from "./footer.js";
@@ -15,7 +15,7 @@ var s = class extends a {
15
15
  static {
16
16
  this.metadata = {
17
17
  tag: "nve-grid-footer",
18
- version: "0.1.0"
18
+ version: "0.1.2"
19
19
  };
20
20
  }
21
21
  static {
@@ -1 +1 @@
1
- {"version":3,"file":"footer2.js","names":[],"sources":["../../../src/grid/footer/footer.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { useStyles, attachInternals, hostAttr } from '@nvidia-elements/core/internal';\nimport styles from './footer.css?inline';\n\n/**\n * @element nve-grid-footer\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @description Grid footer displays contextual information or user actions such as pagination.\n * @slot - default slot for content\n * @cssprop --background\n * @cssprop --color\n * @cssprop --padding\n * @cssprop --height\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\nexport class GridFooter extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-footer',\n version: '0.0.0'\n };\n\n static elementDefinitions = {};\n\n /** @private */\n _internals: ElementInternals;\n\n @hostAttr() slot = 'footer';\n\n render() {\n return html`\n <div internal-host role=\"gridcell\">\n <slot></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'row';\n }\n}\n"],"mappings":";;;;;;;AAmBA,IAAa,IAAb,cAAgC,EAAW;;2BAatB;;;gBAZH,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACV;;;4BAE2B,EAAE;;CAO9B,SAAS;AACP,SAAO,CAAI;;CAOb,oBAAoB;AAGlB,EAFA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO;;;GAbxB,GAAU,CAAA,EAAA,EAAA,WAAA,QAAA,KAAA,EAAA"}
1
+ {"version":3,"file":"footer2.js","names":[],"sources":["../../../src/grid/footer/footer.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { useStyles, attachInternals, hostAttr } from '@nvidia-elements/core/internal';\nimport styles from './footer.css?inline';\n\n/**\n * @element nve-grid-footer\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @description Grid footer displays contextual information or user actions such as pagination.\n * @slot - default slot for content\n * @cssprop --background\n * @cssprop --color\n * @cssprop --padding\n * @cssprop --height\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\nexport class GridFooter extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-footer',\n version: '0.0.0'\n };\n\n static elementDefinitions = {};\n\n /** @private */\n _internals: ElementInternals;\n\n @hostAttr() slot = 'footer';\n\n render() {\n return html`\n <div internal-host role=\"gridcell\">\n <slot></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'row';\n }\n}\n"],"mappings":";;;;;;;AAmBA,IAAa,IAAb,cAAgC,EAAW;;2BAatB;;;gBAZH,EAAU,CAAC,CAAM,CAAC;;;kBAEP;GACzB,KAAK;GACL,SAAS;EACX;;;4BAE4B,CAAC;;CAO7B,SAAS;EACP,OAAO,CAAI;CAKb;CAEA,oBAAoB;EAGlB,AAFA,MAAM,kBAAkB,GACxB,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO;CACzB;AACF;GAfG,EAAS,CAAA,GAAA,EAAA,WAAA,QAAA,KAAA,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { appendRootNodeStyle as e, generateId as t } from "../internal/utils/dom.js";
2
2
  import { attachInternals as n } from "../internal/utils/a11y.js";
3
- import { __decorate as r } from "../_virtual/_@oxc-project_runtime@0.123.0/helpers/decorate.js";
3
+ import { __decorate as r } from "../_virtual/_@oxc-project_runtime@0.130.0/helpers/decorate.js";
4
4
  import { audit as i } from "../internal/controllers/audit.controller.js";
5
5
  import { keyNavigationGrid as a } from "../internal/controllers/keynav-grid.controller.js";
6
6
  import { useStyles as o } from "../internal/styles/index.js";
@@ -22,7 +22,7 @@ var v = class extends h {
22
22
  static {
23
23
  this.metadata = {
24
24
  tag: "nve-grid",
25
- version: "0.1.0",
25
+ version: "0.1.2",
26
26
  children: [
27
27
  u.metadata.tag,
28
28
  d.metadata.tag,
@@ -1 +1 @@
1
- {"version":3,"file":"grid2.js","names":["#columns","#header","#rows","#cells"],"sources":["../../src/grid/grid.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport type { ContainerElement } from '@nvidia-elements/core/internal';\nimport {\n keyNavigationGrid,\n useStyles,\n attachInternals,\n appendRootNodeStyle,\n generateId,\n audit\n} from '@nvidia-elements/core/internal';\nimport { GridPlaceholder } from './placeholder/placeholder.js';\nimport { GridHeader } from './header/header.js';\nimport { GridColumn } from './column/column.js';\nimport { GridFooter } from './footer/footer.js';\nimport { GridRow } from './row/row.js';\nimport { GridCell } from './cell/cell.js';\nimport styles from './grid.css?inline';\nimport globalStyles from './grid.global.css?inline';\n\n/**\n * @element nve-grid\n * @description A versatile table/datagrid component with built-in keyboard navigation for displaying and interacting with structured data. Use it for anything from simple read-only tables to fully interactive, spreadsheet experiences.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for content\n * @slot footer - slot for grid-footer or toolbar\n * @cssprop --background\n * @cssprop --color\n * @cssprop --border-radius\n * @cssprop --box-shadow\n * @cssprop --font-size\n * @cssprop --row-height - fixed height of each row\n * @cssprop --scroll-height - height of the scrollable area\n\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\n@audit()\n@keyNavigationGrid<Grid>()\nexport class Grid extends LitElement implements ContainerElement {\n /**\n * Determines the container styles of component. Flat nests the grid within other containers. Full spans the full edge-to-edge viewport width.\n */\n @property({ type: String, reflect: true }) container?: 'flat' | 'full';\n\n /**\n * Determine style variant stripe rows\n */\n @property({ type: Boolean, reflect: true }) stripe: boolean;\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid',\n version: '0.0.0',\n children: [GridRow.metadata.tag, GridHeader.metadata.tag, GridFooter.metadata.tag, GridPlaceholder.metadata.tag]\n };\n\n static elementDefinitions = {};\n\n get keynavGridConfig() {\n return {\n columns: this.#columns,\n rows: [this.#header!, ...this.#rows],\n cells: [...this.#columns, ...this.#cells]\n };\n }\n\n get #rows() {\n return Array.from(this.querySelectorAll<GridRow>(GridRow.metadata.tag));\n }\n\n get #header() {\n return this.querySelector<GridHeader>(GridHeader.metadata.tag);\n }\n\n get #columns() {\n return Array.from(this.querySelectorAll<GridColumn>(GridColumn.metadata.tag));\n }\n\n get #cells() {\n return Array.from(this.querySelectorAll<GridCell>(GridCell.metadata.tag));\n }\n\n /** @private */\n declare _internals: ElementInternals;\n\n render() {\n return html`\n <div internal-host>\n <div part=\"_scrollbox\">\n <slot></slot>\n </div>\n <slot name=\"footer\"></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'grid';\n this.id ||= generateId();\n appendRootNodeStyle(this, globalStyles);\n }\n\n /**\n * Scroll to a specific position in the grid.\n */\n scrollTo(options?: ScrollToOptions): Promise<void>;\n scrollTo(x: number, y: number): Promise<void>;\n async scrollTo(...args: [options?: ScrollToOptions] | [x: number, y: number]): Promise<void> {\n await this.shadowRoot!.querySelector('[part=\"_scrollbox\"]')?.scrollTo(...(args as [ScrollToOptions]));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AA0CO,IAAA,IAAA,cAAmB,EAAuC;;gBAW/C,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACT,UAAU;IAAC,EAAQ,SAAS;IAAK,EAAW,SAAS;IAAK,EAAW,SAAS;IAAK,EAAgB,SAAS;;GAC7G;;;4BAE2B,EAAE;;CAE9B,IAAI,mBAAmB;AACrB,SAAO;GACL,SAAS,MAAA;GACT,MAAM,CAAC,MAAA,GAAe,GAAG,MAAA,EAAW;GACpC,OAAO,CAAC,GAAG,MAAA,GAAe,GAAG,MAAA,EAAKG;GACnC;;CAGH,KAAA,IAAY;AACV,SAAO,MAAM,KAAK,KAAK,iBAA0B,EAAQ,SAAS,IAAI,CAAC;;CAGzE,KAAA,IAAc;AACZ,SAAO,KAAK,cAA0B,EAAW,SAAS,IAAI;;CAGhE,KAAA,IAAe;AACb,SAAO,MAAM,KAAK,KAAK,iBAA6B,EAAW,SAAS,IAAI,CAAC;;CAG/E,KAAA,IAAa;AACX,SAAO,MAAM,KAAK,KAAK,iBAA2B,EAAS,SAAS,IAAI,CAAC;;CAM3E,SAAS;AACP,SAAO,CAAI;;CAUb,oBAAoB;AAKlB,EAJA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO,QACvB,KAAK,OAAO,GAAY,EACxB,EAAoB,MAAM,EAAa;;CAQzC,MAAM,SAAS,GAAG,GAA2E;AAC3F,QAAM,KAAK,WAAY,cAAc,wBAAsB,EAAE,SAAS,GAAI,EAA2B;;;GArEtG,EAAS;CAAE,MAAM;CAAQ,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,aAAA,KAAA,EAAA,KAKzC,EAAS;CAAE,MAAM;CAAS,SAAS;CAAM,CAAC,CAAA,EAAA,EAAA,WAAA,UAAA,KAAA,EAAA,SAX5C,GAAO,EACP,GAAyB,CAAA,EAAA,EAAA"}
1
+ {"version":3,"file":"grid2.js","names":["#columns","#header","#rows","#cells"],"sources":["../../src/grid/grid.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport type { ContainerElement } from '@nvidia-elements/core/internal';\nimport {\n keyNavigationGrid,\n useStyles,\n attachInternals,\n appendRootNodeStyle,\n generateId,\n audit\n} from '@nvidia-elements/core/internal';\nimport { GridPlaceholder } from './placeholder/placeholder.js';\nimport { GridHeader } from './header/header.js';\nimport { GridColumn } from './column/column.js';\nimport { GridFooter } from './footer/footer.js';\nimport { GridRow } from './row/row.js';\nimport { GridCell } from './cell/cell.js';\nimport styles from './grid.css?inline';\nimport globalStyles from './grid.global.css?inline';\n\n/**\n * @element nve-grid\n * @description A versatile table/datagrid component with built-in keyboard navigation for displaying and interacting with structured data. Use it for anything from simple read-only tables to fully interactive, spreadsheet experiences.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for content\n * @slot footer - slot for grid-footer or toolbar\n * @cssprop --background\n * @cssprop --color\n * @cssprop --border-radius\n * @cssprop --box-shadow\n * @cssprop --font-size\n * @cssprop --row-height - fixed height of each row\n * @cssprop --scroll-height - height of the scrollable area\n\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\n@audit()\n@keyNavigationGrid<Grid>()\nexport class Grid extends LitElement implements ContainerElement {\n /**\n * Determines the container styles of component. Flat nests the grid within other containers. Full spans the full edge-to-edge viewport width.\n */\n @property({ type: String, reflect: true }) container?: 'flat' | 'full';\n\n /**\n * Determine style variant stripe rows\n */\n @property({ type: Boolean, reflect: true }) stripe: boolean;\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid',\n version: '0.0.0',\n children: [GridRow.metadata.tag, GridHeader.metadata.tag, GridFooter.metadata.tag, GridPlaceholder.metadata.tag]\n };\n\n static elementDefinitions = {};\n\n get keynavGridConfig() {\n return {\n columns: this.#columns,\n rows: [this.#header!, ...this.#rows],\n cells: [...this.#columns, ...this.#cells]\n };\n }\n\n get #rows() {\n return Array.from(this.querySelectorAll<GridRow>(GridRow.metadata.tag));\n }\n\n get #header() {\n return this.querySelector<GridHeader>(GridHeader.metadata.tag);\n }\n\n get #columns() {\n return Array.from(this.querySelectorAll<GridColumn>(GridColumn.metadata.tag));\n }\n\n get #cells() {\n return Array.from(this.querySelectorAll<GridCell>(GridCell.metadata.tag));\n }\n\n /** @private */\n declare _internals: ElementInternals;\n\n render() {\n return html`\n <div internal-host>\n <div part=\"_scrollbox\">\n <slot></slot>\n </div>\n <slot name=\"footer\"></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'grid';\n this.id ||= generateId();\n appendRootNodeStyle(this, globalStyles);\n }\n\n /**\n * Scroll to a specific position in the grid.\n */\n scrollTo(options?: ScrollToOptions): Promise<void>;\n scrollTo(x: number, y: number): Promise<void>;\n async scrollTo(...args: [options?: ScrollToOptions] | [x: number, y: number]): Promise<void> {\n await this.shadowRoot!.querySelector('[part=\"_scrollbox\"]')?.scrollTo(...(args as [ScrollToOptions]));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AA0CO,IAAA,IAAA,cAAmB,EAAuC;;gBAW/C,EAAU,CAAC,CAAM,CAAC;;;kBAEP;GACzB,KAAK;GACL,SAAS;GACT,UAAU;IAAC,EAAQ,SAAS;IAAK,EAAW,SAAS;IAAK,EAAW,SAAS;IAAK,EAAgB,SAAS;GAAG;EACjH;;;4BAE4B,CAAC;;CAE7B,IAAI,mBAAmB;EACrB,OAAO;GACL,SAAS,KAAKA;GACd,MAAM,CAAC,KAAKC,IAAU,GAAG,KAAKC,EAAK;GACnC,OAAO,CAAC,GAAG,KAAKF,IAAU,GAAG,KAAKG,EAAM;EAC1C;CACF;CAEA,IAAID,KAAQ;EACV,OAAO,MAAM,KAAK,KAAK,iBAA0B,EAAQ,SAAS,GAAG,CAAC;CACxE;CAEA,IAAID,KAAU;EACZ,OAAO,KAAK,cAA0B,EAAW,SAAS,GAAG;CAC/D;CAEA,IAAID,KAAW;EACb,OAAO,MAAM,KAAK,KAAK,iBAA6B,EAAW,SAAS,GAAG,CAAC;CAC9E;CAEA,IAAIG,KAAS;EACX,OAAO,MAAM,KAAK,KAAK,iBAA2B,EAAS,SAAS,GAAG,CAAC;CAC1E;CAKA,SAAS;EACP,OAAO,CAAI;CAQb;CAEA,oBAAoB;EAKlB,AAJA,MAAM,kBAAkB,GACxB,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO,QACvB,KAAK,OAAO,EAAW,GACvB,EAAoB,MAAM,CAAY;CACxC;CAOA,MAAM,SAAS,GAAG,GAA2E;EAC3F,MAAM,KAAK,WAAY,cAAc,uBAAqB,GAAG,SAAS,GAAI,CAA0B;CACtG;AACF;GAvEG,EAAS;CAAE,MAAM;CAAQ,SAAS;AAAK,CAAC,CAAA,GAAA,EAAA,WAAA,aAAA,KAAA,CAAA,MAKxC,EAAS;CAAE,MAAM;CAAS,SAAS;AAAK,CAAC,CAAA,GAAA,EAAA,WAAA,UAAA,KAAA,CAAA,UAX3C,EAAM,GACN,EAAwB,CAAA,GAAA,CAAA"}
@@ -2,7 +2,7 @@ import { GlobalStateService as e } from "../../internal/services/global.service.
2
2
  import { attachInternals as t } from "../../internal/utils/a11y.js";
3
3
  import { debounce as n } from "../../internal/utils/events.js";
4
4
  import { LogService as r } from "../../internal/services/log.service.js";
5
- import { __decorate as i } from "../../_virtual/_@oxc-project_runtime@0.123.0/helpers/decorate.js";
5
+ import { __decorate as i } from "../../_virtual/_@oxc-project_runtime@0.130.0/helpers/decorate.js";
6
6
  import { audit as a } from "../../internal/controllers/audit.controller.js";
7
7
  import { useStyles as o } from "../../internal/styles/index.js";
8
8
  import s from "./header.js";
@@ -19,7 +19,7 @@ var m = class extends d {
19
19
  static {
20
20
  this.metadata = {
21
21
  tag: "nve-grid-header",
22
- version: "0.1.0",
22
+ version: "0.1.2",
23
23
  children: [c.metadata.tag]
24
24
  };
25
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"header2.js","names":["#grid","#computeColumnWidths","#onColumnResize","#resizeObserver","#validateColumns"],"sources":["../../../src/grid/header/header.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { PropertyValues } from 'lit';\nimport { html, LitElement } from 'lit';\nimport { queryAssignedElements } from 'lit/decorators/query-assigned-elements.js';\nimport {\n useStyles,\n attachInternals,\n debounce,\n LogService,\n audit,\n GlobalStateService\n} from '@nvidia-elements/core/internal';\nimport styles from './header.css?inline';\nimport { GridColumn } from '../column/column.js';\nimport type { Grid } from '../grid.js';\nimport { GridRow } from '../row/row.js';\nimport { GridCell } from '../cell/cell.js';\n\n/**\n * @element nve-grid-header\n * @description Contains the column headers of a grid, managing column widths and providing structural context for the data rows below.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for `nve-grid-column`\n * @cssprop --background\n * @cssprop --border-bottom\n * @cssprop --padding\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\n@audit()\nexport class GridHeader extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-header',\n version: '0.0.0',\n children: [GridColumn.metadata.tag]\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n /** @private */\n @queryAssignedElements({\n selector: GridColumn.metadata.tag,\n flatten: true\n })\n columns!: GridColumn[];\n\n get #grid() {\n return this.parentElement as Grid;\n }\n\n render() {\n return html`\n <div internal-host>\n <slot @slotchange=${() => this.#computeColumnWidths()}></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'row';\n this.addEventListener('nve-grid-column-resize', this.#onColumnResize);\n this.#resizeObserver ??= new ResizeObserver(debounce(() => this.#computeColumnWidths(), 100));\n this.#resizeObserver.observe(this);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener('nve-grid-column-resize', this.#onColumnResize);\n this.#resizeObserver?.disconnect();\n }\n\n #onColumnResize = () => {\n void this.#computeColumnWidths();\n };\n\n #resizeObserver?: ResizeObserver;\n\n async firstUpdated(props: PropertyValues<this>) {\n super.firstUpdated(props);\n await this.updateComplete;\n this.#validateColumns();\n }\n\n async #computeColumnWidths() {\n await this.updateComplete;\n this.columns.forEach((c, i) => (c.ariaColIndex = `${i + 1}`));\n this.#grid.style.setProperty('--grid-auto-flow', 'initial');\n this.#grid.style.setProperty('--grid-template-column', this.columns.map((_, i) => `var(--c${i})`).join(' '));\n\n // compute initial column width\n this.columns.forEach((c, i) => this.#grid.style.setProperty(`--c${i}`, c.width ? c.width : `1fr`));\n\n // compute column width based on content\n await this.updateComplete;\n const widths = this.columns.map(c => (c.width ? c.width : `minmax(auto, ${c.getBoundingClientRect().width}px)`));\n widths.forEach((w, i) => this.#grid.style.setProperty(`--c${i}`, w));\n }\n\n #validateColumns() {\n if (GlobalStateService.state.env !== 'production') {\n const cells = this.#grid.querySelector(GridRow.metadata.tag)?.querySelectorAll(GridCell.metadata.tag);\n if (this.columns && cells && this.columns.length !== cells.length) {\n LogService.error(`grid-column (${this.columns.length}) and grid-cell (${cells.length}) count mismatch`);\n }\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAgCO,IAAA,IAAA,cAAyB,EAAW;;gBACzB,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACT,UAAU,CAAC,EAAW,SAAS,IAAA;GAChC;;CAYD,KAAA,IAAY;AACV,SAAO,KAAK;;CAGd,SAAS;AACP,SAAO,CAAI,+CAEmB,MAAA,GAA2B,CAAC;;CAK5D,oBAAoB;AAMlB,EALA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO,OACvB,KAAK,iBAAiB,0BAA0B,MAAA,EAAqB,EACrE,MAAA,MAAyB,IAAI,eAAe,QAAe,MAAA,GAA2B,EAAE,IAAI,CAAC,EAC7F,MAAA,EAAqB,QAAQ,KAAK;;CAGpC,uBAAuB;AAGrB,EAFA,MAAM,sBAAsB,EAC5B,KAAK,oBAAoB,0BAA0B,MAAA,EAAqB,EACxE,MAAA,GAAsB,YAAY;;CAGpC,WAAwB;AACjB,QAAA,GAA2B;;CAGlC;CAEA,MAAM,aAAa,GAA6B;AAG9C,EAFA,MAAM,aAAa,EAAM,EACzB,MAAM,KAAK,gBACX,MAAA,GAAuB;;CAGzB,OAAA,IAA6B;AAWZ,EAVf,MAAM,KAAK,gBACX,KAAK,QAAQ,SAAS,GAAG,MAAO,EAAE,eAAe,GAAG,IAAI,IAAK,EAC7D,MAAA,EAAW,MAAM,YAAY,oBAAoB,UAAU,EAC3D,MAAA,EAAW,MAAM,YAAY,0BAA0B,KAAK,QAAQ,KAAK,GAAG,MAAM,UAAU,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC,EAG5G,KAAK,QAAQ,SAAS,GAAG,MAAM,MAAA,EAAW,MAAM,YAAY,MAAM,KAAK,EAAE,QAAQ,EAAE,QAAQ,MAAM,CAAC,EAGlG,MAAM,KAAK,gBACI,KAAK,QAAQ,KAAI,MAAM,EAAE,QAAQ,EAAE,QAAQ,gBAAgB,EAAE,uBAAuB,CAAC,MAAM,KAAM,CACzG,SAAS,GAAG,MAAM,MAAA,EAAW,MAAM,YAAY,MAAM,KAAK,EAAE,CAAC;;CAGtE,KAAmB;AACjB,MAAI,EAAmB,MAAM,QAAQ,cAAc;GACjD,IAAM,IAAQ,MAAA,EAAW,cAAc,EAAQ,SAAS,IAAI,EAAE,iBAAiB,EAAS,SAAS,IAAI;AACrG,GAAI,KAAK,WAAW,KAAS,KAAK,QAAQ,WAAW,EAAM,UACzD,EAAW,MAAM,gBAAgB,KAAK,QAAQ,OAAO,mBAAmB,EAAM,OAAO,kBAAkB;;;;GAhE5G,EAAsB;CACrB,UAAU,EAAW,SAAS;CAC9B,SAAS;CACV,CAAC,CAAA,EAAA,EAAA,WAAA,WAAA,KAAA,EAAA,SAjBH,GAAO,CAAA,EAAA,EAAA"}
1
+ {"version":3,"file":"header2.js","names":["#grid","#computeColumnWidths","#onColumnResize","#resizeObserver","#validateColumns"],"sources":["../../../src/grid/header/header.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { PropertyValues } from 'lit';\nimport { html, LitElement } from 'lit';\nimport { queryAssignedElements } from 'lit/decorators/query-assigned-elements.js';\nimport {\n useStyles,\n attachInternals,\n debounce,\n LogService,\n audit,\n GlobalStateService\n} from '@nvidia-elements/core/internal';\nimport styles from './header.css?inline';\nimport { GridColumn } from '../column/column.js';\nimport type { Grid } from '../grid.js';\nimport { GridRow } from '../row/row.js';\nimport { GridCell } from '../cell/cell.js';\n\n/**\n * @element nve-grid-header\n * @description Contains the column headers of a grid, managing column widths and providing structural context for the data rows below.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for `nve-grid-column`\n * @cssprop --background\n * @cssprop --border-bottom\n * @cssprop --padding\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\n@audit()\nexport class GridHeader extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-header',\n version: '0.0.0',\n children: [GridColumn.metadata.tag]\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n /** @private */\n @queryAssignedElements({\n selector: GridColumn.metadata.tag,\n flatten: true\n })\n columns!: GridColumn[];\n\n get #grid() {\n return this.parentElement as Grid;\n }\n\n render() {\n return html`\n <div internal-host>\n <slot @slotchange=${() => this.#computeColumnWidths()}></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'row';\n this.addEventListener('nve-grid-column-resize', this.#onColumnResize);\n this.#resizeObserver ??= new ResizeObserver(debounce(() => this.#computeColumnWidths(), 100));\n this.#resizeObserver.observe(this);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener('nve-grid-column-resize', this.#onColumnResize);\n this.#resizeObserver?.disconnect();\n }\n\n #onColumnResize = () => {\n void this.#computeColumnWidths();\n };\n\n #resizeObserver?: ResizeObserver;\n\n async firstUpdated(props: PropertyValues<this>) {\n super.firstUpdated(props);\n await this.updateComplete;\n this.#validateColumns();\n }\n\n async #computeColumnWidths() {\n await this.updateComplete;\n this.columns.forEach((c, i) => (c.ariaColIndex = `${i + 1}`));\n this.#grid.style.setProperty('--grid-auto-flow', 'initial');\n this.#grid.style.setProperty('--grid-template-column', this.columns.map((_, i) => `var(--c${i})`).join(' '));\n\n // compute initial column width\n this.columns.forEach((c, i) => this.#grid.style.setProperty(`--c${i}`, c.width ? c.width : `1fr`));\n\n // compute column width based on content\n await this.updateComplete;\n const widths = this.columns.map(c => (c.width ? c.width : `minmax(auto, ${c.getBoundingClientRect().width}px)`));\n widths.forEach((w, i) => this.#grid.style.setProperty(`--c${i}`, w));\n }\n\n #validateColumns() {\n if (GlobalStateService.state.env !== 'production') {\n const cells = this.#grid.querySelector(GridRow.metadata.tag)?.querySelectorAll(GridCell.metadata.tag);\n if (this.columns && cells && this.columns.length !== cells.length) {\n LogService.error(`grid-column (${this.columns.length}) and grid-cell (${cells.length}) count mismatch`);\n }\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAgCO,IAAA,IAAA,cAAyB,EAAW;;gBACzB,EAAU,CAAC,CAAM,CAAC;;;kBAEP;GACzB,KAAK;GACL,SAAS;GACT,UAAU,CAAC,EAAW,SAAS,GAAG;EACpC;;CAYA,IAAIA,KAAQ;EACV,OAAO,KAAK;CACd;CAEA,SAAS;EACP,OAAO,CAAI,+CAEmB,KAAKC,GAAqB,EAAE;CAG5D;CAEA,oBAAoB;EAMlB,AALA,MAAM,kBAAkB,GACxB,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO,OACvB,KAAK,iBAAiB,0BAA0B,KAAKC,EAAe,GACpE,KAAKC,OAAoB,IAAI,eAAe,QAAe,KAAKF,GAAqB,GAAG,GAAG,CAAC,GAC5F,KAAKE,GAAgB,QAAQ,IAAI;CACnC;CAEA,uBAAuB;EAGrB,AAFA,MAAM,qBAAqB,GAC3B,KAAK,oBAAoB,0BAA0B,KAAKD,EAAe,GACvE,KAAKC,IAAiB,WAAW;CACnC;CAEA,WAAwB;EACtB,KAAUF,GAAqB;CACjC;CAEA;CAEA,MAAM,aAAa,GAA6B;EAG9C,AAFA,MAAM,aAAa,CAAK,GACxB,MAAM,KAAK,gBACX,KAAKG,GAAiB;CACxB;CAEA,MAAMH,KAAuB;EAY3B,AAXA,MAAM,KAAK,gBACX,KAAK,QAAQ,SAAS,GAAG,MAAO,EAAE,eAAe,GAAG,IAAI,GAAI,GAC5D,KAAKD,GAAM,MAAM,YAAY,oBAAoB,SAAS,GAC1D,KAAKA,GAAM,MAAM,YAAY,0BAA0B,KAAK,QAAQ,KAAK,GAAG,MAAM,UAAU,EAAE,EAAE,EAAE,KAAK,GAAG,CAAC,GAG3G,KAAK,QAAQ,SAAS,GAAG,MAAM,KAAKA,GAAM,MAAM,YAAY,MAAM,KAAK,EAAE,QAAQ,EAAE,QAAQ,KAAK,CAAC,GAGjG,MAAM,KAAK,gBAEX,KADoB,QAAQ,KAAI,MAAM,EAAE,QAAQ,EAAE,QAAQ,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,IAC1G,EAAO,SAAS,GAAG,MAAM,KAAKA,GAAM,MAAM,YAAY,MAAM,KAAK,CAAC,CAAC;CACrE;CAEA,KAAmB;EACjB,IAAI,EAAmB,MAAM,QAAQ,cAAc;GACjD,IAAM,IAAQ,KAAKA,GAAM,cAAc,EAAQ,SAAS,GAAG,GAAG,iBAAiB,EAAS,SAAS,GAAG;GACpG,AAAI,KAAK,WAAW,KAAS,KAAK,QAAQ,WAAW,EAAM,UACzD,EAAW,MAAM,gBAAgB,KAAK,QAAQ,OAAO,mBAAmB,EAAM,OAAO,iBAAiB;EAE1G;CACF;AACF;GApEG,EAAsB;CACrB,UAAU,EAAW,SAAS;CAC9B,SAAS;AACX,CAAC,CAAA,GAAA,EAAA,WAAA,WAAA,KAAA,CAAA,UAjBF,EAAM,CAAA,GAAA,CAAA"}
@@ -10,7 +10,7 @@ var a = class extends r {
10
10
  static {
11
11
  this.metadata = {
12
12
  tag: "nve-grid-placeholder",
13
- version: "0.1.0"
13
+ version: "0.1.2"
14
14
  };
15
15
  }
16
16
  render() {
@@ -1 +1 @@
1
- {"version":3,"file":"placeholder2.js","names":[],"sources":["../../../src/grid/placeholder/placeholder.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { useStyles, attachInternals } from '@nvidia-elements/core/internal';\nimport styles from './placeholder.css?inline';\n\n/**\n * @element nve-grid-placeholder\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @description Placeholder displays a message while data loads for the grid or shows empty states for datasets.\n * @slot - default slot for content\n * @cssprop --color\n * @cssprop --padding\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\nexport class GridPlaceholder extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-placeholder',\n version: '0.0.0'\n };\n\n /** @private */\n _internals: ElementInternals;\n\n render() {\n return html`\n <div internal-host focusable=\"active\" role=\"gridcell\">\n <slot></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'row';\n }\n}\n"],"mappings":";;;;;AAiBA,IAAa,IAAb,cAAqC,EAAW;;gBAC9B,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACV;;CAKD,SAAS;AACP,SAAO,CAAI;;CAOb,oBAAoB;AAGlB,EAFA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO"}
1
+ {"version":3,"file":"placeholder2.js","names":[],"sources":["../../../src/grid/placeholder/placeholder.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { useStyles, attachInternals } from '@nvidia-elements/core/internal';\nimport styles from './placeholder.css?inline';\n\n/**\n * @element nve-grid-placeholder\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @description Placeholder displays a message while data loads for the grid or shows empty states for datasets.\n * @slot - default slot for content\n * @cssprop --color\n * @cssprop --padding\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\nexport class GridPlaceholder extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-placeholder',\n version: '0.0.0'\n };\n\n /** @private */\n _internals: ElementInternals;\n\n render() {\n return html`\n <div internal-host focusable=\"active\" role=\"gridcell\">\n <slot></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'row';\n }\n}\n"],"mappings":";;;;;AAiBA,IAAa,IAAb,cAAqC,EAAW;;gBAC9B,EAAU,CAAC,CAAM,CAAC;;;kBAEP;GACzB,KAAK;GACL,SAAS;EACX;;CAKA,SAAS;EACP,OAAO,CAAI;CAKb;CAEA,oBAAoB;EAGlB,AAFA,MAAM,kBAAkB,GACxB,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO;CACzB;AACF"}
@@ -1,6 +1,6 @@
1
1
  import { attachInternals as e } from "../../internal/utils/a11y.js";
2
2
  import { stateSelected as t } from "../../internal/controllers/state-selected.controller.js";
3
- import { __decorate as n } from "../../_virtual/_@oxc-project_runtime@0.123.0/helpers/decorate.js";
3
+ import { __decorate as n } from "../../_virtual/_@oxc-project_runtime@0.130.0/helpers/decorate.js";
4
4
  import { audit as r } from "../../internal/controllers/audit.controller.js";
5
5
  import { useStyles as i } from "../../internal/styles/index.js";
6
6
  import { GridCell as a } from "../cell/cell2.js";
@@ -15,7 +15,7 @@ var u = class extends s {
15
15
  static {
16
16
  this.metadata = {
17
17
  tag: "nve-grid-row",
18
- version: "0.1.0",
18
+ version: "0.1.2",
19
19
  children: [a.metadata.tag]
20
20
  };
21
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"row2.js","names":[],"sources":["../../../src/grid/row/row.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { useStyles, attachInternals, stateSelected, audit } from '@nvidia-elements/core/internal';\nimport { GridCell } from '../cell/cell.js';\nimport styles from './row.css?inline';\n\n/**\n * @element nve-grid-row\n * @description Represents a horizontal row of data cells within a grid, supporting selection and interactive states.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for `nve-grid-cell`\n * @cssprop --background\n * @cssprop --border-bottom\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\n@stateSelected()\n@audit()\nexport class GridRow extends LitElement {\n /**\n * Setting the `selected` property or attribute to `true` shows the row in a selected state.\n */\n @property({ type: Boolean }) selected: boolean;\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-row',\n version: '0.0.0',\n children: [GridCell.metadata.tag]\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n render() {\n return html`\n <div internal-host>\n <slot></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'row';\n }\n}\n"],"mappings":";;;;;;;;;;AAqBO,IAAA,IAAA,cAAsB,EAAW;;gBAMtB,EAAU,CAAC,EAAO,CAAC;;;kBAER;GACzB,KAAK;GACL,SAAS;GACT,UAAU,CAAC,EAAS,SAAS,IAAA;GAC9B;;CAKD,SAAS;AACP,SAAO,CAAI;;CAOb,oBAAoB;AAGlB,EAFA,MAAM,mBAAmB,EACzB,EAAgB,KAAK,EACrB,KAAK,WAAW,OAAO;;;GAxBxB,EAAS,EAAE,MAAM,SAAS,CAAC,CAAA,EAAA,EAAA,WAAA,YAAA,KAAA,EAAA,SAN7B,GAAe,EACf,GAAO,CAAA,EAAA,EAAA"}
1
+ {"version":3,"file":"row2.js","names":[],"sources":["../../../src/grid/row/row.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { useStyles, attachInternals, stateSelected, audit } from '@nvidia-elements/core/internal';\nimport { GridCell } from '../cell/cell.js';\nimport styles from './row.css?inline';\n\n/**\n * @element nve-grid-row\n * @description Represents a horizontal row of data cells within a grid, supporting selection and interactive states.\n * @since 0.11.0\n * @entrypoint \\@nvidia-elements/core/grid\n * @slot - default slot for `nve-grid-cell`\n * @cssprop --background\n * @cssprop --border-bottom\n * @aria https://www.w3.org/WAI/ARIA/apg/patterns/grid/\n */\n@stateSelected()\n@audit()\nexport class GridRow extends LitElement {\n /**\n * Setting the `selected` property or attribute to `true` shows the row in a selected state.\n */\n @property({ type: Boolean }) selected: boolean;\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-grid-row',\n version: '0.0.0',\n children: [GridCell.metadata.tag]\n };\n\n /** @private */\n declare _internals: ElementInternals;\n\n render() {\n return html`\n <div internal-host>\n <slot></slot>\n </div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'row';\n }\n}\n"],"mappings":";;;;;;;;;;AAqBO,IAAA,IAAA,cAAsB,EAAW;;gBAMtB,EAAU,CAAC,CAAM,CAAC;;;kBAEP;GACzB,KAAK;GACL,SAAS;GACT,UAAU,CAAC,EAAS,SAAS,GAAG;EAClC;;CAKA,SAAS;EACP,OAAO,CAAI;CAKb;CAEA,oBAAoB;EAGlB,AAFA,MAAM,kBAAkB,GACxB,EAAgB,IAAI,GACpB,KAAK,WAAW,OAAO;CACzB;AACF;GA1BG,EAAS,EAAE,MAAM,QAAQ,CAAC,CAAA,GAAA,EAAA,WAAA,YAAA,KAAA,CAAA,UAN5B,EAAc,GACd,EAAM,CAAA,GAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"define.js","names":[],"sources":["../../src/icon/define.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { define } from '@nvidia-elements/core/internal';\nimport { Icon, mergeIcons } from '@nvidia-elements/core/icon';\n\ndefine(Icon);\nif (customElements.get(Icon.metadata.tag)) {\n mergeIcons(customElements.get(Icon.metadata.tag) as typeof Icon);\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nve-icon': Icon;\n }\n}\n"],"mappings":";;AAMA,EAAO,EAAK,EACR,eAAe,IAAI,EAAK,SAAS,IAAI,IACvC,EAAW,eAAe,IAAI,EAAK,SAAS,IAAI,CAAgB"}
1
+ {"version":3,"file":"define.js","names":[],"sources":["../../src/icon/define.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { define } from '@nvidia-elements/core/internal';\nimport { Icon, mergeIcons } from '@nvidia-elements/core/icon';\n\ndefine(Icon);\nif (customElements.get(Icon.metadata.tag)) {\n mergeIcons(customElements.get(Icon.metadata.tag) as typeof Icon);\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nve-icon': Icon;\n }\n}\n"],"mappings":";;AAMA,EAAO,CAAI,GACP,eAAe,IAAI,EAAK,SAAS,GAAG,KACtC,EAAW,eAAe,IAAI,EAAK,SAAS,GAAG,CAAgB"}
@@ -1,6 +1,6 @@
1
1
  import { parseVersion as e } from "../internal/utils/objects.js";
2
2
  import { attachInternals as t } from "../internal/utils/a11y.js";
3
- import { __decorate as n } from "../_virtual/_@oxc-project_runtime@0.123.0/helpers/decorate.js";
3
+ import { __decorate as n } from "../_virtual/_@oxc-project_runtime@0.130.0/helpers/decorate.js";
4
4
  import { useStyles as r } from "../internal/styles/index.js";
5
5
  import { ICON_IMPORTS as i } from "./icons.js";
6
6
  import a from "./icon.js";
@@ -16,7 +16,7 @@ var f = class e extends o {
16
16
  static {
17
17
  this.metadata = {
18
18
  tag: "nve-icon",
19
- version: "0.1.0"
19
+ version: "0.1.2"
20
20
  };
21
21
  }
22
22
  static {
@@ -86,7 +86,7 @@ n([l({
86
86
  })], f.prototype, "name", void 0), n([d()], f.prototype, "svg", void 0);
87
87
  function p(t) {
88
88
  if (typeof globalThis.customElements?.get == "function") {
89
- let n = e(t.metadata.version), r = e("0.1.0");
89
+ let n = e(t.metadata.version), r = e("0.1.2");
90
90
  n.minor <= r.minor && n.major <= r.major && (t._icons = {
91
91
  ...t._icons,
92
92
  ...i
@@ -1 +1 @@
1
- {"version":3,"file":"icon2.js","names":["#iconString","#asyncRender","#render"],"sources":["../../src/icon/icon.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { PropertyValues } from 'lit';\nimport { html, isServer, LitElement } from 'lit';\nimport { unsafeSVG } from 'lit/directives/unsafe-svg.js';\nimport { property } from 'lit/decorators/property.js';\nimport { state } from 'lit/decorators/state.js';\nimport type { Size } from '@nvidia-elements/core/internal';\nimport { attachInternals, parseVersion, useStyles } from '@nvidia-elements/core/internal';\nimport type { IconName, IconSVG } from './icons.js';\nimport { ICON_IMPORTS } from './icons.js';\nimport styles from './icon.css?inline';\n\nexport type { IconName, IconSVG } from './icons.js';\n\ndeclare global {\n var _NVE_SSR_ICON_REGISTRY: Record<string, string> | undefined;\n}\n\n/**\n * @element nve-icon\n * @since 0.1.3\n * @entrypoint \\@nvidia-elements/core/icon\n * @description An icon is a graphic symbol designed to visually show the purpose of an interface element.\n * @cssprop --color\n * @cssprop --width\n * @cssprop --height\n * @slot - Custom SVG content to override the named icon\n * @aria https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img\n */\nexport class Icon extends LitElement {\n /**\n * Visual treatment to represent current support status.\n */\n @property({ type: String, reflect: true }) status?: 'warning' | 'danger' | 'success' | 'accent';\n\n /**\n * Controls the bounding box size of the icon given a t-shirt style value.\n */\n @property({ type: String, reflect: true }) size?: Size | 'xs' | 'xl';\n\n /**\n * Sets the direction of the icon. Only supported by expand-panel/collapse-panel (horizontal axis) and arrow/caret/chevron icons (4-directions)\n */\n @property({ type: String, reflect: true }) direction?: 'up' | 'down' | 'left' | 'right';\n\n /**\n * The name of the icon SVG sprite to render.\n */\n @property({ type: String, reflect: true }) name?: IconName;\n\n @state() private svg: string;\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-icon',\n version: '0.0.0'\n };\n\n static _icons: { [key: string]: IconSVG } = ICON_IMPORTS;\n\n // eslint-disable-next-line no-restricted-syntax\n private static get _iconsRegistry() {\n return this.registeredIcon?._icons ?? Icon._icons;\n }\n\n // eslint-disable-next-line no-restricted-syntax\n private static set _iconsRegistry(icons: { [key: string]: IconSVG }) {\n this.registeredIcon._icons = { ...Icon._iconsRegistry, ...icons };\n }\n\n // eslint-disable-next-line no-restricted-syntax\n private static get registeredIcon() {\n return customElements.get(Icon.metadata.tag) as typeof Icon;\n }\n\n /** @private */\n declare _internals: ElementInternals;\n\n get #iconString() {\n return isServer && globalThis._NVE_SSR_ICON_REGISTRY ? globalThis._NVE_SSR_ICON_REGISTRY[this.name!] : this.svg;\n }\n\n render() {\n return html`\n <div internal-host aria-hidden=\"true\"><slot>${unsafeSVG(this.#iconString)}</slot></div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'img';\n globalThis?.document?.addEventListener(\n `${Icon.metadata.tag}-${this.name}`,\n this.#asyncRender.bind(this) as unknown as EventListener\n );\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n globalThis?.document?.removeEventListener(\n `${Icon.metadata.tag}-${this.name}`,\n this.#asyncRender.bind(this) as unknown as EventListener\n );\n }\n\n static async add(icons: { [key: string]: IconSVG }) {\n if (globalThis.customElements?.whenDefined) {\n await globalThis.customElements.whenDefined(Icon.metadata.tag);\n Icon._iconsRegistry = icons;\n Object.keys(icons).forEach(name =>\n globalThis?.document?.dispatchEvent(new CustomEvent(`${Icon.metadata.tag}-${name}`, { detail: icons[name] }))\n );\n }\n }\n\n static alias(aliases: { [key: string]: IconName | string }) {\n // whenDefined has no rejection state\n if (globalThis.customElements?.whenDefined) {\n /* eslint-disable @typescript-eslint/no-floating-promises */\n globalThis.customElements.whenDefined(Icon.metadata.tag).then(() => {\n Object.keys(aliases).forEach(alias => {\n Icon._iconsRegistry[alias] = Icon._iconsRegistry[aliases[alias]!]!;\n globalThis?.document?.dispatchEvent(\n new CustomEvent(`${Icon.metadata.tag}-${alias}`, { detail: Icon._iconsRegistry[alias] })\n );\n });\n });\n }\n }\n\n async updated(props: PropertyValues<this>) {\n super.updated(props);\n await this.#render();\n }\n\n async #asyncRender(event: CustomEvent<IconSVG>) {\n if (this.isConnected && event.detail && this.svg !== (await event.detail.svg())) {\n this.#render();\n }\n }\n\n async #render() {\n if (!this.name) return;\n const svg = await (this.name.endsWith('.svg')\n ? fetch(this.name).then(res => res.text())\n : (Icon._iconsRegistry[this.name]?.svg() ?? Promise.resolve('')));\n Icon._iconsRegistry[this.name] = { svg: () => svg, ...Icon._iconsRegistry[this.name] };\n this.svg = svg;\n }\n}\n\nexport function mergeIcons(RegisteredIcon: typeof Icon) {\n if (typeof globalThis.customElements?.get === 'function') {\n const registered = parseVersion(RegisteredIcon.metadata.version);\n const current = parseVersion('0.0.0');\n\n // determine if an older icon already registered and if so, merge the icons with the latest svgs\n if (registered.minor <= current.minor && registered.major <= current.major) {\n RegisteredIcon._icons = { ...RegisteredIcon._icons, ...ICON_IMPORTS };\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"icon2.js","names":["#iconString","#asyncRender","#render"],"sources":["../../src/icon/icon.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { PropertyValues } from 'lit';\nimport { html, isServer, LitElement } from 'lit';\nimport { unsafeSVG } from 'lit/directives/unsafe-svg.js';\nimport { property } from 'lit/decorators/property.js';\nimport { state } from 'lit/decorators/state.js';\nimport type { Size } from '@nvidia-elements/core/internal';\nimport { attachInternals, parseVersion, useStyles } from '@nvidia-elements/core/internal';\nimport type { IconName, IconSVG } from './icons.js';\nimport { ICON_IMPORTS } from './icons.js';\nimport styles from './icon.css?inline';\n\nexport type { IconName, IconSVG } from './icons.js';\n\ndeclare global {\n var _NVE_SSR_ICON_REGISTRY: Record<string, string> | undefined;\n}\n\n/**\n * @element nve-icon\n * @since 0.1.3\n * @entrypoint \\@nvidia-elements/core/icon\n * @description An icon is a graphic symbol designed to visually show the purpose of an interface element.\n * @cssprop --color\n * @cssprop --width\n * @cssprop --height\n * @slot - Custom SVG content to override the named icon\n * @aria https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img\n */\nexport class Icon extends LitElement {\n /**\n * Visual treatment to represent current support status.\n */\n @property({ type: String, reflect: true }) status?: 'warning' | 'danger' | 'success' | 'accent';\n\n /**\n * Controls the bounding box size of the icon given a t-shirt style value.\n */\n @property({ type: String, reflect: true }) size?: Size | 'xs' | 'xl';\n\n /**\n * Sets the direction of the icon. Only supported by expand-panel/collapse-panel (horizontal axis) and arrow/caret/chevron icons (4-directions)\n */\n @property({ type: String, reflect: true }) direction?: 'up' | 'down' | 'left' | 'right';\n\n /**\n * The name of the icon SVG sprite to render.\n */\n @property({ type: String, reflect: true }) name?: IconName;\n\n @state() private svg: string;\n\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-icon',\n version: '0.0.0'\n };\n\n static _icons: { [key: string]: IconSVG } = ICON_IMPORTS;\n\n // eslint-disable-next-line no-restricted-syntax\n private static get _iconsRegistry() {\n return this.registeredIcon?._icons ?? Icon._icons;\n }\n\n // eslint-disable-next-line no-restricted-syntax\n private static set _iconsRegistry(icons: { [key: string]: IconSVG }) {\n this.registeredIcon._icons = { ...Icon._iconsRegistry, ...icons };\n }\n\n // eslint-disable-next-line no-restricted-syntax\n private static get registeredIcon() {\n return customElements.get(Icon.metadata.tag) as typeof Icon;\n }\n\n /** @private */\n declare _internals: ElementInternals;\n\n get #iconString() {\n return isServer && globalThis._NVE_SSR_ICON_REGISTRY ? globalThis._NVE_SSR_ICON_REGISTRY[this.name!] : this.svg;\n }\n\n render() {\n return html`\n <div internal-host aria-hidden=\"true\"><slot>${unsafeSVG(this.#iconString)}</slot></div>\n `;\n }\n\n connectedCallback() {\n super.connectedCallback();\n attachInternals(this);\n this._internals.role = 'img';\n globalThis?.document?.addEventListener(\n `${Icon.metadata.tag}-${this.name}`,\n this.#asyncRender.bind(this) as unknown as EventListener\n );\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n globalThis?.document?.removeEventListener(\n `${Icon.metadata.tag}-${this.name}`,\n this.#asyncRender.bind(this) as unknown as EventListener\n );\n }\n\n static async add(icons: { [key: string]: IconSVG }) {\n if (globalThis.customElements?.whenDefined) {\n await globalThis.customElements.whenDefined(Icon.metadata.tag);\n Icon._iconsRegistry = icons;\n Object.keys(icons).forEach(name =>\n globalThis?.document?.dispatchEvent(new CustomEvent(`${Icon.metadata.tag}-${name}`, { detail: icons[name] }))\n );\n }\n }\n\n static alias(aliases: { [key: string]: IconName | string }) {\n // whenDefined has no rejection state\n if (globalThis.customElements?.whenDefined) {\n /* eslint-disable @typescript-eslint/no-floating-promises */\n globalThis.customElements.whenDefined(Icon.metadata.tag).then(() => {\n Object.keys(aliases).forEach(alias => {\n Icon._iconsRegistry[alias] = Icon._iconsRegistry[aliases[alias]!]!;\n globalThis?.document?.dispatchEvent(\n new CustomEvent(`${Icon.metadata.tag}-${alias}`, { detail: Icon._iconsRegistry[alias] })\n );\n });\n });\n }\n }\n\n async updated(props: PropertyValues<this>) {\n super.updated(props);\n await this.#render();\n }\n\n async #asyncRender(event: CustomEvent<IconSVG>) {\n if (this.isConnected && event.detail && this.svg !== (await event.detail.svg())) {\n this.#render();\n }\n }\n\n async #render() {\n if (!this.name) return;\n const svg = await (this.name.endsWith('.svg')\n ? fetch(this.name).then(res => res.text())\n : (Icon._iconsRegistry[this.name]?.svg() ?? Promise.resolve('')));\n Icon._iconsRegistry[this.name] = { svg: () => svg, ...Icon._iconsRegistry[this.name] };\n this.svg = svg;\n }\n}\n\nexport function mergeIcons(RegisteredIcon: typeof Icon) {\n if (typeof globalThis.customElements?.get === 'function') {\n const registered = parseVersion(RegisteredIcon.metadata.version);\n const current = parseVersion('0.0.0');\n\n // determine if an older icon already registered and if so, merge the icons with the latest svgs\n if (registered.minor <= current.minor && registered.major <= current.major) {\n RegisteredIcon._icons = { ...RegisteredIcon._icons, ...ICON_IMPORTS };\n }\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"academic-cap.js","names":[],"sources":["../../../src/icon/icons/academic-cap.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"1 1 14 14\\\"><path fill=\\\"currentColor\\\" d=\\\"M7.733 1.065a.58.58 0 0 1 .534 0A32.6 32.6 0 0 1 14.79 5.52c.165.144.24.37.199.589a.61.61 0 0 1-.402.466A24.6 24.6 0 0 0 8.333 9.72a.58.58 0 0 1-.666 0A25 25 0 0 0 6.01 8.662v-.967c0-.2.092-.38.24-.485a28 28 0 0 1 2.63-1.67.626.626 0 0 0 .24-.835.587.587 0 0 0-.809-.248q-1.42.795-2.74 1.74a1.84 1.84 0 0 0-.754 1.498v.312a24.5 24.5 0 0 0-3.405-1.433.61.61 0 0 1-.402-.466.63.63 0 0 1 .2-.59 32.6 32.6 0 0 1 6.522-4.453ZM4.818 9.391a23 23 0 0 0-1.954-.95 35 35 0 0 0-.31 2.556.62.62 0 0 0 .334.607q.63.316 1.236.673a4.6 4.6 0 0 0 .694-2.442z\\\"/><path fill=\\\"currentColor\\\" d=\\\"M7.606 14.846a21 21 0 0 0-2.463-1.927 5.9 5.9 0 0 0 .863-2.834q.505.316.994.655c.604.42 1.396.42 2 0a23.6 23.6 0 0 1 4.136-2.3q.202 1.264.31 2.557a.62.62 0 0 1-.333.607 21 21 0 0 0-4.719 3.242.583.583 0 0 1-.788 0m-4.07-1.818q.339-.351.588-.75.52.305 1.019.64a5.7 5.7 0 0 1-.763.981.584.584 0 0 1-.844 0 .63.63 0 0 1 0-.87Z\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"academic-cap.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"add-asset.js","names":[],"sources":["../../../src/icon/icons/add-asset.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"2 0 12 16\\\"><path fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" d=\\\"M4.001 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V5.415A2 2 0 0 0 13.416 4L10 .586A2 2 0 0 0 8.588 0zm5 6a1 1 0 1 0-2 0v2h-2a1 1 0 0 0 0 2h2v2a1 1 0 1 0 2 0v-2h2a1 1 0 0 0 0-2h-2z\\\" clip-rule=\\\"evenodd\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"add-asset.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"add-comment.js","names":[],"sources":["../../../src/icon/icons/add-comment.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"0.5 1 15 14\\\"><path fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" d=\\\"M8 1C3.96 1 .5 3.831.5 7.533c0 1.89.917 3.57 2.343 4.746a3.24 3.24 0 0 1-.49 1.64.697.697 0 0 0 .548 1.066 5.62 5.62 0 0 0 3.69-1.034A8.6 8.6 0 0 0 8 14.067c4.04 0 7.5-2.832 7.5-6.534S12.04 1 8 1m0 4c.259 0 .469.21.469.469V7.03h1.562a.469.469 0 1 1 0 .938H8.47V9.53a.469.469 0 0 1-.938 0V7.97H5.97a.469.469 0 0 1 0-.938h1.56V5.47c0-.26.21-.469.469-.469Z\\\" clip-rule=\\\"evenodd\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"add-comment.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"add-grid.js","names":[],"sources":["../../../src/icon/icons/add-grid.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"1 1 14 14\\\"><path fill=\\\"currentColor\\\" d=\\\"M3.333 1A2.333 2.333 0 0 0 1 3.333v1.75a2.333 2.333 0 0 0 2.333 2.334h1.75a2.333 2.333 0 0 0 2.334-2.334v-1.75A2.333 2.333 0 0 0 5.083 1zm7.584 0a2.333 2.333 0 0 0-2.334 2.333v1.75a2.333 2.333 0 0 0 2.334 2.334h1.75A2.333 2.333 0 0 0 15 5.083v-1.75A2.333 2.333 0 0 0 12.667 1zM3.333 8.583A2.333 2.333 0 0 0 1 10.917v1.75A2.333 2.333 0 0 0 3.333 15h1.75a2.333 2.333 0 0 0 2.334-2.333v-1.75a2.333 2.333 0 0 0-2.334-2.334zm9.042.584a.583.583 0 0 0-1.167 0v2.041H9.167a.583.583 0 0 0 0 1.167h2.041v2.042a.583.583 0 0 0 1.167 0v-2.042h2.042a.583.583 0 0 0 0-1.167h-2.042z\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"add-grid.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"add-user.js","names":[],"sources":["../../../src/icon/icons/add-user.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"0 1 16 14\\\"><path fill=\\\"currentColor\\\" d=\\\"M6.001 7a3 3 0 1 0 0-6 3 3 0 0 0 0 6m0 2a6 6 0 0 1 6 6h-12a6 6 0 0 1 6-6m8.001-4a1 1 0 0 0-2 0v1h-1a1 1 0 1 0 0 2h1v1a1 1 0 1 0 2 0V8h1a1 1 0 0 0 0-2h-1z\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"add-user.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","names":[],"sources":["../../../src/icon/icons/add.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"0.03 0 16 16.03\\\"><path fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" d=\\\"M8 0a1.143 1.143 0 0 1 1.143 1.143v5.715h5.715a1.143 1.143 0 1 1 0 2.285H9.143v5.715a1.143 1.143 0 1 1-2.285 0V9.143H1.143a1.143 1.143 0 0 1 0-2.285h5.715V1.143A1.143 1.143 0 0 1 8 0\\\" clip-rule=\\\"evenodd\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"add.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"ancestors.js","names":[],"sources":["../../../src/icon/icons/ancestors.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"0 0 16 16\\\"><path fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" d=\\\"M2.25 4.5A2.25 2.25 0 0 0 4.372 3H6.5a.75.75 0 0 1 .75.75v8.5A2.25 2.25 0 0 0 9.5 14.5h2.128a2.251 2.251 0 1 0 0-1.5H9.5a.75.75 0 0 1-.75-.75V8.5h2.878a2.251 2.251 0 1 0 0-1.5H8.75V3.75A2.25 2.25 0 0 0 6.5 1.5H4.372a2.25 2.25 0 1 0-2.122 3m0-1.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5m11.5 11.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5m.75-6.75a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0\\\" clip-rule=\\\"evenodd\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"ancestors.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"archive.js","names":[],"sources":["../../../src/icon/icons/archive.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"0 0 16 16\\\"><path fill=\\\"currentColor\\\" d=\\\"M.889 2C.398 2 0 2.384 0 2.857v.857c0 .474.398.857.889.857H15.11c.491 0 .889-.383.889-.857v-.857c0-.473-.398-.857-.889-.857H.89Z\\\"/><path fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" d=\\\"M.889 5.857H15.11l-.721 6.608c-.096.873-.858 1.535-1.768 1.535H3.378c-.91 0-1.673-.662-1.768-1.535L.89 5.857Zm4.444 3c0-.473.398-.857.89-.857h3.555c.49 0 .889.384.889.857 0 .474-.398.857-.89.857H6.223c-.49 0-.889-.383-.889-.857Z\\\" clip-rule=\\\"evenodd\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"archive.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"arrow-angle.js","names":[],"sources":["../../../src/icon/icons/arrow-angle.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"3.98 4 8.06 8.06\\\"><path fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" d=\\\"M4.53 4.75A.75.75 0 0 1 5.28 4h6.01a.75.75 0 0 1 .75.75v6.01a.75.75 0 1 1-1.5 0v-4.2l-5.26 5.261a.75.75 0 1 1-1.06-1.06L9.48 5.5h-4.2a.75.75 0 0 1-.75-.75\\\" clip-rule=\\\"evenodd\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"arrow-angle.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"arrow-both.js","names":[],"sources":["../../../src/icon/icons/arrow-both.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 16 16\\\"><path fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" d=\\\"M12.045 3.725a.75.75 0 0 1-1.06 1.06l-2.22-2.221-.003 10.88 2.22-2.22a.75.75 0 0 1 1.06 1.061l-3.5 3.499a.75.75 0 0 1-1.06 0l-3.5-3.502a.75.75 0 1 1 1.06-1.06l2.22 2.222.004-10.88-2.221 2.219a.75.75 0 1 1-1.06-1.06l3.501-3.5a.75.75 0 0 1 1.06.001z\\\" class=\\\"layer\\\" clip-rule=\\\"evenodd\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"arrow-both.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"arrow-cycle.js","names":[],"sources":["../../../src/icon/icons/arrow-cycle.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"0 0 16 16\\\"><path fill=\\\"currentColor\\\" d=\\\"m11.804 10.235 1.285 1.276H6.781a4.83 4.83 0 0 1-3.404-1.4 4.76 4.76 0 0 1-1.409-3.375c0-1.266.507-2.48 1.41-3.376A4.83 4.83 0 0 1 6.78 1.961c1.277 0 2.502.504 3.404 1.4a4.76 4.76 0 0 1 1.41 3.375.73.73 0 0 0 .733.73.736.736 0 0 0 .735-.73c0-1.234-.37-2.44-1.06-3.465A6.27 6.27 0 0 0 9.184.974 6.3 6.3 0 0 0 5.556.62 6.3 6.3 0 0 0 2.34 2.326 6.2 6.2 0 0 0 .62 5.519a6.2 6.2 0 0 0 .358 3.604 6.25 6.25 0 0 0 2.314 2.798 6.3 6.3 0 0 0 3.49 1.05h6.307l-1.276 1.267a.73.73 0 0 0 .802 1.2.7.7 0 0 0 .235-.166l2.364-2.347a.96.96 0 0 0 0-1.368l-2.367-2.35-.007-.006a.736.736 0 0 0-1.234.522.73.73 0 0 0 .198.512\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"arrow-cycle.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"arrow-path-rounded-square.js","names":[],"sources":["../../../src/icon/icons/arrow-path-rounded-square.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"0 1.55 16 12\\\"><path fill=\\\"currentColor\\\" fill-rule=\\\"evenodd\\\" d=\\\"M8 2.841q1.621 0 3.203.14a.594.594 0 0 1 .547.511q.166 1.335.222 2.7l-1.5-1.448a.684.684 0 0 0-.943 0 .627.627 0 0 0 0 .909l2.665 2.571c.26.251.683.251.943 0l2.668-2.571a.627.627 0 0 0 0-.91.684.684 0 0 0-.943 0l-1.554 1.499a34 34 0 0 0-.234-2.903c-.11-.877-.838-1.56-1.75-1.64a38 38 0 0 0-6.647 0c-.913.08-1.642.763-1.75 1.64q-.086.687-.143 1.38a.65.65 0 0 0 .611.692.66.66 0 0 0 .718-.59q.056-.668.137-1.329a.594.594 0 0 1 .547-.512A37 37 0 0 1 8 2.841M3.805 6.887a.684.684 0 0 0-.942 0L.195 9.458a.627.627 0 0 0 0 .91c.26.25.683.25.943 0L2.692 8.87q.056 1.467.234 2.902c.11.877.838 1.56 1.75 1.64a38 38 0 0 0 6.647 0c.913-.08 1.642-.763 1.75-1.64q.086-.687.143-1.38a.65.65 0 0 0-.611-.693.66.66 0 0 0-.718.59q-.055.67-.137 1.33a.594.594 0 0 1-.547.512 37 37 0 0 1-6.406 0 .594.594 0 0 1-.547-.512 33 33 0 0 1-.222-2.699l1.5 1.447c.26.251.683.251.943 0a.627.627 0 0 0 0-.909z\\\" clip-rule=\\\"evenodd\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"arrow-path-rounded-square.js","names":[],"sources":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"arrow-stop.js","names":[],"sources":["../../../src/icon/icons/arrow-stop.svg?raw"],"sourcesContent":["export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 16 16\\\"><path fill=\\\"currentColor\\\" d=\\\"M14.35.886a.82.82 0 0 0-.82-.82H2.6a.82.82 0 0 0 0 1.64h10.93a.82.82 0 0 0 .82-.82m-.93 6.92a.82.82 0 0 0-.22-.57l-4.56-4.57a.82.82 0 0 0-1.16 0l-4.56 4.56a.82.82 0 1 0 1.16 1.16l3.16-3.16v9.87a.82.82 0 1 0 1.64 0v-9.87l3.15 3.16.01.01a.82.82 0 0 0 1.38-.59\\\" class=\\\"layer\\\"/></svg>\""],"mappings":";AAAA,IAAA,IAAe"}
1
+ {"version":3,"file":"arrow-stop.js","names":[],"sources":[],"mappings":""}